summaryrefslogtreecommitdiffstats
path: root/schemas
diff options
context:
space:
mode:
authorMamadou DIOP <bossiel@yahoo.fr>2015-08-17 01:56:35 +0200
committerMamadou DIOP <bossiel@yahoo.fr>2015-08-17 01:56:35 +0200
commit631fffee8a28b1bec5ed1f1d26a20e0135967f99 (patch)
tree74afe3bf3efe15aa82bcd0272b2b0f4d48c2d837 /schemas
parent7908865936604036e6f200f1b5e069f8752f3a3a (diff)
downloaddoubango-631fffee8a28b1bec5ed1f1d26a20e0135967f99.zip
doubango-631fffee8a28b1bec5ed1f1d26a20e0135967f99.tar.gz
-
Diffstat (limited to 'schemas')
-rw-r--r--schemas/ECMLv2.xml379
-rw-r--r--schemas/IANA XML Registry.htm736
-rw-r--r--schemas/IANA XML Registry_fichiers/iana1.jpgbin0 -> 22290 bytes
-rw-r--r--schemas/OMA-SUP-AC_ap0009_presence-V1_0-20081223-C.txt186
-rw-r--r--schemas/OMA-SUP-XSD_prs_presContent-V1_0-20081223-C.xsd146
-rw-r--r--schemas/OMA-SUP-XSD_prs_presrules-V1_0_1-20080627-A.txt108
-rw-r--r--schemas/OMA-SUP-XSD_prs_pubRules-V1_0-20081223-C.xsd147
-rw-r--r--schemas/OMA-SUP-XSD_prs_suppnotFilter-V1_0-20081223-C.txt133
-rw-r--r--schemas/OMNA Schema-based Namespace Registry.htm1259
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/Box.js101
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/Browser.js58
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/Controls.css123
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/Display.js326
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/DomEventMixin.js239
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/Ease.js367
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/EasingEquations.js292
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/Editor.css222
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/EventMixin.js158
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/MsAjaxMixin.js115
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/OMA.css348
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/Overlay.js91
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/RadMenu.js1219
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/RadMenuItem.js1479
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/RadMenuItemState.js22
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/Screen.js156
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/Scroll.js601
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/Ticker.js65
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/banner-logo-right.pngbin0 -> 35436 bytes
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/button-on-Technical-Information.pngbin0 -> 669 bytes
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/button-out-About-OMA.pngbin0 -> 1356 bytes
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/button-out-Implementations.pngbin0 -> 38937 bytes
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/button-out-Member-meetings.pngbin0 -> 1995 bytes
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/button-out-Membership.pngbin0 -> 1742 bytes
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/button-out-News.pngbin0 -> 1326 bytes
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/button-out-TestFests.pngbin0 -> 1476 bytes
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/button-search.pngbin0 -> 328 bytes
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/home-logo.pngbin0 -> 2330 bytes
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/icon-apply-for-login.pngbin0 -> 507 bytes
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/icon-contact.pngbin0 -> 210 bytes
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/icon-login.pngbin0 -> 369 bytes
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/icon-sitemap.pngbin0 -> 189 bytes
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/indication-navigation-arrow-grey.pngbin0 -> 218 bytes
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/json.js214
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/menu.css105
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/style(1).css420
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/style.css438
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/styles.css135
-rw-r--r--schemas/OMNA Schema-based Namespace Registry_fichiers/template.css672
-rw-r--r--schemas/basicPolicy.xml35
-rw-r--r--schemas/caps.xml409
-rw-r--r--schemas/cipid.xml14
-rw-r--r--schemas/civicAddr.xml65
-rw-r--r--schemas/civicLoc.xml51
-rw-r--r--schemas/common-policy.xsd80
-rw-r--r--schemas/common-schema.xsd33
-rw-r--r--schemas/conference-info.xml301
-rw-r--r--schemas/consent-rules.xml34
-rw-r--r--schemas/consent-status.xml18
-rw-r--r--schemas/contact-1.0.xml388
-rw-r--r--schemas/copycontrol.xml33
-rw-r--r--schemas/cpl.xml533
-rw-r--r--schemas/data-model.xsd51
-rw-r--r--schemas/dataProvider.xml55
-rw-r--r--schemas/dchk1.xml218
-rw-r--r--schemas/dialog-info.xml125
-rw-r--r--schemas/domain-1.0.xml432
-rw-r--r--schemas/dreg1.xml445
-rw-r--r--schemas/dssc.xml109
-rw-r--r--schemas/e164epp-1.0.xml90
-rw-r--r--schemas/e164val-1.0.xml127
-rw-r--r--schemas/e164valex-1.1.xml46
-rw-r--r--schemas/enum-token-1.0.xml71
-rw-r--r--schemas/enum-tokendata-1.0.xml89
-rw-r--r--schemas/epp-1.0.xml446
-rw-r--r--schemas/eppcom-1.0.xml105
-rw-r--r--schemas/ereg1.xml1199
-rw-r--r--schemas/geopriv10.xml56
-rw-r--r--schemas/gruuinfo.xml22
-rw-r--r--schemas/held.xml162
-rw-r--r--schemas/host-1.0.xml238
-rw-r--r--schemas/im-iscomposing.xsd22
-rw-r--r--schemas/imdn.xml179
-rw-r--r--schemas/iodef-1.0.xml980
-rw-r--r--schemas/ipfix.xml532
-rw-r--r--schemas/iris1.xml374
-rw-r--r--schemas/kpml-request.xml107
-rw-r--r--schemas/kpml-response.xml29
-rw-r--r--schemas/location-type-registry.xml53
-rw-r--r--schemas/lost1.xsd311
-rw-r--r--schemas/msml.xml70
-rw-r--r--schemas/netconf.xml564
-rw-r--r--schemas/notification.xml146
-rw-r--r--schemas/patch-ops-error.xml72
-rw-r--r--schemas/patch-ops.xml94
-rw-r--r--schemas/pidf-caps.xsd419
-rw-r--r--schemas/pidf-diff.xml43
-rw-r--r--schemas/pidf.xsd91
-rw-r--r--schemas/poc_listService-v1_0.xsd144
-rw-r--r--schemas/poc_pocRules-v1_0.xsd107
-rw-r--r--schemas/poc_pocusage-v1_0.xsd98
-rw-r--r--schemas/pres-rules.xml124
-rw-r--r--schemas/prs_pidf_omapres-v1_0.xsd214
-rw-r--r--schemas/prs_presRules-v1_0.xsd108
-rw-r--r--schemas/reginfo.xsd107
-rw-r--r--schemas/resource-lists-diff.xml48
-rw-r--r--schemas/resource-lists.xml71
-rw-r--r--schemas/resource-lists.xsd85
-rw-r--r--schemas/rgp-1.0.xml131
-rw-r--r--schemas/rls-services.xsd31
-rw-r--r--schemas/rpid.xsd507
-rw-r--r--schemas/secDNS-1.0.xml94
-rw-r--r--schemas/simple-filter.xml86
-rw-r--r--schemas/spirits-1.0.xml108
-rw-r--r--schemas/timed-status.xml19
-rw-r--r--schemas/traceroute-1.0.xml659
-rw-r--r--schemas/vts-lang.xml6
-rw-r--r--schemas/watcherinfo.xsd78
-rw-r--r--schemas/xcap-caps.xsd61
-rw-r--r--schemas/xcap-error.xsd141
-rw-r--r--schemas/xcon-conference-info-diff.xml55
-rw-r--r--schemas/xdm_commonPolicy-v1_0.xsd107
-rw-r--r--schemas/xdm_rsrclst_appusage-v1_0.xsd108
-rw-r--r--schemas/xdm_rsrclst_uriusage-v1_0.xsd96
-rw-r--r--schemas/xdm_xcapDirectory-v1_0.xsd115
-rw-r--r--schemas/xdm_xcapError-v1_0.xsd129
125 files changed, 24863 insertions, 0 deletions
diff --git a/schemas/ECMLv2.xml b/schemas/ECMLv2.xml
new file mode 100644
index 0000000..787b1b8
--- /dev/null
+++ b/schemas/ECMLv2.xml
@@ -0,0 +1,379 @@
+<?xml version="1.0" encoding="utf-8"?>
+ <!-- Electronic Commerce Modeling Language v2 -->
+
+ <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified">
+
+ <xs:attribute name="Mode">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="Query"/>
+ <xs:enumeration value="Assert"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="id" type="xs:ID"/>
+ <xs:complexType name="EcomSimpleText">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute ref="Mode" use="optional"/>
+ <xs:attribute ref="id" use="optional"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+
+ <xs:element name="Ecom">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="ShipTo"/>
+ <xs:element ref="BillTo"/>
+ <xs:element ref="ReceiptTo"/>
+ <xs:element ref="Payment"/>
+ <xs:element ref="Loyalty"/>
+ <xs:element ref="User"/>
+ <xs:element ref="Merchant"/>
+ <xs:element ref="Transaction"/>
+ <xs:element ref="TransactionComplete"/>
+ </xs:choice>
+ <xs:attribute ref="Mode" use="optional"/>
+ <xs:attribute ref="id" use="optional"/>
+ <xs:attribute name="ConsumerOrderID" use="optional"/>
+ <xs:attribute name="Merchant" use="optional"/>
+ <xs:attribute name="Processor" use="optional"/>
+ <xs:attribute name="SchemaVersion" type="xs:string"
+ fixed="urn:ietf:params:ecml:v2.0"/>
+ <xs:attribute name="WalletID" use="optional"/>
+ <xs:attribute name="WalletLocation" type="xs:anyURI"
+ use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="ShipTo">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="Postal"/>
+ <xs:element ref="Telecom"/>
+ <xs:element ref="Online"/>
+ </xs:choice>
+ <xs:attribute ref="Mode" use="optional"/>
+ <xs:attribute ref="id" use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="BillTo">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="Postal"/>
+ <xs:element ref="Telecom"/>
+ <xs:element ref="Online"/>
+ </xs:choice>
+ <xs:attribute ref="Mode" use="optional"/>
+ <xs:attribute ref="id" use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="ReceiptTo">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="Postal"/>
+ <xs:element ref="Telecom"/>
+ <xs:element ref="Online"/>
+ </xs:choice>
+ <xs:attribute ref="Mode" use="optional"/>
+ <xs:attribute ref="id" use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Postal">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="Name"/>
+ <xs:element ref="Company"/>
+ <xs:element ref="Street"/>
+ <xs:element ref="City"/>
+ <xs:element ref="StateProv"/>
+ </xs:choice>
+ <xs:attribute ref="Mode" use="optional"/>
+ <xs:attribute ref="id" use="optional"/>
+ <xs:attribute name="PostalCode" type="xs:NMTOKEN"
+ use="optional"/>
+ <xs:attribute name="CountryCode" type="xs:NMTOKEN"
+ use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Telecom">
+ <xs:complexType mixed="true">
+ <xs:sequence maxOccurs="unbounded">
+ <xs:element name="Phone">
+ <xs:complexType>
+ <xs:attribute ref="Mode" use="optional"/>
+ <xs:attribute ref="id" use="optional"/>
+ <xs:attribute name="Number"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ <xs:attribute ref="Mode" use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Online">
+ <xs:complexType mixed="true">
+ <xs:sequence maxOccurs="unbounded">
+ <xs:element name="Email">
+ <xs:complexType>
+ <xs:attribute ref="Mode" use="optional"/>
+ <xs:attribute ref="id" use="optional"/>
+ <xs:attribute name="Address"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ <xs:attribute ref="Mode" use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Payment">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Card">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="ExpDate"/>
+ <xs:element ref="ValidDate" minOccurs="0"/>
+ </xs:sequence>
+ <xs:attribute ref="Mode" use="optional"/>
+ <xs:attribute ref="id" use="optional"/>
+ <xs:attribute name="Name" use="optional"/>
+ <xs:attribute name="Type" type="xs:NMTOKEN"
+ use="optional"/>
+ <xs:attribute name="Number" type="xs:decimal"/>
+ <xs:attribute name="Protocols" type="xs:NMTOKENS"
+ use="optional"/>
+ <xs:attribute name="Verification"
+ type="xs:NMTOKEN" use="optional"/>
+ <xs:attribute name="Issuer" type="xs:NMTOKEN"
+ use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ <xs:attribute ref="Mode" use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Loyalty">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="ExpDate"/>
+ <xs:element ref="ValidDate" minOccurs="0"/>
+ </xs:sequence>
+ <xs:attribute ref="Mode" use="optional"/>
+ <xs:attribute ref="id" use="optional"/>
+ <xs:attribute name="Name" use="optional"/>
+ <xs:attribute name="Type" type="xs:NMTOKEN"
+ use="optional"/>
+ <xs:attribute name="Number" type="xs:NMTOKEN"/>
+ <xs:attribute name="Verification" type="xs:NMTOKEN"
+ use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="ExpDate">
+ <xs:complexType>
+ <xs:attribute ref="Mode" use="optional"/>
+ <xs:attribute ref="id" use="optional"/>
+ <xs:attribute name="Day" type="xs:positiveInteger"/>
+ <xs:attribute name="Month" type="xs:positiveInteger"/>
+ <xs:attribute name="Year" type="xs:positiveInteger"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="ValidDate">
+ <xs:complexType>
+ <xs:attribute ref="Mode" use="optional"/>
+ <xs:attribute ref="id" use="optional"/>
+ <xs:attribute name="Day" type="xs:positiveInteger"/>
+ <xs:attribute name="Month" type="xs:positiveInteger"/>
+ <xs:attribute name="Year" type="xs:positiveInteger"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="User">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="UserID"/>
+ <xs:element ref="Password"/>
+ </xs:choice>
+ <xs:attribute ref="Mode" use="optional"/>
+ <xs:attribute ref="id" use="optional"/>
+ <xs:attribute name="CertificateURL" type="xs:anyURI"
+ use="optional"/>
+ <xs:attribute name="DataCountry" type="xs:NMTOKEN"
+ use="optional"/>
+ <xs:attribute name="DataLanguage" type="xs:language"
+ use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Transaction">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="Id"/>
+ <xs:element ref="Code"/>
+ <xs:element ref="Date"/>
+ <xs:element ref="Data"/>
+ <xs:element ref="Inquiry"/>
+ <xs:element ref="Signature"/>
+ </xs:choice>
+ <xs:attribute ref="Mode" use="optional"/>
+ <xs:attribute name="Currency" type="xs:NMTOKEN"
+ use="optional"/>
+ <xs:attribute name="Type" type="xs:NMTOKEN"
+ use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Date">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="Effective" minOccurs="0"/>
+ <xs:element ref="Settle" minOccurs="0"/>
+ <xs:element ref="Capture" minOccurs="0"/>
+ </xs:sequence>
+ <xs:attribute ref="Mode" use="optional"/>
+ <xs:attribute ref="id" use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Data">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="Trace"/>
+ <xs:element ref="PrivateUse"/>
+ <xs:element ref="Response"/>
+ <xs:element ref="AAV"/>
+ <xs:element ref="Track1"/>
+ <xs:element ref="Track2"/>
+ </xs:choice>
+ <xs:attribute ref="Mode" use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Merchant">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Terminal">
+ <xs:complexType>
+ <xs:attribute ref="Mode" use="optional"/>
+ <xs:attribute ref="id" use="optional"/>
+ <xs:attribute name="Data" use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ <xs:attribute ref="Mode" use="optional"/>
+ <xs:attribute ref="id" use="optional"/>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="AAV" type="EcomSimpleText"/>
+ <xs:element name="Capture">
+ <xs:complexType>
+ <xs:attribute ref="Mode" use="optional"/>
+ <xs:attribute ref="id" use="optional"/>
+ <xs:attribute name="Day" type="xs:NMTOKEN"/>
+ <xs:attribute name="Month" type="xs:NMTOKEN"/>
+ <xs:attribute name="Year" type="xs:NMTOKEN"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="City" type="EcomSimpleText"/>
+ <xs:element name="Code">
+ <xs:complexType>
+ <xs:attribute ref="Mode" use="optional"/>
+ <xs:attribute name="Processing" use="optional"/>
+ <xs:attribute name="Approval" type="xs:NMTOKEN"
+ use="optional"/>
+ <xs:attribute name="Retrieval" type="xs:NMTOKEN"
+ use="optional"/>
+ <xs:attribute name="Action" type="xs:NMTOKEN"
+ use="optional"/>
+ <xs:attribute name="Reason" type="xs:NMTOKEN"
+ use="optional"/>
+ <xs:attribute name="POS" type="xs:NMTOKEN"
+ use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Company" type="EcomSimpleText"/>
+ <xs:element name="Effective">
+ <xs:complexType>
+ <xs:attribute ref="Mode" use="optional"/>
+ <xs:attribute ref="id" use="optional"/>
+ <xs:attribute name="Day" type="xs:NMTOKEN"/>
+ <xs:attribute name="Month" type="xs:NMTOKEN"/>
+ <xs:attribute name="Year" type="xs:NMTOKEN"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Id">
+ <xs:complexType>
+ <xs:attribute ref="Mode" use="optional"/>
+ <xs:attribute ref="id" use="optional"/>
+ <xs:attribute name="CID" type="xs:NMTOKEN"
+ use="optional"/>
+ <xs:attribute name="Reference" type="xs:NMTOKEN"
+ use="optional"/>
+ <xs:attribute name="Acquire" type="xs:NMTOKEN"
+ use="optional"/>
+ <xs:attribute name="Forward" type="xs:NMTOKEN"
+ use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Inquiry">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:anyURI">
+ <xs:attribute ref="Mode" use="optional"/>
+ <xs:attribute ref="id" use="optional"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Name">
+ <xs:complexType>
+ <xs:attribute ref="Mode" use="optional"/>
+ <xs:attribute ref="id" use="optional"/>
+ <xs:attribute name="Prefix" type="xs:NMTOKEN"
+ use="optional"/>
+ <xs:attribute name="First" type="xs:NMTOKEN"
+ use="optional"/>
+ <xs:attribute name="Middle" type="xs:NMTOKEN"
+ use="optional"/>
+ <xs:attribute name="Last" type="xs:NMTOKEN"
+ use="optional"/>
+ <xs:attribute name="Suffix" type="xs:NMTOKEN"
+ use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Password" type="EcomSimpleText"/>
+ <xs:element name="PrivateUse" type="EcomSimpleText"/>
+ <xs:element name="Response" type="EcomSimpleText"/>
+ <xs:element name="Settle">
+ <xs:complexType>
+ <xs:attribute ref="Mode" use="optional"/>
+ <xs:attribute ref="id" use="optional"/>
+ <xs:attribute name="Day" type="xs:NMTOKEN"/>
+ <xs:attribute name="Month" type="xs:NMTOKEN"/>
+ <xs:attribute name="Year" type="xs:NMTOKEN"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Signature">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute ref="Mode" use="optional"/>
+ <xs:attribute ref="id" use="optional"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="StateProv" type="EcomSimpleText"/>
+ <xs:element name="Street">
+ <xs:complexType>
+ <xs:attribute ref="Mode" use="optional"/>
+ <xs:attribute ref="id" use="optional"/>
+ <xs:attribute name="Line1"/>
+ <xs:attribute name="Line2" use="optional"/>
+ <xs:attribute name="Line3" use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Trace" type="EcomSimpleText"/>
+ <xs:element name="Track1" type="EcomSimpleText"/>
+ <xs:element name="Track2" type="EcomSimpleText"/>
+ <xs:element name="TransactionComplete">
+ <xs:complexType/>
+ </xs:element>
+ <xs:element name="UserID" type="EcomSimpleText"/>
+
+ </xs:schema>
diff --git a/schemas/IANA XML Registry.htm b/schemas/IANA XML Registry.htm
new file mode 100644
index 0000000..c9ab9d7
--- /dev/null
+++ b/schemas/IANA XML Registry.htm
@@ -0,0 +1,736 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!-- saved from url=(0056)http://www.iana.org/assignments/xml-registry/schema.html -->
+<HTML><HEAD><TITLE>IANA | XML Registry</TITLE>
+<META content="MSHTML 6.00.2900.3627" name=GENERATOR>
+<META http-equiv=Content-Type content="text/html; charset=utf-8">
+<META content=S:\OFFICE97\OFFICE\html.dot name=Template></HEAD>
+<BODY bgColor=#ffffff>
+<P></P>
+<CENTER>
+<TABLE cellSpacing=0 cellPadding=0 width="95%" border=0>
+ <TBODY>
+ <TR>
+ <TD align=middle width="25%">
+ <DIV align=left><IMG height=145 alt="ICANN Logo"
+ src="IANA XML Registry_fichiers/iana1.jpg" width=258 align=bottom
+ naturalsizeflag="0"></DIV></TD>
+ <TD align=middle width="68%"><STRONG><FONT
+ size=+2>schema</FONT></STRONG></TD></TR>
+ <TR>
+ <TD colSpan=2>
+ <HR noShade SIZE=1>
+
+ <P align=center><FONT size=+2></FONT></P>
+ <BLOCKQUOTE>
+ <P>[<A href="http://www.rfc-editor.org/rfc/rfc3688.txt">RFC3688</A>]
+ defines an IANA maintained registry of XML documents used within IETF
+ protocols. These documents are divided into classes: XML Namespaces,
+ Document Type Declarations, Schemas, and RDF Schemas. The following are
+ the entries for the 'schema' class of documents.</P><STRONG></STRONG>
+ <TABLE width=814 border=1>
+ <TBODY>
+ <TR borderColor=#333333>
+ <TD width=96>
+ <DIV align=center>ID</DIV></TD>
+ <TD width=307>
+ <DIV align=center>URI</DIV></TD>
+ <TD width=96>
+ <DIV align=center>Filename</DIV></TD>
+ <TD width=237>
+ <DIV align=center>Reference</DIV></TD></TR>
+ <TR>
+ <TD style="TEXT-ALIGN: left">common-policy</TD>
+ <TD
+ style="TEXT-ALIGN: left">urn:ietf:params:xml:schema:common-policy</TD>
+ <TD style="TEXT-ALIGN: left"><A
+ href="http://www.iana.org/assignments/xml-registry/schema/common-policy.xsd">common-policy</A></TD>
+ <TD style="TEXT-ALIGN: left"><A
+ href="http://www.rfc-editor.org/rfc/rfc4745.txt">[RFC4745]</A></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>conference-info</DIV></TD>
+ <TD>
+ <DIV
+align=left>urn:ietf:params:xml:schema:conference-info</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/conference-info.xsd">conference-info</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.ietf.org/rfc/rfc4575.txt">RFC4575</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>consent-rules</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:consent-rules</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/consent-rules.xsd">consent-rules</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.ietf.org/rfc/rfc5361.txt">RFC5361</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>consent-status</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:consent-status</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/consent-status.xsd">consent-status</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.ietf.org/rfc/rfc5362.txt">RFC5362</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>contact-1.0</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:contact-1.0</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/contact-1.0.xsd">contact-1.0</A></DIV></TD>
+ <TD style="TEXT-ALIGN: left">[<A
+ href="http://tools.ietf.org/html/rfc5733">RFC5733</A>]</TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>copycontrol</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:copycontrol</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/copycontrol.xsd">copycontrol</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc5364.txt">RFC5364</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>cpl</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:cpl</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/cpl.xsd">cpl</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc3880.txt">RFC3880</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>dchk1</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:dchk1</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/dchk1.xsd">dchk1</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc5144.txt">RFC5144</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>dialog-info</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:dialog-info</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/dialog-info.xsd">dialog-info</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc4235.txt">RFC4235</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>domain-1.0</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:domain-1.0</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/domain-1.0.xsd">domain-1.0</A></DIV></TD>
+ <TD style="TEXT-ALIGN: left"><A
+ href="http://tools.ietf.org/html/rfc5731">[RFC5731]</A></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>dreg1</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:dreg1</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/dreg1.xsd">dreg1</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc3982.txt">RFC3982</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>dssc</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:dssc</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/dssc.xsd">dssc</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://tools.ietf.org/html/draft-ietf-ltans-dssc-12">RFC-ietf-ltans-dssc-12.txt</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>e164epp-1.0</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:e164epp-1.0</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/e164epp-1.0.xsd">e164epp-1.0</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc4114.txt">RFC4114</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>e164val-1.0</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:e164val-1.0</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/e164val-1.0.xsd">e164val-1.0</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc5076.txt">RFC5076</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>e164valex-1.1</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:e164valex-1.1</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/e164valex-1.1.xsd">e164valex-1.1</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc5076.txt">RFC5076</A>]</DIV></TD></TR>
+ <TR>
+ <TD>
+ <DIV align=left>ECMLv2</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:ECMLv2</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/ECMLv2.xsd">ECMLv2</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc4112.txt">RFC4112</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>enum-token-1.0</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:enum-token-1.0</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/enum-token-1.0.xsd">enum-token-1.0</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc5105.txt">RFC5105</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>enum-tokendata-1.0</DIV></TD>
+ <TD>
+ <DIV
+ align=left>urn:ietf:params:xml:schema:enum-tokendata-1.0</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/enum-tokendata-1.0.xsd">enum-tokendata-1.0</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc5105.txt">RFC5105</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>epp-1.0</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:epp-1.0</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/epp-1.0.xsd">epp-1.0</A></DIV></TD>
+ <TD style="TEXT-ALIGN: left"><A
+ href="http://tools.ietf.org/html/rfc5730">[RFC5730</A>]</A></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>eppcom-1.0</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:eppcom-1.0</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/eppcom-1.0.xsd">eppcom-1.0</A></DIV></TD>
+ <TD style="TEXT-ALIGN: left"><A
+ href="http://tools.ietf.org/html/rfc5730">[RFC5730</A>]</A></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>ereg1</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:ereg1</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/ereg1.xsd">ereg1</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.ietf.org/rfc/rfc4414.txt">RFC4414</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>geopriv:held</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:geopriv:held</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/geopriv/held.xsd">geopriv:held</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://tools.ietf.org/html/draft-ietf-geopriv-http-location-delivery-16">RFC-ietf-geopriv-http-location-delivery-16.txt</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>gruuinfo</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:gruuinfo</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/gruuinfo.xsd">gruuinfo</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.ietf.org/internet-drafts/draft-ietf-sipping-gruu-reg-event-09.txt">RFC-ietf-sipping-gruu-reg-event-09.txt</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>host-1.0</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:host-1.0</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/host-1.0.xsd">host-1.0</A></DIV></TD>
+ <TD style="TEXT-ALIGN: left"><A
+ href="http://tools.ietf.org/html/rfc5732">[RFC5732]</A></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>im-iscomposing</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:im-iscomposing</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/im-iscomposing.xsd">im-iscomposing</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc3994.txt">RFC3994</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD style="TEXT-ALIGN: left">imdn</TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:imdn</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/imdn.xsd">imdn</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc5438.txt">RFC5438</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD style="TEXT-ALIGN: left">iodef-1.0</TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:iodef-1.0</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/iodef-1.0.xsd">iodef-1.0</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc5070.txt">RFC5070</A>]</DIV></TD></TR>
+ <TR>
+ <TD style="TEXT-ALIGN: left">ipfix</TD>
+ <TD
+ style="TEXT-ALIGN: left">urn:ietf:params:xml:schema:ipfix-info</TD>
+ <TD style="TEXT-ALIGN: left"><A
+ href="http://www.iana.org/assignments/xml-registry/schema/ipfix.xsd">ipfix</A></TD>
+ <TD style="TEXT-ALIGN: left">[<A
+ href="http://www.rfc-editor.org/rfc/rfc5102.txt">RFC5102]</A></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>iris1</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:iris1</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/iris1.xsd">iris1</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc3981.txt">RFC3981</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>kpml-request</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:kpml-request</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/kpml-request.xsd">kpml-request</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc4730.txt">RFC4730</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>kpml-response</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:kpml-response</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/kpml-response.xsd">kpml-response</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc4730.txt">RFC4730</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>location-type</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:location-type</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/location-type-registry.xml">location-type</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc4589.txt">RFC4589</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>lost1</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:lost1</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/lost1.xsd">lost1</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc5222.txt">RFC5222</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>msml</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:msml</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/msml.xsd">msml</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://tools.ietf.org/html/draft-saleem-msml-09">RFC-saleem-msml-09</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>netconf</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:netconf</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/netconf.xsd">netconf</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc4741.txt">RFC4741</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>notification</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:notification</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/notification.xsd">notification</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://tools.ietf.org/html/rfc5277">RFC5277</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>patch-ops</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:patch-ops</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/patch-ops.xsd">patch-ops</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc5261.txt">RFC5261</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>patch-ops-error</DIV></TD>
+ <TD>
+ <DIV
+align=left>urn:ietf:params:xml:schema:patch-ops-error</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/patch-ops-error.xsd">patch-ops-error</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc5261.txt">RFC5261</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>pidf:caps</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:pidf:caps</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/pidf/caps.xsd">pidf:caps</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc5196.txt">RFC5196</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>pidf:cipid</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:pidf:cipid</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/pidf/cipid.xsd">pidf:cipid</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.ietf.org/rfc/rfc4482.txt">RFC4482</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>pidf:common-schema</DIV></TD>
+ <TD>
+ <DIV
+ align=left>urn:ietf:params:xml:schema:pidf:common-schema</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/pidf/common-schema.xsd">pidf:common-schema</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.ietf.org/rfc/rfc4479.txt">RFC4479</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>pidf:data-model</DIV></TD>
+ <TD>
+ <DIV
+align=left>urn:ietf:params:xml:schema:pidf:data-model</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/pidf/data-model.xsd">pidf:data-model</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.ietf.org/rfc/rfc4479.txt">RFC4479</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>pidf:geopriv10</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:pidf:geopriv10</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/pidf/geopriv10.xsd">pidf:geopriv10</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc4119.txt">RFC4119</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>pidf:geopriv10:basicPolicy</DIV></TD>
+ <TD>
+ <DIV
+ align=left>urn:ietf:params:xml:schema:pidf:geopriv10:basicPolicy</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/pidf/geopriv10/basicPolicy.xsd">pidf:geopriv10:basicPolicy</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc4119.txt">RFC4119</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>pidf:geopriv10:civicAddr</DIV></TD>
+ <TD>
+ <DIV
+ align=left>urn:ietf:params:xml:schema:pidf:geopriv10:civicAddr</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/pidf/geopriv10/civicAddr.xsd">pidf:geopriv10:civicAddr</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc5139.txt">RFC5139</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>pidf:geopriv10:civicLoc</DIV></TD>
+ <TD>
+ <DIV
+ align=left>urn:ietf:params:xml:schema:pidf:geopriv10:civicLoc</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/pidf/geopriv10/civicLoc.xsd">pidf:geopriv10:civicLoc</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc4119.txt">RFC4119</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>pidf:geopriv10:dataProvider</DIV></TD>
+ <TD>
+ <DIV
+ align=left>urn:ietf:params:xml:schema:pidf:geopriv10:dataProvider</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/pidf/geopriv10/dataProvider.xsd">pidf:geopriv10:dataProvider</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc4119.txt">RFC4119</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>pidf:status:rpid</DIV></TD>
+ <TD>
+ <DIV
+ align=left>urn:ietf:params:xml:schema:pidf:status:rpid</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/pidf/status/rpid.xsd">pidf:status:rpid</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.ietf.org/rfc/rfc4480.txt">RFC4480</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>pidf:timed-status</DIV></TD>
+ <TD>
+ <DIV
+ align=left>urn:ietf:params:xml:schema:pidf:timed-status</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/pidf/timed-status.xsd">pidf:timed-status</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.ietf.org/rfc/rfc4481.txt">RFC4481</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>pidf-diff</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:pidf-diff</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/pidf-diff.xsd">pidf-diff</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc5262.txt">RFC5262</A>]</DIV></TD></TR>
+ <TR>
+ <TD style="TEXT-ALIGN: left">pres-rules</TD>
+ <TD
+ style="TEXT-ALIGN: left">urn:ietf:params:xml:schema:pres-rules</TD>
+ <TD style="TEXT-ALIGN: left"><A
+ href="http://www.iana.org/assignments/xml-registry/schema/pres-rules.xsd">pres-rules</A></TD>
+ <TD style="TEXT-ALIGN: left"><A
+ href="http://www.rfc-editor.org/rfc/rfc5025.txt">[RFC5025]</A></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>resource-lists</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:resource-lists</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/resource-lists.xsd">resource-lists</A></DIV></TD>
+ <TD style="TEXT-ALIGN: left"><A
+ href="http://www.rfc-editor.org/rfc/rfc4826.txt">[RFC4826]</A></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>resource-lists-diff</DIV></TD>
+ <TD>
+ <DIV
+ align=left>urn:ietf:params:xml:schema:resource-lists-diff</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/resource-lists-diff.xsd">resource-lists-diff</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.ietf.org/rfc/rfc5362.txt">RFC5362</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>rgp-1.0</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:rgp-1.0</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/rgp-1.0.xsd">rgp-1.0</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc3915.txt">RFC3915</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>rls-services</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:rls-services</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/rls-services.xsd">rls-services</A></DIV></TD>
+ <TD style="TEXT-ALIGN: left"><A
+ href="http://www.rfc-editor.org/rfc/rfc4826.txt">[RFC4826]</A></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>secDNS-1.0</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:secDNS-1.0</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/secDNS-1.0.xsd">secDNS-1.0</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.ietf.org/rfc/rfc4310.txt">RFC4310</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>simple-filter</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:simple-filter</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/simple-filter.xsd">simple-filter</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.ietf.org/rfc/rfc4661.txt">RFC4661</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>spirits-1.0</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:spirits-1.0</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/spirits-1.0.xsd">spirits-1.0</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc3910.txt">RFC3910</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>traceroute-1.0</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:traceroute-1.0</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/traceroute-1.0.xsd">traceroute-1.0</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc5388.txt">RFC5388</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>vts-lang</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:vts-lang</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/vts-lang.xsd">vts-lang</A></DIV></TD>
+ <TD>
+ <DIV align=left>[<A
+ href="http://www.rfc-editor.org/rfc/rfc4153.txt">RFC4153</A>]</DIV></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>xcap-caps</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:xcap-caps</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/xcap-caps.xsd">xcap-caps</A></DIV></TD>
+ <TD style="TEXT-ALIGN: left"><A
+ href="http://www.rfc-editor.org/rfc/rfc4826.txt">[RFC4825]</A></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>xcap-error</DIV></TD>
+ <TD>
+ <DIV align=left>urn:ietf:params:xml:schema:xcap-error</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/xcap-error.xsd">xcap-error</A></DIV></TD>
+ <TD style="TEXT-ALIGN: left"><A
+ href="http://www.rfc-editor.org/rfc/rfc4826.txt">[RFC4825]</A></TD></TR>
+ <TR borderColor=#333333>
+ <TD>
+ <DIV align=left>xcon-conference-info-diff</DIV></TD>
+ <TD>
+ <DIV
+ align=left>urn:ietf:params:xml:schema:xcon-conference-info-diff</DIV></TD>
+ <TD>
+ <DIV align=left><A
+ href="http://www.iana.org/assignments/xml-registry/schema/xcon-conference-info-diff.xsd">xcon-conference-info-diff</A></DIV></TD>
+ <TD style="TEXT-ALIGN: left"><A
+ href="http://tools.ietf.org/html/draft-ietf-xcon-event-package">[RFC-ietf-xcon-event-package-01.txt]</A></TD></TR></TBODY></TABLE>
+ <P>&nbsp;</P></BLOCKQUOTE>
+ <P></P>
+ <HR align=center noShade SIZE=1>
+
+ <DIV align=center><FONT size=-1>Please send comments on this website to <A
+ href="mailto:webmaster&amp;iana.org">webmaster&amp;iana.org</A>.</FONT></DIV>
+ <P align=center><FONT size=-1>Page updated 2009-10-13<BR></FONT><FONT
+ size=-2>(c) 2004 The Internet Assigned Numbers Authority</FONT> <FONT
+ size=-2>All rights reserved.</FONT></P></TD></TR>
+ <TR>
+ <TD colSpan=2>&nbsp;</TD></TR></TBODY></TABLE></CENTER></BODY></HTML>
diff --git a/schemas/IANA XML Registry_fichiers/iana1.jpg b/schemas/IANA XML Registry_fichiers/iana1.jpg
new file mode 100644
index 0000000..1fddc68
--- /dev/null
+++ b/schemas/IANA XML Registry_fichiers/iana1.jpg
Binary files differ
diff --git a/schemas/OMA-SUP-AC_ap0009_presence-V1_0-20081223-C.txt b/schemas/OMA-SUP-AC_ap0009_presence-V1_0-20081223-C.txt
new file mode 100644
index 0000000..11db5ac
--- /dev/null
+++ b/schemas/OMA-SUP-AC_ap0009_presence-V1_0-20081223-C.txt
@@ -0,0 +1,186 @@
+COMMENT
+
+This file is the Presence Application Characteristics file of OMA PRS 2.0
+
+FILE INFORMATION
+
+OMA Permanent Document
+ File: OMA-SUP-AC_ap0009_presence-V1_0-20081223-C
+
+ Type: Text
+
+Public Reachable Information
+ Path: http://www.openmobilealliance.org/Tech/omna/omna-dm_ac.aspx
+ Name: ac_ap0009_presence-v1_0.txt
+
+NORMATIVE INFORMATION
+
+Information about this file can be found in PRS 2.0 Technical Specification available at
+http://www.openmobilealliance.org/
+
+Send comments to technical-comments@mail.openmobilealliance.org
+
+LEGAL DISCLAIMER
+
+Use of this document is subject to all of the terms and conditions
+of the Use Agreement located at
+ http://www.openmobilealliance.org/UseAgreement.html
+
+You may use this document or any part of the document for internal
+or educational purposes only, provided you do not modify, edit or
+take out of context the information in this document in any manner.
+Information contained in this document may be used, at your sole
+risk, for any purposes.
+
+You may not use this document in any other manner without the prior
+written permission of the Open Mobile Alliance. The Open Mobile
+Alliance authorizes you to copy this document, provided that you
+retain all copyright and other proprietary notices contained in the
+original materials on any copies of the materials and that you
+comply strictly with these terms. This copyright permission does
+not constitute an endorsement of the products or services. The
+Open Mobile Alliance assumes no responsibility for errors or
+omissions in this document.
+
+Each Open Mobile Alliance member has agreed to use reasonable
+endeavors to inform the Open Mobile Alliance in a timely manner of
+Essential IPR as it becomes aware that the Essential IPR is related
+to the prepared or published specification. However, the members
+do not have an obligation to conduct IPR searches. The declared
+Essential IPR is publicly available to members and non-members of
+the Open Mobile Alliance and may be found on the "OMA IPR
+Declarations" list at http://www.openmobilealliance.org/ipr.html.
+The Open Mobile Alliance has not conducted an independent IPR review
+of this document and the information contained herein, and makes no
+representations or warranties regarding third party IPR, including
+without limitation patents, copyrights or trade secret rights. This
+document may contain inventions for which you must obtain licenses
+from third parties before making, using or selling the inventions.
+Defined terms above are set forth in the schedule to the Open Mobile
+Alliance Application Form.
+
+NO REPRESENTATIONS OR WARRANTIES (WHETHER EXPRESS OR IMPLIED) ARE
+MADE BY THE OPEN MOBILE ALLIANCE OR ANY OPEN MOBILE ALLIANCE MEMBER
+OR ITS AFFILIATES REGARDING ANY OF THE IPR’S REPRESENTED ON THE "OMA
+IPR DECLARATIONS" LIST, INCLUDING, BUT NOT LIMITED TO THE ACCURACY,
+COMPLETENESS, VALIDITY OR RELEVANCE OF THE INFORMATION OR WHETHER OR
+NOT SUCH RIGHTS ARE ESSENTIAL OR NON-ESSENTIAL.
+
+THE OPEN MOBILE ALLIANCE IS NOT LIABLE FOR AND HEREBY DISCLAIMS ANY
+DIRECT, INDIRECT, PUNITIVE, SPECIAL, INCIDENTAL, CONSEQUENTIAL, OR
+EXEMPLARY DAMAGES ARISING OUT OF OR IN CONNECTION WITH THE USE OF
+DOCUMENTS AND THE INFORMATION CONTAINED IN THE DOCUMENTS.
+
+© 2008 Open Mobile Alliance Ltd. All Rights Reserved.
+Used with the permission of the Open Mobile Alliance Ltd. under the
+terms set forth above.
+
+IDENTIFYING INFORMATION
+#######################
+APPID: ap0009.
+APPID type: OMNA.
+Owner: OMA Presence and Availability Working Group.
+Contact: OMA Presence and Availability Working Group <TECHNICAL-COMMENTS@MAIL.OPENMOBILEALLIANCE.ORG>.
+Registration version: 1.0.
+Registration timestamp: 2008-12-23.
+Application description: Presence.
+Application reference:
+Presence_SIMPLE (PRS) V2.0 enabler. OMA PRS Enabler Release 2.0 specifications,
+URL:http://www.openmobilealliance.org/documents.asp.
+
+
+WELL-KNOWN PARAMETERS
+#####################
+Characteristic/name: APPLICATION/APPID.
+Status: Required.
+Occurs: 1/1.
+Default value: None.
+Used values: ap0009.
+Interpretation: To uniquely identify the Presence enabler.
+-------
+Characteristic/name: APPLICATION/NAME.
+Status: Required.
+Occurs: 1/1.
+Default value: None.
+Used values: N/A.
+Interpretation: User displayable name for the Presence enabler.
+-------
+Characteristic/name: APPLICATION/PROVIDER-ID.
+Status: Optional.
+Occurs: 0/1.
+Default value: None.
+Used values: N/A.
+Interpretation: Identity of the Presence service provider.
+-------
+Characteristic/name: APPLICATION/TO-APPREF.
+Status: Required.
+Occurs: 1/1.
+Default value: None.
+Used values: N/A.
+Interpretation: It specifies the linkage between Presence and the SIP-IP-core, e.g. IMS.
+-------
+Characteristic/name: APPLICATION/TO-NAPID.
+Status: Required if direct use of Network Access Point supported.
+Occurs: 1/*.
+Default value: None.
+Used values: N/A.
+Interpretation: Specifies the network access point used for a given application.
+-------
+Characteristic/name: APPLICATION/CLIENT-OBJ-DATA-LIMIT.
+Status: Required.
+Occurs: 1/1.
+Default value: None.
+Used values: An Integer.
+Interpretation: Limits the size of the MIME object data to the specified value in bytes when PUBLISH requests are used in the Presence Source. When the Presence Server does not support the MIME objects as direct content of PUBLISH requests, this parameter is set to zero.
+-------
+Characteristic/name: APPLICATION/CONTENT-SERVER-URI.
+Status: Optional.
+Occurs: 0/1.
+Default value: None.
+Used values: A HTTP URI.
+Interpretation: Defines the HTTP URI of the Content Server to be used for content indirection.
+-------
+Characteristic/name: APPLICATION/SOURCE-THROTTLE-PUBLISH.
+Status: Optional.
+Occurs: 0/1.
+Default value: None.
+Used values: An Integer.
+Interpretation: Defines the minimum time interval (in seconds) between two consecutive publications from a Presence Source.
+-------
+Characteristic/name: MAX-NUMBER-OF-SUBSCRIPTIONS-IN-PRESENCE-LIST.
+Status: Optional.
+Occurs: 0/1.
+Default value: None.
+Used values: An Integer.
+Interpretation: Limits the number of back-end subscriptions allowed for Presence List.
+-------
+Characteristic/name: APPLICATION/SERVICE-URI-TEMPLATE.
+Status: Optional.
+Occurs: 0/1.
+Default value: None.
+Used values: N/A.
+Interpretation: Defines the syntax of the Service URI.
+-------
+Characteristic/name: RLS-URI.
+Status: Optional.
+Occurs: 0/1.
+Default value: None.
+Used values: A SIP URI.
+Interpretation: Defines the SIP URI of the Resource List Server to be used for subscribing to Request-contained Presence List.
+-------
+EXAMPLE
+#######
+<characteristic type="APPLICATION">
+<parm name="APPID" value="ap0009"/>
+<parm name="NAME" value="Presence"/>
+<parm name="PROVIDER-ID" value="Best"/>
+<parm name="TO-APPREF" value="SIP-IP CORE"/>
+<parm name="TO-NAPID" value="IMS-NAP"/>
+<parm name="CLIENT-OBJ-DATA-LIMIT" value="5120"/>
+<parm name="CONTENT-SERVER-URI" value="http://example.operator.com"/>
+<parm name="SOURCE-THROTTLE-PUBLISH" value="3600"/>
+<parm name="MAX-NUMBER-OF-SUBSCRIPTIONS-IN-PRESENCE-LIST" value="10"/>
+<parm name="SERVICE-URI-TEMPLATE" value="&lt;xui&gt;;pres-list=&lt;id&gt;"/>
+<parm name="RLS-URI" value="sip:rls@rls.operator.com"/>
+</characteristic>
+###END###
diff --git a/schemas/OMA-SUP-XSD_prs_presContent-V1_0-20081223-C.xsd b/schemas/OMA-SUP-XSD_prs_presContent-V1_0-20081223-C.xsd
new file mode 100644
index 0000000..902cd08
--- /dev/null
+++ b/schemas/OMA-SUP-XSD_prs_presContent-V1_0-20081223-C.xsd
@@ -0,0 +1,146 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+Schema for the Presence Content Application Usage
+ version - 1.0
+ date - 23 Dec 2008
+
+FILE INFORMATION
+
+ OMA Permanent Document
+ File: OMA-SUP-XSD_prs_presContent-V1_0-20081223-C
+ Type: Text - Schema Description
+
+ Public Reachable Information
+ Path: http://www.openmobilealliance.org/Technical/schemas.aspx
+ Name: prs_presContent-v1_0.xsd
+NORMATIVE INFORMATION
+
+ Information about this file can be found in the specification
+
+ OMA-TS-Presence-SIMPLE_Content_XDM-V1_0
+
+ available at http://www.openmobilealliance.org/
+
+ Send comments to technical-comments@mail.openmobilealliance.org
+
+LEGAL DISCLAIMER
+
+ Use of this document is subject to all of the terms and conditions
+ of the Use Agreement located at
+ http://www.openmobilealliance.org/UseAgreement.html
+
+ You may use this document or any part of the document for internal
+ or educational purposes only, provided you do not modify, edit or
+ take out of context the information in this document in any manner.
+ Information contained in this document may be used, at your sole
+ risk, for any purposes.
+
+ You may not use this document in any other manner without the prior
+ written permission of the Open Mobile Alliance. The Open Mobile
+ Alliance authorizes you to copy this document, provided that you
+ retain all copyright and other proprietary notices contained in the
+ original materials on any copies of the materials and that you
+ comply strictly with these terms. This copyright permission does
+ not constitute an endorsement of the products or services. The
+ Open Mobile Alliance assumes no responsibility for errors or
+ omissions in this document.
+
+ Each Open Mobile Alliance member has agreed to use reasonable
+ endeavors to inform the Open Mobile Alliance in a timely manner of
+ Essential IPR as it becomes aware that the Essential IPR is related
+ to the prepared or published specification. However, the members
+ do not have an obligation to conduct IPR searches. The declared
+ Essential IPR is publicly available to members and non-members of
+ the Open Mobile Alliance and may be found on the "OMA IPR
+ Declarations" list at http://www.openmobilealliance.org/ipr.html.
+ The Open Mobile Alliance has not conducted an independent IPR review
+ of this document and the information contained herein, and makes no
+ representations or warranties regarding third party IPR, including
+ without limitation patents, copyrights or trade secret rights. This
+ document may contain inventions for which you must obtain licenses
+ from third parties before making, using or selling the inventions.
+ Defined terms above are set forth in the schedule to the Open Mobile
+ Alliance Application Form.
+
+ NO REPRESENTATIONS OR WARRANTIES (WHETHER EXPRESS OR IMPLIED) ARE
+ MADE BY THE OPEN MOBILE ALLIANCE OR ANY OPEN MOBILE ALLIANCE MEMBER
+ OR ITS AFFILIATES REGARDING ANY OF THE IPR'S REPRESENTED ON THE "OMA
+ IPR DECLARATIONS" LIST, INCLUDING, BUT NOT LIMITED TO THE ACCURACY,
+ COMPLETENESS, VALIDITY OR RELEVANCE OF THE INFORMATION OR WHETHER OR
+ NOT SUCH RIGHTS ARE ESSENTIAL OR NON-ESSENTIAL.
+
+ THE OPEN MOBILE ALLIANCE IS NOT LIABLE FOR AND HEREBY DISCLAIMS ANY
+ DIRECT, INDIRECT, PUNITIVE, SPECIAL, INCIDENTAL, CONSEQUENTIAL, OR
+ EXEMPLARY DAMAGES ARISING OUT OF OR IN CONNECTION WITH THE USE OF
+ DOCUMENTS AND THE INFORMATION CONTAINED IN THE DOCUMENTS.
+
+ Copyright 2008 Open Mobile Alliance Ltd. All Rights Reserved.
+ Used with the permission of the Open Mobile Alliance Ltd. under the
+ terms set forth above.
+
+-->
+
+<xs:schema targetNamespace="urn:oma:xml:prs:pres-content"
+ xmlns="urn:oma:xml:prs:pres-content"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified">
+
+<xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd"/>
+
+<xs:element name="content">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="mime-type" minOccurs="0">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:anyAttribute processContents="lax"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="encoding" minOccurs="0">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:anyAttribute processContents="lax"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="description" minOccurs="0" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute ref="xml:lang"/>
+ <xs:anyAttribute processContents="lax"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="data">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:anyAttribute processContents="lax"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute processContents="lax"/>
+ </xs:complexType>
+</xs:element>
+
+</xs:schema>
+
+
+
diff --git a/schemas/OMA-SUP-XSD_prs_presrules-V1_0_1-20080627-A.txt b/schemas/OMA-SUP-XSD_prs_presrules-V1_0_1-20080627-A.txt
new file mode 100644
index 0000000..01d85e0
--- /dev/null
+++ b/schemas/OMA-SUP-XSD_prs_presrules-V1_0_1-20080627-A.txt
@@ -0,0 +1,108 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ PRS - Pres rules
+ version - 1.1
+ date - 27 Jun 2008
+
+ FILE INFORMATION
+
+ OMA Permanent Document
+ File: OMA-SUP-XSD_prs_presrules-V1_0_1-20080627-A
+ Type: Text - Schema Description
+
+ Public Reachable Information
+ Path: http://www.openmobilealliance.org/tech/profiles
+ Name: prs_presrules-v1_0.xsd
+
+ NORMATIVE INFORMATION
+
+ Information about this file can be found in the specification
+ OMA-TS-Presence_SIMPLE_XDM-V1_1
+ available at http://www.openmobilealliance.org/
+
+ Send comments to technical-comments@mail.openmobilealliance.org
+
+ LEGAL DISCLAIMER
+
+ Use of this document is subject to all of the terms and conditions
+ of the Use Agreement located at
+ http://www.openmobilealliance.org/UseAgreement.html
+
+ You may use this document or any part of the document for internal
+ or educational purposes only, provided you do not modify, edit or
+ take out of context the information in this document in any manner.
+ Information contained in this document may be used, at your sole
+ risk, for any purposes.
+
+ You may not use this document in any other manner without the prior
+ written permission of the Open Mobile Alliance. The Open Mobile
+ Alliance authorizes you to copy this document, provided that you
+ retain all copyright and other proprietary notices contained in the
+ original materials on any copies of the materials and that you
+ comply strictly with these terms. This copyright permission does
+ not constitute an endorsement of the products or services. The
+ Open Mobile Alliance assumes no responsibility for errors or
+ omissions in this document.
+
+ Each Open Mobile Alliance member has agreed to use reasonable
+ endeavors to inform the Open Mobile Alliance in a timely manner of
+ Essential IPR as it becomes aware that the Essential IPR is related
+ to the prepared or published specification. However, the members
+ do not have an obligation to conduct IPR searches. The declared
+ Essential IPR is publicly available to members and non-members of
+ the Open Mobile Alliance and may be found on the "OMA IPR
+ Declarations" list at http://www.openmobilealliance.org/ipr.html.
+ The Open Mobile Alliance has not conducted an independent IPR review
+ of this document and the information contained herein, and makes no
+ representations or warranties regarding third party IPR, including
+ without limitation patents, copyrights or trade secret rights. This
+ document may contain inventions for which you must obtain licenses
+ from third parties before making, using or selling the inventions.
+ Defined terms above are set forth in the schedule to the Open Mobile
+ Alliance Application Form.
+
+ NO REPRESENTATIONS OR WARRANTIES (WHETHER EXPRESS OR IMPLIED) ARE
+ MADE BY THE OPEN MOBILE ALLIANCE OR ANY OPEN MOBILE ALLIANCE MEMBER
+ OR ITS AFFILIATES REGARDING ANY OF THE IPR'S REPRESENTED ON THE "OMA
+ IPR DECLARATIONS" LIST, INCLUDING, BUT NOT LIMITED TO THE ACCURACY,
+ COMPLETENESS, VALIDITY OR RELEVANCE OF THE INFORMATION OR WHETHER OR
+ NOT SUCH RIGHTS ARE ESSENTIAL OR NON-ESSENTIAL.
+
+ THE OPEN MOBILE ALLIANCE IS NOT LIABLE FOR AND HEREBY DISCLAIMS ANY
+ DIRECT, INDIRECT, PUNITIVE, SPECIAL, INCIDENTAL, CONSEQUENTIAL, OR
+ EXEMPLARY DAMAGES ARISING OUT OF OR IN CONNECTION WITH THE USE OF
+ DOCUMENTS AND THE INFORMATION CONTAINED IN THE DOCUMENTS.
+
+ Copyright 2008 Open Mobile Alliance Ltd. All Rights Reserved.
+ Used with the permission of the Open Mobile Alliance Ltd. under the
+ terms set forth above.
+-->
+
+<xs:schema targetNamespace="urn:oma:xml:prs:pres-rules"
+ xmlns="urn:oma:xml:prs:pres-rules"
+ xmlns:pr="urn:ietf:params:xml:ns:pres-rules"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified" attributeFormDefault="unqualified">
+
+ <!-- This import brings in the IETF presence authorization rules -->
+ <xs:import namespace="urn:ietf:params:xml:ns:pres-rules"/>
+
+ <!-- OMA specific "transformations" child elements -->
+ <xs:element name="provide-willingness" type="pr:booleanPermission" />
+ <xs:element name="provide-network-availability" type="pr:booleanPermission" />
+ <xs:element name="provide-session-participation" type="pr:booleanPermission" />
+ <xs:element name="provide-registration-state" type="pr:booleanPermission"/>
+ <xs:element name="provide-barring-state" type="pr:booleanPermission"/>
+ <xs:element name="provide-geopriv">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="false"/>
+ <xs:enumeration value="full"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+
+ <xs:element name="service-id" type="xs:string"/>
+
+</xs:schema>
diff --git a/schemas/OMA-SUP-XSD_prs_pubRules-V1_0-20081223-C.xsd b/schemas/OMA-SUP-XSD_prs_pubRules-V1_0-20081223-C.xsd
new file mode 100644
index 0000000..9b543d7
--- /dev/null
+++ b/schemas/OMA-SUP-XSD_prs_pubRules-V1_0-20081223-C.xsd
@@ -0,0 +1,147 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ PRS - Pres Pub rules
+ version - 1.0
+ date - 23 December 2008
+
+ FILE INFORMATION
+
+ OMA Permanent Document
+ File: OMA-SUP-XSD_prs_pubRules-V1_0-20081223-C
+ Type: Text - Schema Description
+
+ Public Reachable Information
+ Path: http://www.openmobilealliance.org/tech/profiles
+ Name: prs_pub_rules-v1_0.xsd
+
+ NORMATIVE INFORMATION
+
+ Information about this file can be found in the specification
+ OMA-TS-Presence_SIMPLE_XDM-V2_0
+ available at http://www.openmobilealliance.org/
+
+ Send comments to technical-comments@mail.openmobilealliance.org
+
+ LEGAL DISCLAIMER
+
+ Use of this document is subject to all of the terms and conditions
+ of the Use Agreement located at
+ http://www.openmobilealliance.org/UseAgreement.html
+
+ You may use this document or any part of the document for internal
+ or educational purposes only, provided you do not modify, edit or
+ take out of context the information in this document in any manner.
+ Information contained in this document may be used, at your sole
+ risk, for any purposes.
+
+ You may not use this document in any other manner without the prior
+ written permission of the Open Mobile Alliance. The Open Mobile
+ Alliance authorizes you to copy this document, provided that you
+ retain all copyright and other proprietary notices contained in the
+ original materials on any copies of the materials and that you
+ comply strictly with these terms. This copyright permission does
+ not constitute an endorsement of the products or services. The
+ Open Mobile Alliance assumes no responsibility for errors or
+ omissions in this document.
+
+ Each Open Mobile Alliance member has agreed to use reasonable
+ endeavors to inform the Open Mobile Alliance in a timely manner of
+ Essential IPR as it becomes aware that the Essential IPR is related
+ to the prepared or published specification. However, the members
+ do not have an obligation to conduct IPR searches. The declared
+ Essential IPR is publicly available to members and non-members of
+ the Open Mobile Alliance and may be found on the "OMA IPR
+ Declarations" list at http://www.openmobilealliance.org/ipr.html.
+ The Open Mobile Alliance has not conducted an independent IPR review
+ of this document and the information contained herein, and makes no
+ representations or warranties regarding third party IPR, including
+ without limitation patents, copyrights or trade secret rights. This
+ document may contain inventions for which you must obtain licenses
+ from third parties before making, using or selling the inventions.
+ Defined terms above are set forth in the schedule to the Open Mobile
+ Alliance Application Form.
+
+ NO REPRESENTATIONS OR WARRANTIES (WHETHER EXPRESS OR IMPLIED) ARE
+ MADE BY THE OPEN MOBILE ALLIANCE OR ANY OPEN MOBILE ALLIANCE MEMBER
+ OR ITS AFFILIATES REGARDING ANY OF THE IPR'S REPRESENTED ON THE "OMA
+ IPR DECLARATIONS" LIST, INCLUDING, BUT NOT LIMITED TO THE ACCURACY,
+ COMPLETENESS, VALIDITY OR RELEVANCE OF THE INFORMATION OR WHETHER OR
+ NOT SUCH RIGHTS ARE ESSENTIAL OR NON-ESSENTIAL.
+
+ THE OPEN MOBILE ALLIANCE IS NOT LIABLE FOR AND HEREBY DISCLAIMS ANY
+ DIRECT, INDIRECT, PUNITIVE, SPECIAL, INCIDENTAL, CONSEQUENTIAL, OR
+ EXEMPLARY DAMAGES ARISING OUT OF OR IN CONNECTION WITH THE USE OF
+ DOCUMENTS AND THE INFORMATION CONTAINED IN THE DOCUMENTS.
+
+ Copyright 2008 Open Mobile Alliance Ltd. All Rights Reserved.
+ Used with the permission of the Open Mobile Alliance Ltd. under the
+ terms set forth above.
+-->
+
+<xs:schema targetNamespace="urn:oma:xml:prs:pub-rules"
+ xmlns="urn:oma:xml:prs:pub-rules"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified" attributeFormDefault="unqualified">
+
+ <!-- This import brings in the IETF common policy -->
+ <xs:import namespace="urn:ietf:params:xml:ns:common-policy"/>
+ <!-- This import brings in the common extensions for authorization rules in [XDMSPEC]-->
+ <xs:import namespace="urn:oma:xml:xdm:common-policy"/>
+
+ <!--OMA specific "actions" child elements -->
+ <xs:element name="pub-handling">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="block"/>
+ <xs:enumeration value="allow"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+
+ <xs:element name="perm-handling">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="block"/>
+ <xs:enumeration value="allow"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+
+
+ <!--OMA specific "transformations" child elements -->
+
+ <xs:simpleType name="booleanPermission">
+ <xs:restriction base="xs:boolean"/>
+ </xs:simpleType>
+ <xs:element name="allow-services" type="booleanPermission"/>
+ <xs:element name="allow-devices" type="booleanPermission"/>
+ <xs:element name="allow-persons" type="booleanPermission"/>
+ <xs:element name="allow-activities" type="booleanPermission"/>
+ <xs:element name="allow-class" type="booleanPermission"/>
+ <xs:element name="allow-mood" type="booleanPermission"/>
+ <xs:element name="allow-place-type" type="booleanPermission"/>
+ <xs:element name="allow-status-icon" type="booleanPermission"/>
+ <xs:element name="allow-time-offset" type="booleanPermission"/>
+ <xs:element name="allow-note" type="booleanPermission"/>
+ <xs:element name="allow-willingness" type="booleanPermission"/>
+ <xs:element name="allow-network-availability" type="booleanPermission"/>
+ <xs:element name="allow-session-participation" type="booleanPermission"/>
+ <xs:element name="allow-registration-state" type="booleanPermission"/>
+ <xs:element name="allow-barring-state" type="booleanPermission"/>
+ <xs:element name="allow-geopriv" type="booleanPermission"/>
+ <xs:element name="allow-all-attributes">
+ <xs:complexType/>
+ </xs:element>
+ <xs:element name="allow-unknown-attribute">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="booleanPermission">
+ <xs:attribute name="name" type="xs:string" use="required"/>
+ <xs:attribute name="ns" type="xs:string" use="required"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+
+</xs:schema> \ No newline at end of file
diff --git a/schemas/OMA-SUP-XSD_prs_suppnotFilter-V1_0-20081223-C.txt b/schemas/OMA-SUP-XSD_prs_suppnotFilter-V1_0-20081223-C.txt
new file mode 100644
index 0000000..7a7a913
--- /dev/null
+++ b/schemas/OMA-SUP-XSD_prs_suppnotFilter-V1_0-20081223-C.txt
@@ -0,0 +1,133 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ Presence - Event notification suppression filter
+ version - 1.0
+ date - 23 December 2008
+
+ FILE INFORMATION
+
+ OMA Permanent Document
+ File: OMA-SUP-XSD_prs_suppnotFilter-V1_0-20081223-C
+ Type: Text - Schema Description
+
+ Public Reachable Information
+ Path: http://www.openmobilealliance.org/tech/profiles
+ Name: prs_suppnotFilter-v1_0.xsd
+
+ NORMATIVE INFORMATION
+
+ Information about this file can be found in the specification
+ OMA-TS-Presence_SIMPLE-V2_0
+ available at http://www.openmobilealliance.org/
+
+ Send comments to technical-comments@mail.openmobilealliance.org
+
+ LEGAL DISCLAIMER
+
+ Use of this document is subject to all of the terms and conditions
+ of the Use Agreement located at
+ http://www.openmobilealliance.org/UseAgreement.html
+
+ You may use this document or any part of the document for internal
+ or educational purposes only, provided you do not modify, edit or
+ take out of context the information in this document in any manner.
+ Information contained in this document may be used, at your sole
+ risk, for any purposes.
+
+ You may not use this document in any other manner without the prior
+ written permission of the Open Mobile Alliance. The Open Mobile
+ Alliance authorizes you to copy this document, provided that you
+ retain all copyright and other proprietary notices contained in the
+ original materials on any copies of the materials and that you
+ comply strictly with these terms. This copyright permission does
+ not constitute an endorsement of the products or services. The
+ Open Mobile Alliance assumes no responsibility for errors or
+ omissions in this document.
+
+ Each Open Mobile Alliance member has agreed to use reasonable
+ endeavors to inform the Open Mobile Alliance in a timely manner of
+ Essential IPR as it becomes aware that the Essential IPR is related
+ to the prepared or published specification. However, the members
+ do not have an obligation to conduct IPR searches. The declared
+ Essential IPR is publicly available to members and non-members of
+ the Open Mobile Alliance and may be found on the "OMA IPR
+ Declarations" list at http://www.openmobilealliance.org/ipr.html.
+ The Open Mobile Alliance has not conducted an independent IPR review
+ of this document and the information contained herein, and makes no
+ representations or warranties regarding third party IPR, including
+ without limitation patents, copyrights or trade secret rights. This
+ document may contain inventions for which you must obtain licenses
+ from third parties before making, using or selling the inventions.
+ Defined terms above are set forth in the schedule to the Open Mobile
+ Alliance Application Form.
+
+ NO REPRESENTATIONS OR WARRANTIES (WHETHER EXPRESS OR IMPLIED) ARE
+ MADE BY THE OPEN MOBILE ALLIANCE OR ANY OPEN MOBILE ALLIANCE MEMBER
+ OR ITS AFFILIATES REGARDING ANY OF THE IPR'S REPRESENTED ON THE "OMA
+ IPR DECLARATIONS" LIST, INCLUDING, BUT NOT LIMITED TO THE ACCURACY,
+ COMPLETENESS, VALIDITY OR RELEVANCE OF THE INFORMATION OR WHETHER OR
+ NOT SUCH RIGHTS ARE ESSENTIAL OR NON-ESSENTIAL.
+
+ THE OPEN MOBILE ALLIANCE IS NOT LIABLE FOR AND HEREBY DISCLAIMS ANY
+ DIRECT, INDIRECT, PUNITIVE, SPECIAL, INCIDENTAL, CONSEQUENTIAL, OR
+ EXEMPLARY DAMAGES ARISING OUT OF OR IN CONNECTION WITH THE USE OF
+ DOCUMENTS AND THE INFORMATION CONTAINED IN THE DOCUMENTS.
+
+ Copyright 2008 Open Mobile Alliance Ltd. All Rights Reserved.
+ Used with the permission of the Open Mobile Alliance Ltd. under the
+ terms set forth above.
+-->
+
+<xs:schema xmlns="urn:oma:xml:prs:suppnot-filter"
+ xmlns:sf="urn:ietf:params:xml:ns:simple-filter"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="urn:oma:xml:prs:suppnot-filter"
+ elementFormDefault="qualified" attributeFormDefault="unqualified">
+
+<!-- Import IETF simple filter -->
+<xs:import namespace="urn:ietf:params:xml:ns:simple-filter"/>
+
+<xs:element name="suppnot-filter-set" type="SuppNotFilterSetType"/>
+
+<xs:complexType name="SuppNotFilterSetType">
+ <xs:sequence>
+ <xs:element name="ns-bindings" type="sf:NSBindings" minOccurs="0"/>
+ <xs:element name="suppnot-filter" type="SuppNotFilterType" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute processContents="lax"/>
+</xs:complexType>
+
+<xs:complexType name="SuppNotFilterType">
+ <xs:sequence>
+ <xs:element name="presattrib" type="presattribType" maxOccurs="unbounded"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="id" type="xs:string" use="required"/>
+ <xs:anyAttribute processContents="lax"/>
+</xs:complexType>
+
+<xs:complexType name="presattribType">
+ <xs:sequence>
+ <xs:element name="suppress-if-match" type="IfmatchType" maxOccurs="unbounded"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute processContents="lax"/>
+</xs:complexType>
+
+<xs:complexType name="IfmatchType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="type" type="TypeType" use="optional" default="xpath"/>
+ <xs:anyAttribute processContents="lax"/>
+ </xs:extension>
+ </xs:simpleContent>
+</xs:complexType>
+
+<xs:simpleType name="TypeType">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="xpath"/>
+ </xs:restriction>
+</xs:simpleType>
+
+</xs:schema>
diff --git a/schemas/OMNA Schema-based Namespace Registry.htm b/schemas/OMNA Schema-based Namespace Registry.htm
new file mode 100644
index 0000000..ec84840
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry.htm
@@ -0,0 +1,1259 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
+<!-- saved from url=(0071)http://www.openmobilealliance.org/tech/omna/omna-schema-namespaces.aspx -->
+<HTML xmlns="http://www.w3.org/1999/xhtml"><HEAD><TITLE>OMNA Schema-based Namespace Registry</TITLE>
+<META http-equiv=Content-Type content="text/html; charset=utf-8"><LINK
+href="OMNA Schema-based Namespace Registry_fichiers/style.css" type=text/css
+rel=stylesheet><LINK
+href="OMNA Schema-based Namespace Registry_fichiers/OMA.css" type=text/css
+rel=stylesheet>
+<META content=SKYPE_TOOLBAR_PARSER_COMPATIBLE name=SKYPE_TOOLBAR>
+<META content="OMNA Schema-based Namespace Registry" name=description>
+<META name=author>
+<META id=_ctl0_menuTag name=menuTag runat="server"><LINK
+href="C:\projects\doubango\schemas\OMNA Schema-based Namespace Registry_fichiers\style(1).css"
+type=text/css rel=stylesheet><LINK
+href="OMNA Schema-based Namespace Registry_fichiers/template.css" type=text/css
+rel=stylesheet>
+<SCRIPT language=javascript
+src="OMNA Schema-based Namespace Registry_fichiers/Display.js"></SCRIPT>
+<LINK href="OMNA Schema-based Namespace Registry_fichiers/menu.css"
+type=text/css rel=stylesheet><LINK
+href="OMNA Schema-based Namespace Registry_fichiers/styles.css" type=text/css
+rel=stylesheet><LINK
+href="OMNA Schema-based Namespace Registry_fichiers/Editor.css" type=text/css
+rel=stylesheet><LINK
+href="OMNA Schema-based Namespace Registry_fichiers/Controls.css" type=text/css
+rel=stylesheet>
+<META content="MSHTML 6.00.2900.3627" name=GENERATOR></HEAD>
+<BODY style="MARGIN-TOP: 0px; BACKGROUND: #353131; MARGIN-LEFT: 0px"
+leftMargin=0 topMargin=0>
+<DIV style="WIDTH: 100%; HEIGHT: 100%" align=center>
+<FORM id=aspnetForm style="MARGIN-TOP: 0px; MARGIN-LEFT: 0px" name=aspnetForm
+action=omna-schema-namespaces.aspx method=post><INPUT id=__VIEWSTATE type=hidden
+value=/wEPDwUINjY0NDQ3MjUPZBYCZg9kFgICAw9kFgRmD2QWAgIBDw8WAh4ISW1hZ2VVcmwFK34vT3JnYW5pemF0aW9uL09NQS9pbWFnZXMvYnV0dG9uLXNlYXJjaC5wbmdkZAIFD2QWAgIBDw8WnAEeDUVuYWJsZURvY2tpbmdnHhFJbWFnZXNQYXRoVG9TdHJpcGUeEVVwbG9hZEltYWdlc1BhdGhzFQEIL2ltYWdlcy8eE1NwZWxsRGljdGlvbmFyeVBhdGhlHhBEZWxldGVGbGFzaFBhdGhzFQEAHhtTcGVsbEN1c3RvbURpY3Rpb25hcnlTdWZmaXgFBy1jdXN0b20eC1RodW1iU3VmZml4BQlUaHVtYm5haWweI1NwZWxsQ3VzdG9tRGljdGlvbmFyeVNvdXJjZVR5cGVOYW1lZR4YU3RyaXBBYnNvbHV0ZUltYWdlc1BhdGhzZx4ESHRtbAXVnwE8cCBhbGlnbj0nbGVmdCc+PGZvbnQgY2xhc3M9J09tYVAxJz48Zm9udCBjbGFzcz0nT21hVGl0bGUxJz48Zm9udCBjbGFzcz0nT21hVGl0bGUxJz5PTU5BIFNjaGVtYS1iYXNlZCBOYW1lc3BhY2UgUmVnaXN0cnk8YnIgLz48L2ZvbnQ+PC9mb250PjxiciAvPjxiciAvPlRoZSBPTU5BIG5hbWVzcGFjZSByZWdpc3RyeSBpbmNsdWRlcyBzY2hlbWEtYmFzZWQgVVJOcy4gVGhlc2UgYWxsIHVzZSB0aGUgT01BcmVzb3VyY2UgdGFnIG9mIG9tYSBhcyBwcmVzZW50ZWQgb24gdGhlIDxhIGhyZWY9J09NTkEtbmFtZXNwYWNlcy5hc3B4Jz5PTU5BIE5hbWVzcGFjZSBNYWluIFBhZ2UuIDwvYT48YnIgLz48YnIgLz5UaGUgU2NoZW1hLWJhc2VkIG5hbWVzcGFjZSBpcyBmdXJ0aGVyIHN1Yi1kaXZpZGVkIGludG8gZG9tYWlucyB0aGF0IGFyZSBub21pbmFsbHkgYXNzb2NpYXRlZCB0byBlbmFibGVycy4gPGJyIC8+PGJyIC8+VGhlIGFsbG9jYXRpb24gb2YgVVJOcyB3aXRoaW4gdGhlIHhtbCByZXNvdXJjZSBzZXQgaXMgYnBhc2VkIHVwb24gYSBuYW1pbmcgbW9kZWwgdGhhdCB1c2VzIGRvbWFpbiBzZWdyZWdhdGlvbiBvZiB0aGUgbmFtZXNwYWNlLiBUaGUgbW9kZWwgZm9sbG93cyB0aGUgZm9sbG93aW5nIGdyYW1tYXI6PGJyIC8+PGJyIC8+PGJyIC8+PGI+dXJuOm9tYTp4bWw6PC9iPntTY2hlbWFEb21haW59PGI+OjwvYj48aT57U2NoZW1hU3BlY2lmaWNUYWd9PGJyIC8+PC9pPjxiciAvPjxiciAvPkZvciBlYWNoIGxpc3RlZCBVUk4gdGhlcmUgaXMgYW4gYXNzb2NpYXRlZCA8YSBocmVmPScvdGVjaG5pY2FsL3NjaGVtYXMuYXNweCc+T01BIFNjaGVtYTwvYT4uIFRoZSBmb2xsb3dpbmcgdGFibGUgbGlua3MgdG8gdGhlIGN1cnJlbnQgc2NoZW1hLWJhc2VkIFVSTiBhbGxvY2F0aW9ucy48YnIgLz48YnIgLz48L2ZvbnQ+PC9wPjxiciAvPjx0YWJsZSBzdHlsZT0nd2lkdGg6IDEwMCUnIGNlbGxzcGFjaW5nPScwJyBjZWxscGFkZGluZz0nMCcgYm9yZGVyPScwJz4gICAgPHRib2R5PiAgICAgICAgPHRyPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVUaXRyZTEnIGNvbHNwYW49JzQnPlNjaGVtYXMtYmFzZWQgVVJOIEFsbG9jYXRpb25zIDwvdGQ+ICAgICAgICA8L3RyPiAgICAgICAgPHRyPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVUaXRyZTInPkRvbWFpbiA8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVUaXRyZTInPkRlc2NyaXB0aW9uIDwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVRpdHJlMic+UmVnaXN0ZXJlZCBVUk4gPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlVGl0cmUyJz5TY2hlbWEgTGlua3MgPC90ZD4gICAgICAgIDwvdHI+ICAgICAgICA8dHI+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxYmlnJyB2YWxpZ249J3RvcCcgYWxpZ249J2xlZnQnIHJvd3NwYW49JzIxJz48YnIgLz4gICAgICAgICAgICBiY2FzdDwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz5Bc3NvY2lhdGVkIERlbGl2ZXJ5IFByb2NlZHVyZSBmb3IgRmlsZSBEZWxpdmVyeTwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxYmlnJz51cm46b21hOnhtbDpiY2FzdDpmZDphc3NvY2lhdGVkcHJvY2VkdXJlOjEuMDwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJz48YSBocmVmPScvVGVjaC9wcm9maWxlcy9iY2FzdF9mZF9hc3NvY2lhdGVkcHJvY2VkdXJlLXYxXzAueHNkJz5iY2FzdF9mZF9hc3NvY2lhdGVkcHJvY2VkdXJlLTFfMC54c2Q8L2E+PC90ZD4gICAgICAgIDwvdHI+ICAgICAgICA8dHI+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz5CYWNrZW5kIE1lc3NhZ2VzIGZvciBGaWxlIERlbGl2ZXJ5PC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFiaWcnPnVybjpvbWE6eG1sOmJjYXN0OmZkOmJhY2tlbmQ6MS4wPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnPjxhIGhyZWY9Jy90ZWNoL3Byb2ZpbGVzL2JjYXN0X2ZkX2JhY2tlbmQtdjFfMC54c2QnPjxpbnMgY2l0ZT0nbWFpbHRvOk5TTicgZGF0ZXRpbWU9JzIwMDktMDItMTBUMDQ6MjInPmJjYXN0X2ZkX2JhY2tlbmQtPC9pbnM+PGlucyBjaXRlPSdtYWlsdG86TlNOJyBkYXRldGltZT0nMjAwOS0wMi0xMFQwNDoyMyc+djwvaW5zPjxpbnMgY2l0ZT0nbWFpbHRvOk5TTicgZGF0ZXRpbWU9JzIwMDktMDItMTBUMDQ6MjInPjFfMC0ueHNkPC9pbnM+PC9hPsKgPC90ZD4gICAgICAgIDwvdHI+ICAgICAgICA8dHI+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz5GaWxlIERlc2NyaXB0aW9uIFRhYmxlIChGRFQpPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFiaWcnPnVybjpvbWE6eG1sOmJjYXN0OmZkOmZkdDoxLjA8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZSc+PGEgaHJlZj0nL3RlY2gvcHJvZmlsZXMvYmNhc3RfZmRfZmR0LXYxXzAueHNkJz5iY2FzdF9mZF9mZHQtdjFfMC54c2Q8L2E+PC90ZD4gICAgICAgIDwvdHI+ICAgICAgICA8dHI+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz5SZWNlcHRpb24gUmVwb3J0PC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFiaWcnPnVybjpvbWE6eG1sOmJjYXN0OmZkOnJlY2VwdGlvbnJlcG9ydDoxLjA8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZSc+PGEgaHJlZj0nL3RlY2gvcHJvZmlsZXMvYmNhc3RfZmRfcmVjZXB0aW9ucmVwb3J0LXYxXzAueHNkJz5iY2FzdF9mZF9yZWNlcHRpb25yZXBvcnQtdjFfMC54c2Q8L2E+PC90ZD4gICAgICAgIDwvdHI+ICAgICAgICA8dHI+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz5Ob3RpZmljYXRpb24gQmFja2VuZCBNZXNzYWdlczwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxYmlnJz51cm46b21hOnhtbDpiY2FzdDpudDpiYWNrZW5kOjEuMDwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJz48YSBocmVmPScvdGVjaC9wcm9maWxlcy9iY2FzdF9udF9tZXNzYWdlLXYxXzAueHNkJz5iY2FzdF9udF88c3Bhbj5iYWNrZW5kPC9zcGFuPi12MV8wLnhzZDwvYT48L3RkPiAgICAgICAgPC90cj4gICAgICAgIDx0cj4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnIHN0eWxlPSdoZWlnaHQ6IDQ2cHgnPk5vdGlmaWNhdGlvbiBNZXNzYWdlPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFiaWcnPnVybjpvbWE6eG1sOmJjYXN0Om50Om1lc3NhZ2U6MS4wPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnPjxhIGhyZWY9Jy90ZWNoL3Byb2ZpbGVzL2JjYXN0X250X21lc3NhZ2UtdjFfMC54c2QnPmJjYXN0X250X21lc3NhZ2UtdjFfMC54c2Q8L2E+PC90ZD4gICAgICAgIDwvdHI+ICAgICAgICA8dHI+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz5TZXJ2aWNlIFByb3Zpc2lvbmluZyBPcmRlciBRdWVyaWVzPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFiaWcnPnVybjpvbWE6eG1sOmJjYXN0OnByOm9yZGVycXVlcmllczoxLjA8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZSc+PGEgaHJlZj0nL3RlY2gvcHJvZmlsZXMvYmNhc3RfcHJfc2VydmljZW9yZGVyaW5nLXYxXzAueHNkJz5iY2FzdF9wcl9vcmRlcnF1ZXJpZXMtdjFfMC54c2Q8L2E+PC90ZD4gICAgICAgIDwvdHI+ICAgICAgICA8dHI+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz5FbmQgVXNlciBQcmVmZXJlbmNlczwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxYmlnJz51cm46b21hOnhtbDpiY2FzdDpwcjp1c2VycHJlZmVyZW5jZXM6MS4wPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnPjxhIGhyZWY9Jy90ZWNoL3Byb2ZpbGVzL2JjYXN0X3ByX3VzZXJwcmVmZXJlbmNlLXYxXzAueHNkJz5iY2FzdF9wcl91c2VycHJlZmVyZW5jZS12MV8wLnhzZDwvYT48L3RkPiAgICAgICAgPC90cj4gICAgICAgIDx0cj4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnIHN0eWxlPSdoZWlnaHQ6IDQ2cHgnPlJvYW1pbmcgQmFja2VuZCBNZXNzYWdlczwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxYmlnJz51cm46b21hOnhtbDpiY2FzdDpyb2FtaW5nOmJhY2tlbmQxLjA8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZSc+PGEgaHJlZj0nL3RlY2gvcHJvZmlsZXMvYmNhc3Rfcm9hbWluZy12MV8wLnhzZCc+YmNhc3Rfcm9hbWluZ19iYWNrZW5kLXYxXzAueHNkPC9hPjwvdGQ+ICAgICAgICA8L3RyPiAgICAgICAgPHRyPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZScgc3R5bGU9J2hlaWdodDogNDZweCc+Um9hbWluZyBGcm9udGVuZCBNZXNzYWdlczwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxYmlnJz51cm46b21hOnhtbDpiY2FzdDpyb2FtaW5nOmZyb250ZW5kMS4wPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnPjxhIGhyZWY9Jy90ZWNoL3Byb2ZpbGVzL2JjYXN0X3JvYW1pbmctdjFfMC54c2QnPmJjYXN0X3JvYW1pbmdfZnJvbnRlbmQtdjFfMC54c2Q8L2E+PC90ZD4gICAgICAgIDwvdHI+ICAgICAgICA8dHI+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz5Bc3NvY2lhdGVkIERlbGl2ZXJ5IFByb2NlZHVyZSA8c3Bhbj48c3Bhbj5mb3IgPC9zcGFuPjwvc3Bhbj5TdHJlYW08c3Bhbj48c3Bhbj48c3Bhbj5EZWxpdmVyeTwvc3Bhbj48L3NwYW4+PC9zcGFuPjwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxYmlnJz51cm46b21hOnhtbDpiY2FzdDpzZDphc3NvY2lhdGVkcHJvY2VkdXJlOjEuMDwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJz48YSBocmVmPScvdGVjaC9wcm9maWxlcy9iY2FzdF9zZF9hc3NvY2lhdGVkcHJvY2VkdXJlLXYxXzAueHNkJz48aW5zIGNpdGU9J21haWx0bzpVd2UlMjBSYXVzY2hlbmJhY2gsJTIwU2llbWVucycgZGF0ZXRpbWU9JzIwMDYtMTItMTRUMjI6MjUnPmJjYXN0XzwvaW5zPjxpbnMgY2l0ZT0nbWFpbHRvOlV3ZSUyMFJhdXNjaGVuYmFjaCwlMjBTaWVtZW5zJyBkYXRldGltZT0nMjAwNi0xMi0xNFQyMjoyNyc+czwvaW5zPjxpbnMgY2l0ZT0nbWFpbHRvOlV3ZSUyMFJhdXNjaGVuYmFjaCwlMjBTaWVtZW5zJyBkYXRldGltZT0nMjAwNi0xMi0xNFQyMjoyNSc+ZF88L2lucz48aW5zIGNpdGU9J21haWx0bzpVd2UlMjBSYXVzY2hlbmJhY2gsJTIwU2llbWVucywlMjBSMDEnIGRhdGV0aW1lPScyMDA2LTEyLTE1VDA0OjI5Jz5hc3NvY2lhdGVkcHJvY2VkdXJlPC9pbnM+PGRlbCBjaXRlPSdtYWlsdG86VXdlJTIwUmF1c2NoZW5iYWNoLCUyMFNpZW1lbnMsJTIwUjAxJyBkYXRldGltZT0nMjAwNi0xMi0xNVQwNDoyOSc+IDwvZGVsPi08aW5zIGNpdGU9J21haWx0bzpVd2UlMjBSYXVzY2hlbmJhY2gsJTIwU2llbWVucycgZGF0ZXRpbWU9JzIwMDYtMTItMTRUMjI6MjUnPnYxXzAueHNkPC9pbnM+PC9hPjwvdGQ+ICAgICAgICA8L3RyPiAgICAgICAgPHRyPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZScgc3R5bGU9J2hlaWdodDogNDZweCc+QmFja2VuZCBNZXNzYWdlcyBmb3IgU3RyZWFtIERlbGl2ZXJ5PC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFiaWcnPnVybjpvbWE6eG1sOmJjYXN0OnNkOmJhY2tlbmQ6MS4wwqA8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZSc+PGEgaHJlZj0nL3RlY2gvcHJvZmlsZXMvYmNhc3Rfc2RfYmFja2VuZC12MV8wLnhzZCc+YmNhc3Rfc2RfYmFja2VuZC12MV8wLS54c2Q8L2E+PC90ZD4gICAgICAgIDwvdHI+ICAgICAgICA8dHI+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz5SZWNlcHRpb24gUmVwb3J0IGZvciBTdHJlYW0gRGVsaXZlcnk8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWJpZyc+dXJuOm9tYTp4bWw6YmNhc3Q6c2Q6cmVjZXB0aW9ucmVwb3J0OjEuMDwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJz48YSBocmVmPScvdGVjaC9wcm9maWxlcy9iY2FzdF9mZF9yZWNlcHRpb25yZXBvcnQtdjFfMC54c2QnPmJjYXN0X3NkX3JlY2VwdGlvbnJlcG9ydC12MV8wLnhzZDwvYT48L3RkPiAgICAgICAgPC90cj4gICAgICAgIDx0cj4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnIHN0eWxlPSdoZWlnaHQ6IDQ2cHgnPlNlcnZpY2UgR3VpZGUgQmFjayBFbmQgTWVzc2FnZXM8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWJpZyc+dXJuOm9tYTp4bWw6YmNhc3Q6c2c6YmFja2VuZDoxLjA8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZSc+PGEgaHJlZj0nL3RlY2gvcHJvZmlsZXMvYmNhc3Rfc2dfYmFja2VuZC12MV8wLnhzZCc+YmNhc3Rfc2dfYmFja2VuZC12MV8wLnhzZDwvYT48L3RkPiAgICAgICAgPC90cj4gICAgICAgIDx0cj4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnIHN0eWxlPSdoZWlnaHQ6IDQ2cHgnPlNlcnZpY2UgR3VpZGUgRnJhZ21lbnRzPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFiaWcnPnVybjpvbWE6eG1sOmJjYXN0OnNnOmZyYWdtZW50czoxLjA8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZSc+PGEgaHJlZj0nL3RlY2gvcHJvZmlsZXMvYmNhc3Rfc2dfZnJhZ21lbnRzLXYxXzAueHNkJz5iY2FzdF9zZ19mcmFnbWVudHMtdjFfMC54c2Q8L2E+PC90ZD4gICAgICAgIDwvdHI+ICAgICAgICA8dHI+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz5TZXJ2aWNlIEd1aWRlIERlbGl2ZXJ5IERlc2NyaXB0b3I8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWJpZyc+dXJuOm9tYTp4bWw6YmNhc3Q6c2c6c2dkZDoxLjA8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZSc+PGEgaHJlZj0nL3RlY2gvcHJvZmlsZXMvYmNhc3Rfc2dfc2dkZC12MV8wLnhzZCc+YmNhc3Rfc2dfc2dkZC12MV8wLnhzZDwvYT48L3RkPiAgICAgICAgPC90cj4gICAgICAgIDx0cj4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnIHN0eWxlPSdoZWlnaHQ6IDQ2cHgnPkludGVyYWN0aXZpdHkgTWVkaWEgRG9jdW1lbnQ8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWJpZyc+dXJuOm9tYTp4bWw6YmNhc3Q6c2k6aW50ZXJhY3Rpdml0eW1lZGlhOjEuMDwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJz48YSBocmVmPScvdGVjaC9wcm9maWxlcy9iY2FzdF9zaV9pbnRlcmFjdGl2aXR5bWVkaWEtdjFfMC54c2QnPmJjYXN0X3NpX2ludGVyYWN0aXZpdHltZWRpYS12MV8wLnhzZDwvYT48L3RkPiAgICAgICAgPC90cj4gICAgICAgIDx0cj4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnIHN0eWxlPSdoZWlnaHQ6IDQ2cHgnPlNlcnZpY2UgYW5kIENvbnRlbnQgUHJvdGVjdGlvbiBCYWNrIEVuZCBNZXNzYWdlczwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxYmlnJz51cm46b21hOnhtbDpiY2FzdDpzcGNwOmJhY2tlbmQ6MS4wPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnPjxhIGhyZWY9Jy90ZWNoL3Byb2ZpbGVzL2JjYXN0X3NwY3BfYmFja2VuZC12MV8wLnhzZCc+YmNhc3Rfc3BjcF9iYWNrZW5kLXYxXzAueHNkPC9hPjwvdGQ+ICAgICAgICA8L3RyPiAgICAgICAgPHRyPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZScgc3R5bGU9J2hlaWdodDogNDZweCcgcm93c3Bhbj0nMyc+UmlnaHRzIElzc3VlciBTZXJ2aWNlIERhdGE8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWJpZycgcm93c3Bhbj0nMyc+dXJuOm9tYTp4bWw6ZHJtOnJpc2Q6MS4wPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnIHJvd3NwYW49JzMnPjxhIGhyZWY9Jy90ZWNoL3Byb2ZpbGVzL2RybV9yaXNkLXYxXzAueHNkJz5kcm1fcmlzZC12MV8wLnhzZDwvYT48L3RkPiAgICAgICAgPC90cj4gICAgICAgIDx0cj4gICAgICAgIDwvdHI+ICAgICAgICA8dHI+ICAgICAgICA8L3RyPiAgICAgICAgPHRyPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWJpZycgdmFsaWduPSdtaWRkbGUnIGFsaWduPSdsZWZ0JyByb3dzcGFuPScyJz5jYmNzPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnPlBFTS0xIGlucHV0IHRlbXBsYXRlIGZvciB0aGUgQ0JDUyBlbmFibGVyPHNwYW4gc3R5bGU9J2ZvbnQtc2l6ZTogMTJwdDsgZm9udC1mYW1pbHk6ICc+IDwvc3Bhbj48L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWJpZyc+dXJuOm9tYTp4bWw6Y2JjczpwZW0xLWlucHV0LXRlbXBsYXRlOjEuMCA8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZSc+PGEgaHJlZj0nL3RlY2gvcHJvZmlsZXMvY2Jjc19wZW0xSW5wdXRUZW1wbGF0ZS1WMV8wLnhzZCc+Y2Jjc19wZW0xSW5wdXRUZW1wbGF0ZS1WMV8wLnhzZCA8L2E+PC90ZD4gICAgICAgIDwvdHI+ICAgICAgICA8dHI+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJz5QRU0tMSBvdXRwdXQgdGVtcGxhdGUgZm9yIHRoZSBDQkNTIGVuYWJsZXIgPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFiaWcnPnVybjpvbWE6eG1sOmNiY3M6cGVtMS1vdXRwdXQtdGVtcGxhdGU6MS4wPHNwYW4gc3R5bGU9J2ZvbnQtc2l6ZTogMTJwdDsgZm9udC1mYW1pbHk6ICc+IDwvc3Bhbj48L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZSc+PGEgaHJlZj0nL3RlY2gvcHJvZmlsZXMvY2Jjc19wZW0xT3V0cHV0VGVtcGxhdGUtVjFfMC54c2QnPmNiY3NfcGVtMU91dHB1dFRlbXBsYXRlLVYxXzAueHNkIDwvYT48L3RkPiAgICAgICAgPC90cj4gICAgICAgIDx0cj4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFiaWcnIHZhbGlnbj0nbWlkZGxlJyBhbGlnbj0nbGVmdCc+Y21pPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnPkNNSSBQYWNrYWdlPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFiaWcnPnVybjpvbWE6eG1sOmNtaTpwYWNrYWdlOjEuMCA8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZSc+LTwvdGQ+ICAgICAgICA8L3RyPiAgICAgICAgPHRyPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWJpZycgdmFsaWduPSdtaWRkbGUnIGFsaWduPSdsZWZ0Jz5kcGU8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZSc+T01BIERQRSBYTUwgU2NoZW1hPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFiaWcnPsKgLTwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJz48YSBocmVmPScvdGVjaC9wcm9maWxlcy9kcGVfeHNkLXYxXzAueHNkJz5kcGVfeHNkLXYxXzAueHNkPC9hPjwvdGQ+ICAgICAgICA8L3RyPiAgICAgICAgPHRyPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWJpZycgdmFsaWduPSd0b3AnIHJvd3NwYW49JzInPmRsPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnPkRvd25sb2FkIERlc2NyaXB0b3I8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWJpZyc+dXJuOm9tYTp4bWw6ZGw6ZGQ6Mi4wPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnPjxhIGhyZWY9Jy90ZWNoL3Byb2ZpbGVzL2RkLVYyXzAueHNkJz5kZC12Ml8wLnhzZDwvYT48L3RkPiAgICAgICAgPC90cj4gICAgICAgIDx0cj4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnPkpBRCBNSURQIEV4dGVuc2lvbiA8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWJpZyc+dXJuOm9tYTp4bWw6ZGw6amFkOjIuMDwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJz48YSBocmVmPScvdGVjaC9wcm9maWxlcy9kZF9taWRwamFkLVYyXzAueHNkJyB0YXJnZXQ9J19ibGFuayc+ZGRfbWlkcGphZC12Ml8wLnhzZDwvYT48L3RkPiAgICAgICAgPC90cj4gICAgICAgIDx0cj4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFiaWcnIHZhbGlnbj0nbWlkZGxlJyBhbGlnbj0nbGVmdCcgcm93c3Bhbj0nMic+Z3BtPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnPlBFTS0xIGlucHV0IHRlbXBsYXRlIGZvciB0aGUgR1BNIGVuYWJsZXIgPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFiaWcnPnVybjpvbWE6eG1sOmdwbTpwZW0xLWlucHV0LXRlbXBsYXRlOjEuMCA8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZSc+PGEgaHJlZj0nL1RlY2gvcHJvZmlsZXMvR1BNX1BFTTFJbnB1dFRlbXBsYXRlLVYxXzAueHNkJz5HUE1fUEVNMUlucHV0VGVtcGxhdGUtdjFfMC54c2QgPC9hPjwvdGQ+ICAgICAgICA8L3RyPiAgICAgICAgPHRyPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZSc+UEVNLTEgb3V0cHV0IHRlbXBsYXRlIGZvciB0aGUgR1BNIGVuYWJsZXIgPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFiaWcnPnVybjpvbWE6eG1sOmdwbTpwZW0xLW91dHB1dC10ZW1wbGF0ZToxLjAgPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnPjxhIGhyZWY9Jy9UZWNoL3Byb2ZpbGVzL0dQTV9QRU0xT3V0cHV0VGVtcGxhdGUtdjFfMC54c2QnPkdQTV9QRU0xT3V0cHV0VGVtcGxhdGUtdjFfMC54c2QgPC9hPjwvdGQ+ICAgICAgICA8L3RyPiAgICAgICAgPHRyPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWJpZycgdmFsaWduPSdtaWRkbGUnIGFsaWduPSdsZWZ0JyByb3dzcGFuPSc1Jz5nc3NtPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnPlBFTS0xIGlucHV0IHRlbXBsYXRlIGZvciB0aGUgR1NTTSBlbmFibGVyIDwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxYmlnJz51cm46b21hOnhtbDpnc3NtOnBlbTEtaW5wdXQtdGVtcGxhdGU6MS4wIDwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJz48YSBocmVmPScvVGVjaC9wcm9maWxlcy9nc3NtX3BlbTFJbnB1dFRlbXBsYXRlLXYxXzAueHNkJz5nc3NtX3BlbTFJbnB1dFRlbXBsYXRlLXYxXzAueHNkIDwvYT48L3RkPiAgICAgICAgPC90cj4gICAgICAgIDx0cj4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnPlBFTS0xIG91dHB1dCB0ZW1wbGF0ZSBmb3IgdGhlIEdTU00gZW5hYmxlciA8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWJpZyc+dXJuOm9tYTp4bWw6Z3NzbTpwZW0xLW91dHB1dC10ZW1wbGF0ZToxLjAgPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnPjxhIGhyZWY9Jy9UZWNoL3Byb2ZpbGVzL2dzc21fcGVtMU91dHB1dFRlbXBsYXRlLXYxXzAueHNkJz5nc3NtX3BlbTFPdXRwdXRUZW1wbGF0ZS12MV8wLnhzZCA8L2E+PC90ZD4gICAgICAgIDwvdHI+ICAgICAgICA8dHI+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJz5RdWVyeSBEYXRhIFNjaGVtYXM8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWJpZyc+dXJuOm9tYTp4bWw6Z3NzbTpxdWVyaWVzOjEuMCA8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZSc+PGEgaHJlZj0nL3RlY2gvcHJvZmlsZXMvZ3NzbV9xdWVyaWVzLXYxXzAueHNkJz5nc3NtX3F1ZXJpZXMtdjFfMC54c2Q8L2E+PC90ZD4gICAgICAgIDwvdHI+ICAgICAgICA8dHI+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJz5HU1NNLTEgRGF0YSBTY2hlbWFzIDwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxYmlnJz51cm46b21hOnhtbDpnc3NtOmdzc20xOjEuMCA8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZSc+PGEgaHJlZj0nL3RlY2gvcHJvZmlsZXMvZ3NzbV9nc3NtMS12MV8wLnhzZCc+Z3NzbV9nc3NtMS12MV8wLnhzZDwvYT48L3RkPiAgICAgICAgPC90cj4gICAgICAgIDx0cj4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnPkdTU00tMiBEYXRhIFNjaGVtYXMgPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFiaWcnPnVybjpvbWE6eG1sOmdzc206Z3NzbTI6MS4wIDwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJz48YSBocmVmPScvdGVjaC9wcm9maWxlcy9nc3NtX2dzc20yLXYxXzAueHNkJz5nc3NtX2dzc20yLXYxXzAueHNkPC9hPjwvdGQ+ICAgICAgICA8L3RyPiAgICAgICAgPHRyPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWJpZycgdmFsaWduPSd0b3AnIHJvd3NwYW49JzQnPmxvY3NpcDwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz5Mb2NhdGlvbiBRb1PCoCA8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWJpZycgc3R5bGU9J2hlaWdodDogNDZweCc+dXJuOm9tYTp4bWw6bG9jc2lwOnFvczoxLjA8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZScgc3R5bGU9J2hlaWdodDogNDZweCc+PGEgaHJlZj0nL3RlY2gvcHJvZmlsZXMvbG9jc2lwX3Fvcy12MV8wLnhzZCcgdGFyZ2V0PSdfYmxhbmsnPmxvY3NpcF9xb3MtdjFfMC54c2Q8L2E+PC90ZD4gICAgICAgIDwvdHI+ICAgICAgICA8dHI+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz5FeHRlbnNpb24gb2YgR1BNIFBFTTEgb3V0cHV0IHRlbXBsYXRlwqAgPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFiaWcnIHN0eWxlPSdoZWlnaHQ6IDQ2cHgnPnVybjpvbWE6eG1sOmxvY3NpcDpncG0tcGVtMS1vdXRwdXQtZXh0OjEuMDwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz48YSBocmVmPScvdGVjaC9wcm9maWxlcy9sb2NzaXBfZ3BtcGVtMW91dHB1dGV4dC12MV8wLnhzZCcgdGFyZ2V0PSdfYmxhbmsnPmxvY3NpcF9ncG1wZW0xb3V0cHV0ZXh0LXYxXzAueHNkPC9hPjwvdGQ+ICAgICAgICA8L3RyPiAgICAgICAgPHRyPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZScgc3R5bGU9J2hlaWdodDogNDZweCc+bG9jYXRpb24gUW9TwqBnYmFrZXlpZDwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxYmlnJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz51cm46b21hOnhtbDpsb2NzaXA6Z2Jha2V5LWlkOjEuMDwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz48YSBocmVmPScvdGVjaC9wcm9maWxlcy9sb2NzaXBfZ2Jha2V5aWQtdjFfMC54c2QnIHRhcmdldD0nX2JsYW5rJz5sb2NzaXBfZ2Jha2V5aWQtdjFfMC54c2Q8L2E+PC90ZD4gICAgICAgIDwvdHI+ICAgICAgICA8dHI+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz5sb2NhdGlvbiBmaWx0ZXI8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWJpZycgc3R5bGU9J2hlaWdodDogNDZweCc+dXJuOm9tYTp4bWw6bG9jc2lwOmZpbHRlcjoxLjA8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZScgc3R5bGU9J2hlaWdodDogNDZweCc+PGEgaHJlZj0nL3RlY2gvcHJvZmlsZXMvbG9jc2lwX2ZpbHRlci12MV8wLnhzZCcgdGFyZ2V0PSdfYmxhbmsnPmxvY3NpcF9maWx0ZXItdjFfMC54c2Q8L2E+PC90ZD4gICAgICAgIDwvdHI+ICAgICAgICA8dHI+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxYmlnJyB2YWxpZ249J3RvcCcgcm93c3Bhbj0nNic+cG9jPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnIHN0eWxlPSdoZWlnaHQ6IDQ2cHgnPlBvQyBTZXR0aW5ncyBWMi4xwqDCoMKgwqA8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWJpZycgc3R5bGU9J2hlaWdodDogNDZweCc+dXJuOm9tYTp4bWw6cG9jOnBvYzIuMS1zZXR0aW5nczwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz48YSBocmVmPScvdGVjaC9wcm9maWxlcy9wb2NfcG9jMl8xU2V0dGluZ3MtdjJfMS54c2QnIHRhcmdldD0nX2JsYW5rJz5wb2NfcG9jMl8xU2V0dGluZ3MtdjJfMS54c2Q8L2E+PC90ZD4gICAgICAgIDwvdHI+ICAgICAgICA8dHI+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz5Qb0MgU2Vzc2lvbnMgVjIuMcKgwqDCoMKgPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFiaWcnIHN0eWxlPSdoZWlnaHQ6IDQ2cHgnPnVybjpvbWE6eG1sOnBvYzpwb2Mtc2Vzc2lvbnM8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZScgc3R5bGU9J2hlaWdodDogNDZweCc+PGEgaHJlZj0nL3RlY2gvcHJvZmlsZXMvcG9jX3BvY19zZXNzaW9ucy12Ml8xLnhzZCcgdGFyZ2V0PSdfYmxhbmsnPnBvY19wb2Nfc2Vzc2lvbnMtdjJfMS54c2Q8L2E+PC90ZD4gICAgICAgIDwvdHI+ICAgICAgICA8dHI+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz5Hcm91cCBBZHZlcnRpc2VtZW50PC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFiaWcnIHN0eWxlPSdoZWlnaHQ6IDQ2cHgnPnVybjpvbWE6eG1sOnBvYzpncm91cC1hZHZlcnRpc2VtZW50PC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnIHN0eWxlPSdoZWlnaHQ6IDQ2cHgnPjxhIGhyZWY9Jy90ZWNoL3Byb2ZpbGVzL3BvY19ncm91cEFkdmVydGlzZW1lbnQtdjFfMC54c2QnIHRhcmdldD0nX2JsYW5rJz5wb2NfZ3JvdXBBZHZlcnRpc2VtZW50LXYxXzAueHNkPC9hPjwvdGQ+ICAgICAgICA8L3RyPiAgICAgICAgPHRyPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZScgc3R5bGU9J2hlaWdodDogNDZweCc+TGlzdCBTZXJ2aWNlPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFiaWcnIHN0eWxlPSdoZWlnaHQ6IDQ2cHgnPnVybjpvbWE6eG1sOnBvYzpsaXN0LXNlcnZpY2U8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZScgc3R5bGU9J2hlaWdodDogNDZweCc+PGEgaHJlZj0nL3RlY2gvcHJvZmlsZXMvcG9jX2xpc3RTZXJ2aWNlLXYxXzAueHNkJyB0YXJnZXQ9J19ibGFuayc+cG9jX2xpc3RTZXJ2aWNlLXYxXzAueHNkPC9hPjwvdGQ+ICAgICAgICA8L3RyPiAgICAgICAgPHRyPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZScgc3R5bGU9J2hlaWdodDogNDZweCc+UG9DLXNwZWNpZmljIFJ1bGVzPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFiaWcnIHN0eWxlPSdoZWlnaHQ6IDQ2cHgnPnVybjpvbWE6eG1sOnBvYzpwb2MtcnVsZXM8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZScgc3R5bGU9J2hlaWdodDogNDZweCc+PGEgaHJlZj0nL3RlY2gvcHJvZmlsZXMvcG9jX3BvY1J1bGVzLXYxXzAueHNkJyB0YXJnZXQ9J19ibGFuayc+cG9jX3BvY1J1bGVzLXYxXzAueHNkPC9hPjwvdGQ+ICAgICAgICA8L3RyPiAgICAgICAgPHRyPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZScgc3R5bGU9J2hlaWdodDogNDZweCc+TGlzdCBTZXJ2aWNlPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFiaWcnIHN0eWxlPSdoZWlnaHQ6IDQ2cHgnPnVybjpvbWE6eG1sOnBvYzpvbWEtcG9jdXNhZ2U8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZScgc3R5bGU9J2hlaWdodDogNDZweCc+PGEgaHJlZj0nL3RlY2gvcHJvZmlsZXMvcG9jX3BvY3VzYWdlLXYxXzAueHNkJyB0YXJnZXQ9J19ibGFuayc+cG9jX3BvY3VzYWdlLXYxXzAueHNkPC9hPjwvdGQ+ICAgICAgICA8L3RyPiAgICAgICAgPHRyPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWJpZycgc3R5bGU9J2hlaWdodDogNDZweCcgcm93c3Bhbj0nMic+cGVlbTwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz5QRU0tMSBHZW5lcmljIElucHV0IFRlbXBsYXRlIFNjaGVtYSBkZWZpbml0aW9uPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFiaWcnIHN0eWxlPSdoZWlnaHQ6IDQ2cHgnPnVybjpvbWE6eG1sOnBlZW06cGVtMS1pbnB1dC10ZW1wbGF0ZToxLjA8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZScgc3R5bGU9J2hlaWdodDogNDZweCc+PGEgaHJlZj0nL3RlY2gvcHJvZmlsZXMvUEVNXzFfR2VuZXJpY0lucHV0VGVtcGxhdGVEYXRhLVYxXzAueHNkJz5QRU1fMV9HZW5lcmljSW5wdXRUZW1wbGF0ZURhdGEtdjFfMC54c2Q8L2E+PC90ZD4gICAgICAgIDwvdHI+ICAgICAgICA8dHI+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz5QRU0tMSBHZW5lcmljIE91dHB1dCBUZW1wbGF0ZSBzY2hlbWEgZGVmaW5pdGlvbiA8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWJpZycgc3R5bGU9J2hlaWdodDogNDZweCc+dXJuOm9tYTp4bWw6cGVlbTpwZW0xLW91dHB1dC10ZW1wbGF0ZToxLjA8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZScgc3R5bGU9J2hlaWdodDogNDZweCc+PGEgaHJlZj0nL3RlY2gvcHJvZmlsZXMvUEVNXzFfR2VuZXJpY091dHB1dFRlbXBsYXRlRGF0YS1WMV8wLnhzZCc+UEVNXzFfR2VuZXJpY091dHB1dFRlbXBsYXRlRGF0YS12MV8wLnhzZCA8L2E+PC90ZD4gICAgICAgIDwvdHI+ICAgICAgICA8dHI+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxYmlnJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz5wZGU8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZScgc3R5bGU9J2hlaWdodDogNDZweCc+UERFIC0gUElERiBFeHRlbnNpb25zwqAgPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFiaWcnIHN0eWxlPSdoZWlnaHQ6IDQ2cHgnPnVybjpvbWE6eG1sOnBkZTpwaWRmOmV4dDwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz5UQkQ8L3RkPiAgICAgICAgPC90cj4gICAgICAgIDx0cj4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFiaWcnIHZhbGlnbj0ndG9wJyByb3dzcGFuPScyJz5wcnM8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZScgc3R5bGU9J2hlaWdodDogNDZweCc+UHJlc2VuY2UgUnVsZXM8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWJpZycgc3R5bGU9J2hlaWdodDogNDZweCc+dXJuOm9tYTp4bWw6cHJzOnByZXMtcnVsZXM8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZScgc3R5bGU9J2hlaWdodDogNDZweCc+PGEgaHJlZj0nL3RlY2gvcHJvZmlsZXMvcHJzX3ByZXNSdWxlcy12MV8wLnhzZCcgdGFyZ2V0PSdfYmxhbmsnPnByc19wcmVzUnVsZXMtdjFfMC54c2Q8L2E+PC90ZD4gICAgICAgIDwvdHI+ICAgICAgICA8dHI+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz5PTUEgZXh0ZW5zaW9ucyB0byBQSURGPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFiaWcnIHN0eWxlPSdoZWlnaHQ6IDQ2cHgnPnVybjpvbWE6eG1sOnByczpwaWRmOm9tYS1wcmVzPC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnIHN0eWxlPSdoZWlnaHQ6IDQ2cHgnPjxhIGhyZWY9Jy90ZWNoL3Byb2ZpbGVzL3Byc19waWRmX29tYXByZXMtdjFfMC54c2QnIHRhcmdldD0nX2JsYW5rJz5wcnNfcGlkZl9vbWFwcmVzLXYxXzAueHNkPC9hPjwvdGQ+ICAgICAgICA8L3RyPiAgICAgICAgPHRyPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWJpZycgdmFsaWduPSd0b3AnIHJvd3NwYW49JzUnPnhkbTwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz5Db21tb24gUG9saWN5PC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFiaWcnIHN0eWxlPSdoZWlnaHQ6IDQ2cHgnPnVybjpvbWE6eG1sOnhkbTpjb21tb24tcG9saWN5PC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnIHN0eWxlPSdoZWlnaHQ6IDQ2cHgnPjxhIGhyZWY9Jy90ZWNoL3Byb2ZpbGVzL3hkbV9jb21tb25Qb2xpY3ktdjFfMC54c2QnIHRhcmdldD0nX2JsYW5rJz54ZG1fY29tbW9uUG9saWN5LXYxXzAueHNkPC9hPjwvdGQ+ICAgICAgICA8L3RyPiAgICAgICAgPHRyPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZScgc3R5bGU9J2hlaWdodDogNDZweCc+UmVzb3VyY2UgTGlzdCAtIFVSSSB1c2FnZTwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxYmlnJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz51cm46b21hOnhtbDp4ZG06cmVzb3VyY2UtbGlzdDpvbWEtdXJpdXNhZ2U8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZScgc3R5bGU9J2hlaWdodDogNDZweCc+PGEgaHJlZj0nL3RlY2gvcHJvZmlsZXMveGRtX3JzcmNsc3RfdXJpdXNhZ2UtdjFfMC54c2QnIHRhcmdldD0nX2JsYW5rJz54ZG1fcnNyY2xzdF91cml1c2FnZS12MV8wLnhzZDwvYT48L3RkPiAgICAgICAgPC90cj4gICAgICAgIDx0cj4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnIHN0eWxlPSdoZWlnaHQ6IDQ2cHgnPlhDQVAgRGlyZWN0b3J5PC90ZD4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFiaWcnIHN0eWxlPSdoZWlnaHQ6IDQ2cHgnPnVybjpvbWE6eG1sOnhkbTp4Y2FwLWRpcmVjdG9yeTwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz48YSBocmVmPScvdGVjaC9wcm9maWxlcy94ZG1feGNhcERpcmVjdG9yeS12MV8wLnhzZCcgdGFyZ2V0PSdfYmxhbmsnPnhkbV94Y2FwRGlyZWN0b3J5LXYxXzAueHNkPC9hPjwvdGQ+ICAgICAgICA8L3RyPiAgICAgICAgPHRyPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZScgc3R5bGU9J2hlaWdodDogNDZweCc+WENBUCBFcnJvcjwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxYmlnJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz51cm46b21hOnhtbDp4ZG06eGNhcC1lcnJvcjwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxbGl0dGxlJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz48YSBocmVmPScvdGVjaC9wcm9maWxlcy94ZG1feGNhcEVycm9yLXYxXzAueHNkJyB0YXJnZXQ9J19ibGFuayc+eGRtX3hjYXBFcnJvci12MV8wLnhzZDwvYT48L3RkPiAgICAgICAgPC90cj4gICAgICAgIDx0cj4gICAgICAgICAgICA8dGQgY2xhc3M9J1RhYmxlUDFsaXR0bGUnIHN0eWxlPSdoZWlnaHQ6IDQ2cHgnPlJlc291cmNlIExpc3QgLUFQUCB1c2FnZTwvdGQ+ICAgICAgICAgICAgPHRkIGNsYXNzPSdUYWJsZVAxYmlnJyBzdHlsZT0naGVpZ2h0OiA0NnB4Jz51cm46b21hOnhtbDp4ZG06cmVzb3VyY2UtbGlzdDpvbWEtYXBwdXNhZ2U8L3RkPiAgICAgICAgICAgIDx0ZCBjbGFzcz0nVGFibGVQMWxpdHRsZScgc3R5bGU9J2hlaWdodDogNDZweCc+PGEgaHJlZj0nL3RlY2gvcHJvZmlsZXMveGRtX3JzcmNsc3RfYXBwdXNhZ2UtdjFfMC54c2QnIHRpdGxlPScvdGVjaC9wcm9maWxlcy94ZG1fcnNyY2xzdF91cml1c2FnZS12MV8wLnhzZCcgdGFyZ2V0PSdfYmxhbmsnPnhkbV9yc3JjbHN0X2FwcHVzYWdlLXYxXzAueHNkPC9hPjwvdGQ+ICAgICAgICA8L3RyPiAgICA8L3Rib2R5PjwvdGFibGU+HgpNZWRpYVBhdGhzFQERfi9XZWJTaXRlL21lZGlhcy8eDE1heEltYWdlU2l6ZQKAoB8eEkVuYWJsZUNvbnRleHRNZW51c2ceFFVwbG9hZERvY3VtZW50c1BhdGhzFQELfi9kb2N1bWVudC8eGFN0cmlwQWJzb2x1dGVBbmNob3JQYXRoc2ceDVRlbXBsYXRlUGF0aHMVARN+L1dlYlNpdGUvdGVtcGxhdGUvHhBDYXVzZXNWYWxpZGF0aW9uZx4RVXNlQ2xhc3NpY0RpYWxvZ3NoHg9NYXhUZW1wbGF0ZVNpemUCgKAfHhFDb252ZXJ0Rm9udFRvU3BhbmgeEURlbGV0ZUltYWdlc1BhdGhzFQEIL2ltYWdlcy8eE1VwbG9hZFRlbXBsYXRlUGF0aHMVAQAeBkhlaWdodBsAAAAAAAB5QAEAAAAeE0RlbGV0ZVRlbXBsYXRlUGF0aHMVAQAeDkRvY3VtZW50c1BhdGhzFQETfi9XZWJTaXRlL2RvY3VtZW50Lx4WU3BlbGxXb3JkSWdub3JlT3B0aW9ucwsphwFUZWxlcmlrLldlYkNvbnRyb2xzLlJhZEVkaXRvclV0aWxzLldvcmRJZ25vcmVPcHRpb25zLCBSYWRFZGl0b3IuTmV0MiwgVmVyc2lvbj03LjMuMS4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPTg1MmM5ZWI2NTI1YzFiNTMEHg1JbWFnZXNGaWx0ZXJzFQUFKi5naWYFKi5qcGcGKi5qcGVnBSoucG5nBSouYm1wHg9TaG93UHJldmlld01vZGVnHgtUb29sc0hlaWdodBsAAAAAAIBRQAEAAAAeEFVwbG9hZEZsYXNoUGF0aHMVAQAeBVdpZHRoGwAAAAAAsINAAQAAAB4UQWxsb3dUaHVtYkdlbmVyYXRpb25oHhREZWxldGVEb2N1bWVudHNQYXRocxUBC34vZG9jdW1lbnQvHhJFbmFibGVFbmhhbmNlZEVkaXRnHhBSYWRTcGVsbFR5cGVOYW1lBStUZWxlcmlrLldlYkNvbnRyb2xzLlJhZFNwZWxsLCBSYWRTcGVsbC5OZXQyHhBEZWxldGVNZWRpYVBhdGhzFQEAHhRDb29raWVFeHBpcmF0aW9uVGltZQIoHhBVcGxvYWRNZWRpYVBhdGhzFQEAHhBEb2N1bWVudHNGaWx0ZXJzFQ0FKi5kb2MGKi5kb2N4BSoueGxzBioueGxzeAUqLnBwdAYqLnBwdHgFKi5wZGYFKi56aXAFKi5naWYFKi5qcGcGKi5qcGVnBSoucG5nBSouYm1wHgpGbGFzaFBhdGhzFQERfi9XZWJTaXRlL2ZsYXNocy8eFUVuYWJsZUNsaWVudFNlcmlhbGl6ZWceE1NwZWxsQWxsb3dBZGRDdXN0b21nHg5Db252ZXJ0VG9YaHRtbGceDFRvb2xzRmlsZVhtbAWRkwE8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJ1dGYtMTYiPz48cm9vdD48bW9kdWxlcz48bW9kdWxlIG5hbWU9IlJhZEVkaXRvclN0YXRpc3RpY3MiIGRvY2tpbmdab25lPSJCb3R0b20iIC8+PG1vZHVsZSBuYW1lPSJSYWRFZGl0b3JEb21JbnNwZWN0b3IiIGRvY2tpbmdab25lPSJNb2R1bGUiIC8+PG1vZHVsZSBuYW1lPSJSYWRFZGl0b3JOb2RlSW5zcGVjdG9yIiBkb2NraW5nWm9uZT0iTW9kdWxlIiBkb2NrYWJsZT0iRmFsc2UiIC8+PG1vZHVsZSBuYW1lPSJSYWRFZGl0b3JIdG1sSW5zcGVjdG9yIiBkb2NraW5nWm9uZT0iTW9kdWxlIiB2aXNpYmxlPSJGYWxzZSIgLz48bW9kdWxlIG5hbWU9IlJhZEVkaXRvclhodG1sVmFsaWRhdG9yIiBkb2NraW5nWm9uZT0iTW9kdWxlIiAvPjwvbW9kdWxlcz48dG9vbHMgbmFtZT0iTWFpblRvb2xiYXIiIGlkPSJfY3RsMF9Db250ZW50X1N0YXRpY1pvbmU1NTFUb29sYmFyMCIgdG9vbHNUZXh0UG9zaXRpb249IlJpZ2h0Ij48dG9vbCBuYW1lPSJGaW5kQW5kUmVwbGFjZSIgdHlwZT0iQiIgc2hvcnRjdXQ9IkNUUkwrRiIgdGV4dFBvc2l0aW9uPSJSaWdodCIgLz48dG9vbCBuYW1lPSJDb3B5IiB0eXBlPSJCIiBzaG9ydGN1dD0iQ1RSTCtDIiB0ZXh0UG9zaXRpb249IlJpZ2h0IiAvPjx0b29sIG5hbWU9IlBhc3RlIiB0eXBlPSJCIiBzaG9ydGN1dD0iQ1RSTCtWIiB0ZXh0UG9zaXRpb249IlJpZ2h0IiAvPjx0b29sIG5hbWU9IlBhc3RlRnJvbVdvcmQiIHR5cGU9IkIiIHRleHRQb3NpdGlvbj0iUmlnaHQiIC8+PHRvb2wgbmFtZT0iUGFzdGVGcm9tV29yZE5vRm9udHNOb1NpemVzIiB0eXBlPSJCIiB0ZXh0UG9zaXRpb249IlJpZ2h0IiAvPjx0b29sIG5hbWU9IlBhc3RlUGxhaW5UZXh0IiB0eXBlPSJCIiB0ZXh0UG9zaXRpb249IlJpZ2h0IiAvPjx0b29sIG5hbWU9IlBhc3RlQXNIdG1sIiB0eXBlPSJCIiB0ZXh0UG9zaXRpb249IlJpZ2h0IiAvPjx0b29sIHR5cGU9IlMiIHNlcGFyYXRvcj0idHJ1ZSIgLz48dG9vbCBuYW1lPSJVbmRvIiB0eXBlPSJEQiIgc2hvcnRjdXQ9IkNUUkwrWiIgdGV4dFBvc2l0aW9uPSJSaWdodCIgaXRlbXNQZXJSb3c9IjEiIGRyb3BEb3duV2lkdGg9IjEwMHB4IiBkcm9wRG93bkhlaWdodD0iMTAwcHgiIC8+PHRvb2wgbmFtZT0iUmVkbyIgdHlwZT0iREIiIHNob3J0Y3V0PSJDVFJMK1kiIHRleHRQb3NpdGlvbj0iUmlnaHQiIGl0ZW1zUGVyUm93PSIxIiBkcm9wRG93bldpZHRoPSIxMDBweCIgZHJvcERvd25IZWlnaHQ9IjEwMHB4IiAvPjwvdG9vbHM+PHRvb2xzIG5hbWU9Ikluc2VydFRvb2xiYXIiIGlkPSJfY3RsMF9Db250ZW50X1N0YXRpY1pvbmU1NTFUb29sYmFyMSIgdG9vbHNUZXh0UG9zaXRpb249IlJpZ2h0Ij48dG9vbCBuYW1lPSJJbWFnZU1hbmFnZXIiIHR5cGU9IkIiIHNob3J0Y3V0PSJDVFJMK0ciIHRleHRQb3NpdGlvbj0iUmlnaHQiIC8+PHRvb2wgbmFtZT0iQWJzb2x1dGVQb3NpdGlvbiIgdHlwZT0iQiIgdGV4dFBvc2l0aW9uPSJSaWdodCIgLz48dG9vbCB0eXBlPSJTIiBzZXBhcmF0b3I9InRydWUiIC8+PHRvb2wgbmFtZT0iRmxhc2hNYW5hZ2VyIiB0eXBlPSJCIiB0ZXh0UG9zaXRpb249IlJpZ2h0IiAvPjx0b29sIG5hbWU9IlRlbXBsYXRlTWFuYWdlciIgdHlwZT0iQiIgdGV4dFBvc2l0aW9uPSJSaWdodCIgLz48dG9vbCBuYW1lPSJNZWRpYU1hbmFnZXIiIHR5cGU9IkIiIHRleHRQb3NpdGlvbj0iUmlnaHQiIC8+PHRvb2wgbmFtZT0iRG9jdW1lbnRNYW5hZ2VyIiB0eXBlPSJCIiB0ZXh0UG9zaXRpb249IlJpZ2h0IiAvPjx0b29sIG5hbWU9IkxpbmtNYW5hZ2VyIiB0eXBlPSJCIiBzaG9ydGN1dD0iQ1RSTCtLIiB0ZXh0UG9zaXRpb249IlJpZ2h0IiAvPjx0b29sIG5hbWU9IlVubGluayIgdHlwZT0iQiIgc2hvcnRjdXQ9IkNUUkwrU0hJRlQrSyIgdGV4dFBvc2l0aW9uPSJSaWdodCIgLz48L3Rvb2xzPjx0b29scyBuYW1lPSJUb29sYmFyIDIiIGlkPSJfY3RsMF9Db250ZW50X1N0YXRpY1pvbmU1NTFUb29sYmFyMiIgdG9vbHNUZXh0UG9zaXRpb249IlJpZ2h0Ij48dG9vbCBuYW1lPSJCb2xkIiB0eXBlPSJCIiBzaG9ydGN1dD0iQ1RSTCtCIiB0ZXh0UG9zaXRpb249IlJpZ2h0IiAvPjx0b29sIG5hbWU9Ikl0YWxpYyIgdHlwZT0iQiIgc2hvcnRjdXQ9IkNUUkwrSSIgdGV4dFBvc2l0aW9uPSJSaWdodCIgLz48dG9vbCBuYW1lPSJVbmRlcmxpbmUiIHR5cGU9IkIiIHNob3J0Y3V0PSJDVFJMK1UiIHRleHRQb3NpdGlvbj0iUmlnaHQiIC8+PHRvb2wgbmFtZT0iU3RyaWtlVGhyb3VnaCIgdHlwZT0iQiIgdGV4dFBvc2l0aW9uPSJSaWdodCIgLz48dG9vbCB0eXBlPSJTIiBzZXBhcmF0b3I9InRydWUiIC8+PHRvb2wgbmFtZT0iSnVzdGlmeUxlZnQiIHR5cGU9IkIiIHRleHRQb3NpdGlvbj0iUmlnaHQiIC8+PHRvb2wgbmFtZT0iSnVzdGlmeUNlbnRlciIgdHlwZT0iQiIgdGV4dFBvc2l0aW9uPSJSaWdodCIgLz48dG9vbCBuYW1lPSJKdXN0aWZ5UmlnaHQiIHR5cGU9IkIiIHRleHRQb3NpdGlvbj0iUmlnaHQiIC8+PHRvb2wgbmFtZT0iSnVzdGlmeUZ1bGwiIHR5cGU9IkIiIHRleHRQb3NpdGlvbj0iUmlnaHQiIC8+PHRvb2wgbmFtZT0iSnVzdGlmeU5vbmUiIHR5cGU9IkIiIHRleHRQb3NpdGlvbj0iUmlnaHQiIC8+PHRvb2wgdHlwZT0iUyIgc2VwYXJhdG9yPSJ0cnVlIiAvPjx0b29sIG5hbWU9IkluZGVudCIgdHlwZT0iQiIgdGV4dFBvc2l0aW9uPSJSaWdodCIgLz48dG9vbCBuYW1lPSJPdXRkZW50IiB0eXBlPSJCIiB0ZXh0UG9zaXRpb249IlJpZ2h0IiAvPjx0b29sIG5hbWU9Ikluc2VydE9yZGVyZWRMaXN0IiB0eXBlPSJCIiB0ZXh0UG9zaXRpb249IlJpZ2h0IiAvPjx0b29sIG5hbWU9Ikluc2VydFVub3JkZXJlZExpc3QiIHR5cGU9IkIiIHRleHRQb3NpdGlvbj0iUmlnaHQiIC8+PC90b29scz48dG9vbHMgbmFtZT0iVG9vbGJhciAzIiBpZD0iX2N0bDBfQ29udGVudF9TdGF0aWNab25lNTUxVG9vbGJhcjMiIHRvb2xzVGV4dFBvc2l0aW9uPSJSaWdodCI+PHRvb2wgbmFtZT0iQ29udmVydFRvTG93ZXIiIHR5cGU9IkIiIHRleHRQb3NpdGlvbj0iUmlnaHQiIC8+PHRvb2wgbmFtZT0iQ29udmVydFRvVXBwZXIiIHR5cGU9IkIiIHRleHRQb3NpdGlvbj0iUmlnaHQiIC8+PHRvb2wgdHlwZT0iUyIgc2VwYXJhdG9yPSJ0cnVlIiAvPjx0b29sIG5hbWU9Ikluc2VydFRhYmxlIiB0eXBlPSJEQiIgdGV4dFBvc2l0aW9uPSJSaWdodCIgaXRlbXNQZXJSb3c9IjEiIGRyb3BEb3duV2lkdGg9IjEwMHB4IiBkcm9wRG93bkhlaWdodD0iMTAwcHgiIC8+PHRvb2wgbmFtZT0iSW5zZXJ0U3ltYm9sIiB0eXBlPSJEQiIgdGV4dFBvc2l0aW9uPSJSaWdodCIgaXRlbXNQZXJSb3c9IjEiIGRyb3BEb3duV2lkdGg9IjEwMHB4IiBkcm9wRG93bkhlaWdodD0iMTAwcHgiIC8+PHRvb2wgbmFtZT0iSW5zZXJ0Rm9ybUVsZW1lbnQiIHR5cGU9IkRCIiB0ZXh0UG9zaXRpb249IlJpZ2h0IiBpdGVtc1BlclJvdz0iMSIgZHJvcERvd25XaWR0aD0iMTAwcHgiIGRyb3BEb3duSGVpZ2h0PSIxMDBweCIgLz48L3Rvb2xzPjx0b29scyBuYW1lPSJEcm9wZG93blRvb2xiYXIiIGlkPSJfY3RsMF9Db250ZW50X1N0YXRpY1pvbmU1NTFUb29sYmFyNCIgdG9vbHNUZXh0UG9zaXRpb249IlJpZ2h0Ij48dG9vbCBuYW1lPSJGb3JtYXRCbG9jayIgdHlwZT0iREIiIHNob3dJY29uPSJGYWxzZSIgdGV4dFBvc2l0aW9uPSJSaWdodCIgaXRlbXNQZXJSb3c9IjEiIGRyb3BEb3duV2lkdGg9IjEwMHB4IiBkcm9wRG93bkhlaWdodD0iMTAwcHgiIC8+PHRvb2wgbmFtZT0iRm9udE5hbWUiIHR5cGU9IkRCIiBzaG93VGV4dD0iVHJ1ZSIgc2hvd0ljb249IkZhbHNlIiB0ZXh0UG9zaXRpb249IlJpZ2h0IiBpdGVtc1BlclJvdz0iMSIgZHJvcERvd25XaWR0aD0iMTAwcHgiIGRyb3BEb3duSGVpZ2h0PSIxMDBweCIgLz48dG9vbCBuYW1lPSJGb250U2l6ZSIgdHlwZT0iREIiIHNob3dUZXh0PSJUcnVlIiBzaG93SWNvbj0iRmFsc2UiIHRleHRQb3NpdGlvbj0iUmlnaHQiIGl0ZW1zUGVyUm93PSIxIiBkcm9wRG93bldpZHRoPSIxMDBweCIgZHJvcERvd25IZWlnaHQ9IjEwMHB4IiAvPjx0b29sIHR5cGU9IlMiIHNlcGFyYXRvcj0idHJ1ZSIgLz48dG9vbCBuYW1lPSJGb3JtYXRTdHJpcHBlciIgdHlwZT0iREIiIHRleHRQb3NpdGlvbj0iUmlnaHQiIGl0ZW1zUGVyUm93PSIxIiBkcm9wRG93bldpZHRoPSIxMDBweCIgZHJvcERvd25IZWlnaHQ9IjEwMHB4IiAvPjx0b29sIG5hbWU9IkFwcGx5Q2xhc3MiIHR5cGU9IkRCIiBzaG93VGV4dD0iVHJ1ZSIgc2hvd0ljb249IkZhbHNlIiB0ZXh0UG9zaXRpb249IlJpZ2h0IiBpdGVtc1BlclJvdz0iMSIgZHJvcERvd25XaWR0aD0iMTAwcHgiIGRyb3BEb3duSGVpZ2h0PSIxMDBweCIgLz48dG9vbCBuYW1lPSJJbnNlcnRDdXN0b21MaW5rIiB0eXBlPSJEQiIgc2hvd1RleHQ9IlRydWUiIHNob3dJY29uPSJGYWxzZSIgdGV4dFBvc2l0aW9uPSJSaWdodCIgaXRlbXNQZXJSb3c9IjEiIGRyb3BEb3duV2lkdGg9IjEwMHB4IiBkcm9wRG93bkhlaWdodD0iMTAwcHgiIC8+PHRvb2wgbmFtZT0iRm9yZUNvbG9yIiB0eXBlPSJEQiIgdGV4dFBvc2l0aW9uPSJSaWdodCIgaXRlbXNQZXJSb3c9IjEiIGRyb3BEb3duV2lkdGg9IjEwMHB4IiBkcm9wRG93bkhlaWdodD0iMTAwcHgiIC8+PHRvb2wgbmFtZT0iQmFja0NvbG9yIiB0eXBlPSJEQiIgdGV4dFBvc2l0aW9uPSJSaWdodCIgaXRlbXNQZXJSb3c9IjEiIGRyb3BEb3duV2lkdGg9IjEwMHB4IiBkcm9wRG93bkhlaWdodD0iMTAwcHgiIC8+PC90b29scz48dG9vbHMgbmFtZT0iRGlhbG9nVG9vbGJhciIgaWQ9Il9jdGwwX0NvbnRlbnRfU3RhdGljWm9uZTU1MVRvb2xiYXI1IiBkb2NraW5nWm9uZT0iVG9wIiB0b29sc1RleHRQb3NpdGlvbj0iUmlnaHQiPjx0b29sIG5hbWU9IkluY3JlYXNlU2l6ZSIgdHlwZT0iQiIgc2hvcnRjdXQ9IkYxMCIgdGV4dFBvc2l0aW9uPSJSaWdodCIgLz48dG9vbCBuYW1lPSJEZWNyZWFzZVNpemUiIHR5cGU9IkIiIHNob3J0Y3V0PSJGOSIgdGV4dFBvc2l0aW9uPSJSaWdodCIgLz48dG9vbCBuYW1lPSJQcmludCIgdHlwZT0iQiIgc2hvcnRjdXQ9IkNUUkwrUCIgdGV4dFBvc2l0aW9uPSJSaWdodCIgLz48dG9vbCBuYW1lPSJTdXBlcnNjcmlwdCIgdHlwZT0iQiIgdGV4dFBvc2l0aW9uPSJSaWdodCIgLz48dG9vbCBuYW1lPSJTdWJzY3JpcHQiIHR5cGU9IkIiIHRleHRQb3NpdGlvbj0iUmlnaHQiIC8+PHRvb2wgbmFtZT0iSW5zZXJ0UGFyYWdyYXBoIiB0eXBlPSJCIiB0ZXh0UG9zaXRpb249IlJpZ2h0IiAvPjx0b29sIG5hbWU9Ikluc2VydEhvcml6b250YWxSdWxlIiB0eXBlPSJCIiB0ZXh0UG9zaXRpb249IlJpZ2h0IiAvPjx0b29sIG5hbWU9Ikluc2VydERhdGUiIHR5cGU9IkIiIHRleHRQb3NpdGlvbj0iUmlnaHQiIC8+PHRvb2wgbmFtZT0iSW5zZXJ0VGltZSIgdHlwZT0iQiIgdGV4dFBvc2l0aW9uPSJSaWdodCIgLz48dG9vbCB0eXBlPSJTIiBzZXBhcmF0b3I9InRydWUiIC8+PHRvb2wgbmFtZT0iQWJvdXREaWFsb2ciIHR5cGU9IkIiIHRleHRQb3NpdGlvbj0iUmlnaHQiIC8+PHRvb2wgbmFtZT0iSGVscCIgdHlwZT0iQiIgc2hvcnRjdXQ9IkYxIiB0ZXh0UG9zaXRpb249IlJpZ2h0IiAvPjwvdG9vbHM+PHRvb2xzIG5hbWU9IkVuaGFuY2VkRWRpdFRvb2xiYXIiIGlkPSJfY3RsMF9Db250ZW50X1N0YXRpY1pvbmU1NTFUb29sYmFyNiIgZG9ja2luZ1pvbmU9IkJvdHRvbSIgdG9vbHNUZXh0UG9zaXRpb249IlJpZ2h0Ij48dG9vbCBuYW1lPSJUb2dnbGVTY3JlZW5Nb2RlIiB0eXBlPSJCIiBzaG9ydGN1dD0iRjExIiB0ZXh0UG9zaXRpb249IlJpZ2h0IiAvPjx0b29sIG5hbWU9IlRvZ2dsZVRhYmxlQm9yZGVyIiB0eXBlPSJCIiB0ZXh0UG9zaXRpb249IlJpZ2h0IiAvPjx0b29sIG5hbWU9Ilpvb20iIHR5cGU9IkRCIiBzaG93VGV4dD0iVHJ1ZSIgc2hvd0ljb249IkZhbHNlIiB0ZXh0UG9zaXRpb249IlJpZ2h0IiBpdGVtc1BlclJvdz0iMSIgZHJvcERvd25XaWR0aD0iMTAwcHgiIGRyb3BEb3duSGVpZ2h0PSIxMDBweCIgLz48dG9vbCBuYW1lPSJNb2R1bGVNYW5hZ2VyIiB0eXBlPSJEQiIgdGV4dFBvc2l0aW9uPSJSaWdodCIgaXRlbXNQZXJSb3c9IjEiIGRyb3BEb3duV2lkdGg9IjEwMHB4IiBkcm9wRG93bkhlaWdodD0iMTAwcHgiIC8+PHRvb2wgbmFtZT0iVG9nZ2xlRG9ja2luZyIgdHlwZT0iQiIgdGV4dFBvc2l0aW9uPSJSaWdodCIgLz48dG9vbCBuYW1lPSJSZXBlYXRMYXN0Q29tbWFuZCIgdHlwZT0iQiIgc2hvcnRjdXQ9IkY0IiB0ZXh0UG9zaXRpb249IlJpZ2h0IiAvPjwvdG9vbHM+PGRpYWxvZ1BhcmFtZXRlcnMgLz48bGlua3M+PGxpbmsgbmFtZT0iT01OQSBXVFAgT3B0aW9ucyBUUEkgTnVtYmVycyIgaHJlZj0iL1RlY2gvT01OQS9PTU5BLXd0cC1vcHRpb24tdHBpLmFzcHgiIC8+PGxpbmsgbmFtZT0iT01OQSBXU1AgSGVhZGVyIFBhcmFtZXRlcnMiIGhyZWY9Ii9UZWNoL09NTkEvb21uYS13c3AtaGVhZGVyLXBhcmFtLmFzcHgiIC8+PGxpbmsgbmFtZT0iT01OQSBXU1AgSGVhZGVyIENvZGUgUGFnZSIgaHJlZj0iL1RlY2gvT01OQS9vbW5hLXdzcC1oZHItY29kZXBhZ2UuYXNweCIgLz48bGluayBuYW1lPSJPTUEgUXVhcnRlcmx5IFZvbHVtZSAxIiBocmVmPSIvTmV3cy9RdWFydGVybHkvVm9sdW1lMS5hc3B4IiAvPjxsaW5rIG5hbWU9IlJlbGVhc2UgUHJvZ3JhbSAtIE9uLUJvYXJkIEtleSBHZW5lcmF0aW9uIFYxLjAiIGhyZWY9Ii9yZWxlYXNlX3Byb2dyYW0vb2JrZy12MV8wLmFzcHgiIC8+PGxpbmsgbmFtZT0iT01OQSAtIERldmljZSBNYW5hZ2VtZW50IChETSkgTWFuYWdlZCBPYmplY3QgKE1PKSBSZWdpc3RyeSIgaHJlZj0iL1RlY2gvT01OQS9vbW5hLWRtX21vLXJlZ2lzdHJ5LmFzcHgiIC8+PGxpbmsgbmFtZT0iT01OQSBEZXZpY2UgTWFuYWdlbWVudCAoRE0pIEFwcGxpY2F0aW9uIENoYXJhY3RlcmlzdGljIChBQykgUmVnaXN0cnkgIiBocmVmPSIvVGVjaC9PTU5BL29tbmEtZG1fYWMuYXNweCIgLz48bGluayBuYW1lPSJPTU5BIEV4dGVybmFsIEZ1bmN0aW9uYWxpdHkgSW50ZXJmYWNlIChFRkkpIE5hbWVzcGFjZSIgaHJlZj0iL1RlY2gvT01OQS9vbW5hLWVmaS1ucy5hc3B4IiAvPjxsaW5rIG5hbWU9Ik9NTkEgSVNPIE9iamVjdCBJZGVudGlmaWVycyIgaHJlZj0iL1RlY2gvT01OQS9vbW5hLXNlYy1vaWRzLmFzcHgiIC8+PGxpbmsgbmFtZT0iT01OQSBOYW1lc3BhY2VzIiBocmVmPSIvVGVjaC9PTU5BL29tbmEtbmFtZXNwYWNlcy5hc3B4IiAvPjxsaW5rIG5hbWU9Ik9NTkEgUHJlc2VuY2UgU2VydmljZSBEZXNjcmlwdGlvbiBSZWdpc3RyeSIgaHJlZj0iL1RlY2gvT01OQS9vbW5hLXBycy1QaWRmU3ZjRGVzYy1yZWdpc3RyeS5hc3B4IiAvPjxsaW5rIG5hbWU9Ik9NTkEgUFVTSCBBcHBsaWNhdGlvbiBJRCIgaHJlZj0iL1RlY2gvT01OQS9PTU5BLXB1c2gtYXBwLWlkLmFzcHgiIC8+PGxpbmsgbmFtZT0iT01OQSBSZWdpc3RyYXRpb24gUmVxdWVzdHMiIGhyZWY9Ii9UZWNoL09NTkEvT01OQS1yZXF1ZXN0LmFzcHgiIC8+PGxpbmsgbmFtZT0iT01OQSBSZXF1ZXN0IC0gV1NQIENvbnRlbnQgVHlwZSBOdW1iZXIiIGhyZWY9Ii9UZWNoL09NTkEvb21uYS1yZXEtd3NwLWNvbnRlbnQtdHlwZS5hc3B4IiAvPjxsaW5rIG5hbWU9Ik9NTkEgU2NoZW1hLWJhc2VkIE5hbWVzcGFjZSBSZWdpc3RyeSIgaHJlZj0iL1RlY2gvT01OQS9vbW5hLXNjaGVtYS1uYW1lc3BhY2VzLmFzcHgiIC8+PGxpbmsgbmFtZT0iT01OQSBVUkktTGlzdCBVc2FnZSBOYW1lIFJlZ2lzdHJ5IiBocmVmPSIvVGVjaC9PTU5BL29tbmEtVVJJLUxpc3RVc2FnZU5hbWVzLXJlZ2lzdHJ5LmFzcHgiIC8+PGxpbmsgbmFtZT0iT01OQSBXQlhNTCBQdWJsaWMgRG9jdW1lbnQgSURzIiBocmVmPSIvVGVjaC9PTU5BL29tbmEtd2J4bWwtcHVibGljLWRvY2lkLmFzcHgiIC8+PGxpbmsgbmFtZT0iT01OQSBXTUxTY3JpcHQgTGlicmFyeSBJRHMiIGhyZWY9Ii9UZWNoL09NTkEvb21uYS13bWxzY3JpcHQtbGliLWlkLmFzcHgiIC8+PGxpbmsgbmFtZT0iT01OQSBXU1AgQ29udGVudCBUeXBlIE51bWJlcnMiIGhyZWY9Ii9UZWNoL09NTkEvb21uYS13c3AtY29udGVudC10eXBlLmFzcHgiIC8+PGxpbmsgbmFtZT0iT01OQSBXU1AgRXh0ZW5kZWQgTWV0aG9kcyIgaHJlZj0iL1RlY2gvT01OQS9vbW5hLXdzcC1leHRlbmRlZC1tZXRob2QuYXNweCIgLz48bGluayBuYW1lPSJPTUEgUXVhdGVybHkgVm9sdW1lIDIiIGhyZWY9Ii9OZXdzL1F1YXJ0ZXJseS9Wb2x1bWUyLmFzcHgiIC8+PGxpbmsgbmFtZT0iTWVtYmVyIE1lZXRpbmcgLSBQcmFndWUgLSBKdW5lIDIwMDgiIGhyZWY9Ii9NZWV0aW5ncy9NZW1iZXJzL1ByYWd1ZV8yMDA4LmFzcHgiIC8+PGxpbmsgbmFtZT0iT01OQSAtIE9NTkEgQXNzaWdubWVudHMgZnJvbSBFeHRlcm5hbCBSZWdpc3RyaWVzICIgaHJlZj0iL1RlY2gvT01OQS9vbW5hLWV4dGVybmFsLWFzc2lnbm1lbnRzLmFzcHgiIC8+PGxpbmsgbmFtZT0iUGFyaXNfMjAwOCIgaHJlZj0iL01lZXRpbmdzL01lbWJlcnMvUGFyaXNfMjAwOC5hc3B4IiAvPjxsaW5rIG5hbWU9ImFhIE9NTkEgLSBXU1AgQ29udGVudCB0eXBlIGNvZGUgcmVxdWVzdCIgaHJlZj0iL1RlY2gvT01OQS9vbW5hLXJlcS13c3AtY29udGVudC10eXBlc190ZXN0LmFzcHgiIC8+PGxpbmsgbmFtZT0iT01OQSBSZXF1ZXN0IC0gV1NQIENvbnRlbnQgVHlwZSBOdW1iZXIiIGhyZWY9Ii9UZWNoL09NTkEvb21uYS1yZXEtd3NwLWNvbnRlbnQtdHlwZS5hc3B4IiAvPjxsaW5rIG5hbWU9Ik9NTkEgUmVxdWVzdCAtIFdTUCBIZWFkZXIgQ29kZSBQYWdlIE5hbWUiIGhyZWY9Ii9UZWNoL09NTkEvb21uYS1yZXEtd3NwLWhkci1jb2RlcGFnZS5hc3B4IiAvPjxsaW5rIG5hbWU9Ik9NTkEgUmVxdWVzdCAtIFdTUCBIZWFkZXIgUGFyYW1ldGVyIE51bWJlciIgaHJlZj0iL1RlY2gvT01OQS9vbW5hLXJlcS13c3AtaGVhZGVyLXBhcmFtLmFzcHgiIC8+PGxpbmsgbmFtZT0iT01OQSBSZXF1ZXN0IC0gV1NQIEV4dGVuZGVkIE1ldGhvZCBOQW1lIiBocmVmPSIvVGVjaC9PTU5BL29tbmEtcmVxLXdzcC1leHRlbmRlZC1tZXRob2QuYXNweCIgLz48bGluayBuYW1lPSJPTU5BIFJlcXVlc3QgLSBXTUxTY3JpcHQgTGlicmFyeSBJRCBOdW1iZXIiIGhyZWY9Ii9UZWNoL09NTkEvb21uYS1yZXEtd21sc2NyaXB0LWxpYi1pZC5hc3B4IiAvPjxsaW5rIG5hbWU9Ik9NTkEgUmVxdWVzdCAtIERSTVMgRXh0ZXJuYWwgT3JnYW5pemF0aW9uIFJlZ2lzdHJhdGlvbiIgaHJlZj0iL1RlY2gvT01OQS9vbW5hLXJlcS1kcm1zLWV4dC1vcmctcmVnLmFzcHgiIC8+PGxpbmsgbmFtZT0iT01OQSBEaWdpdGFsIFJpZ2h0cyBNYW5hZ2VtZW50IChEUk0pIFJlZ2lzdHJ5IiBocmVmPSIvVGVjaC9PTU5BL29tbmEtZHJtcy11cm4tcmVnaXN0cnkuYXNweCIgLz48bGluayBuYW1lPSJPTU5BIEdCQSBQcm90b2NvbCBJZGVudGlmaWVycyIgaHJlZj0iL1RlY2gvT01OQS9vbW5hLUdCQXByb3RvY2xJZGVudGlmaWVyLmFzcHgiIC8+PGxpbmsgbmFtZT0iT01OQSBCQ0FTVCBTZXJ2aWNlIENsYXNzIFJlZ2lzdHJ5IiBocmVmPSIvVGVjaC9PTU5BL29tbmEtYmNhc3QtU3ZjQ2xhc3MtcmVnaXN0cnkuYXNweCIgLz48bGluayBuYW1lPSJPTU5BIEJDQVNUIENsaWVudE1hbnVmYWN0dXJlckNvZGUgUmVnaXN0cnkiIGhyZWY9Ii9UZWNoL09NTkEvb21uYS1iY2FzdC1DbGllbnRNYW51ZmFjdHVyZXJDb2RlLXJlZ2lzdHJ5LmFzcHgiIC8+PGxpbmsgbmFtZT0iT01OQSBCQ0FTVCBQYXJlbnRhbCBSYXRpbmcgU3lzdGVtIFJlZ2lzdHJ5IiBocmVmPSIvVGVjaC9PTU5BL29tbmEtYmNhc3QtcmF0aW5nLXN5c3RlbS5hc3B4IiAvPjxsaW5rIG5hbWU9Ik9NTkEgQkNBU1QgSWRlbnRpZmljYXRpb24gQXV0aG9yaXR5IFJlZ2lzdHJ5ICIgaHJlZj0iL1RlY2gvT01OQS9vbW5hLWJjYXN0LUlkZW50QXV0aC1yZWdpc3RyeS5hc3B4IiAvPjxsaW5rIG5hbWU9Ik9NTkEgUmVxdWVzdCAtIEJDQVNUIENsaWVudE1hbnVmYWN0dXJlckNvZGUgcmVnaXN0cnkiIGhyZWY9Ii9UZWNoL29tbmEvb21uYS1yZXEtYmNhc3QtQ2xpZW50TWFudWZhY3R1cmVyQ29kZS1yZWdpc3RyeS5hc3B4IiAvPjxsaW5rIG5hbWU9Ik9NTkEgUmVxdWVzdCAtIEJDQVNUIFNlcnZpY2UgQ2xhc3MgUmVnaXN0cnkiIGhyZWY9Ii90ZWNoL29tbmEvb21uYS1yZXEtYmNhc3QtU3ZjQ2xhc3MtcmVnaXN0cnkuYXNweCIgLz48bGluayBuYW1lPSJPTU5BIFJlcXVlc3QgLSBCQ0FTVCBJZGVudGlmaWNhdGlvbiBBdXRob3JpdHkgUmVnaXN0cnkgIiBocmVmPSIvdGVjaC9vbW5hL29tbmEtcmVxLWJjYXN0LUlkZW50QXV0aC1yZWdpc3RyeS5hc3B4IiAvPjxsaW5rIG5hbWU9Ik9NTkEgUmVxdWVzdCAtIEJDQVNUIFBhcmVudGFsIFJhdGluZyBTeXN0ZW0gUmVnaXN0cnkiIGhyZWY9Ii9UZWNoL29tbmEvb21uYS1yZXEtYmNhc3QtcmF0aW5nLXN5c3RlbS5hc3B4IiAvPjxsaW5rIG5hbWU9Ik9NTkEgUmVnaXN0cnkgZm9yIFByaXZhdGUgQVZQIENvZGVzIiBocmVmPSIvdGVjaC9vbW5hL29tbmEtQVZQLWNvZGVzLmFzcHgiIC8+PGxpbmsgbmFtZT0iTWVtYmVyIE1lZXRpbmcgLSBNYWNhdSAtIEZlYnJ1YXJ5IDIwMDkiIGhyZWY9Ii9NZWV0aW5ncy9NZW1iZXJzL01hY2F1XzIwMDlfRWFybHkuYXNweCIgLz48bGluayBuYW1lPSJNZW1iZXIgTWVldGluZyAtIEJvc3RvbiAtIEp1bmUgMjAwOSAtIEVhcmx5IiBocmVmPSIvTWVldGluZ3MvTWVtYmVycy9Cb3N0b25fSnVuZV8yMDA5X0Vhcmx5LmFzcHgiIC8+PGxpbmsgbmFtZT0iTWVtYmVyIE1lZXRpbmcgLSBMb3MgQW5nZWxlcyAtIE9jdG9iZXIgMjAwOSAtIEVhcmx5IiBocmVmPSIvTWVldGluZ3MvTWVtYmVycy9Mb3NfQW5nZWxlc18yMDA5X0Vhcmx5LmFzcHgiIC8+PGxpbmsgbmFtZT0iTWVtYmVyIE1lZXRpbmcgLSBCYXJjZWxvbmEgLSBEZWNlbWJlciAyMDA5IC0gRWFybHkiIGhyZWY9Ii9NZWV0aW5ncy9NZW1iZXJzL0JhcmNlbG9uYV8yMDA5X0Vhcmx5LmFzcHgiIC8+PGxpbmsgbmFtZT0iTWVtYmVyIE1lZXRpbmcgLSBIZWxzaW5raSAtIEFwcmlsIDIwMDkgRWFybHkiIGhyZWY9Ii9NZWV0aW5ncy9NZW1iZXJzL0hlbHNpbmtpXzIwMDlfRWFybHkuYXNweCIgLz48bGluayBuYW1lPSJNZW1iZXIgTWVldGluZyAtIFNpbmdhcG9yZSAtIEF1Z3VzdCAyMDA5IEVhcmx5IiBocmVmPSIvTWVldGluZ3MvTWVtYmVycy9TaW5nYXBvcmVfMjAwOV9FYXJseS5hc3B4IiAvPjxsaW5rIG5hbWU9Ik1lbWJlciBNZWV0aW5nIC0gQmFyY2Vsb25hIC0gRGVjZW1iZXIgMjAwOSAtIEVhcmx5IiBocmVmPSIvTWVldGluZ3MvTWVtYmVycy9CYXJjZWxvbmFfMjAwOV9FYXJseS5hc3B4IiAvPjxsaW5rIG5hbWU9Ik9NTkEgRFJNIEVuY3J5cHRpb25NZXRob2QgUmVnaXN0cnkiIGhyZWY9Ii9UZWNoL29tbmEvb21uYS1kcm0tRW5jcnlwdGlvbk1ldGhvZC1yZWdpc3RyeS5hc3B4IiAvPjxsaW5rIG5hbWU9Ik9NTkEgTVBFRy0yIERSTSBDb250cm9sIEZvcm1hdCBNZXNzYWdlIEVsZW1lbnRzIFJlZ2lzdHJ5ICIgaHJlZj0iL3RlY2gvb21uYS9vbW5hLWRybS1NRENGLW1zZy1lbGVtZW50cy1yZWdpc3RyeS5hc3B4IiAvPjxsaW5rIG5hbWU9IkVFVC0wMSBFbmhhbmNlZC1FbnZpcm9ubWVudC1UZXN0IiBocmVmPSIvdGYvRW5oYW5jZWRfRW52aXJvbm1lbnRfVGVzdC5hc3B4IiAvPjxsaW5rIG5hbWU9IlJlbGVhc2VzIC0gQXJjaGl0ZWN0dXJlIERvY3VtZW50cyIgaHJlZj0iL1ByZXZpZXcvVGVjaG5pY2FsL3JlbGVhc2VfcHJvZ3JhbS9BRC5hc3B4IiAvPjxsaW5rIG5hbWU9Ik9NTkEgUmVxdWVzdCAtICBEUk0gTURDRiBNc2cgRWxlbWVudHMgUmVnaXN0cnkiIGhyZWY9Ii9UZWNoL29tbmEvb21uYS1yZXEtQ0EtZGVzY3JpcHRvci1tZXNzYWdlLUlELmFzcHgiIC8+PGxpbmsgbmFtZT0iT01OQSBSZXF1ZXN0IC0gIENJRF9tZXNzYWdlX0lEIC0gRFJNIE1EQ0YgTXNnIEVsZW1lbnRzIFJlZ2lzdHJ5IiBocmVmPSIvdGVjaC9vbW5hL29tbmEtcmVxLWNpZC1tZXNzYWdlLWlkLmFzcHgiIC8+PGxpbmsgbmFtZT0iT01OQSBSZXF1ZXN0IC0gcmlnaHRzX1VSTF9tZXNzYWdlX0lEIC0gRFJNIE1EQ0YgTXNnIEVsZW1lbnRzIFJlZ2lzdHJ5IiBocmVmPSIvdGVjaC9vbW5hL29tbmEtcmVxLXJpZ2h0cy11cmwtbWVzc2FnZS1pZC5hc3B4IiAvPjxsaW5rIG5hbWU9Ik9NTkEgUmVxdWVzdCAtIEVuY3J5cHRpb25NZXRob2QgUmVnaXN0cnkgIiBocmVmPSIvdGVjaC9vbW5hL29tbmEtcmVxLUVuY3J5cHRpb25NZXRob2QuYXNweCIgLz48bGluayBuYW1lPSJPTU5BIC0gRFJNIHNhbXBsZV90eXBlIFJlZ2lzdHJ5IiBocmVmPSIvdGVjaC9vbW5hL29tbmEtZHJtLXNhbXBsZV90eXBlLXJlZ2lzdHJ5LmFzcHgiIC8+PGxpbmsgbmFtZT0iT01NQSBSZXF1ZXN0IC0gRFJNIHNhbXBsZV90eXBlIFJlZ2lzdHJ5IiBocmVmPSIvdGVjaC9vbW5hL29tbmEtcmVxLWRybS1zYW1wbGVfdHlwZS5hc3B4IiAvPjxsaW5rIG5hbWU9Ik9NTkEgUmVnaXN0cnkgZm9yIE9NQSBTbWFydGNhcmQgQXBwbGljYXRpb24gKEFJRCkgQ29kZXMiIGhyZWY9Ii9UZWNoL29tbmEvb21uYS1zbWFydGNhcmQtQUlELmFzcHgiIC8+PGxpbmsgbmFtZT0iT01OQSBSZXF1ZXN0IC0gT01BIERldmljZSBNYW5hZ2VtZW50IChETSkgTWFuYWdlZCBPYmplY3QgKE1PKSBSZWdpc3RyeSIgaHJlZj0iL1RlY2gvb21uYS9vbW5hLXJlcS1kbV9tby5hc3B4IiAvPjxsaW5rIG5hbWU9IlJlbGVhc2VzIC0gQ2hhcmdpbmcgVjEuMSIgaHJlZj0iL1ByZXZpZXcvVGVjaG5pY2FsL3JlbGVhc2VfcHJvZ3JhbS9jaGFyZ2luZ19WMV8xLmFzcHgiIC8+PGxpbmsgbmFtZT0iVGVzdE5ld3NsZXR0ZXIiIGhyZWY9Ii9OZXdzL1F1YXJ0ZXJseS9UZXN0TmV3c2xldHRlci5hc3B4IiAvPjxsaW5rIG5hbWU9Ik5ld3NsZXR0ZXJfVGVzdCIgaHJlZj0iL05ld3MvUXVhcnRlcmx5L05ld3NsZXR0ZXJfVGVzdC5hc3B4IiAvPjxsaW5rIG5hbWU9IjIwMDkgVm9sdW1lIDIgVGVjaG5pY2FsIEFjaGlldmVtZW50cyIgaHJlZj0iL05ld3MvUXVhcnRlcmx5LzIwMDlWb2x1bWUydGVjaC5hc3B4IiAvPjxsaW5rIG5hbWU9IjIwMDkgVm9sdW1lIDIgTmV3IFdvcmsiIGhyZWY9Ii9OZXdzL1F1YXJ0ZXJseS8yMDA5Vm9sdW1lMm5ld3dvcmsuYXNweCIgLz48bGluayBuYW1lPSIyMDA5IFZvbHVtZSAyIEV2ZW50cyIgaHJlZj0iL05ld3MvUXVhcnRlcmx5LzIwMDlWb2x1bWUyZXZlbnRzLmFzcHgiIC8+PGxpbmsgbmFtZT0iMjAwOSBWb2x1bWUgMiBtb3VzZW92ZXIgdGVzdCAyIiBocmVmPSIvTmV3cy9RdWFydGVybHkvMjAwOVZvbHVtZTJtb3VzZW92ZXJ0ZXN0Mi5hc3B4IiAvPjxsaW5rIG5hbWU9IjIwMDkgVm9sdW1lIDIgbW91c2VvdmVyIHRlc3QgMyIgaHJlZj0iL05ld3MvUXVhcnRlcmx5LzIwMDlWb2x1bWUybW91c2VvdmVydGVzdDMuYXNweCIgLz48bGluayBuYW1lPSJPTU5BIFhDQVAgQXBwbGljYXRpb24gVW5pcXVlIElEIChBVUlEKSBSZWdpc3RyeSAtIEZvciBFdmFsdWF0aW9uIiBocmVmPSIvVGVjaC9vbW5hL29tbmEtWENBUC1BVUlELXJlZ2lzdHJ5LmFzcHgiIC8+PGxpbmsgbmFtZT0iMjAwOSBWb2x1bWUgMyIgaHJlZj0iL05ld3MvUXVhcnRlcmx5LzIwMDlWb2x1bWUzLmFzcHgiIC8+PGxpbmsgbmFtZT0iMjAwOSBWb2x1bWUgMyBUZWNobmljYWwgQWNoaWV2ZW1lbnRzIiBocmVmPSIvTmV3cy9RdWFydGVybHkvMjAwOVZvbHVtZTN0ZWNoLmFzcHgiIC8+PGxpbmsgbmFtZT0iMjAwOSBWb2x1bWUgMyBOZXcgV29yayIgaHJlZj0iL05ld3MvUXVhcnRlcmx5LzIwMDlWb2x1bWUzbmV3d29yay5hc3B4IiAvPjxsaW5rIG5hbWU9IjIwMDkgVm9sdW1lIDMgRXZlbnRzIiBocmVmPSIvTmV3cy9RdWFydGVybHkvMjAwOVZvbHVtZTNldmVudHMuYXNweCIgLz48bGluayBuYW1lPSIyMDA5IFZvbHVtZSAzIE5ldyBNZW1iZXJzIiBocmVmPSIvTmV3cy9RdWFydGVybHkvMjAwOVZvbHVtZTNtZW1iZXJzLmFzcHgiIC8+PGxpbmsgbmFtZT0iUmVsZWFzZXMgLSBNb2JpbGUgQnJvYWRjYXN0IFNlcnZpY2VzIFYxLjEiIGhyZWY9Ii9QcmV2aWV3L1RlY2huaWNhbC9yZWxlYXNlX3Byb2dyYW0vYmNhc3RfdjFfMS5hc3B4IiAvPjxsaW5rIG5hbWU9IlJlbGVhc2VzIC0gTW9iaWxlIEJyb2FkY2FzdCBTZXJ2aWNlcyBBcmNoaXZlIiBocmVmPSIvUHJldmlldy9UZWNobmljYWwvcmVsZWFzZV9wcm9ncmFtL2JjYXN0X2FyY2hpdmUuYXNweCIgLz48bGluayBuYW1lPSJSZWxlYXNlcyAtIENvbnZlcmdlZCBBZGRyZXNzIEJvb2sgQXJjaGl2ZSIgaHJlZj0iL1ByZXZpZXcvVGVjaG5pY2FsL3JlbGVhc2VfcHJvZ3JhbS9jYWJfYXJjaGl2ZS5hc3B4IiAvPjxsaW5rIG5hbWU9IlJlbGVhc2VzIC0gQ29udmVyZ2VkIEFkZHJlc3MgQm9vayBWMS4wIiBocmVmPSIvUHJldmlldy9UZWNobmljYWwvcmVsZWFzZV9wcm9ncmFtL2NhYl92MV8wLmFzcHgiIC8+PGxpbmsgbmFtZT0iUmVsZWFzZXMgLSBDb25kaXRpb24gQmFzZWQgVVJJcyBTZWxlY3Rpb24gVjEuMCIgaHJlZj0iL1ByZXZpZXcvVGVjaG5pY2FsL3JlbGVhc2VfcHJvZ3JhbS9DQlVTX1YxXzAuYXNweCIgLz48bGluayBuYW1lPSJSZWxlYXNlcyAtIENvbmRpdGlvbiBCYXNlZCBVUklzIFNlbGVjdGlvbiBBcmNoaXZlIiBocmVmPSIvUHJldmlldy9UZWNobmljYWwvcmVsZWFzZV9wcm9ncmFtL0NCVVNfYXJjaGl2ZS5hc3B4IiAvPjxsaW5rIG5hbWU9IlJlbGVhc2VzIC0gQ3VzdG9taXplZCBNdWx0aW1lZGlhIFJpbmdpbmcgViAxLjAiIGhyZWY9Ii9QcmV2aWV3L1RlY2huaWNhbC9yZWxlYXNlX3Byb2dyYW0vY21yX3YxXzAuYXNweCIgLz48bGluayBuYW1lPSJSZWxlYXNlcyAtIEN1c3RvbWl6ZWQgTXVsdGltZWRpYSBSaW5naW5nIEFyY2hpdmVzIiBocmVmPSIvUHJldmlldy9UZWNobmljYWwvcmVsZWFzZV9wcm9ncmFtL2Ntcl9hcmNoaXZlcy5hc3B4IiAvPjxsaW5rIG5hbWU9IlJlbGVhc2VzIC0gRGV2aWNlIE1hbmFnZW1lbnQgQXJjaGl2ZSIgaHJlZj0iL1ByZXZpZXcvVGVjaG5pY2FsL3JlbGVhc2VfcHJvZ3JhbS9kbV9hcmNoaXZlLmFzcHgiIC8+PGxpbmsgbmFtZT0iUmVsZWFzZXMgLSBEZXZpY2UgTWFuYWdlbWVudCBWMS4zIiBocmVmPSIvUHJldmlldy9UZWNobmljYWwvcmVsZWFzZV9wcm9ncmFtL2RtX3YxXzMuYXNweCIgLz48bGluayBuYW1lPSJSZWxlYXNlcyAtIENvbnRlbnQgTWFuYWdlbWVudCBJbnRlcmZhY2UgVjEuMCIgaHJlZj0iL1ByZXZpZXcvVGVjaG5pY2FsL3JlbGVhc2VfcHJvZ3JhbS9DTUlfVjFfMC5hc3B4IiAvPjxsaW5rIG5hbWU9IlJlbGVhc2VzIC0gQ29udGVudCBNYW5hZ2VtZW50IEludGVyZmFjZSBBcmNoaXZlIiBocmVmPSIvUHJldmlldy9UZWNobmljYWwvcmVsZWFzZV9wcm9ncmFtL0NNSV9hcmNoaXZlLmFzcHgiIC8+PGxpbmsgbmFtZT0iUmVsZWFzZXMgLSBEZXZpY2UgTWFuYWdlbWVudCBTbWFydENhcmQgVjEuMCIgaHJlZj0iL1ByZXZpZXcvVGVjaG5pY2FsL3JlbGVhc2VfcHJvZ3JhbS9ETV9TQ192MV8wLmFzcHgiIC8+PGxpbmsgbmFtZT0iUmVsZWFzZXMgLSBQdXNoIFYyLjMiIGhyZWY9Ii9QcmV2aWV3L1RlY2huaWNhbC9yZWxlYXNlX3Byb2dyYW0vUHVzaF92Ml8zLmFzcHgiIC8+PGxpbmsgbmFtZT0iUmVsZWFzZXMgLSBQdXNoIEFyY2hpdmUiIGhyZWY9Ii9QcmV2aWV3L1RlY2huaWNhbC9yZWxlYXNlX3Byb2dyYW0vcHVzaF9hcmNoaXZlLmFzcHgiIC8+PGxpbmsgbmFtZT0iUmVsZWFzZXMgLSBTZWN1cmUgUmVtb3ZhYmxlIE1lZGlhIFYxLjEiIGhyZWY9Ii9QcmV2aWV3L1RlY2huaWNhbC9yZWxlYXNlX3Byb2dyYW0vc3JtX3YxXzEuYXNweCIgLz48bGluayBuYW1lPSJSZWxlYXNlcyAtIFNlY3VyZSBSZW1vdmFibGUgTWVkaWEgQXJjaGl2ZXMiIGhyZWY9Ii9QcmV2aWV3L1RlY2huaWNhbC9yZWxlYXNlX3Byb2dyYW0vc3JtX2FyY2hpdmVzLmFzcHgiIC8+PGxpbmsgbmFtZT0iUmVsZWFzZXMgLSBPTUEgU2VydmljZSBFbnZpcm9ubWVudCBBcmNoaXZlIiBocmVmPSIvUHJldmlldy9UZWNobmljYWwvcmVsZWFzZV9wcm9ncmFtL29zZV9hcmNoaXZlLmFzcHgiIC8+PGxpbmsgbmFtZT0iUmVsZWFzZXMgLSBTZXJ2aWNlIEVudmlyb25tZW50ICB2MS4wIiBocmVmPSIvUHJldmlldy9UZWNobmljYWwvcmVsZWFzZV9wcm9ncmFtL29zZV92MV8wLmFzcHgiIC8+PGxpbmsgbmFtZT0iUmVsZWFzZXMgLSBQcmVzZW5jZSBTSU1QTEUgRGF0YSBFeHRlbnNpb25zIFYxLjAiIGhyZWY9Ii9QcmV2aWV3L1RlY2huaWNhbC9yZWxlYXNlX3Byb2dyYW0vcGRlX3YxXzAuYXNweCIgLz48bGluayBuYW1lPSJSZWxlYXNlcyAtIFByZXNlbmNlIFNJTVBMRSBEYXRhIEV4dGVuc2lvbnMgQXJjaGl2ZSIgaHJlZj0iL1ByZXZpZXcvVGVjaG5pY2FsL3JlbGVhc2VfcHJvZ3JhbS9wZGVfYXJjaGl2ZS5hc3B4IiAvPjxsaW5rIG5hbWU9IlJlbGVhc2VzIC0gTW9iaWxlIExvY2F0aW9uIFNlcnZpY2UgVjEuMCIgaHJlZj0iL1ByZXZpZXcvVGVjaG5pY2FsL3JlbGVhc2VfcHJvZ3JhbS9tbHNfdjFfMC5hc3B4IiAvPjxsaW5rIG5hbWU9IlJlbGVhc2VzIC0gTW9iaWxlIExvY2F0aW9uIFNlcnZpY2UgQXJjaGl2ZSIgaHJlZj0iL1ByZXZpZXcvVGVjaG5pY2FsL3JlbGVhc2VfcHJvZ3JhbS9tbHNfYXJjaGl2ZS5hc3B4IiAvPjxsaW5rIG5hbWU9IlJlbGVhc2VzIC0gTW9iaWxlIExvY2F0aW9uIFNlcnZpY2UgVjEuMSIgaHJlZj0iL1ByZXZpZXcvVGVjaG5pY2FsL3JlbGVhc2VfcHJvZ3JhbS9tbHNfdjFfMS5hc3B4IiAvPjxsaW5rIG5hbWU9IlJlbGVhc2VzIC0gUHJlc2VuY2UgU2ltcGxlIEFyY2hpdmUiIGhyZWY9Ii9QcmV2aWV3L1RlY2huaWNhbC9yZWxlYXNlX3Byb2dyYW0vcHJlc2VuY2VfU2ltcGxlX2FyY2hpdmUuYXNweCIgLz48bGluayBuYW1lPSJSZWxlYXNlcyAtIFByZXNlbmNlIFNpbXBsZSBWMi4wIiBocmVmPSIvUHJldmlldy9UZWNobmljYWwvcmVsZWFzZV9wcm9ncmFtL1ByZXNlbmNlX3NpbXBsZV9WMl8wLmFzcHgiIC8+PGxpbmsgbmFtZT0iUmVsZWFzZXMgLSBQdXNoIHRvIHRhbGsgb3ZlciBDZWxsdWxhciBWMS4wLjMiIGhyZWY9Ii9QcmV2aWV3L1RlY2huaWNhbC9yZWxlYXNlX3Byb2dyYW0vcG9jX3YxXzAuYXNweCIgLz48bGluayBuYW1lPSJSZWxlYXNlcyAtIFB1c2ggdG8gdGFsayBPdmVyIENlbGx1bGFyIEFyY2hpdmUiIGhyZWY9Ii9QcmV2aWV3L1RlY2huaWNhbC9yZWxlYXNlX3Byb2dyYW0vUG9DX2FyY2hpdmUuYXNweCIgLz48bGluayBuYW1lPSJSZWxlYXNlcyAtIERldmljZSBDYXBhYmlsaXR5IE1hbmFnZW1lbnQgT2JqZWN0IFYxLjAiIGhyZWY9Ii9QcmV2aWV3L1RlY2huaWNhbC9yZWxlYXNlX3Byb2dyYW0vZGNtb192MV8wLmFzcHgiIC8+PC9saW5rcz48Y29udGV4dE1lbnVzIC8+PGNvbG9ycyAvPjxwYXJhZ3JhcGhzIC8+PGZvbnROYW1lcyAvPjxyZWFsRm9udFNpemVzIC8+PGNsYXNzZXMgLz48c25pcHBldHM+PHNuaXBwZXQgbmFtZT0iT3JkZXIgQ29uZmlybWF0aW9uIj48IVtDREFUQVsNCgkJCQkJPGRpdiBzdHlsZT0id2lkdGg6MzAwcHg7Ym9yZGVyOjJweCBvdXRzZXQgI0Q4RDJCRDtwYWRkaW5nOjM0cHg7Zm9udC1mYW1pbHk6QXJpYWwsIFZlcmRhbmE7IGZvbnQtc2l6ZToxMXB4O2JhY2tncm91bmQtY29sb3I6I0YxRUZFNjsiPg0KCQkJCQlEZWFyIF9fX19fX19fX19fX19fX19fX19fLDxiciAvPg0KCQkJCQlUaGFuayB5b3UgZm9yIGlucXVpcmluZyBhYm91dCBfX19fX19fX19fX18uIFlvdXIgcmVxdWVzdCB3aWxsIGJlIHByb2Nlc3NlZCBpbiA0OCBob3VycyBhbmQgc2hpcHBlZCBhdCB0aGUgYWRkcmVzcyB5b3UgaGF2ZSBwcm92aWRlZC4gDQoJCQkJCTxiciAvPjxiciAvPg0KCQkJCQkJPGI+UGxlYXNlLCBjb250YWN0IHVzIGlmIHlvdSBoYXZlIGFueSBwcm9ibGVtcy48L2I+DQoJCQkJCTwvZGl2Pg0KCQkJCV1dPjwvc25pcHBldD48c25pcHBldCBuYW1lPSJFbWFpbCBTaWduYXR1cmUiPjwhW0NEQVRBWw0KCQkJCQk8ZGl2IHN0eWxlPSJtYXJnaW4tdG9wOjMwcHg7d2lkdGg6ODAlO2JvcmRlci10b3A6MXB4IGRvdHRlZCBncmF5O3BhZGRpbmctdG9wOjRweDtmb250LWZhbWlseTpBcmlhbCwgVmVyZGFuYTsgZm9udC1zaXplOjExcHg7Ij4NCgkJCQkJPGI+Sm9obiBXaWdoYW08L2I+PGJyIC8+DQoJCQkJCVNlbmlvciBXZWIgRGV2ZWxvcGVyPGJyIC8+DQoJCQkJCQk8YSBocmVmPSIjIj5qb2huQG15c2l0ZS5jb208L2E+DQoJCQkJCQk8YnIgLz4NCgkJCQkJCQk8YnIgLz4NCgkJCQkJCQkJPGk+RGlzY2xhaW1lcjogVGhlIGNvbnRlbnRzIG9mIHRoaXMgZS1tYWlsIGFyZSBwcml2aWxlZ2VkIGFuZCBjb25maWRlbnRpYWwgYW5kIGludGVuZGVkIGZvciB0aGUgYWRkcmVzc2VlcyBhdCB0aGUgc3BlY2lmaWVkIGUtbWFpbCBhZGRyZXNzZXMgb25seS48L2k+DQoJCQkJCTwvZGl2Pg0KCQkJCV1dPjwvc25pcHBldD48c25pcHBldCBuYW1lPSJQcm9ibGVtIFJlcG9ydCBGZWVkYmFjayI+PCFbQ0RBVEFbDQoJCQkJCTxkaXYgc3R5bGU9IndpZHRoOjMwMHB4O2JvcmRlcjoycHggb3V0c2V0ICNEOEQyQkQ7cGFkZGluZzozNHB4O2ZvbnQtZmFtaWx5OkFyaWFsLCBWZXJkYW5hOyBmb250LXNpemU6MTFweDtiYWNrZ3JvdW5kLWNvbG9yOiNGMUVGRTY7Ij4NCgkJCQkJSGkgX19fX19fX19fX19fX19fX19fX18sPGJyIC8+DQoJCQkJCVRoYW5rIHlvdSBmb3IgcmVwb3J0aW5nIHRoaXMgaXNzdWUuIFdlIGhhdmUgdmVyaWZpZWQgdGhlIHByb2JsZW0gYW5kIGl0IGlzIGxvZ2dlZCBpbiBvdXIgc3lzdGVtLiBXZSB3aWxsIG5vdGlmeSB5b3Ugb25jZSB3ZSBoYXZlIGEgc29sdXRpb24uIA0KCQkJCQk8YnIgLz48YnIgLz4NCgkJCQkJCTxiPlBsZWFzZSwgY29udGFjdCB1cyBpZiB5b3UgaGF2ZSBhbnkgcHJvYmxlbXMuPC9iPg0KCQkJCQk8L2Rpdj4NCgkJCQldXT48L3NuaXBwZXQ+PC9zbmlwcGV0cz48bGFuZ3VhZ2VzIC8+PHN5bWJvbHMgLz48Zm9udFNpemVzIC8+PC9yb290Ph4LSW1hZ2VzUGF0aHMVARF+L1dlYlNpdGUvaW1hZ2VzLx4MQWxsb3dTY3JpcHRzZx4QUmVuZGVyQXNUZXh0QXJlYWgeC0ZvY3VzT25Mb2FkaB4MTWVkaWFGaWx0ZXJzFQQFKi5hdmkGKi5tcGVnBSoubW92BSoud212HglOZXdMaW5lQnJnHghMYW5ndWFnZQUFZW4tVVMeFlN0cmlwRm9ybWF0dGluZ09uUGFzdGVmHhpTcGVsbEZyYWdtZW50SWdub3JlT3B0aW9ucwspiwFUZWxlcmlrLldlYkNvbnRyb2xzLlJhZEVkaXRvclV0aWxzLkZyYWdtZW50SWdub3JlT3B0aW9ucywgUmFkRWRpdG9yLk5ldDIsIFZlcnNpb249Ny4zLjEuMCwgQ3VsdHVyZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj04NTJjOWViNjUyNWMxYjUzAB4MU2hvd0h0bWxNb2RlZx4PVGVtcGxhdGVGaWx0ZXJzFQIGKi5odG1sBSouaHRtHgpDb25maWdGaWxlBSN+L1JhZENvbnRyb2xzL0VkaXRvci9Db25maWdGaWxlLnhtbB4RQWxsb3dDdXN0b21Db2xvcnNnHgxGaWxlRW5jb2RpbmcC6fsDHg1IYXNQZXJtaXNzaW9uaB4MTWF4Rmxhc2hTaXplAoCgHx4KU2F2ZUluRmlsZWgeCVNraW5zUGF0aAUbfi9SYWRDb250cm9scy9FZGl0b3IvU2tpbnMvHgtUb29sYmFyTW9kZQspeFRlbGVyaWsuV2ViQ29udHJvbHMuRWRpdG9yVG9vbGJhck1vZGUsIFJhZEVkaXRvci5OZXQyLCBWZXJzaW9uPTcuMy4xLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49ODUyYzllYjY1MjVjMWI1MwEeFUVuYWJsZUh0bWxJbmRlbnRhdGlvbmceF1Nob3dTdWJtaXRDYW5jZWxCdXR0b25zZx4SU3BlbGxDaGVja1Byb3ZpZGVyCymIAVRlbGVyaWsuV2ViQ29udHJvbHMuUmFkRWRpdG9yVXRpbHMuU3BlbGxDaGVja1Byb3ZpZGVyLCBSYWRFZGl0b3IuTmV0MiwgVmVyc2lvbj03LjMuMS4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPTg1MmM5ZWI2NTI1YzFiNTMBHgRTa2luBQNPTUEeDE1heE1lZGlhU2l6ZQKAoB8eCUVuYWJsZVRhYmceEVNwZWxsRWRpdERpc3RhbmNlAgEeGUVuYWJsZVNlcnZlclNpZGVSZW5kZXJpbmdnHhFBbmNob3JQYXRoVG9TdHJpcGUeF1NwZWxsRGljdGlvbmFyeUxhbmd1YWdlZR4URGlhbG9nUGFyYW1ldGVyc01vZGULKXtUZWxlcmlrLldlYkNvbnRyb2xzLkRpYWxvZ1BhcmFtZXRlcnNNb2RlLCBSYWRFZGl0b3IuTmV0MiwgVmVyc2lvbj03LjMuMS4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPTg1MmM5ZWI2NTI1YzFiNTMAHgxPbkNsaWVudExvYWQFGGNvcHlQYXJlbnRTdHlsZXNUb0VkaXRvch4IQ3NzRmlsZXMVAR5+L09yZ2FuaXphdGlvbi9PTUEvY3NzL09NQS5jc3MeC1NhdmVBc1hodG1saB4PTWF4RG9jdW1lbnRTaXplAoDAuAJkZBgBBR5fX0NvbnRyb2xzUmVxdWlyZVBvc3RCYWNrS2V5X18WAgUdX2N0bDA6aGVhZGVyQ29udHJvbDpidG5TZWFyY2gFG19jdGwwOnRvdGFsYmFyQ29udHJvbDpfY3RsMwgkrdCb0kjRkYAxhprp7fCIeMEP
+name=__VIEWSTATE>
+<DIV>
+<DIV id=div_main style="MARGIN-LEFT: 0px; WIDTH: 984px; HEIGHT: 636px"
+align=left>
+<TABLE style="BACKGROUND: white; WIDTH: 100%" cellSpacing=0 cellPadding=0
+border=0>
+ <TBODY>
+ <TR><!--<td width="14px" style="width:14px; background-image:url('/Organization/OMA/Images/home-shadow-left.png'); background-repeat :repeat; ">&nbsp;&nbsp;&nbsp;</td>
+ -->
+ <TD style="BACKGROUND: white; WIDTH: 14px" width=10>&nbsp;&nbsp;</TD>
+ <TD style="MARGIN: 0px" width=964>
+ <TABLE id=table_frame height="100%" cellSpacing=0 cellPadding=0
+ width="100%" border=0>
+ <TBODY>
+ <TR height=51>
+ <TD style="PADDING-BOTTOM: 1px; MARGIN: 0px" vAlign=top colSpan=2>
+ <DIV style="MARGIN-TOP: 5px; BACKGROUND: white">
+ <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
+ <TBODY>
+ <TR>
+ <TD class=oma_header_bar vAlign=center align=right width="100%"
+ colSpan=2>
+ <TABLE cellSpacing=0 cellPadding=0 width="80%" border=0>
+ <TBODY>
+ <TR>
+ <TD style="WIDTH: 40%" vAlign=center align=right><INPUT
+ class=oma_input_text id=_ctl0_headerControl_txtSearch
+ name=_ctl0:headerControl:txtSearch> </TD>
+ <TD vAlign=center><INPUT class=OmaP1
+ id=_ctl0_headerControl_btnSearch type=image
+ src="OMNA Schema-based Namespace Registry_fichiers/button-search.png"
+ border=0 name=_ctl0:headerControl:btnSearch> </TD>
+ <TD style="WIDTH: 32px" vAlign=center>&nbsp; </TD>
+ <TD vAlign=center>
+ <TABLE class=header_bar_button cellSpacing=0
+ cellPadding=0 border=0>
+ <TBODY>
+ <TR>
+ <TD class=header_bar_button vAlign=center><IMG
+ src="OMNA Schema-based Namespace Registry_fichiers/icon-login.png">
+ </TD>
+ <TD class=header_bar_button vAlign=center><A
+ class=header_bar_link
+ href="http://member.openmobilealliance.org/">Login</A>
+ </TD></TR></TBODY></TABLE></TD>
+ <TD vAlign=center>
+ <TABLE class=header_bar_button cellSpacing=0
+ cellPadding=0 border=0>
+ <TBODY>
+ <TR>
+ <TD class=header_bar_button vAlign=center><IMG
+ src="OMNA Schema-based Namespace Registry_fichiers/icon-apply-for-login.png">
+ </TD>
+ <TD class=header_bar_button vAlign=center><A
+ class=header_bar_link
+ href="http://member.openmobilealliance.org/AccountCreation/GetAccount.asp">Apply
+ for Login</A> </TD></TR></TBODY></TABLE></TD>
+ <TD vAlign=center>
+ <TABLE class=header_bar_button cellSpacing=0
+ cellPadding=0 border=0>
+ <TBODY>
+ <TR>
+ <TD class=header_bar_button vAlign=center><IMG
+ src="OMNA Schema-based Namespace Registry_fichiers/icon-contact.png">
+ </TD>
+ <TD class=header_bar_button vAlign=center><A
+ class=header_bar_link
+ href="http://www.openmobilealliance.org/AboutOMA/contact.aspx">Contact</A>
+ </TD></TR></TBODY></TABLE></TD>
+ <TD vAlign=center>
+ <TABLE class=header_bar_button cellSpacing=0
+ cellPadding=0 border=0>
+ <TBODY>
+ <TR>
+ <TD class=header_bar_button vAlign=center><IMG
+ src="OMNA Schema-based Namespace Registry_fichiers/icon-sitemap.png">
+ </TD>
+ <TD class=header_bar_button vAlign=center><A
+ class=header_bar_link
+ href="http://www.openmobilealliance.org/Application/CMS/siteMap/">Site
+ Map</A> </TD></TR></TBODY></TABLE></TD>
+ <TD style="WIDTH: 12px" vAlign=center>&nbsp;
+ </TD></TR></TBODY></TABLE></TD></TR>
+ <TR>
+ <TD style="BORDER-BOTTOM: #d0c4ac 1px solid; HEIGHT: 55px"
+ vAlign=top align=left width="100%"><A title="OMA Web Site"
+ href="http://www.openmobilealliance.org/default.aspx"
+ target=_parent><IMG
+ style="BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none"
+ alt="OMA Web Site"
+ src="OMNA Schema-based Namespace Registry_fichiers/home-logo.png"></A></TD>
+ <TD style="BORDER-BOTTOM: #d0c4ac 1px solid; HEIGHT: 55px"
+ vAlign=center align=left width="100%"><IMG
+ style="BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none"
+ alt="OMA Web Site"
+ src="OMNA Schema-based Namespace Registry_fichiers/banner-logo-right.png"></TD></TR></TBODY></TABLE></DIV></TD></TR>
+ <TR>
+ <TD id=td_total_bar vAlign=top colSpan=2>
+ <DIV class=oma_div_menu id=_ctl0_totalbarControl_divMenu>
+ <DIV class="radmenu RadMenu_Default " id=_ctl0_totalbarControl__ctl3
+ style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/button-grey-background.png); BORDER-BOTTOM-WIDTH: 0px; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px"><!-- 4.4.3 -->
+ <SCRIPT
+ src="OMNA Schema-based Namespace Registry_fichiers/EventMixin.js"
+ type=text/javascript></SCRIPT>
+
+ <SCRIPT
+ src="OMNA Schema-based Namespace Registry_fichiers/DomEventMixin.js"
+ type=text/javascript></SCRIPT>
+
+ <SCRIPT
+ src="OMNA Schema-based Namespace Registry_fichiers/MsAjaxMixin.js"
+ type=text/javascript></SCRIPT>
+
+ <SCRIPT
+ src="OMNA Schema-based Namespace Registry_fichiers/RadMenu.js"
+ type=text/javascript></SCRIPT>
+
+ <SCRIPT
+ src="OMNA Schema-based Namespace Registry_fichiers/RadMenuItem.js"
+ type=text/javascript></SCRIPT>
+
+ <SCRIPT src="OMNA Schema-based Namespace Registry_fichiers/Box.js"
+ type=text/javascript></SCRIPT>
+
+ <SCRIPT
+ src="OMNA Schema-based Namespace Registry_fichiers/Browser.js"
+ type=text/javascript></SCRIPT>
+
+ <SCRIPT
+ src="OMNA Schema-based Namespace Registry_fichiers/Screen.js"
+ type=text/javascript></SCRIPT>
+
+ <SCRIPT src="OMNA Schema-based Namespace Registry_fichiers/Ease.js"
+ type=text/javascript></SCRIPT>
+
+ <SCRIPT
+ src="OMNA Schema-based Namespace Registry_fichiers/Ticker.js"
+ type=text/javascript></SCRIPT>
+
+ <SCRIPT
+ src="OMNA Schema-based Namespace Registry_fichiers/EasingEquations.js"
+ type=text/javascript></SCRIPT>
+
+ <SCRIPT
+ src="OMNA Schema-based Namespace Registry_fichiers/RadMenuItemState.js"
+ type=text/javascript></SCRIPT>
+
+ <SCRIPT
+ src="OMNA Schema-based Namespace Registry_fichiers/Overlay.js"
+ type=text/javascript></SCRIPT>
+
+ <SCRIPT
+ src="OMNA Schema-based Namespace Registry_fichiers/Scroll.js"
+ type=text/javascript></SCRIPT>
+
+ <SCRIPT src="OMNA Schema-based Namespace Registry_fichiers/json.js"
+ type=text/javascript></SCRIPT>
+ <SPAN id=_ctl0_totalbarControl__ctl3StyleSheetHolder
+ style="DISPLAY: none"></SPAN>
+ <UL class="horizontal rootGroup">
+ <LI class="item first"><A class=link
+ id=_ctl0_totalbarControl__ctl3_m0
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; CURSOR: pointer; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/AboutOMA/Default.aspx"><IMG
+ class=leftImage alt=""
+ src="OMNA Schema-based Namespace Registry_fichiers/button-out-About-OMA.png"><SPAN
+ class=text></SPAN></A>
+ <DIV class=slide>
+ <UL class="vertical group level1">
+ <LI class="item first"><A class=link
+ id=_ctl0_totalbarControl__ctl3_m0_m0
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/AboutOMA/contact.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px"
+ face=verdana>Contacts</FONT></SPAN></A></LI>
+ <LI class=item><A class=link
+ id=_ctl0_totalbarControl__ctl3_m0_m1
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/AboutOMA/FAQ.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px"
+ face=verdana>FAQ</FONT></SPAN></A></LI>
+ <LI class=item><A class=link
+ id=_ctl0_totalbarControl__ctl3_m0_m2
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/AboutOMA/TechnicalPlenary.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px" face=verdana>OMA
+ Technical Plenary</FONT></SPAN></A></LI>
+ <LI class=item><A class=link
+ id=_ctl0_totalbarControl__ctl3_m0_m3
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/AboutOMA/openness.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px" face=verdana>Openness
+ Policy</FONT></SPAN></A></LI>
+ <LI class=item><A class=link
+ id=_ctl0_totalbarControl__ctl3_m0_m4
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/AboutOMA/Trademarks.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px"
+ face=verdana>Trademarks</FONT></SPAN></A></LI>
+ <LI class=item><A class=link
+ id=_ctl0_totalbarControl__ctl3_m0_m5
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/Use_Agreement.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px" face=verdana>Document
+ Use Agreement</FONT></SPAN></A></LI>
+ <LI class=item><A class=link
+ id=_ctl0_totalbarControl__ctl3_m0_m6
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/AboutOMA/IPR.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px"
+ face=verdana>IPR</FONT></SPAN></A></LI>
+ <LI class=item><A class=link
+ id=_ctl0_totalbarControl__ctl3_m0_m7
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/AboutOMA/Antitrust.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px"
+ face=verdana>Antitrust</FONT></SPAN></A></LI>
+ <LI class="item last"><A class=link
+ id=_ctl0_totalbarControl__ctl3_m0_m8
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/AboutOMA/JobOpportunities.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px" face=verdana>Job
+ Opportunities</FONT></SPAN></A> </LI></UL></DIV></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m1
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; CURSOR: pointer; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/Membership/default.aspx"><IMG
+ class=leftImage alt=""
+ src="OMNA Schema-based Namespace Registry_fichiers/button-out-Membership.png"><SPAN
+ class=text></SPAN></A>
+ <DIV class=slide>
+ <UL class="vertical group level1">
+ <LI class="item first"><A class=link
+ id=_ctl0_totalbarControl__ctl3_m1_m0
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/Membership/default.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px" face=verdana>Joining
+ OMA</FONT></SPAN></A></LI>
+ <LI class=item><A class=link
+ id=_ctl0_totalbarControl__ctl3_m1_m1
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/Membership/CurrentMembers.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px" face=verdana>Current
+ Members</FONT></SPAN></A></LI>
+ <LI class=item><A class=link
+ id=_ctl0_totalbarControl__ctl3_m1_m2
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/Membership/resources.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px" face=verdana>Accessing
+ Resources</FONT></SPAN></A></LI>
+ <LI class="item last"><A class=link
+ id=_ctl0_totalbarControl__ctl3_m1_m3
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/Membership/membershiprightsmatrix.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px" face=verdana>Membership
+ rights matrix</FONT></SPAN></A> </LI></UL></DIV></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m2
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; CURSOR: pointer; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/News/Default.aspx"><IMG
+ class=leftImage alt=""
+ src="OMNA Schema-based Namespace Registry_fichiers/button-out-News.png"><SPAN
+ class=text></SPAN></A>
+ <DIV class=slide>
+ <UL class="vertical group level1">
+ <LI class="item first"><A class=link
+ id=_ctl0_totalbarControl__ctl3_m2_m0
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/technical/tech_briefing.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px" face=verdana>June 2009
+ Technical Briefing</FONT></SPAN></A></LI>
+ <LI class=item><A class=link
+ id=_ctl0_totalbarControl__ctl3_m2_m1
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/news/tech_achievements.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px" face=verdana>OMA
+ Technical Achievements</FONT></SPAN></A></LI>
+ <LI class=item><A class=link
+ id=_ctl0_totalbarControl__ctl3_m2_m2
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/news/pipeline.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px" face=verdana>OMA
+ Pipeline</FONT></SPAN></A></LI>
+ <LI class=item><A class=link
+ id=_ctl0_totalbarControl__ctl3_m2_m3
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/News/Quarterly/2009Volume2.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px" face=verdana>OMA
+ Newsletter</FONT></SPAN></A></LI>
+ <LI class=item><A class=link
+ id=_ctl0_totalbarControl__ctl3_m2_m4
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/News/IndustryEvents.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px" face=verdana>Upcoming
+ Events</FONT></SPAN></A></LI>
+ <LI class=item><A class=link
+ id=_ctl0_totalbarControl__ctl3_m2_m5
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/News/PastIndustryEvents.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px" face=verdana>Recent OMA
+ Presentations</FONT></SPAN></A></LI>
+ <LI class=item><A class=link
+ id=_ctl0_totalbarControl__ctl3_m2_m6
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/News/presscenter.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px" face=verdana>Press
+ Center</FONT></SPAN></A></LI>
+ <LI class="item last"><A class=link
+ id=_ctl0_totalbarControl__ctl3_m2_m7
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/News/mediacoverage.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px" face=verdana>Media
+ Coverage</FONT></SPAN></A> </LI></UL></DIV></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m3
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; CURSOR: pointer; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/Technical/"><IMG
+ class=leftImage alt=""
+ src="OMNA Schema-based Namespace Registry_fichiers/button-on-Technical-Information.png"><SPAN
+ class=text></SPAN></A>
+ <DIV class=slide>
+ <UL class="vertical group level1">
+ <LI class="item first"><A class=link
+ id=_ctl0_totalbarControl__ctl3_m3_m0
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/Technical/releaseprogram.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link
+ id=_ctl0_totalbarControl__ctl3_m3_m1
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/Technical/WorkingGroupsCommitees.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link
+ id=_ctl0_totalbarControl__ctl3_m3_m2
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/Technical/WorkProgram.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link
+ id=_ctl0_totalbarControl__ctl3_m3_m3
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/Technical/PublicMaterial.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link
+ id=_ctl0_totalbarControl__ctl3_m3_m4
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/Technical/Comments.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link
+ id=_ctl0_totalbarControl__ctl3_m3_m5
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/Tech/OMNA.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link
+ id=_ctl0_totalbarControl__ctl3_m3_m6
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/Technical/DTD_Schemas.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link
+ id=_ctl0_totalbarControl__ctl3_m3_m7
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/Technical/Collaborating.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class="item last"><A class=link
+ id=_ctl0_totalbarControl__ctl3_m3_m8
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/Technical/Affiliates.aspx"><SPAN
+ class=text></SPAN></A></LI></UL></DIV></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m4
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; CURSOR: pointer; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/Meetings/overview.aspx"><IMG
+ class=leftImage alt=""
+ src="OMNA Schema-based Namespace Registry_fichiers/button-out-Member-meetings.png"><SPAN
+ class=text></SPAN></A>
+ <DIV class=slide>
+ <UL class="vertical group level1">
+ <LI class="item first"><A class=link
+ id=_ctl0_totalbarControl__ctl3_m4_m0
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/Meetings/2009.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px" face=verdana>2009
+ Meetings Schedule</FONT></SPAN></A></LI>
+ <LI class=item><A class=link
+ id=_ctl0_totalbarControl__ctl3_m4_m1
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/Meetings/2010events.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px" face=verdana>2010
+ Meetings Schedule</FONT></SPAN></A></LI>
+ <LI class="item last"><A class=link
+ id=_ctl0_totalbarControl__ctl3_m4_m2
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/members/NextEventRegistration.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px" face=verdana>Next
+ Meeting Registration</FONT></SPAN></A> </LI></UL></DIV></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m5
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; CURSOR: pointer; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/TestFests/overview.aspx"><IMG
+ class=leftImage alt=""
+ src="OMNA Schema-based Namespace Registry_fichiers/button-out-TestFests.png"><SPAN
+ class=text></SPAN></A>
+ <DIV class=slide>
+ <UL class="vertical group level1">
+ <LI class="item first"><A class=link
+ id=_ctl0_totalbarControl__ctl3_m5_m0
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/TestFests/overview.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px"
+ face=verdana>Overview</FONT></SPAN></A></LI>
+ <LI class=item><A class=link
+ id=_ctl0_totalbarControl__ctl3_m5_m1
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/TestFests/FutureEvents.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px" face=verdana>Future
+ Test Events Schedule</FONT></SPAN></A></LI>
+ <LI class=item><A class=link
+ id=_ctl0_totalbarControl__ctl3_m5_m2
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/tf/index.asp"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px" face=verdana>Test Event
+ Documents</FONT></SPAN></A></LI>
+ <LI class=item><A class=link
+ id=_ctl0_totalbarControl__ctl3_m5_m3
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/TF/NextEventRegistration.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px" face=verdana>Next Event
+ Registration</FONT></SPAN></A></LI>
+ <LI class=item><A class=link
+ id=_ctl0_totalbarControl__ctl3_m5_m4
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/tf/OMA-TestBank.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px" face=verdana>TestBank
+ Registration</FONT></SPAN></A></LI>
+ <LI class="item last"><A class=link
+ id=_ctl0_totalbarControl__ctl3_m5_m5
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/TestFests/Problem_Reporting.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px" face=verdana>Problem
+ Reporting System</FONT></SPAN></A> </LI></UL></DIV></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m6
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; CURSOR: pointer; BORDER-RIGHT-WIDTH: 0px"
+ href="http://product.openmobilealliance.org/"><IMG class=leftImage
+ alt=""
+ src="OMNA Schema-based Namespace Registry_fichiers/button-out-Implementations.png"><SPAN
+ class=text></SPAN></A>
+ <DIV class=slide>
+ <UL class="vertical group level1">
+ <LI class="item first"><A class=link
+ id=_ctl0_totalbarControl__ctl3_m6_m0
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/Technical/ETR_Enablers.aspx"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px" face=verdana>TestFest
+ Reports</FONT></SPAN></A></LI>
+ <LI class=item><A class=link
+ id=_ctl0_totalbarControl__ctl3_m6_m1
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/Application/ProductListing/products/"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px" face=verdana>Product
+ Listing</FONT></SPAN></A></LI>
+ <LI class="item last"><A class=link
+ id=_ctl0_totalbarControl__ctl3_m6_m2
+ onmouseover="this.style.color='white';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-red.png')&quot;"
+ style="BORDER-TOP: white 1px solid; DISPLAY: inline-block; FONT-WEIGHT: bolder; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(/Organization/OMA/images_menu/menu-background-pink.png); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 226px; CURSOR: pointer; COLOR: #979080; FONT-FAMILY: Verdana; BORDER-RIGHT-WIDTH: 0px; font-face: Verdana"
+ onmouseout="this.style.color='#979080';this.style.backgroundImage=&quot;url('/Organization/OMA/images_menu/menu-background-pink.png')&quot;"
+ href="http://www.openmobilealliance.org/Application/ProductListing/uaprof/"><SPAN
+ class=text><FONT style="FONT-SIZE: 10px" face=verdana>User Agent
+ Profiles</FONT></SPAN></A> </LI></UL></DIV></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m7
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/Application/CMS/staticPagesList/"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m8
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/Application/CMS/reloadObjects/"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m9
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/News/Mediacoverage_Chinese.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m10
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/News/PressCenter_Chinese.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m11
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/Technical/current_releases.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m12
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/Technical/DTD.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m13
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/Technical/IETF.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m14
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/News/Quarterly/2009Volume1.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m15
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/News/Quarterly/2009Volume2.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m16
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/Technical/3gpp.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m17
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/News/2008_annual_report.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m18
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/Technical/Schemas.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m19
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/News/mediacoverage_French.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m20
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/News/PressCentre_French.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m21
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/Application/CMS/menuList/"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m22
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/News/PressCenter_German.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m23
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/News/mediacoverage_German.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m24
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/Technical/3gpp2.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m25
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/News/Quarterly/Volume3.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m26
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/News/mediacoverage_Japanese.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m27
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/News/PressCenter_Japanese.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m28
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/Application/CMS/Keywords/"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m29
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/Application/CMS/groupManagement/"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m30
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/News/presscenter_Korean.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m31
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/News/mediacoverage_Korean.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m32
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/News/Quarterly/2008Volume2.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m33
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/News/Quarterly/2008Volume1.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m34
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/Technical/release_program/historic_material.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m35
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/News/mediacoverage_Spanish.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m36
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/News/presscenter_Spanish.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m37
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/Application/Reporting"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class=item><A class=link id=_ctl0_totalbarControl__ctl3_m38
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/News/Quarterly/Newsletters_Archive.aspx"><SPAN
+ class=text></SPAN></A></LI>
+ <LI class="item last"><A class=link
+ id=_ctl0_totalbarControl__ctl3_m39
+ style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline-block; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"
+ href="http://www.openmobilealliance.org/Application/Reporting/CMS/brokenlinks.aspx"><SPAN
+ class=text></SPAN></A></LI></UL><INPUT
+ id=_ctl0_totalbarControl__ctl3_Hidden type=hidden
+ name=_ctl0:totalbarControl:_ctl3>
+ <SCRIPT type=text/javascript>window["_ctl0_totalbarControl__ctl3"] = RadMenu.Create("_ctl0_totalbarControl__ctl3");window["_ctl0_totalbarControl__ctl3"].Initialize({"Skin":"Default","Enabled":true},{"_ctl0_totalbarControl__ctl3_m0":{"ImageOverUrl":"/Organization/OMA/images_menu/button-over-About-OMA.png","ImageClickedUrl":"/Organization/OMA/images_menu/button-on-About-OMA.png","Value":"1"},"_ctl0_totalbarControl__ctl3_m0_m0":{"Value":"388"},"_ctl0_totalbarControl__ctl3_m0_m1":{"Value":"363"},"_ctl0_totalbarControl__ctl3_m0_m2":{"Value":"377"},"_ctl0_totalbarControl__ctl3_m0_m3":{"Value":"392"},"_ctl0_totalbarControl__ctl3_m0_m4":{"Value":"366"},"_ctl0_totalbarControl__ctl3_m0_m5":{"Value":"432"},"_ctl0_totalbarControl__ctl3_m0_m6":{"Value":"380"},"_ctl0_totalbarControl__ctl3_m0_m7":{"Value":"379"},"_ctl0_totalbarControl__ctl3_m0_m8":{"Value":"367"},"_ctl0_totalbarControl__ctl3_m1":{"ImageOverUrl":"/Organization/OMA/images_menu/button-over-Membership.png","ImageClickedUrl":"/Organization/OMA/images_menu/button-on-Membership.png","Value":"3"},"_ctl0_totalbarControl__ctl3_m1_m0":{"Value":"453"},"_ctl0_totalbarControl__ctl3_m1_m1":{"Value":"384"},"_ctl0_totalbarControl__ctl3_m1_m2":{"Value":"445"},"_ctl0_totalbarControl__ctl3_m1_m3":{"Value":"385"},"_ctl0_totalbarControl__ctl3_m2":{"ImageOverUrl":"/Organization/OMA/images_menu/button-over-News.png","ImageClickedUrl":"/Organization/OMA/images_menu/button-on-News.png","Value":"2"},"_ctl0_totalbarControl__ctl3_m2_m0":{"Value":"460"},"_ctl0_totalbarControl__ctl3_m2_m1":{"Value":"461"},"_ctl0_totalbarControl__ctl3_m2_m2":{"Value":"462"},"_ctl0_totalbarControl__ctl3_m2_m3":{"Value":"417"},"_ctl0_totalbarControl__ctl3_m2_m4":{"Value":"429"},"_ctl0_totalbarControl__ctl3_m2_m5":{"Value":"430"},"_ctl0_totalbarControl__ctl3_m2_m6":{"Value":"394"},"_ctl0_totalbarControl__ctl3_m2_m7":{"Value":"393"},"_ctl0_totalbarControl__ctl3_m3":{"ImageOverUrl":"/Organization/OMA/images_menu/button-on-Technical-Information.png","ImageClickedUrl":"/Organization/OMA/images_menu/button-on-Technical-Information.png","Value":"4"},"_ctl0_totalbarControl__ctl3_m3_m0":{"Value":"411"},"_ctl0_totalbarControl__ctl3_m3_m1":{"Value":"9"},"_ctl0_totalbarControl__ctl3_m3_m2":{"Value":"415"},"_ctl0_totalbarControl__ctl3_m3_m3":{"Value":"414"},"_ctl0_totalbarControl__ctl3_m3_m4":{"Value":"416"},"_ctl0_totalbarControl__ctl3_m3_m5":{"Value":"413"},"_ctl0_totalbarControl__ctl3_m3_m6":{"Value":"412"},"_ctl0_totalbarControl__ctl3_m3_m7":{"Value":"440"},"_ctl0_totalbarControl__ctl3_m3_m8":{"Value":"444"},"_ctl0_totalbarControl__ctl3_m4":{"ImageOverUrl":"/Organization/OMA/images_menu/button-over-Member-meetings.png","ImageClickedUrl":"/Organization/OMA/images_menu/button-on-Member-meetings.png","Value":"5"},"_ctl0_totalbarControl__ctl3_m4_m0":{"Value":"408"},"_ctl0_totalbarControl__ctl3_m4_m1":{"Value":"409"},"_ctl0_totalbarControl__ctl3_m4_m2":{"Value":"400"},"_ctl0_totalbarControl__ctl3_m5":{"ImageOverUrl":"/Organization/OMA/images_menu/button-over-TestFests.png","ImageClickedUrl":"/Organization/OMA/images_menu/button-on-TestFests.png","Value":"6"},"_ctl0_totalbarControl__ctl3_m5_m0":{"Value":"401"},"_ctl0_totalbarControl__ctl3_m5_m1":{"Value":"402"},"_ctl0_totalbarControl__ctl3_m5_m2":{"Value":"403"},"_ctl0_totalbarControl__ctl3_m5_m3":{"Value":"404"},"_ctl0_totalbarControl__ctl3_m5_m4":{"Value":"454"},"_ctl0_totalbarControl__ctl3_m5_m5":{"Value":"433"},"_ctl0_totalbarControl__ctl3_m6":{"ImageOverUrl":"/Organization/OMA/images_menu/button-over-Implementations.png","ImageClickedUrl":"/Organization/OMA/images_menu/button-on-Implementations.png","Value":"7"},"_ctl0_totalbarControl__ctl3_m6_m0":{"Value":"405"},"_ctl0_totalbarControl__ctl3_m6_m1":{"Value":"406"},"_ctl0_totalbarControl__ctl3_m6_m2":{"Value":"407"},"_ctl0_totalbarControl__ctl3_m7":{"Value":"73"},"_ctl0_totalbarControl__ctl3_m8":{"Value":"89"},"_ctl0_totalbarControl__ctl3_m9":{"Value":"396"},"_ctl0_totalbarControl__ctl3_m10":{"Value":"397"},"_ctl0_totalbarControl__ctl3_m11":{"Value":"435"},"_ctl0_totalbarControl__ctl3_m12":{"Value":"436"},"_ctl0_totalbarControl__ctl3_m13":{"Value":"441"},"_ctl0_totalbarControl__ctl3_m14":{"Value":"458"},"_ctl0_totalbarControl__ctl3_m15":{"Value":"463"},"_ctl0_totalbarControl__ctl3_m16":{"Value":"442"},"_ctl0_totalbarControl__ctl3_m17":{"Value":"457"},"_ctl0_totalbarControl__ctl3_m18":{"Value":"437"},"_ctl0_totalbarControl__ctl3_m19":{"Value":"423"},"_ctl0_totalbarControl__ctl3_m20":{"Value":"418"},"_ctl0_totalbarControl__ctl3_m21":{"Value":"82"},"_ctl0_totalbarControl__ctl3_m22":{"Value":"419"},"_ctl0_totalbarControl__ctl3_m23":{"Value":"424"},"_ctl0_totalbarControl__ctl3_m24":{"Value":"443"},"_ctl0_totalbarControl__ctl3_m25":{"Value":"456"},"_ctl0_totalbarControl__ctl3_m26":{"Value":"425"},"_ctl0_totalbarControl__ctl3_m27":{"Value":"420"},"_ctl0_totalbarControl__ctl3_m28":{"Value":"87"},"_ctl0_totalbarControl__ctl3_m29":{"Value":"88"},"_ctl0_totalbarControl__ctl3_m30":{"Value":"421"},"_ctl0_totalbarControl__ctl3_m31":{"Value":"426"},"_ctl0_totalbarControl__ctl3_m32":{"Value":"455"},"_ctl0_totalbarControl__ctl3_m33":{"Value":"452"},"_ctl0_totalbarControl__ctl3_m34":{"Value":"446"},"_ctl0_totalbarControl__ctl3_m35":{"Value":"428"},"_ctl0_totalbarControl__ctl3_m36":{"Value":"422"},"_ctl0_totalbarControl__ctl3_m37":{"Value":"447"},"_ctl0_totalbarControl__ctl3_m38":{"Value":"459"},"_ctl0_totalbarControl__ctl3_m39":{"Value":"448"}});</SCRIPT>
+ </DIV></DIV></TD></TR>
+ <TR>
+ <TD id=td1 vAlign=bottom colSpan=2 height=32>
+ <DIV>
+ <TABLE class=copy_breadcrumb_heading>
+ <TBODY>
+ <TR>
+ <TD id=_ctl0_breadcrumbar1_divMain style="PADDING-LEFT: 260px"
+ align=left><IMG
+ src="OMNA Schema-based Namespace Registry_fichiers/indication-navigation-arrow-grey.png">&nbsp;&nbsp;<A
+ class=OmaBreadCrumb
+ href="http://www.openmobilealliance.org/">Home</A>&nbsp;&nbsp;&nbsp;<IMG
+ src="OMNA Schema-based Namespace Registry_fichiers/indication-navigation-arrow-grey.png">&nbsp;&nbsp;<A
+ class=OmaBreadCrumb
+ href="http://www.openmobilealliance.org/Technical/">Technical
+ Information</A>&nbsp;&nbsp;&nbsp;<IMG
+ src="OMNA Schema-based Namespace Registry_fichiers/indication-navigation-arrow-grey.png">&nbsp;&nbsp;<A
+ class=OmaBreadCrumb
+ href="http://www.openmobilealliance.org/Tech/OMNA.aspx">OMNA</A>&nbsp;&nbsp;&nbsp;</TD></TR></TBODY></TABLE></DIV></TD></TR>
+ <TR>
+ <TD class=CELL-MENU id=td_menu
+ style="PADDING-RIGHT: 1px; PADDING-LEFT: 1px; PADDING-BOTTOM: 1px; PADDING-TOP: 1px"><!--<table class="MENU-TABLE" cellspacing="0" cellpadding="0" border="0" style="border-collapse:collapse;">-->
+ <DIV id=leftnav_container>
+ <DIV id=leftnav_body>
+ <DIV class=left_nav_item
+ onmouseover="this.className='left_nav_item_on'"
+ onclick="document.location.href='/Technical/releaseprogram.aspx'"
+ onmouseout="this.className='left_nav_item'">
+ <DIV class=left_nav_lc></DIV>
+ <DIV class=left_nav_rc><FONT class=link_font>Release
+ Program</FONT></DIV></DIV>
+ <DIV class=left_nav_item
+ onmouseover="this.className='left_nav_item_on'"
+ onclick="document.location.href='/Technical/WorkingGroupsCommitees.aspx'"
+ onmouseout="this.className='left_nav_item'">
+ <DIV class=left_nav_lc></DIV>
+ <DIV class=left_nav_rc><FONT class=link_font>Working groups and
+ Commitees</FONT></DIV></DIV>
+ <DIV class=left_nav_item
+ onmouseover="this.className='left_nav_item_on'"
+ onclick="document.location.href='/Technical/WorkProgram.aspx'"
+ onmouseout="this.className='left_nav_item'">
+ <DIV class=left_nav_lc></DIV>
+ <DIV class=left_nav_rc><FONT class=link_font>Work
+ Program</FONT></DIV></DIV>
+ <DIV class=left_nav_item
+ onmouseover="this.className='left_nav_item_on'"
+ onclick="document.location.href='/Technical/PublicMaterial.aspx'"
+ onmouseout="this.className='left_nav_item'">
+ <DIV class=left_nav_lc></DIV>
+ <DIV class=left_nav_rc><FONT class=link_font>Publicly Available
+ Documents</FONT></DIV></DIV>
+ <DIV class=left_nav_item
+ onmouseover="this.className='left_nav_item_on'"
+ onclick="document.location.href='/Technical/Comments.aspx'"
+ onmouseout="this.className='left_nav_item'">
+ <DIV class=left_nav_lc></DIV>
+ <DIV class=left_nav_rc><FONT class=link_font>Specifications for
+ Public Comment</FONT></DIV></DIV>
+ <DIV class=left_nav_item_selected
+ onclick="document.location.href='/Tech/OMNA.aspx'">
+ <DIV class=left_nav_lc></DIV>
+ <DIV class=left_nav_rc><FONT class=link_font>OMNA</FONT></DIV></DIV>
+ <DIV class=left_nav_item
+ onmouseover="this.className='left_nav_item_on'"
+ onclick="document.location.href='/Technical/DTD_Schemas.aspx'"
+ onmouseout="this.className='left_nav_item'">
+ <DIV class=left_nav_lc></DIV>
+ <DIV class=left_nav_rc><FONT class=link_font>DTDs and Profile
+ Data</FONT></DIV></DIV>
+ <DIV class=left_nav_item
+ onmouseover="this.className='left_nav_item_on'"
+ onclick="document.location.href='/Technical/Collaborating.aspx'"
+ onmouseout="this.className='left_nav_item'">
+ <DIV class=left_nav_lc></DIV>
+ <DIV class=left_nav_rc><FONT class=link_font>Collaborating with
+ OMA</FONT></DIV></DIV>
+ <DIV class=left_nav_item
+ onmouseover="this.className='left_nav_item_on'"
+ onclick="document.location.href='/Technical/Affiliates.aspx'"
+ onmouseout="this.className='left_nav_item'">
+ <DIV class=left_nav_lc></DIV>
+ <DIV class=left_nav_rc><FONT class=link_font>Material from
+ Affiliates</FONT></DIV></DIV>
+ <DIV style="CLEAR: both"></DIV></DIV></DIV></TD>
+ <TD id=td_content vAlign=top width="100%">
+ <DIV id=div_content style="WIDTH: 100%" valign="top"><!--<div id="pnlProductList">-->
+ <SCRIPT type=text/javascript>function copyParentStylesToEditor(editor){var theIFrame = document.getElementById("RadEContentIframe" + editor.Id);var theMainEditorTable = document.getElementById("RadEWrapper" + editor.Id);var theParentEl = theMainEditorTable.parentNode.parentNode;var theContentArea = editor.GetContentArea();for (var attr in theParentEl.currentStyle){ var strStyle = "" + attr; if ( ( strStyle != "overflow" ) && ( strStyle != "overflowX" ) && ( strStyle != "overflowY" ) ) { theContentArea.style[attr] = theParentEl.currentStyle[attr];}}}</SCRIPT>
+
+ <DIV id=oma_template_container>
+ <TABLE class=oma_content_panel cellSpacing=0 cellPadding=0>
+ <TBODY>
+ <TR>
+ <TD class=tpl_oma_onecol id=content_main_onecol vAlign=top>
+ <DIV id=_ctl0_Content_StaticZone551_wrapper
+ style="DISPLAY: inline-block"><!-- 7.3.1 -->
+ <DIV id=_ctl0_Content_StaticZone551>
+ <P align=left><FONT class=OmaP1><FONT class=OmaTitle1><FONT
+ class=OmaTitle1>OMNA Schema-based Namespace
+ Registry<BR></FONT></FONT><BR><BR>The OMNA namespace registry
+ includes schema-based URNs. These all use the OMAresource tag
+ of oma as presented on the <A
+ href="http://www.openmobilealliance.org/tech/omna/OMNA-namespaces.aspx">OMNA
+ Namespace Main Page. </A><BR><BR>The Schema-based namespace is
+ further sub-divided into domains that are nominally associated
+ to enablers. <BR><BR>The allocation of URNs within the xml
+ resource set is bpased upon a naming model that uses domain
+ segregation of the namespace. The model follows the following
+ grammar:<BR><BR><BR><B>urn:oma:xml:</B>{SchemaDomain}<B>:</B><I>{SchemaSpecificTag}<BR></I><BR><BR>For
+ each listed URN there is an associated <A
+ href="http://www.openmobilealliance.org/technical/schemas.aspx">OMA
+ Schema</A>. The following table links to the current
+ schema-based URN allocations.<BR><BR></FONT></P><BR>
+ <TABLE style="WIDTH: 100%" cellSpacing=0 cellPadding=0
+ border=0>
+ <TBODY>
+ <TR>
+ <TD class=TableTitre1 colSpan=4>Schemas-based URN
+ Allocations </TD></TR>
+ <TR>
+ <TD class=TableTitre2>Domain </TD>
+ <TD class=TableTitre2>Description </TD>
+ <TD class=TableTitre2>Registered URN </TD>
+ <TD class=TableTitre2>Schema Links </TD></TR>
+ <TR>
+ <TD class=TableP1big vAlign=top align=left
+ rowSpan=21><BR>bcast</TD>
+ <TD class=TableP1little style="HEIGHT: 46px">Associated
+ Delivery Procedure for File Delivery</TD>
+ <TD
+ class=TableP1big>urn:oma:xml:bcast:fd:associatedprocedure:1.0</TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/Tech/profiles/bcast_fd_associatedprocedure-v1_0.xsd">bcast_fd_associatedprocedure-1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little style="HEIGHT: 46px">Backend
+ Messages for File Delivery</TD>
+ <TD class=TableP1big>urn:oma:xml:bcast:fd:backend:1.0</TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/tech/profiles/bcast_fd_backend-v1_0.xsd"><INS
+ cite=mailto:NSN
+ dateTime=2009-02-10T04:22>bcast_fd_backend-</INS><INS
+ cite=mailto:NSN dateTime=2009-02-10T04:23>v</INS><INS
+ cite=mailto:NSN
+ dateTime=2009-02-10T04:22>1_0-.xsd</INS></A>&nbsp;</TD></TR>
+ <TR>
+ <TD class=TableP1little style="HEIGHT: 46px">File
+ Description Table (FDT)</TD>
+ <TD class=TableP1big>urn:oma:xml:bcast:fd:fdt:1.0</TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/tech/profiles/bcast_fd_fdt-v1_0.xsd">bcast_fd_fdt-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little style="HEIGHT: 46px">Reception
+ Report</TD>
+ <TD
+ class=TableP1big>urn:oma:xml:bcast:fd:receptionreport:1.0</TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/tech/profiles/bcast_fd_receptionreport-v1_0.xsd">bcast_fd_receptionreport-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little
+ style="HEIGHT: 46px">Notification Backend Messages</TD>
+ <TD class=TableP1big>urn:oma:xml:bcast:nt:backend:1.0</TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/tech/profiles/bcast_nt_message-v1_0.xsd">bcast_nt_<SPAN>backend</SPAN>-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little
+ style="HEIGHT: 46px">Notification Message</TD>
+ <TD class=TableP1big>urn:oma:xml:bcast:nt:message:1.0</TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/tech/profiles/bcast_nt_message-v1_0.xsd">bcast_nt_message-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little style="HEIGHT: 46px">Service
+ Provisioning Order Queries</TD>
+ <TD
+ class=TableP1big>urn:oma:xml:bcast:pr:orderqueries:1.0</TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/tech/profiles/bcast_pr_serviceordering-v1_0.xsd">bcast_pr_orderqueries-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little style="HEIGHT: 46px">End User
+ Preferences</TD>
+ <TD
+ class=TableP1big>urn:oma:xml:bcast:pr:userpreferences:1.0</TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/tech/profiles/bcast_pr_userpreference-v1_0.xsd">bcast_pr_userpreference-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little style="HEIGHT: 46px">Roaming
+ Backend Messages</TD>
+ <TD
+ class=TableP1big>urn:oma:xml:bcast:roaming:backend1.0</TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/tech/profiles/bcast_roaming-v1_0.xsd">bcast_roaming_backend-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little style="HEIGHT: 46px">Roaming
+ Frontend Messages</TD>
+ <TD
+ class=TableP1big>urn:oma:xml:bcast:roaming:frontend1.0</TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/tech/profiles/bcast_roaming-v1_0.xsd">bcast_roaming_frontend-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little style="HEIGHT: 46px">Associated
+ Delivery Procedure <SPAN><SPAN>for
+ </SPAN></SPAN>Stream<SPAN><SPAN><SPAN>Delivery</SPAN></SPAN></SPAN></TD>
+ <TD
+ class=TableP1big>urn:oma:xml:bcast:sd:associatedprocedure:1.0</TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/tech/profiles/bcast_sd_associatedprocedure-v1_0.xsd"><INS
+ cite=mailto:Uwe%20Rauschenbach,%20Siemens
+ dateTime=2006-12-14T22:25>bcast_</INS><INS
+ cite=mailto:Uwe%20Rauschenbach,%20Siemens
+ dateTime=2006-12-14T22:27>s</INS><INS
+ cite=mailto:Uwe%20Rauschenbach,%20Siemens
+ dateTime=2006-12-14T22:25>d_</INS><INS
+ cite=mailto:Uwe%20Rauschenbach,%20Siemens,%20R01
+ dateTime=2006-12-15T04:29>associatedprocedure</INS><DEL
+ cite=mailto:Uwe%20Rauschenbach,%20Siemens,%20R01
+ dateTime=2006-12-15T04:29> </DEL>-<INS
+ cite=mailto:Uwe%20Rauschenbach,%20Siemens
+ dateTime=2006-12-14T22:25>v1_0.xsd</INS></A></TD></TR>
+ <TR>
+ <TD class=TableP1little style="HEIGHT: 46px">Backend
+ Messages for Stream Delivery</TD>
+ <TD
+ class=TableP1big>urn:oma:xml:bcast:sd:backend:1.0&nbsp;</TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/tech/profiles/bcast_sd_backend-v1_0.xsd">bcast_sd_backend-v1_0-.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little style="HEIGHT: 46px">Reception
+ Report for Stream Delivery</TD>
+ <TD
+ class=TableP1big>urn:oma:xml:bcast:sd:receptionreport:1.0</TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/tech/profiles/bcast_fd_receptionreport-v1_0.xsd">bcast_sd_receptionreport-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little style="HEIGHT: 46px">Service
+ Guide Back End Messages</TD>
+ <TD class=TableP1big>urn:oma:xml:bcast:sg:backend:1.0</TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/tech/profiles/bcast_sg_backend-v1_0.xsd">bcast_sg_backend-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little style="HEIGHT: 46px">Service
+ Guide Fragments</TD>
+ <TD
+ class=TableP1big>urn:oma:xml:bcast:sg:fragments:1.0</TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/tech/profiles/bcast_sg_fragments-v1_0.xsd">bcast_sg_fragments-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little style="HEIGHT: 46px">Service
+ Guide Delivery Descriptor</TD>
+ <TD class=TableP1big>urn:oma:xml:bcast:sg:sgdd:1.0</TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/tech/profiles/bcast_sg_sgdd-v1_0.xsd">bcast_sg_sgdd-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little
+ style="HEIGHT: 46px">Interactivity Media Document</TD>
+ <TD
+ class=TableP1big>urn:oma:xml:bcast:si:interactivitymedia:1.0</TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/tech/profiles/bcast_si_interactivitymedia-v1_0.xsd">bcast_si_interactivitymedia-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little style="HEIGHT: 46px">Service and
+ Content Protection Back End Messages</TD>
+ <TD
+ class=TableP1big>urn:oma:xml:bcast:spcp:backend:1.0</TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/tech/profiles/bcast_spcp_backend-v1_0.xsd">bcast_spcp_backend-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little style="HEIGHT: 46px"
+ rowSpan=3>Rights Issuer Service Data</TD>
+ <TD class=TableP1big
+ rowSpan=3>urn:oma:xml:drm:risd:1.0</TD>
+ <TD class=TableP1little rowSpan=3><A
+ href="http://www.openmobilealliance.org/tech/profiles/drm_risd-v1_0.xsd">drm_risd-v1_0.xsd</A></TD></TR>
+ <TR></TR>
+ <TR></TR>
+ <TR>
+ <TD class=TableP1big vAlign=center align=left
+ rowSpan=2>cbcs</TD>
+ <TD class=TableP1little>PEM-1 input template for the
+ CBCS enabler<SPAN
+ style="FONT-SIZE: 12pt; FONT-FAMILY: "> </SPAN></TD>
+ <TD
+ class=TableP1big>urn:oma:xml:cbcs:pem1-input-template:1.0
+ </TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/tech/profiles/cbcs_pem1InputTemplate-V1_0.xsd">cbcs_pem1InputTemplate-V1_0.xsd
+ </A></TD></TR>
+ <TR>
+ <TD class=TableP1little>PEM-1 output template for the
+ CBCS enabler </TD>
+ <TD
+ class=TableP1big>urn:oma:xml:cbcs:pem1-output-template:1.0<SPAN
+ style="FONT-SIZE: 12pt; FONT-FAMILY: "> </SPAN></TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/tech/profiles/cbcs_pem1OutputTemplate-V1_0.xsd">cbcs_pem1OutputTemplate-V1_0.xsd
+ </A></TD></TR>
+ <TR>
+ <TD class=TableP1big vAlign=center align=left>cmi</TD>
+ <TD class=TableP1little>CMI Package</TD>
+ <TD class=TableP1big>urn:oma:xml:cmi:package:1.0 </TD>
+ <TD class=TableP1little>-</TD></TR>
+ <TR>
+ <TD class=TableP1big vAlign=center align=left>dpe</TD>
+ <TD class=TableP1little>OMA DPE XML Schema</TD>
+ <TD class=TableP1big>&nbsp;-</TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/tech/profiles/dpe_xsd-v1_0.xsd">dpe_xsd-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1big vAlign=top rowSpan=2>dl</TD>
+ <TD class=TableP1little>Download Descriptor</TD>
+ <TD class=TableP1big>urn:oma:xml:dl:dd:2.0</TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/tech/profiles/dd-V2_0.xsd">dd-v2_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little>JAD MIDP Extension </TD>
+ <TD class=TableP1big>urn:oma:xml:dl:jad:2.0</TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/tech/profiles/dd_midpjad-V2_0.xsd"
+ target=_blank>dd_midpjad-v2_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1big vAlign=center align=left
+ rowSpan=2>gpm</TD>
+ <TD class=TableP1little>PEM-1 input template for the GPM
+ enabler </TD>
+ <TD
+ class=TableP1big>urn:oma:xml:gpm:pem1-input-template:1.0
+ </TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/Tech/profiles/GPM_PEM1InputTemplate-V1_0.xsd">GPM_PEM1InputTemplate-v1_0.xsd
+ </A></TD></TR>
+ <TR>
+ <TD class=TableP1little>PEM-1 output template for the
+ GPM enabler </TD>
+ <TD
+ class=TableP1big>urn:oma:xml:gpm:pem1-output-template:1.0
+ </TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/Tech/profiles/GPM_PEM1OutputTemplate-v1_0.xsd">GPM_PEM1OutputTemplate-v1_0.xsd
+ </A></TD></TR>
+ <TR>
+ <TD class=TableP1big vAlign=center align=left
+ rowSpan=5>gssm</TD>
+ <TD class=TableP1little>PEM-1 input template for the
+ GSSM enabler </TD>
+ <TD
+ class=TableP1big>urn:oma:xml:gssm:pem1-input-template:1.0
+ </TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/Tech/profiles/gssm_pem1InputTemplate-v1_0.xsd">gssm_pem1InputTemplate-v1_0.xsd
+ </A></TD></TR>
+ <TR>
+ <TD class=TableP1little>PEM-1 output template for the
+ GSSM enabler </TD>
+ <TD
+ class=TableP1big>urn:oma:xml:gssm:pem1-output-template:1.0
+ </TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/Tech/profiles/gssm_pem1OutputTemplate-v1_0.xsd">gssm_pem1OutputTemplate-v1_0.xsd
+ </A></TD></TR>
+ <TR>
+ <TD class=TableP1little>Query Data Schemas</TD>
+ <TD class=TableP1big>urn:oma:xml:gssm:queries:1.0 </TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/tech/profiles/gssm_queries-v1_0.xsd">gssm_queries-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little>GSSM-1 Data Schemas </TD>
+ <TD class=TableP1big>urn:oma:xml:gssm:gssm1:1.0 </TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/tech/profiles/gssm_gssm1-v1_0.xsd">gssm_gssm1-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little>GSSM-2 Data Schemas </TD>
+ <TD class=TableP1big>urn:oma:xml:gssm:gssm2:1.0 </TD>
+ <TD class=TableP1little><A
+ href="http://www.openmobilealliance.org/tech/profiles/gssm_gssm2-v1_0.xsd">gssm_gssm2-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1big vAlign=top rowSpan=4>locsip</TD>
+ <TD class=TableP1little style="HEIGHT: 46px">Location
+ QoS&nbsp; </TD>
+ <TD class=TableP1big
+ style="HEIGHT: 46px">urn:oma:xml:locsip:qos:1.0</TD>
+ <TD class=TableP1little style="HEIGHT: 46px"><A
+ href="http://www.openmobilealliance.org/tech/profiles/locsip_qos-v1_0.xsd"
+ target=_blank>locsip_qos-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little style="HEIGHT: 46px">Extension
+ of GPM PEM1 output template&nbsp; </TD>
+ <TD class=TableP1big
+ style="HEIGHT: 46px">urn:oma:xml:locsip:gpm-pem1-output-ext:1.0</TD>
+ <TD class=TableP1little style="HEIGHT: 46px"><A
+ href="http://www.openmobilealliance.org/tech/profiles/locsip_gpmpem1outputext-v1_0.xsd"
+ target=_blank>locsip_gpmpem1outputext-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little style="HEIGHT: 46px">location
+ QoS&nbsp;gbakeyid</TD>
+ <TD class=TableP1big
+ style="HEIGHT: 46px">urn:oma:xml:locsip:gbakey-id:1.0</TD>
+ <TD class=TableP1little style="HEIGHT: 46px"><A
+ href="http://www.openmobilealliance.org/tech/profiles/locsip_gbakeyid-v1_0.xsd"
+ target=_blank>locsip_gbakeyid-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little style="HEIGHT: 46px">location
+ filter</TD>
+ <TD class=TableP1big
+ style="HEIGHT: 46px">urn:oma:xml:locsip:filter:1.0</TD>
+ <TD class=TableP1little style="HEIGHT: 46px"><A
+ href="http://www.openmobilealliance.org/tech/profiles/locsip_filter-v1_0.xsd"
+ target=_blank>locsip_filter-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1big vAlign=top rowSpan=6>poc</TD>
+ <TD class=TableP1little style="HEIGHT: 46px">PoC
+ Settings V2.1&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+ <TD class=TableP1big
+ style="HEIGHT: 46px">urn:oma:xml:poc:poc2.1-settings</TD>
+ <TD class=TableP1little style="HEIGHT: 46px"><A
+ href="http://www.openmobilealliance.org/tech/profiles/poc_poc2_1Settings-v2_1.xsd"
+ target=_blank>poc_poc2_1Settings-v2_1.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little style="HEIGHT: 46px">PoC
+ Sessions V2.1&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+ <TD class=TableP1big
+ style="HEIGHT: 46px">urn:oma:xml:poc:poc-sessions</TD>
+ <TD class=TableP1little style="HEIGHT: 46px"><A
+ href="http://www.openmobilealliance.org/tech/profiles/poc_poc_sessions-v2_1.xsd"
+ target=_blank>poc_poc_sessions-v2_1.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little style="HEIGHT: 46px">Group
+ Advertisement</TD>
+ <TD class=TableP1big
+ style="HEIGHT: 46px">urn:oma:xml:poc:group-advertisement</TD>
+ <TD class=TableP1little style="HEIGHT: 46px"><A
+ href="http://www.openmobilealliance.org/tech/profiles/poc_groupAdvertisement-v1_0.xsd"
+ target=_blank>poc_groupAdvertisement-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little style="HEIGHT: 46px">List
+ Service</TD>
+ <TD class=TableP1big
+ style="HEIGHT: 46px">urn:oma:xml:poc:list-service</TD>
+ <TD class=TableP1little style="HEIGHT: 46px"><A
+ href="http://www.openmobilealliance.org/tech/profiles/poc_listService-v1_0.xsd"
+ target=_blank>poc_listService-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little
+ style="HEIGHT: 46px">PoC-specific Rules</TD>
+ <TD class=TableP1big
+ style="HEIGHT: 46px">urn:oma:xml:poc:poc-rules</TD>
+ <TD class=TableP1little style="HEIGHT: 46px"><A
+ href="http://www.openmobilealliance.org/tech/profiles/poc_pocRules-v1_0.xsd"
+ target=_blank>poc_pocRules-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little style="HEIGHT: 46px">List
+ Service</TD>
+ <TD class=TableP1big
+ style="HEIGHT: 46px">urn:oma:xml:poc:oma-pocusage</TD>
+ <TD class=TableP1little style="HEIGHT: 46px"><A
+ href="http://www.openmobilealliance.org/tech/profiles/poc_pocusage-v1_0.xsd"
+ target=_blank>poc_pocusage-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1big style="HEIGHT: 46px"
+ rowSpan=2>peem</TD>
+ <TD class=TableP1little style="HEIGHT: 46px">PEM-1
+ Generic Input Template Schema definition</TD>
+ <TD class=TableP1big
+ style="HEIGHT: 46px">urn:oma:xml:peem:pem1-input-template:1.0</TD>
+ <TD class=TableP1little style="HEIGHT: 46px"><A
+ href="http://www.openmobilealliance.org/tech/profiles/PEM_1_GenericInputTemplateData-V1_0.xsd">PEM_1_GenericInputTemplateData-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little style="HEIGHT: 46px">PEM-1
+ Generic Output Template schema definition </TD>
+ <TD class=TableP1big
+ style="HEIGHT: 46px">urn:oma:xml:peem:pem1-output-template:1.0</TD>
+ <TD class=TableP1little style="HEIGHT: 46px"><A
+ href="http://www.openmobilealliance.org/tech/profiles/PEM_1_GenericOutputTemplateData-V1_0.xsd">PEM_1_GenericOutputTemplateData-v1_0.xsd
+ </A></TD></TR>
+ <TR>
+ <TD class=TableP1big style="HEIGHT: 46px">pde</TD>
+ <TD class=TableP1little style="HEIGHT: 46px">PDE - PIDF
+ Extensions&nbsp; </TD>
+ <TD class=TableP1big
+ style="HEIGHT: 46px">urn:oma:xml:pde:pidf:ext</TD>
+ <TD class=TableP1little style="HEIGHT: 46px">TBD</TD></TR>
+ <TR>
+ <TD class=TableP1big vAlign=top rowSpan=2>prs</TD>
+ <TD class=TableP1little style="HEIGHT: 46px">Presence
+ Rules</TD>
+ <TD class=TableP1big
+ style="HEIGHT: 46px">urn:oma:xml:prs:pres-rules</TD>
+ <TD class=TableP1little style="HEIGHT: 46px"><A
+ href="http://www.openmobilealliance.org/tech/profiles/prs_presRules-v1_0.xsd"
+ target=_blank>prs_presRules-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little style="HEIGHT: 46px">OMA
+ extensions to PIDF</TD>
+ <TD class=TableP1big
+ style="HEIGHT: 46px">urn:oma:xml:prs:pidf:oma-pres</TD>
+ <TD class=TableP1little style="HEIGHT: 46px"><A
+ href="http://www.openmobilealliance.org/tech/profiles/prs_pidf_omapres-v1_0.xsd"
+ target=_blank>prs_pidf_omapres-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1big vAlign=top rowSpan=5>xdm</TD>
+ <TD class=TableP1little style="HEIGHT: 46px">Common
+ Policy</TD>
+ <TD class=TableP1big
+ style="HEIGHT: 46px">urn:oma:xml:xdm:common-policy</TD>
+ <TD class=TableP1little style="HEIGHT: 46px"><A
+ href="http://www.openmobilealliance.org/tech/profiles/xdm_commonPolicy-v1_0.xsd"
+ target=_blank>xdm_commonPolicy-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little style="HEIGHT: 46px">Resource
+ List - URI usage</TD>
+ <TD class=TableP1big
+ style="HEIGHT: 46px">urn:oma:xml:xdm:resource-list:oma-uriusage</TD>
+ <TD class=TableP1little style="HEIGHT: 46px"><A
+ href="http://www.openmobilealliance.org/tech/profiles/xdm_rsrclst_uriusage-v1_0.xsd"
+ target=_blank>xdm_rsrclst_uriusage-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little style="HEIGHT: 46px">XCAP
+ Directory</TD>
+ <TD class=TableP1big
+ style="HEIGHT: 46px">urn:oma:xml:xdm:xcap-directory</TD>
+ <TD class=TableP1little style="HEIGHT: 46px"><A
+ href="http://www.openmobilealliance.org/tech/profiles/xdm_xcapDirectory-v1_0.xsd"
+ target=_blank>xdm_xcapDirectory-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little style="HEIGHT: 46px">XCAP
+ Error</TD>
+ <TD class=TableP1big
+ style="HEIGHT: 46px">urn:oma:xml:xdm:xcap-error</TD>
+ <TD class=TableP1little style="HEIGHT: 46px"><A
+ href="http://www.openmobilealliance.org/tech/profiles/xdm_xcapError-v1_0.xsd"
+ target=_blank>xdm_xcapError-v1_0.xsd</A></TD></TR>
+ <TR>
+ <TD class=TableP1little style="HEIGHT: 46px">Resource
+ List -APP usage</TD>
+ <TD class=TableP1big
+ style="HEIGHT: 46px">urn:oma:xml:xdm:resource-list:oma-appusage</TD>
+ <TD class=TableP1little style="HEIGHT: 46px"><A
+ title=/tech/profiles/xdm_rsrclst_uriusage-v1_0.xsd
+ href="http://www.openmobilealliance.org/tech/profiles/xdm_rsrclst_appusage-v1_0.xsd"
+ target=_blank>xdm_rsrclst_appusage-v1_0.xsd</A></TD></TR></TBODY></TABLE></DIV></DIV></TD></TR></TBODY></TABLE></DIV></DIV></TD></TR>
+ <TR height=38>
+ <TD id=td_footer vAlign=top width="100%" colSpan=2><LINK
+ href="../css/OMA.css" type=text/css rel=stylesheet>
+ <TABLE id=Table8 height=30 cellSpacing=0 cellPadding=0 width="100%"
+ border=0>
+ <TBODY>
+ <TR>
+ <TD class=oma_header_bar style="TEXT-ALIGN: center"><SPAN
+ class=OmaFooter>&nbsp;Copyright&nbsp;©&nbsp;2009 &nbsp;Open
+ Mobile Alliance Ltd. All rights reserved. &nbsp;<A
+ href="http://www.openmobilealliance.org/AboutOMA/useterms.aspx"
+ target=_new>Website Terms of Use</A> &nbsp;<!--|&nbsp;
+ <a class="OmaFooter" href="/webs/AboutOMA/disclaimer.aspx" target="_new">
+ Disclaimer</a>--> <!--&nbsp;|&nbsp;
+ <a class="OmaFooter" href="/useterms.asp" target="_new">
+ RSS feed&nbsp;</a>--></SPAN></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE></TD>
+ <TD style="BACKGROUND: white; WIDTH: 14px" width=10>&nbsp;&nbsp;</TD><!--<td width="14px" style="width:14px; background-image:url('//Organization/OMA/Images/home-shadow-right.png'); background-repeat :repeat; ">&nbsp;&nbsp;&nbsp;</td>
+ </tr>
+ <tr>
+ <td style="background:#353131;height:13px;width:100%; background-image:url('//Organization/OMA/Images/home-shadow-down.png'); background-repeat :repeat-x; " colspan="4">&nbsp;</td>
+ <td style="background:#353131;background-image:url('//Organization/OMA/Images/home-shadow-bottom-right-corner.png'); background-repeat :repeat-x;">&nbsp;</td>
+ </tr>--></TR></TBODY></TABLE></DIV></DIV><INPUT
+id=__EVENTVALIDATION type=hidden
+value=/wEWAwLBg+zVBwLRyrb7AQLV6qK+B1rOf3dDQ8DL5sIuW9glzI1oOKcf
+name=__EVENTVALIDATION></FORM></DIV>
+<SCRIPT>try{modifyRadEditorIcon('#_ctl0_Content_StaticZone551')}catch(e){}</SCRIPT>
+</BODY></HTML>
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/Box.js b/schemas/OMNA Schema-based Namespace Registry_fichiers/Box.js
new file mode 100644
index 0000000..fbd63dc
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/Box.js
@@ -0,0 +1,101 @@
+if (typeof window.RadControlsNamespace == "undefined")
+{
+ window.RadControlsNamespace = {};
+}
+
+if (
+ typeof(window.RadControlsNamespace.Box) == "undefined" ||
+ typeof(window.RadControlsNamespace.Box.Version) == null ||
+ window.RadControlsNamespace.Box.Version < 2
+ )
+{
+
+ window.RadControlsNamespace.Box =
+ {
+ Version : 2, /// Change the version when make changes. Change the value in the IF also
+
+ GetOuterWidth : function (element)
+ {
+ return element.offsetWidth;
+ },
+
+ GetOuterHeight : function (element)
+ {
+ return element.offsetHeight;
+ },
+
+ SetOuterHeight : function (element, height)
+ {
+ if (height <= 0 || height == "")
+ {
+ element.style.height = "";
+ }
+ else
+ {
+ element.style.height = height + "px";
+ var diff = element.offsetHeight - height;
+ var newHeight = height - diff;
+ if (newHeight > 0) {
+ element.style.height = newHeight + "px";
+ } else {
+ element.style.height = "";
+ }
+ }
+ },
+
+ SetOuterWidth : function (element, width)
+ {
+
+ if (width <= 0 || width == "")
+ {
+ element.style.width = "";
+ }
+ else
+ {
+ element.style.width = width + "px";
+ var diff = element.offsetWidth - width;
+ var newWidth = width - diff;
+ if (newWidth > 0) {
+ element.style.width = newWidth + "px";
+ } else {
+ element.style.width = "";
+ }
+ return newWidth;
+ }
+ },
+
+
+ GetPropertyValue : function(element, styleProperty)
+ {
+ var computedStyle = this.GetStyle(element);
+ return this.GetStyleValues(computedStyle, styleProperty);
+ },
+
+
+ GetStyle : function (element)
+ {
+ if (document.defaultView && document.defaultView.getComputedStyle)
+ {
+ return document.defaultView.getComputedStyle(element, null);
+ }
+ else if (element.currentStyle)
+ {
+ return element.currentStyle;
+ }
+ else
+ {
+ return element.style;
+ }
+ }
+ }
+}
+
+//BEGIN_ATLAS_NOTIFY
+if (typeof(Sys) != "undefined")
+{
+ if (Sys.Application != null && Sys.Application.notifyScriptLoaded != null)
+ {
+ Sys.Application.notifyScriptLoaded();
+ }
+}
+//END_ATLAS_NOTIFY \ No newline at end of file
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/Browser.js b/schemas/OMNA Schema-based Namespace Registry_fichiers/Browser.js
new file mode 100644
index 0000000..e5ccdad
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/Browser.js
@@ -0,0 +1,58 @@
+if (typeof window.RadControlsNamespace == "undefined")
+{
+ window.RadControlsNamespace = {};
+}
+
+if (
+ typeof(window.RadControlsNamespace.Browser) == "undefined" ||
+ typeof(window.RadControlsNamespace.Browser.Version) == null ||
+ window.RadControlsNamespace.Browser.Version < 1
+ )
+{
+
+ window.RadControlsNamespace.Browser = {
+ Version : 1
+ };
+
+ window.RadControlsNamespace.Browser.ParseBrowserInfo = function ()
+ {
+
+ this.IsMacIE = (navigator.appName == "Microsoft Internet Explorer") &&
+ ((navigator.userAgent.toLowerCase().indexOf("mac") != -1) ||
+ (navigator.appVersion.toLowerCase().indexOf("mac") != -1));
+
+ this.IsSafari = (navigator.userAgent.toLowerCase().indexOf("safari") != -1);
+
+ this.IsSafari3 = (this.IsSafari && navigator.userAgent.toLowerCase().indexOf("ersion/3.") != -1);
+
+ this.IsMozilla = window.netscape && !window.opera;
+
+ this.IsFirefox = window.netscape && !window.opera;
+
+ this.IsNetscape = /Netscape/.test(navigator.userAgent);
+
+ this.IsOpera = window.opera;
+
+ this.IsOpera9 = window.opera && (parseInt(window.opera.version()) > 8);
+
+ this.IsIE = !this.IsMacIE && !this.IsMozilla && !this.IsOpera && !this.IsSafari;
+
+ this.IsIE7 = /MSIE 7/.test(navigator.appVersion);
+
+ this.StandardsMode = this.IsSafari || this.IsOpera9 || this.IsMozilla || document.compatMode == "CSS1Compat";
+
+ this.IsMac = /Mac/.test(navigator.userAgent);
+ }
+
+ RadControlsNamespace.Browser.ParseBrowserInfo();
+}
+
+//BEGIN_ATLAS_NOTIFY
+if (typeof(Sys) != "undefined")
+{
+ if (Sys.Application != null && Sys.Application.notifyScriptLoaded != null)
+ {
+ Sys.Application.notifyScriptLoaded();
+ }
+}
+//END_ATLAS_NOTIFY \ No newline at end of file
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/Controls.css b/schemas/OMNA Schema-based Namespace Registry_fichiers/Controls.css
new file mode 100644
index 0000000..b5235b6
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/Controls.css
@@ -0,0 +1,123 @@
+BODY.RadEContextMenu DIV.ContentElement {
+ OVERFLOW: hidden; WIDTH: 99%
+}
+.RadEMozillaDropdownIframe {
+ BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; OVERFLOW-Y: scroll; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: white
+}
+BODY {
+ SCROLLBAR-FACE-COLOR: #e9e9e9; SCROLLBAR-HIGHLIGHT-COLOR: #ffffff; SCROLLBAR-SHADOW-COLOR: #e9e9e9; SCROLLBAR-3DLIGHT-COLOR: #dbdbdb; SCROLLBAR-ARROW-COLOR: #787878; SCROLLBAR-TRACK-COLOR: #f5f5f5; SCROLLBAR-DARKSHADOW-COLOR: #aeaeae
+}
+BODY.RadEDropdownMenu DIV.ContentElement {
+ HEIGHT: 100%; BACKGROUND-COLOR: white
+}
+BODY.RadEDropdownMenuNonScrollable DIV.ContentElement {
+ BACKGROUND-COLOR: #f9f9f9
+}
+.RadESpellChecker {
+ BACKGROUND-COLOR: #f9f9f9
+}
+.RadESpellChecker .SuggestionTable TD {
+ BORDER-RIGHT: #f9f9f9 1px solid; BORDER-TOP: #f9f9f9 1px solid; FONT: bold 11px Tahoma; BORDER-LEFT: #f9f9f9 1px solid; COLOR: #000000; BORDER-BOTTOM: #f9f9f9 1px solid
+}
+.RadESpellChecker .SuggestionTable TD.Over {
+ BORDER-RIGHT: #666666 1px solid; BORDER-TOP: #666666 1px solid; FONT-WEIGHT: bold; BORDER-LEFT: #666666 1px solid; BORDER-BOTTOM: #666666 1px solid; BACKGROUND-COLOR: #e3e3e3
+}
+.RadESpellChecker .ButtonTable {
+ BORDER-TOP: #999999 1px solid
+}
+.RadESpellChecker .ButtonTable TD {
+ BORDER-RIGHT: #f9f9f9 1px solid; BORDER-TOP: #f9f9f9 1px solid; FONT: 11px Tahoma; BORDER-LEFT: #f9f9f9 1px solid; COLOR: #000000; BORDER-BOTTOM: #f9f9f9 1px solid
+}
+.RadESpellChecker .ButtonTable TD.Over {
+ BORDER-RIGHT: #666666 1px solid; BORDER-TOP: #666666 1px solid; BORDER-LEFT: #666666 1px solid; BORDER-BOTTOM: #666666 1px solid; BACKGROUND-COLOR: #e3e3e3
+}
+.RadEContextMenu {
+ BACKGROUND-IMAGE: url(Dialogs/tableBorderControlV.gif); BACKGROUND-REPEAT: repeat-y; BACKGROUND-COLOR: #fdfaff
+}
+.RadESymbolPicker {
+ BACKGROUND-COLOR: #f9f9f9
+}
+.RadESymbolPicker TD {
+ BORDER-RIGHT: #f9f9f9 1px solid; BORDER-TOP: #f9f9f9 1px solid; FONT: 11px Tahoma; BORDER-LEFT: #f9f9f9 1px solid; WIDTH: 20px; COLOR: #000000; BORDER-BOTTOM: #f9f9f9 1px solid; HEIGHT: 20px; TEXT-ALIGN: center
+}
+.RadESymbolPicker TD.Over {
+ BORDER-RIGHT: #666666 1px solid; BORDER-TOP: #666666 1px solid; BORDER-LEFT: #666666 1px solid; BORDER-BOTTOM: #666666 1px solid; BACKGROUND-COLOR: #e3e3e3
+}
+.RadETablePicker {
+ CURSOR: default; FONT-FAMILY: Tahoma; BACKGROUND-COLOR: #f9f9f9
+}
+.RadETablePicker TD {
+ BORDER-RIGHT: #000000 1px solid; BORDER-TOP: #000000 1px solid; FONT-SIZE: 11px; BORDER-LEFT: #000000 1px solid; BORDER-BOTTOM: #000000 1px solid; BACKGROUND-COLOR: #ffffff
+}
+.RadETablePicker TD.Over {
+ COLOR: #ffffff; BACKGROUND-COLOR: #666666
+}
+.RadETablePicker .Wizard {
+ BORDER-RIGHT: #aaaaaa 1px solid; BORDER-TOP: #aaaaaa 1px solid; FONT: 11px Tahoma; BORDER-LEFT: #aaaaaa 1px solid; CURSOR: default; BORDER-BOTTOM: #aaaaaa 1px solid; BACKGROUND-COLOR: #f9f9f9; TEXT-ALIGN: center
+}
+.RadETablePicker .WizardOver {
+ BORDER-RIGHT: #666666 1px solid; BORDER-TOP: #666666 1px solid; FONT: 11px Tahoma; BORDER-LEFT: #666666 1px solid; CURSOR: default; BORDER-BOTTOM: #666666 1px solid; BACKGROUND-COLOR: #e3e3e3; TEXT-ALIGN: center
+}
+.RadETablePicker TD.Counter {
+ FONT: 11px Tahoma; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f9f9f9; TEXT-ALIGN: center; BORDER-BOTTOM-STYLE: none
+}
+.RadETablePickerToolTable {
+ PADDING-LEFT: 2px; PADDING-BOTTOM: 2px; VERTICAL-ALIGN: top; TEXT-ALIGN: left
+}
+.RadEColorPicker {
+ MARGIN: 2px; CURSOR: default; BACKGROUND-COLOR: #f9f9f9
+}
+.RadEColorPicker TD {
+ BORDER-RIGHT: #f9f9f9 1px solid; BORDER-TOP: #f9f9f9 1px solid; FONT: 11px Tahoma; BORDER-LEFT: #f9f9f9 1px solid; WIDTH: 14px; BORDER-BOTTOM: #f9f9f9 1px solid; HEIGHT: 14px; TEXT-ALIGN: center
+}
+.RadEColorPicker TD.Over {
+ BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid
+}
+.RadEColorPicker TD DIV {
+ BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; FONT-SIZE: 6px; BORDER-LEFT: #808080 1px solid; WIDTH: 12px; BORDER-BOTTOM: #808080 1px solid; HEIGHT: 12px
+}
+.RadEColorPicker TD SPAN {
+ BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; FONT-SIZE: 6px; BORDER-LEFT: #808080 1px solid; WIDTH: 12px; BORDER-BOTTOM: #808080 1px solid; HEIGHT: 12px
+}
+.RadEDropDownFont {
+ BACKGROUND-COLOR: #ffffff
+}
+.RadEDropDownFont TD {
+ BORDER-RIGHT: #ffffff 1px solid; PADDING-RIGHT: 1px; BORDER-TOP: #ffffff 1px solid; PADDING-LEFT: 1px; PADDING-BOTTOM: 0px; FONT: 11px Tahoma; BORDER-LEFT: #ffffff 1px solid; PADDING-TOP: 0px; BORDER-BOTTOM: #ffffff 1px solid
+}
+.RadEDropDownFont TD.Over {
+ BORDER-RIGHT: #666666 1px solid; BORDER-TOP: #666666 1px solid; BORDER-LEFT: #666666 1px solid; CURSOR: default; BORDER-BOTTOM: #666666 1px solid
+}
+.RadEDropDownTable {
+ BACKGROUND-COLOR: #ffffff
+}
+.RadEDropDownTable TD {
+ BORDER-RIGHT: #aaaaaa 1px solid; BORDER-TOP: #aaaaaa 1px solid; FONT: 11px Tahoma; BORDER-LEFT: #aaaaaa 1px solid; COLOR: #000000; BORDER-BOTTOM: #aaaaaa 1px solid
+}
+.RadEDropDownTable TD.Over {
+ BORDER-RIGHT: #666666 1px solid; BORDER-TOP: #666666 1px solid; BORDER-LEFT: #666666 1px solid; BORDER-BOTTOM: #666666 1px solid
+}
+.RadELinks {
+ BACKGROUND-COLOR: #ffffff
+}
+.RadELinks TD {
+ PADDING-RIGHT: 1px; PADDING-LEFT: 2px; PADDING-BOTTOM: 1px; FONT: 11px Tahoma; COLOR: black; PADDING-TOP: 1px; TEXT-DECORATION: none
+}
+.RadELinks SPAN {
+ PADDING-RIGHT: 1px; PADDING-LEFT: 2px; PADDING-BOTTOM: 1px; FONT: 11px Tahoma; COLOR: black; PADDING-TOP: 1px; TEXT-DECORATION: none
+}
+.RadELinks TD.Over {
+ FONT: 11px Tahoma; COLOR: #666666; TEXT-DECORATION: underline
+}
+.RadELinks SPAN.Over {
+ FONT: 11px Tahoma; COLOR: #666666; TEXT-DECORATION: underline
+}
+.RadAlignmentSelectorTable {
+ BORDER-RIGHT: #7f9db9 1px solid; BORDER-TOP: #7f9db9 1px solid; BORDER-LEFT: #7f9db9 1px solid; CURSOR: default; BORDER-BOTTOM: #7f9db9 1px solid; BACKGROUND-COLOR: #fefefe
+}
+.RadAlignmentSelectorTable TD {
+ BORDER-RIGHT: #fefefe 1px solid; BORDER-TOP: #fefefe 1px solid; BORDER-LEFT: #fefefe 1px solid; BORDER-BOTTOM: #fefefe 1px solid; TEXT-ALIGN: center
+}
+.RadAlignmentSelectorTable TD.Over {
+ BORDER-RIGHT: #4d6185 1px solid; BORDER-TOP: #4d6185 1px solid; BORDER-LEFT: #4d6185 1px solid; BORDER-BOTTOM: #4d6185 1px solid; BACKGROUND-COLOR: #e3e3e3; TEXT-ALIGN: center
+}
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/Display.js b/schemas/OMNA Schema-based Namespace Registry_fichiers/Display.js
new file mode 100644
index 0000000..6c389cf
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/Display.js
@@ -0,0 +1,326 @@
+var numdivs=3
+
+var IE5=NN4=NN6=false
+if(document.all)IE5=true
+else if(document.layers)NN4=true
+else if(document.getElementById)NN6=true
+
+
+function copyParentStylesToEditor(editor)
+{
+ var theIFrame = document.getElementById("RadEContentIframe" + editor.Id);
+ var theMainEditorTable = document.getElementById("RadEWrapper" + editor.Id);
+
+ var theParentEl = theMainEditorTable.parentNode.parentNode;
+ var theContentArea = editor.GetContentArea();
+ if (document.all)
+ {
+ for (var attr in theParentEl.currentStyle)
+ {
+ var strStyle = "" + attr;
+ // Style Overflow don't be change otherwise Scroll dispear in Raeditor in Big document
+ if ( ( strStyle != "overflow" ) && ( strStyle != "overflowX" ) && ( strStyle != "overflowY" ) )
+ {
+ theContentArea.style[attr] = theParentEl.currentStyle[attr];
+ }
+ }
+ }
+ else //Firefox
+ {
+
+ theContentArea.style.background = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("background");
+ theContentArea.style.backgroundAttachment = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("background-attachment");
+ theContentArea.style.backgroundColor = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("background-color");
+ theContentArea.style.backgroundImage = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("background-image");
+ theContentArea.style.backgroundPosition = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("background-position");
+ theContentArea.style.backgroundRepeat = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("background-repeat");
+ theContentArea.style.border = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("border");
+ theContentArea.style.borderBottom = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("border-bottom");
+ theContentArea.style.borderBottomColor = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("border-bottom-color");
+ theContentArea.style.borderBottomStyle = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("border-bottom-style");
+ theContentArea.style.borderBottomWidth = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("border-bottom-width");
+ theContentArea.style.borderColor = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("border-color");
+ theContentArea.style.borderLeft = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("border-left");
+ theContentArea.style.borderLeftColor = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("border-left-color");
+ theContentArea.style.borderLeftStyle = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("border-left-style");
+ theContentArea.style.borderLeftWidth = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("border-left-width");
+ theContentArea.style.borderRight = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("border-right");
+ theContentArea.style.borderRightColor = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("border-right-color");
+ theContentArea.style.borderRightStyle = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("border-right-style");
+ theContentArea.style.borderRightWidth = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("border-right-width");
+ theContentArea.style.borderStyle = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("border-style");
+ theContentArea.style.borderTop = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("border-top");
+ theContentArea.style.borderTopColor = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("border-top-color");
+ theContentArea.style.borderTopStyle = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("border-top-style");
+ theContentArea.style.borderTopWidth = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("border-top-width");
+ theContentArea.style.borderWidth = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("border-width");
+ theContentArea.style.captionSide = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("caption-side");
+ theContentArea.style.clear = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("clear");
+ theContentArea.style.clip = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("clip");
+ theContentArea.style.color = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("color");
+ theContentArea.style.cursor = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("cursor");
+ theContentArea.style.direction = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("direction");
+ theContentArea.style.display = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("display");
+ theContentArea.style.emptyCells = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("empty-cells");
+ theContentArea.style.float = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("float");
+ theContentArea.style.font = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("font");
+ theContentArea.style.fontFamily = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("font-family");
+ theContentArea.style.fontSize = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("font-size");
+ theContentArea.style.fontStretch = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("font-stretch");
+ theContentArea.style.fontStyle = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("font-style");
+ theContentArea.style.fontVariant = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("font-variant");
+ theContentArea.style.fontWeight = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("font-weight");
+ theContentArea.style.height = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("height");
+ theContentArea.style.left = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("left");
+ theContentArea.style.letterSpacing = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("letter-spacing");
+ theContentArea.style.lineHeight = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("line-height");
+ theContentArea.style.listStyle = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("list-style");
+ theContentArea.style.listStyleImage = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("list-style-image");
+ theContentArea.style.listStylePosition = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("list-style-position");
+ theContentArea.style.listStyleType = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("list-style-type");
+ theContentArea.style.margin = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("margin");
+ theContentArea.style.marginBottom = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("margin-bottom");
+ theContentArea.style.marginLeft = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("margin-left");
+ theContentArea.style.marginRight = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("margin-right");
+ theContentArea.style.marginTop = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("margin-top");
+ theContentArea.style.maxHeight = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("max-height");
+ theContentArea.style.maxWidth = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("max-width");
+ theContentArea.style.minHeight = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("min-height");
+ theContentArea.style.minWidth = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("min-width");
+ // Style Overflow don't be change otherwise Scroll dispear in Raeditor in Big document
+ //theContentArea.style.overflow = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("overflow");
+ theContentArea.style.padding = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("padding");
+ theContentArea.style.paddingBottom = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("padding-bottom");
+ theContentArea.style.paddingLeft = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("padding-left");
+ theContentArea.style.paddingRight = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("padding-right");
+ theContentArea.style.paddingTop = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("padding-top");
+ theContentArea.style.pageBreakAfter = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("page-break-after");
+ theContentArea.style.pageBreakBefore = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("page-Break-Before");
+ theContentArea.style.position = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("position");
+ theContentArea.style.right = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("right");
+ theContentArea.style.scrollbar3dLightColor = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("scrollbar-3d-light-color");
+ theContentArea.style.scrollbarArrowColor = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("scrollbar-arrow-color");
+ theContentArea.style.scrollbarBaseColor = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("scrollbar-base-color");
+ theContentArea.style.scrollbarDarkshadowColor = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("scrollbar-darkshadow-color");
+ theContentArea.style.scrollbarFaceColor = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("scrollbar-face-color");
+ theContentArea.style.scrollbarHighlightColor = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("scrollbar-highlight-color");
+ theContentArea.style.scrollbarShadowColor = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("scrollbar-shadow-color");
+ theContentArea.style.scrollbarTrackColor = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("scrollbar-track-color");
+ theContentArea.style.tableLayout = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("table-layout");
+ theContentArea.style.textAlign = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("text-align");
+ theContentArea.style.textDecoration = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("text-decoration");
+ theContentArea.style.textIndent = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("text-indent");
+ theContentArea.style.textTransform = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("text-transform");
+ theContentArea.style.top = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("top");
+ theContentArea.style.verticalAlign = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("vertical-align");
+ theContentArea.style.visibility = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("visibility");
+ theContentArea.style.width = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("width");
+ theContentArea.style.wordSpacing = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("word-spacing");
+ theContentArea.style.zIndex = document.defaultView.getComputedStyle(theParentEl, '').getPropertyValue("z-index");
+
+ }
+}
+
+
+function copyParentStylesToEditor_Old(editor)
+{
+ if (NN6) {
+ return CopyStylesToEditorHelper(editor);
+ }
+ else {
+ var theIFrame = document.getElementById("RadEContentIframe" + editor.Id);
+ var theMainEditorTable = document.getElementById("RadEWrapper" + editor.Id);
+
+ var theParentEl = theMainEditorTable.parentNode.parentNode;
+ var theContentArea = editor.GetContentArea();
+ for (var attr in theParentEl.currentStyle)
+ {
+ theContentArea.style[attr] = theParentEl.currentStyle[attr];
+ }
+ }
+}
+function CopyStylesToEditorHelper(element)
+{
+ if (element.currentStyle) // Handle IE
+ return element.currentStyle;
+ else // Handle Others
+ return document.defaultView.getComputedStyle(element,null);
+ return null;
+}
+
+
+function CopyStylesToEditor(editor)
+{
+ var theIFrame = document.getElementById("RadEContentIframe" + editor.Id);
+ var theDocBody = editor.Document.body;
+ var IFrameCompStyle = copyParentStylesToEditor(theIFrame);
+
+ if (IFrameCompStyle != null)
+ {
+ theDocBody.style.fontFamily = IFrameCompStyle.fontFamily;
+ theDocBody.style.fontSize = IFrameCompStyle.fontSize;
+ theDocBody.style.fontWeight = IFrameCompStyle.fontWeight;
+ theDocBody.style.lineHeight = IFrameCompStyle.lineHeight;
+ }
+}
+
+
+function DisplayTab(tab, ens) {
+ if (document.getElementById){
+ document.cookie = tab + ' = ' + (document.getElementById(ens + 'tab'+tab).style.display==''?0:1);
+ if (document.getElementById(ens + 'tab'+tab).style.display == ''){
+ document.getElementById(ens + 'tab'+tab).style.display = 'none';
+ document.getElementById('Expand'+tab).style.display = '';
+ document.getElementById('Collapse'+tab).style.display = 'none';
+
+ } else {
+ document.getElementById(ens + 'tab'+tab).style.display = '';
+ document.getElementById('Collapse'+tab).style.display = '';
+ document.getElementById('Expand'+tab).style.display = 'none';
+
+ }
+ } else if (document.all) {
+ document.cookie = tab + ' = ' + (document.all(ens + 'tab'+tab).style.display==''?0:1);
+ if (document.all(ens + 'tab'+tab).style.display == ''){
+ document.all(ens + 'tab'+tab).style.display = 'none';
+ document.all('expand'+tab).style.display = '';
+ document.all('collapse'+tab).style.display = 'none';
+ } else {
+ document.all(ens + 'tab'+tab).style.display = '';
+ document.all('collapse'+tab).style.display = '';
+ document.all('expand'+tab).style.display = 'none';
+ }
+ }
+}
+
+function loadTabState(tab, ens)
+{
+ var cookieValue = readCookie(tab);
+
+ if(cookieValue == null)
+ {
+ cookieValue = 1;
+ }
+
+ if (cookieValue == 0)
+ {
+ document.getElementById(ens + 'tab'+tab).style.display = 'none';
+ document.getElementById('Expand'+tab).style.display = '';
+ document.getElementById('Collapse'+tab).style.display = 'none';
+ }
+ else
+ {
+ document.getElementById(ens + 'tab'+tab).style.display = '';
+ document.getElementById('Collapse'+tab).style.display = '';
+ document.getElementById('Expand'+tab).style.display = 'none';
+ }
+}
+
+function readCookie(name)
+{
+ var nameEQ = name + "=";
+ var ca = document.cookie.split(';');
+ for(var i=0;i < ca.length;i++)
+ {
+ var c = ca[i];
+ while (c.charAt(0)==' ') c = c.substring(1,c.length);
+ if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
+ }
+ return null;
+}
+
+function DisplayAllTab(listOfTab,action){
+ var arrOfTab = listOfTab.split(',');
+ for (var i=0; i < arrOfTab.length; i++) {
+ if (document.getElementById){
+ if(action=='collapse'){
+ document.getElementById('tab'+arrOfTab[i]).style.display = 'none';
+ document.getElementById('expand'+arrOfTab[i]).style.display = '';
+ document.getElementById('collapse'+arrOfTab[i]).style.display = 'none';
+ } else {
+ document.getElementById('tab'+arrOfTab[i]).style.display = '';
+ document.getElementById('expand'+arrOfTab[i]).style.display = 'none';
+ document.getElementById('collapse'+arrOfTab[i]).style.display = '';
+ }
+ } else if (document.all) {
+ if(action=='collapse'){
+ document.all('tab'+arrOfTab[i]).style.display = 'none';
+ document.all('expand'+arrOfTab[i]).style.display = '';
+ document.all('collapse'+arrOfTab[i]).style.display = 'none';
+ } else {
+ document.all('tab'+arrOfTab[i]).style.display = '';
+ document.all('expand'+arrOfTab[i]).style.display = 'none';
+ document.all('collapse'+arrOfTab[i]).style.display = '';
+ }
+ }
+ }
+}
+
+function ResizeDiv(td_id,div_id){
+ if (document.getElementById)
+ document.getElementById(div_id).style.height = document.getElementById(td_id).offsetHeight;
+ else if (document.all)
+ document.all(div_id).style.height = document.all(td_id).offsetHeight;
+ else
+ alert('error resizing content');
+}
+
+var OpenWindow;
+
+function PrintContent(rootfolder){
+ //document.getElementById("table_frame").className = "ONLYSCREEN";
+ //document.getElementById("div_print").innerHTML = document.getElementById("div_content").innerHTML;
+ //document.getElementById("div_print").className = "PRINTER HIDDEN";
+ //window.print();
+ OpenWindow=window.open(rootfolder+"Common/blank.htm", "printscreen", "height=600, width=800, left=20, top=20, " +
+ "location=no, menubar=no, resizable=yes, " +
+ "scrollbars=yes, titlebar=no, toolbar=no", true);
+ return;
+}
+
+function CloseWindowFromPopupScreen()
+{
+ OpenWindow.close();
+}
+
+// redirection after 20 minutes
+
+var time1;
+
+function timer() {
+time1=window.setTimeout("redirect()",1200000);
+}
+
+function redirect() {
+window.location = "\\";
+}
+
+function detime() {
+window.clearTimeout(time1);
+timer();
+}
+
+function sendMailCoded (addressStart, addressEnd)
+{
+ document.location.href="mailto:"+addressStart+'@'+addressEnd;
+}
+
+
+function modifyRadEditorIcon(theID)
+{
+var tableSplit=theID.split('#');
+for (var i=0;i<tableSplit.length;i++)
+{
+ try
+ {
+ var placeholder = document.getElementById(tableSplit[i] + '_wrapper');
+ var images = placeholder.getElementsByTagName('img');
+ var image = images[0];
+ if(image.src.indexOf('editor.gif')>0)
+ image.style.position = 'absolute';
+ }
+ catch(e){}
+}
+//image.style.top = '100px';
+//image.style.left = '100px';
+} \ No newline at end of file
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/DomEventMixin.js b/schemas/OMNA Schema-based Namespace Registry_fichiers/DomEventMixin.js
new file mode 100644
index 0000000..b80eafc
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/DomEventMixin.js
@@ -0,0 +1,239 @@
+if (typeof window.RadControlsNamespace == "undefined")
+{
+ window.RadControlsNamespace = {};
+}
+
+if (
+ typeof(window.RadControlsNamespace.DomEventMixin) == "undefined" ||
+ typeof(window.RadControlsNamespace.DomEventMixin.Version) == null ||
+ window.RadControlsNamespace.DomEventMixin.Version < 3
+ )
+{
+
+ RadControlsNamespace.DomEventMixin =
+ {
+ Version : 3, // Change the version when make changes. Change the value in the IF also
+
+ Initialize : function(obj)
+ {
+ obj.CreateEventHandler = this.CreateEventHandler;
+ obj.AttachDomEvent = this.AttachDomEvent;
+ obj.DetachDomEvent = this.DetachDomEvent;
+ obj.DisposeDomEventHandlers = this.DisposeDomEventHandlers;
+ obj._domEventHandlingEnabled = true;
+ obj.EnableDomEventHandling = this.EnableDomEventHandling;
+ obj.DisableDomEventHandling = this.DisableDomEventHandling;
+
+ obj.RemoveHandlerRegister = this.RemoveHandlerRegister;
+ obj.GetHandlerRegister = this.GetHandlerRegister;
+ obj.AddHandlerRegister = this.AddHandlerRegister;
+ obj.handlerRegisters = [];
+ },
+
+ EnableDomEventHandling : function ()
+ {
+ this._domEventHandlingEnabled = true;
+ },
+
+ DisableDomEventHandling : function ()
+ {
+ this._domEventHandlingEnabled = false;
+ },
+
+ CreateEventHandler : function (methodName, fireIfDisabled)
+ {
+ var instance = this;
+ return function (e)
+ {
+ if (!instance._domEventHandlingEnabled && !fireIfDisabled)
+ {
+ return;
+ }
+
+ return instance[methodName](e || window.event);
+ }
+ },
+
+ AttachDomEvent : function(element, eventName, eventHandlerName, fireIfDisabled)
+ {
+ var eventHandler = this.CreateEventHandler(eventHandlerName, fireIfDisabled);
+
+ // if such entry exist already - detach it first
+ var oldRegister = this.GetHandlerRegister(element, eventName, eventHandlerName);
+ if (oldRegister != null)
+ {
+ this.DetachDomEvent(oldRegister.Element, oldRegister.EventName, eventHandlerName);
+ }
+
+ // register the new entry
+ var eventRegister = {
+ "Element" : element,
+ "EventName" : eventName,
+ "HandlerName" : eventHandlerName,
+ "Handler" : eventHandler
+ };
+ this.AddHandlerRegister(eventRegister);
+
+ // now do the "real" job
+ if (element.addEventListener)
+ {
+ element.addEventListener(eventName, eventHandler, false);
+ }
+ else if (element.attachEvent)
+ {
+ element.attachEvent("on" + eventName, eventHandler);
+ }
+ },
+
+
+ DetachDomEvent : function(element, eventName, eventHandler)
+ {
+ var eventRegister = null;
+ var eventHandlerName = "";
+
+ if (typeof eventHandler == "string")
+ {
+ eventHandlerName = eventHandler;
+ eventRegister = this.GetHandlerRegister(element, eventName, eventHandlerName);
+ if(eventRegister == null)
+ return;
+ eventHandler = eventRegister.Handler;
+ }
+
+ if (!element)
+ {
+ return;
+ }
+
+ if (element.removeEventListener)
+ {
+ element.removeEventListener(eventName, eventHandler, false);
+ }
+ else if (element.detachEvent)
+ {
+ element.detachEvent("on" + eventName, eventHandler);
+ }
+
+ if (eventRegister != null && eventHandlerName != "")
+ {
+ this.RemoveHandlerRegister(eventRegister);
+ eventRegister = null;
+ }
+ },
+
+ DisposeDomEventHandlers : function()
+ {
+ for (var i=0; i < this.handlerRegisters.length; i ++)
+ {
+ var eventRegister = this.handlerRegisters[i];
+ if (eventRegister != null)
+ {
+ this.DetachDomEvent(
+ eventRegister.Element,
+ eventRegister.EventName,
+ eventRegister.Handler);
+ }
+ }
+
+ this.handlerRegisters = [];
+ },
+
+ RemoveHandlerRegister : function(eventRegister)
+ {
+ try {
+ var regIndex = eventRegister.index;
+ for (var i in eventRegister)
+ {
+ eventRegister[i] = null;
+ }
+ this.handlerRegisters[regIndex] = null;
+ } catch (e) {}
+ },
+
+ GetHandlerRegister : function(element, eventName, handlerName)
+ {
+ for (var i=0; i < this.handlerRegisters.length; i ++)
+ {
+ var eventRegister = this.handlerRegisters[i];
+ if (eventRegister != null &&
+ eventRegister.Element == element &&
+ eventRegister.EventName == eventName &&
+ eventRegister.HandlerName == handlerName
+ )
+ {
+ return this.handlerRegisters[i];
+ }
+ }
+
+ return null;
+ },
+
+ AddHandlerRegister : function(props)
+ {
+ props.index = this.handlerRegisters.length;
+ this.handlerRegisters[this.handlerRegisters.length] = props;
+ }
+ }
+
+ RadControlsNamespace.DomEvent = {};
+
+ RadControlsNamespace.DomEvent.PreventDefault = function (e)
+ {
+ if (!e) return true;
+
+ if (e.preventDefault)
+ {
+ e.preventDefault();
+ }
+
+ e.returnValue = false;
+ return false;
+ }
+
+ RadControlsNamespace.DomEvent.StopPropagation = function (e)
+ {
+ if (!e) return;
+
+ if (e.stopPropagation)
+ {
+ e.stopPropagation();
+ }
+ else
+ {
+ e.cancelBubble = true;
+ }
+ }
+
+ RadControlsNamespace.DomEvent.GetTarget = function (e)
+ {
+ if (!e) return null;
+
+ return e.target || e.srcElement;
+ }
+
+
+ RadControlsNamespace.DomEvent.GetRelatedTarget = function (e)
+ {
+ if (!e) return null;
+
+ return e.relatedTarget || (e.type == "mouseout" ? e.toElement : e.fromElement);
+ }
+
+ RadControlsNamespace.DomEvent.GetKeyCode = function (e)
+ {
+ if (!e) return 0;
+
+ return e.which || e.keyCode;
+ }
+}
+
+//BEGIN_ATLAS_NOTIFY
+if (typeof(Sys) != "undefined")
+{
+ if (Sys.Application != null && Sys.Application.notifyScriptLoaded != null)
+ {
+ Sys.Application.notifyScriptLoaded();
+ }
+}
+//END_ATLAS_NOTIFY
+
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/Ease.js b/schemas/OMNA Schema-based Namespace Registry_fichiers/Ease.js
new file mode 100644
index 0000000..6838d9d
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/Ease.js
@@ -0,0 +1,367 @@
+if (typeof window.RadControlsNamespace == "undefined")
+{
+ window.RadControlsNamespace = {};
+}
+
+if (
+ typeof(window.RadControlsNamespace.Ease) == "undefined" ||
+ typeof(window.RadControlsNamespace.Ease.Version) == null ||
+ window.RadControlsNamespace.Ease.Version < 1.3
+ )
+{
+
+ RadControlsNamespace.Ease = function (element, configObject, offsetX, offsetY, listener, createOverlay)
+ {
+
+ this.Element = element;
+ if (createOverlay)
+ {
+ this.Overlay = new RadControlsNamespace.Overlay(element);
+ }
+
+
+
+ this.OffsetX = offsetX;
+ this.OffsetY = offsetY;
+
+ this.Invert = false;
+ var parent = this.Element.parentNode;
+
+
+ this.ExpandConfig = this.MergeConfig(configObject.ExpandAnimation);
+ this.CollapseConfig = this.MergeConfig(configObject.CollapseAnimation);
+
+ this.Ticker = new RadControlsNamespace.Ticker(this);
+ this.Listener = listener;
+ this.SlideParent = false;
+
+ }
+
+ RadControlsNamespace.Ease.Version = 1.3;// update in the header IF also
+ RadControlsNamespace.Ease.Coef = 0;
+
+ RadControlsNamespace.Ease.prototype =
+ {
+ SetSide : function(side)
+ {
+ this.InitialSide = side.charAt(0).toUpperCase() + side.substr(1, side.length - 1);
+ this.Invert = false;
+ if (side == 'right')
+ {
+ side = 'left';
+ this.Invert = true;
+ }
+ if (side == 'bottom')
+ {
+ side = 'top';
+ this.Invert = true;
+ }
+ this.Side = side;
+ this.Horizontal = side == "left";
+ },
+
+ MergeConfig : function (config)
+ {
+ if (!config.Type)
+ {
+ config.Type = "OutQuint";
+ }
+
+ if (!config.Duration)
+ {
+ config.Duration = 200;
+ }
+
+ return config;
+ },
+
+
+ GetSide : function ()
+ {
+ return this.InitialSide;
+ },
+
+ ShowElements : function ()
+ {
+ if (!this.Element.parentNode) return;
+ if (!this.Element.parentNode.style) return;
+
+ this.Element.parentNode.style.display = "block";
+ this.Element.style.display = "block";
+ this.Element.parentNode.style.overflow = "hidden";
+ },
+
+ Dispose : function ()
+ {
+ this.Ticker.Stop();
+ this.Element = null;
+ if (this.Overlay)
+ {
+ this.Overlay.Dispose();
+ }
+ },
+
+ ResetState : function (resetPosition)
+ {
+ this.ShowElements();
+
+ if (resetPosition)
+ {
+ var initialPosition = (this.Horizontal ? this.Element.offsetWidth : this.Element.offsetHeight);
+ if (!this.Invert)
+ {
+ initialPosition = -initialPosition;
+ }
+ this.SetPosition(initialPosition);
+ }
+
+ this.InitialPosition = this.GetPosition();
+ },
+
+
+ UpdateContainerSize : function ()
+ {
+ if (!this.Element.parentNode)
+ {
+ //r.a.d.callback
+ return;
+ }
+
+ if (!this.Element.offsetWidth || !this.Element.offsetHeight )
+ {
+ return;
+ }
+
+ if (this.Invert)
+ {
+ if (this.Side == "left")
+ {
+ this.Element.parentNode.style.height = this.Element.offsetHeight + "px";
+ }
+ else if (this.Side == "top")
+ {
+ this.Element.parentNode.style.width = this.Element.offsetWidth + "px";
+ }
+
+ return;
+ }
+ var top = 0;
+ var left = 0;
+
+
+ if (this.Element.style.top != "")
+ {
+ top = Math.max(parseInt(this.Element.style.top), 0);
+ }
+
+ if (this.Element.style.left != "")
+ {
+ left = Math.max(parseInt(this.Element.style.left), 0);
+ }
+
+
+ if (this.SlideParent) // Panelbar
+ {
+ top = parseInt(this.Element.style.top);
+ if (isNaN(top)) top = 0;
+ }
+
+ if ( typeof(RadMenuItem) != "undefined" && this.Listener instanceof RadMenuItem)
+ {
+ if (this.Element.parentNode.style.height != this.Element.offsetHeight + top + "px")
+ {
+ this.Element.parentNode.style.height = Math.max(this.Element.offsetHeight + top, 0) + "px";
+ }
+
+ if (this.Element.parentNode.style.width != (this.Element.offsetWidth + left)+ "px")
+ {
+ this.Element.parentNode.style.width = Math.max(this.Element.offsetWidth + left, 0)+ "px";
+ }
+ }
+ else
+ {
+ if (this.Element.parentNode.offsetHeight != this.Element.offsetHeight + top)
+ {
+ this.Element.parentNode.style.height = Math.max(this.Element.offsetHeight + top, 0) + "px";
+ }
+
+ if (this.Element.parentNode.offsetWidth != (this.Element.offsetWidth + left))
+ {
+ this.Element.parentNode.style.width = Math.max(this.Element.offsetWidth + left, 0)+ "px";
+ }
+ }
+ },
+
+
+ GetSize : function ()
+ {
+ return this.Horizontal ? this.Element.offsetWidth : this.Element.offsetHeight;
+ },
+
+ GetPosition : function ()
+ {
+ if (!this.Element.style[this.Side])
+ {
+ return 0;
+ }
+ return parseInt(this.Element.style[this.Side]);
+ },
+
+ SetPosition : function(value)
+ {
+ this.Element.style[this.Side] = value + "px";
+ },
+
+ Out : function ()
+ {
+ this.ResetState();
+ this.Direction = -1;
+ if (this.Invert)
+ {
+ this.Delta = this.GetSize() - this.GetPosition();
+ }
+ else
+ {
+ this.Delta = this.GetPosition() - this.GetSize();
+ }
+ this.Start(this.CollapseConfig);
+ },
+
+ In : function ()
+ {
+ this.ResetState(true);
+ this.Direction = 1;
+ this.Delta = - this.GetPosition();
+ this.Start(this.ExpandConfig);
+ },
+
+ Start : function (configuration)
+ {
+ if (configuration.Type == "None")
+ {
+ this.UpdateContainerSize();
+ this.Ticker.Stop();
+
+ this.ChangePosition(this.InitialPosition + this.Delta);
+ if (this.Overlay)
+ {
+ this.Overlay.Update();
+ }
+
+ this.UpdateContainerSize();
+
+ this.OnTickEnd();
+
+ return;
+ }
+
+ this.Tween = configuration.Type;
+ this.Ticker.Configure(configuration);
+ this.Ticker.Start();
+ this.UpdateContainerSize();
+ },
+
+ ChangePosition : function (newValue)
+ {
+ if (isNaN(newValue)) return;
+
+ var dimensionValue, dimensionName, dimensionOffset;
+ if (this.Invert)
+ {
+ if (this.Horizontal)
+ {
+ dimensionValue = this.Element.offsetWidth;
+ dimensionName = "width";
+ dimensionOffset = this.OffsetX;
+ }
+ else
+ {
+ dimensionValue = this.Element.offsetHeight;
+ dimensionName = "height";
+ dimensionOffset = this.OffsetY;
+ }
+ this.SetPosition(0);
+ var updatedValue = Math.max(1, dimensionValue - newValue) + "px";
+ this.Element.parentNode.style[dimensionName] = updatedValue;
+ this.Element.parentNode.style[this.Side] = ((dimensionValue - newValue + dimensionOffset) * -1) + "px";
+ }
+ else
+ {
+ this.Element.style[this.Side] = newValue + "px";
+ }
+
+ if (this.Listener && this.Listener.OnEase)
+ this.Listener.OnEase(newValue);
+ },
+
+ OnTick : function (time)
+ {
+ var newValue = Math.round(Penner[this.Tween](time, this.InitialPosition, this.Delta, this.Ticker.Duration));
+ if (newValue == this.InitialPosition + this.Delta)
+ {
+ this.Ticker.Stop();
+ return;
+ }
+ this.ChangePosition(newValue);
+ this.UpdateContainerSize();
+ if (this.Overlay)
+ {
+ this.Overlay.Update();
+ }
+ },
+
+
+ OnTickEnd : function ()
+ {
+ try
+ {
+ if (this.Direction == 0)
+ {
+ return;
+ }
+
+
+ this.ChangePosition(this.InitialPosition + this.Delta);
+
+ if (this.Overlay)
+ {
+ this.Overlay.Update();
+ }
+
+ if (this.Direction > 0)
+ {
+ this.Element.parentNode.style.overflow = "visible";
+ if (this.Listener && this.Listener.OnExpandComplete)
+ {
+ this.Listener.OnExpandComplete();
+ }
+ }
+ else
+ {
+ this.Element.parentNode.style.display = "none";
+ if (this.Listener)
+ {
+ this.Listener.OnCollapseComplete();
+ }
+ }
+
+ this.Direction = 0;
+ }
+ catch(e)
+ {
+ //Atlas updates
+ }
+ }
+ }
+}
+
+
+//BEGIN_ATLAS_NOTIFY
+if (typeof(Sys) != "undefined")
+{
+ if (Sys.Application != null && Sys.Application.notifyScriptLoaded != null)
+ {
+ Sys.Application.notifyScriptLoaded();
+ }
+}
+//END_ATLAS_NOTIFY \ No newline at end of file
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/EasingEquations.js b/schemas/OMNA Schema-based Namespace Registry_fichiers/EasingEquations.js
new file mode 100644
index 0000000..798b327
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/EasingEquations.js
@@ -0,0 +1,292 @@
+/*
+ Easing Equations v1.5
+ May 1, 2003
+ (c) 2003 Robert Penner, all rights reserved.
+ This work is subject to the terms in http://www.robertpenner.com/easing_terms_of_use.html.
+
+ These tweening functions provide different flavors of
+ math-based motion under a consistent API.
+
+ Types of easing:
+
+ Linear
+ Quadratic
+ Cubic
+ Quartic
+ Quintic
+ Sinusoidal
+ Exponential
+ Circular
+ Elastic
+ Back
+ Bounce
+
+ Changes:
+ 1.5 - added bounce easing
+ 1.4 - added elastic and back easing
+ 1.3 - tweaked the exponential easing functions to make endpoints exact
+ 1.2 - inline optimizations (changing t and multiplying in one step)--thanks to Tatsuo Kato for the idea
+
+ Discussed in Chapter 7 of
+ Robert Penner's Programming Macromedia Flash MX
+ (including graphs of the easing equations)
+
+ http://www.robertpenner.com/profmx
+ http://www.amazon.com/exec/obidos/ASIN/0072223561/robertpennerc-20
+*/
+
+
+// simple linear tweening - no easing
+// t: current time, b: beginning value, c: change in value, d: duration
+var Penner = {};
+Penner.Linear = function (t, b, c, d) {
+ return c*t/d + b;
+};
+
+
+ ///////////// QUADRATIC EASING: t^2 ///////////////////
+
+// quadratic easing in - accelerating from zero velocity
+// t: current time, b: beginning value, c: change in value, d: duration
+// t and d can be in frames or seconds/milliseconds
+Penner.InQuad = function (t, b, c, d) {
+ return c*(t/=d)*t + b;
+};
+
+// quadratic easing out - decelerating to zero velocity
+Penner.OutQuad = function (t, b, c, d) {
+ return -c *(t/=d)*(t-2) + b;
+};
+
+// quadratic easing in/out - acceleration until halfway, then deceleration
+Penner.InOutQuad = function (t, b, c, d) {
+ if ((t/=d/2) < 1) return c/2*t*t + b;
+ return -c/2 * ((--t)*(t-2) - 1) + b;
+};
+
+
+ ///////////// CUBIC EASING: t^3 ///////////////////////
+
+// cubic easing in - accelerating from zero velocity
+// t: current time, b: beginning value, c: change in value, d: duration
+// t and d can be frames or seconds/milliseconds
+Penner.InCubic = function (t, b, c, d) {
+ return c*(t/=d)*t*t + b;
+};
+
+// cubic easing out - decelerating to zero velocity
+Penner.OutCubic = function (t, b, c, d) {
+ return c*((t=t/d-1)*t*t + 1) + b;
+};
+
+// cubic easing in/out - acceleration until halfway, then deceleration
+Penner.InOutCubic = function (t, b, c, d) {
+ if ((t/=d/2) < 1) return c/2*t*t*t + b;
+ return c/2*((t-=2)*t*t + 2) + b;
+};
+
+
+ ///////////// QUARTIC EASING: t^4 /////////////////////
+
+// quartic easing in - accelerating from zero velocity
+// t: current time, b: beginning value, c: change in value, d: duration
+// t and d can be frames or seconds/milliseconds
+Penner.InQuart = function (t, b, c, d) {
+ return c*(t/=d)*t*t*t + b;
+};
+
+// quartic easing out - decelerating to zero velocity
+Penner.OutQuart = function (t, b, c, d) {
+ return -c * ((t=t/d-1)*t*t*t - 1) + b;
+};
+
+// quartic easing in/out - acceleration until halfway, then deceleration
+Penner.InOutQuart = function (t, b, c, d) {
+ if ((t/=d/2) < 1) return c/2*t*t*t*t + b;
+ return -c/2 * ((t-=2)*t*t*t - 2) + b;
+};
+
+
+ ///////////// QUINTIC EASING: t^5 ////////////////////
+
+// quintic easing in - accelerating from zero velocity
+// t: current time, b: beginning value, c: change in value, d: duration
+// t and d can be frames or seconds/milliseconds
+Penner.InQuint = function (t, b, c, d) {
+ return c*(t/=d)*t*t*t*t + b;
+};
+
+// quintic easing out - decelerating to zero velocity
+Penner.OutQuint = function (t, b, c, d) {
+ return c*((t=t/d-1)*t*t*t*t + 1) + b;
+};
+
+// quintic easing in/out - acceleration until halfway, then deceleration
+Penner.InOutQuint = function (t, b, c, d) {
+ if ((t/=d/2) < 1) return c/2*t*t*t*t*t + b;
+ return c/2*((t-=2)*t*t*t*t + 2) + b;
+};
+
+
+
+ ///////////// SINUSOIDAL EASING: sin(t) ///////////////
+
+// sinusoidal easing in - accelerating from zero velocity
+// t: current time, b: beginning value, c: change in position, d: duration
+Penner.InSine = function (t, b, c, d) {
+ return -c * Math.cos(t/d * (Math.PI/2)) + c + b;
+};
+
+// sinusoidal easing out - decelerating to zero velocity
+Penner.OutSine = function (t, b, c, d) {
+ return c * Math.sin(t/d * (Math.PI/2)) + b;
+};
+
+// sinusoidal easing in/out - accelerating until halfway, then decelerating
+Penner.InOutSine = function (t, b, c, d) {
+ return -c/2 * (Math.cos(Math.PI*t/d) - 1) + b;
+};
+
+
+ ///////////// EXPONENTIAL EASING: 2^t /////////////////
+
+// exponential easing in - accelerating from zero velocity
+// t: current time, b: beginning value, c: change in position, d: duration
+Penner.InExpo = function (t, b, c, d) {
+ return (t==0) ? b : c * Math.pow(2, 10 * (t/d - 1)) + b;
+};
+
+// exponential easing out - decelerating to zero velocity
+Penner.OutExpo = function (t, b, c, d) {
+ return (t==d) ? b+c : c * (-Math.pow(2, -10 * t/d) + 1) + b;
+};
+
+// exponential easing in/out - accelerating until halfway, then decelerating
+Penner.InOutExpo = function (t, b, c, d) {
+ if (t==0) return b;
+ if (t==d) return b+c;
+ if ((t/=d/2) < 1) return c/2 * Math.pow(2, 10 * (t - 1)) + b;
+ return c/2 * (-Math.pow(2, -10 * --t) + 2) + b;
+};
+
+
+ /////////// CIRCULAR EASING: sqrt(1-t^2) //////////////
+
+// circular easing in - accelerating from zero velocity
+// t: current time, b: beginning value, c: change in position, d: duration
+Penner.InCirc = function (t, b, c, d) {
+ return -c * (Math.sqrt(1 - (t/=d)*t) - 1) + b;
+};
+
+// circular easing out - decelerating to zero velocity
+Penner.OutCirc = function (t, b, c, d) {
+ return c * Math.sqrt(1 - (t=t/d-1)*t) + b;
+};
+
+// circular easing in/out - acceleration until halfway, then deceleration
+Penner.InOutCirc = function (t, b, c, d) {
+ if ((t/=d/2) < 1) return -c/2 * (Math.sqrt(1 - t*t) - 1) + b;
+ return c/2 * (Math.sqrt(1 - (t-=2)*t) + 1) + b;
+};
+
+
+ /////////// ELASTIC EASING: exponentially decaying sine wave //////////////
+
+// t: current time, b: beginning value, c: change in value, d: duration, a: amplitude (optional), p: period (optional)
+// t and d can be in frames or seconds/milliseconds
+
+Penner.InElastic = function (t, b, c, d, a, p) {
+ if (t==0) return b; if ((t/=d)==1) return b+c; if (!p) p=d*.3;
+ if ((!a) || a < Math.abs(c)) { a=c; var s=p/4; }
+ else var s = p/(2*Math.PI) * Math.asin (c/a);
+ return -(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;
+};
+
+Penner.OutElastic = function (t, b, c, d, a, p) {
+ if (t==0) return b; if ((t/=d)==1) return b+c; if (!p) p=d*.3;
+ if ((!a) || a < Math.abs(c)) { a=c; var s=p/4; }
+ else var s = p/(2*Math.PI) * Math.asin (c/a);
+ return a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) + c + b;
+};
+
+Penner.InOutElastic = function (t, b, c, d, a, p) {
+ if (t==0) return b; if ((t/=d/2)==2) return b+c; if (!p) p=d*(.3*1.5);
+ if ((!a) || a < Math.abs(c)) { a=c; var s=p/4; }
+ else var s = p/(2*Math.PI) * Math.asin (c/a);
+ if (t < 1) return -.5*(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;
+ return a*Math.pow(2,-10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )*.5 + c + b;
+};
+
+
+ /////////// BACK EASING: overshooting cubic easing: (s+1)*t^3 - s*t^2 //////////////
+
+// back easing in - backtracking slightly, then reversing direction and moving to target
+// t: current time, b: beginning value, c: change in value, d: duration, s: overshoot amount (optional)
+// t and d can be in frames or seconds/milliseconds
+// s controls the amount of overshoot: higher s means greater overshoot
+// s has a default value of 1.70158, which produces an overshoot of 10 percent
+// s==0 produces cubic easing with no overshoot
+Penner.InBack = function (t, b, c, d, s) {
+ if (s == undefined) s = 1.70158;
+ return c*(t/=d)*t*((s+1)*t - s) + b;
+};
+
+// back easing out - moving towards target, overshooting it slightly, then reversing and coming back to target
+Penner.OutBack = function (t, b, c, d, s) {
+ if (s == undefined) s = 1.70158;
+ return c*((t=t/d-1)*t*((s+1)*t + s) + 1) + b;
+};
+
+// back easing in/out - backtracking slightly, then reversing direction and moving to target,
+// then overshooting target, reversing, and finally coming back to target
+Penner.InOutBack = function (t, b, c, d, s) {
+ if (s == undefined) s = 1.70158;
+ if ((t/=d/2) < 1) return c/2*(t*t*(((s*=(1.525))+1)*t - s)) + b;
+ return c/2*((t-=2)*t*(((s*=(1.525))+1)*t + s) + 2) + b;
+};
+
+
+ /////////// BOUNCE EASING: exponentially decaying parabolic bounce //////////////
+
+// bounce easing in
+// t: current time, b: beginning value, c: change in position, d: duration
+Penner.InBounce = function (t, b, c, d) {
+ return c - Penner.OutBounce (d-t, 0, c, d) + b;
+};
+
+// bounce easing out
+Penner.OutBounce = function (t, b, c, d) {
+ if ((t/=d) < (1/2.75)) {
+ return c*(7.5625*t*t) + b;
+ } else if (t < (2/2.75)) {
+ return c*(7.5625*(t-=(1.5/2.75))*t + .75) + b;
+ } else if (t < (2.5/2.75)) {
+ return c*(7.5625*(t-=(2.25/2.75))*t + .9375) + b;
+ } else {
+ return c*(7.5625*(t-=(2.625/2.75))*t + .984375) + b;
+ }
+};
+
+// bounce easing in/out
+Penner.InOutBounce = function (t, b, c, d) {
+ if (t < d/2) return Penner.InBounce (t*2, 0, c, d) * .5 + b;
+ return Penner.OutBounce (t*2-d, 0, c, d) * .5 + c*.5 + b;
+};
+
+
+
+
+
+
+
+
+
+//BEGIN_ATLAS_NOTIFY
+if (typeof(Sys) != "undefined")
+{
+ if (Sys.Application != null && Sys.Application.notifyScriptLoaded != null)
+ {
+ Sys.Application.notifyScriptLoaded();
+ }
+}
+//END_ATLAS_NOTIFY \ No newline at end of file
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/Editor.css b/schemas/OMNA Schema-based Namespace Registry_fichiers/Editor.css
new file mode 100644
index 0000000..77536ed
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/Editor.css
@@ -0,0 +1,222 @@
+.RadEWrapper TABLE {
+ PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; WIDTH: auto; BORDER-TOP-STYLE: none; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
+}
+.RadEWrapper TD {
+ PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; FONT: 11px Tahoma; WIDTH: auto; BORDER-TOP-STYLE: none; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
+}
+.RadEWrapper TH {
+ PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; FONT: 11px Tahoma; WIDTH: auto; BORDER-TOP-STYLE: none; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
+}
+.RadEWrapper IFRAME {
+ BACKGROUND-COLOR: white
+}
+.RadEFixedToolbarHolderMozilla {
+ BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; Z-INDEX: 10000; LEFT: 0px! important; BORDER-LEFT: #808080 1px solid; WIDTH: 100%; BORDER-BOTTOM: #808080 1px solid; POSITION: fixed! important; TOP: 0px! important; BACKGROUND-COLOR: #f7f7f7; TEXT-ALIGN: left
+}
+.RadEFixedToolbarHolderIE {
+ BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; Z-INDEX: 51200; ; LEFT: expression( ignoreMe2 = document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft + 'px'); BORDER-LEFT: #808080 1px solid; WIDTH: 100%; BORDER-BOTTOM: #808080 1px solid; POSITION: absolute; ; TOP: expression( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop + 'px'); BACKGROUND-COLOR: #f7f7f7; TEXT-ALIGN: left
+}
+.RadERelativeToolbarHolder {
+ BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; Z-INDEX: 10000; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; POSITION: absolute; BACKGROUND-COLOR: #f7f7f7; TEXT-ALIGN: left
+}
+.RadEToolText {
+ FONT: 11px Tahoma; MARGIN-LEFT: 2px; CURSOR: default; MARGIN-RIGHT: 2px
+}
+.RadEToolDown {
+ BORDER-RIGHT: #ffffff 1px solid; BORDER-TOP: #808080 1px solid; FONT: 11px Tahoma; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #ffffff 1px solid; WHITE-SPACE: nowrap; HEIGHT: 22px
+}
+.RadEToolOn {
+ BORDER-RIGHT: #a1a1a1 1px solid; BORDER-TOP: #c2c2c2 1px solid; BACKGROUND-IMAGE: url(CssImg/toolOnbg.gif); FONT: 11px Tahoma; BORDER-LEFT: #a1a1a1 1px solid; BORDER-BOTTOM: #8c8c8c 1px solid; WHITE-SPACE: nowrap; HEIGHT: 22px
+}
+.RadEToolOff {
+ MARGIN: 1px; FONT: 11px Tahoma; WHITE-SPACE: nowrap
+}
+.RadEToolOnOver {
+ BORDER-RIGHT: #a1a1a1 1px solid; BORDER-TOP: #c2c2c2 1px solid; BACKGROUND-IMAGE: url(CssImg/toolOverBg.gif); FONT: 11px Tahoma; BORDER-LEFT: #a1a1a1 1px solid; BORDER-BOTTOM: #787878 1px solid; WHITE-SPACE: nowrap; HEIGHT: 22px
+}
+.RadEToolOffOver {
+ BORDER-RIGHT: #a1a1a1 1px solid; BORDER-TOP: #c2c2c2 1px solid; BACKGROUND-IMAGE: url(CssImg/toolOverBg.gif); FONT: 11px Tahoma; BORDER-LEFT: #a1a1a1 1px solid; BORDER-BOTTOM: #787878 1px solid; WHITE-SPACE: nowrap; HEIGHT: 22px
+}
+.RadEToolDisabled {
+ FILTER: alpha(opacity=30); MARGIN: 1px; WHITE-SPACE: nowrap; moz-opacity: 0.5; opacity: 0.5
+}
+.RadEToolLongOff {
+ MARGIN: 1px; FONT: 11px Tahoma
+}
+.RadEToolLongOn {
+ BORDER-RIGHT: #c8c8c8 1px solid; BORDER-TOP: #cecece 1px solid; BACKGROUND-IMAGE: url(CssImg/toolOnbg.gif); MARGIN: 1px; FONT: 11px Tahoma; BORDER-LEFT: #c6c6c6 1px solid; BORDER-BOTTOM: #8c8c8c 1px solid
+}
+.RadEToolLongOnOver {
+ BORDER-RIGHT: #b8b8b8 1px solid; BORDER-TOP: #cecece 1px solid; BACKGROUND-IMAGE: url(CssImg/toolOverBg.gif); MARGIN: 1px; FONT: 11px Tahoma; BORDER-LEFT: #b8b8b8 1px solid; CURSOR: default; BORDER-BOTTOM: #787878 1px solid; WHITE-SPACE: nowrap
+}
+.RadEToolLongOffOver {
+ BORDER-RIGHT: #b8b8b8 1px solid; BORDER-TOP: #cecece 1px solid; BACKGROUND-IMAGE: url(CssImg/toolOverBg.gif); MARGIN: 1px; FONT: 11px Tahoma; BORDER-LEFT: #b8b8b8 1px solid; CURSOR: default; BORDER-BOTTOM: #787878 1px solid; WHITE-SPACE: nowrap
+}
+.RadEToolLongDisabled {
+ FILTER: alpha(opacity=50); MARGIN: 1px; moz-opacity: 0.5; opacity: 0.5
+}
+.RadEModuleTable {
+ BORDER-RIGHT: #dbdbdb 1px solid; BORDER-TOP: #f4f7f9 1px solid; BORDER-LEFT: #dbdbdb 1px solid; COLOR: #333333; BORDER-BOTTOM: #dbdbdb 1px solid; BACKGROUND-COLOR: #fcfcfc; TEXT-ALIGN: left
+}
+.RadEModule {
+ FONT: 11px Tahoma; WIDTH: 100%; COLOR: #333333; PADDING-TOP: 1px; HEIGHT: 100%
+}
+A.DomPathLink {
+ PADDING-RIGHT: 2px; PADDING-LEFT: 2px; PADDING-BOTTOM: 1px; FONT: 11px normal Tahoma; COLOR: #3333cc; PADDING-TOP: 3px; TEXT-DECORATION: underline
+}
+A.DomPathLink:visited {
+ PADDING-RIGHT: 2px; PADDING-LEFT: 2px; PADDING-BOTTOM: 1px; FONT: 11px normal Tahoma; COLOR: #3333cc; PADDING-TOP: 3px; TEXT-DECORATION: underline
+}
+A.DomPathLink:active {
+ PADDING-RIGHT: 2px; PADDING-LEFT: 2px; PADDING-BOTTOM: 1px; FONT: 11px normal Tahoma; COLOR: #3333cc; PADDING-TOP: 3px; TEXT-DECORATION: underline
+}
+A.DomPathLink:link {
+ PADDING-RIGHT: 2px; PADDING-LEFT: 2px; PADDING-BOTTOM: 1px; FONT: 11px normal Tahoma; COLOR: #3333cc; PADDING-TOP: 3px; TEXT-DECORATION: underline
+}
+A.DomPathLink:hover {
+ BACKGROUND-COLOR: white
+}
+A.DomPathLinkSelected {
+ BORDER-RIGHT: #c4d5e4 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: #c4d5e4 1px solid; PADDING-LEFT: 2px; PADDING-BOTTOM: 1px; FONT: bold 11px normal Tahoma; BORDER-LEFT: #c4d5e4 1px solid; COLOR: #333333; PADDING-TOP: 1px; BORDER-BOTTOM: #c4d5e4 1px solid; BACKGROUND-COLOR: white; TEXT-DECORATION: none
+}
+.RadEToggleButton {
+ BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BACKGROUND-IMAGE: none; BORDER-BOTTOM-WIDTH: 0px; MARGIN: 1px; VERTICAL-ALIGN: middle; WIDTH: 24px; HEIGHT: 24px; BACKGROUND-COLOR: #f7f7f7; TEXT-ALIGN: center; BORDER-RIGHT-WIDTH: 0px
+}
+.RadEToggleButtonPressed {
+ BORDER-RIGHT: #a0a0a0 1px solid; BORDER-TOP: #a0a0a0 1px solid; BACKGROUND-IMAGE: none; VERTICAL-ALIGN: middle; BORDER-LEFT: #a0a0a0 1px solid; WIDTH: 24px; BORDER-BOTTOM: #a0a0a0 1px solid; HEIGHT: 24px; BACKGROUND-COLOR: #dddddd; TEXT-ALIGN: center
+}
+TD.RadEContentContainer {
+ BORDER-RIGHT: #d4d4d4 1px solid; BORDER-TOP: #d4d4d4 1px solid; BORDER-LEFT: #d4d4d4 1px solid; BORDER-BOTTOM: #d4d4d4 1px solid; BACKGROUND-COLOR: white
+}
+TABLE.RadEWrapper {
+ BORDER-RIGHT: #e4e4e4 1px solid; PADDING-RIGHT: 1px; BORDER-TOP: #e4e4e4 1px solid; PADDING-LEFT: 1px; PADDING-BOTTOM: 1px; BORDER-LEFT: #e4e4e4 1px solid; PADDING-TOP: 1px; BORDER-BOTTOM: #e4e4e4 1px solid; BACKGROUND-COLOR: #f7f7f7
+}
+.RadEWrapper .RadEVerticalDockingZone {
+ FONT-SIZE: 0px; WIDTH: 1px; LINE-HEIGHT: 0px
+}
+.RadEWrapper .RadEDockingZone {
+ FONT-SIZE: 0px; LINE-HEIGHT: 0px
+}
+.RadETitleGrip {
+ PADDING-LEFT: 4px; BACKGROUND-IMAGE: url(CssImg/draggedToolbarTitleBg.gif); FONT: bold 11px Tahoma; COLOR: #666666; HEIGHT: 18px; TEXT-ALIGN: left
+}
+.RadESideGripHorizontal {
+ BACKGROUND-POSITION: center 50%; BACKGROUND-IMAGE: url(CssImg/dragHandle.gif); WIDTH: 10px; BACKGROUND-REPEAT: no-repeat
+}
+.RadESideGripVertical {
+ BACKGROUND-POSITION: center 50%; BACKGROUND-IMAGE: url(CssImg/dragHandleVertical.gif); BACKGROUND-REPEAT: no-repeat; HEIGHT: 10px
+}
+.RadEToolbar {
+ BORDER-RIGHT: #dcdcdc 1px solid; BACKGROUND-POSITION: 50% bottom; BORDER-TOP: #e5e5e5 1px solid; BACKGROUND-IMAGE: url(CssImg/ToolbarRowBackground.gif); FONT: 11px Tahoma; BORDER-LEFT: #dcdcdc 1px solid; BACKGROUND-REPEAT: repeat-x; HEIGHT: 24px; BACKGROUND-COLOR: #fbfbfb
+}
+.RadEToolbarVertical {
+ BORDER-RIGHT: #e5e5e5 1px solid; BORDER-TOP: #dcdcdc 1px solid; BACKGROUND-IMAGE: url(CssImg/ToolbarRowBgVertical.gif); FONT: 11px Tahoma; WIDTH: 24px; BORDER-BOTTOM: #dcdcdc 1px solid; BACKGROUND-REPEAT: repeat-y; BACKGROUND-COLOR: #fbfbfb
+}
+.RadAutoDockButton {
+ BORDER-TOP-WIDTH: 0px; BACKGROUND-POSITION: center 50%; BORDER-LEFT-WIDTH: 0px; FLOAT: right; BACKGROUND-IMAGE: url(CssImg/AutoDockButton.gif); BORDER-BOTTOM-WIDTH: 0px; WIDTH: 8px; CURSOR: pointer; MARGIN-RIGHT: 3px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 11px; BORDER-RIGHT-WIDTH: 0px
+}
+.RadESeparator {
+ BACKGROUND-POSITION: center 50%; FONT-SIZE: 3px; BACKGROUND-IMAGE: url(CssImg/Separator.gif); WIDTH: 2px; BACKGROUND-REPEAT: no-repeat
+}
+.RadESeparatorHorizontal {
+ BACKGROUND-POSITION: center 50%; FONT-SIZE: 1px; BACKGROUND-IMAGE: url(CssImg/SeparatorHorizontal.gif); BACKGROUND-REPEAT: no-repeat; HEIGHT: 3px
+}
+.RadEErrorMessage {
+ MARGIN: 3px; FONT: 11px Tahoma; COLOR: red; TEXT-ALIGN: left
+}
+TEXTAREA.RadETextArea {
+ BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; FONT: 11px Tahoma; BORDER-LEFT: #808080 1px solid; COLOR: #000080; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: white
+}
+INPUT.RadEButton {
+ BORDER-TOP-WIDTH: 0px; FONT-WEIGHT: bold; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 11px; BACKGROUND-IMAGE: url(CssImg/button.gif); BORDER-BOTTOM-WIDTH: 0px; MARGIN: 3px; WIDTH: 78px; COLOR: #333333; LINE-HEIGHT: 21px; FONT-FAMILY: Arial; HEIGHT: 22px; BACKGROUND-COLOR: transparent; TEXT-ALIGN: center; BORDER-RIGHT-WIDTH: 0px
+}
+BUTTON.RadEButton {
+ BORDER-TOP-WIDTH: 0px; FONT-WEIGHT: bold; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 11px; BACKGROUND-IMAGE: url(CssImg/button.gif); BORDER-BOTTOM-WIDTH: 0px; MARGIN: 3px; WIDTH: 78px; COLOR: #333333; LINE-HEIGHT: 21px; FONT-FAMILY: Arial; HEIGHT: 22px; BACKGROUND-COLOR: transparent; TEXT-ALIGN: center; BORDER-RIGHT-WIDTH: 0px
+}
+INPUT.RadETextBox {
+ BORDER-RIGHT: #4d6185 1px solid; BORDER-TOP: #4d6185 1px solid; PADDING-LEFT: 2px; FONT-SIZE: 12px; MARGIN: 1px; FONT: menu; BORDER-LEFT: #4d6185 1px solid; BORDER-BOTTOM: #4d6185 1px solid
+}
+SELECT.RadEDropDown {
+ PADDING-LEFT: 2px; FONT-SIZE: 11px; MARGIN: 2px; FONT-FAMILY: Tahoma
+}
+.RadEXhtmlButton {
+ BORDER-RIGHT: #a1a1a1 1px solid; BORDER-TOP: #c2c2c2 1px solid; BACKGROUND-IMAGE: url(CssImg/toolOnbg.gif); MARGIN: 1px; FONT: 11px Tahoma; BORDER-LEFT: #a1a1a1 1px solid; WIDTH: auto; COLOR: black; BORDER-BOTTOM: #8c8c8c 1px solid; HEIGHT: 22px
+}
+.RadEDropDownOff {
+ BORDER-RIGHT: #a6a6a6 1px solid; BORDER-TOP: #a6a6a6 1px solid; PADDING-LEFT: 3px; FONT: 11px Tahoma; MARGIN-LEFT: 1px; BORDER-LEFT: #a6a6a6 1px solid; WIDTH: auto; CURSOR: default; BORDER-BOTTOM: #a6a6a6 1px solid; BACKGROUND-COLOR: white
+}
+.RadEDropDownOn {
+ BORDER-RIGHT: #666666 1px solid; BORDER-TOP: #666666 1px solid; PADDING-LEFT: 3px; FONT: 11px Tahoma; MARGIN-LEFT: 1px; BORDER-LEFT: #666666 1px solid; WIDTH: auto; CURSOR: default; BORDER-BOTTOM: #666666 1px solid; BACKGROUND-COLOR: white
+}
+.RadEDropDownOffOver {
+ BORDER-RIGHT: #666666 1px solid; BORDER-TOP: #666666 1px solid; PADDING-LEFT: 3px; FONT: 11px Tahoma; MARGIN-LEFT: 1px; BORDER-LEFT: #666666 1px solid; WIDTH: auto; CURSOR: default; BORDER-BOTTOM: #666666 1px solid; BACKGROUND-COLOR: white
+}
+.RadEDropDownDisabled {
+ BORDER-RIGHT: #dcdcdc 1px solid; BORDER-TOP: #dcdcdc 1px solid; PADDING-LEFT: 3px; FONT: 11px Tahoma; MARGIN-LEFT: 1px; BORDER-LEFT: #dcdcdc 1px solid; WIDTH: auto; CURSOR: no-drop! important; COLOR: #808080; BORDER-BOTTOM: #dcdcdc 1px solid; BACKGROUND-COLOR: white
+}
+.RadEDropDownDisabled IMG {
+ FILTER: progid:DXImageTransform.Microsoft.Alpha(opacity=50); moz-opacity: 0.5; opacity: 0.5
+}
+.RadETableWrapperResizeSpan {
+ BORDER-RIGHT: #cccccc 3px solid; BORDER-TOP: #cccccc 3px solid; BORDER-LEFT: #cccccc 3px solid; CURSOR: default; BORDER-BOTTOM: #cccccc 3px solid
+}
+.RadETableWrapper {
+ BORDER-RIGHT: #c8c8c8 1px solid; BORDER-TOP: #e5e5e5 1px solid; FONT-SIZE: 0px; VERTICAL-ALIGN: top; BORDER-LEFT: #c8c8c8 1px solid; BORDER-BOTTOM: #c8c8c8 0px solid; BACKGROUND-COLOR: #f7f7f7
+}
+.RadETableWrapper TD {
+ VERTICAL-ALIGN: top
+}
+.RadETableWrapperHeaderLeft {
+ BACKGROUND: url(CssImg/DialogueHeaderLeft.gif) no-repeat; VERTICAL-ALIGN: top; WIDTH: 9px; HEIGHT: 24px
+}
+.RadETableWrapperHeaderCenter {
+ FONT-WEIGHT: bold; BACKGROUND: url(CssImg/ToolbarRowBackground.gif) repeat-x; VERTICAL-ALIGN: top; COLOR: #212121; FONT-FAMILY: Tahoma; HEIGHT: 24px; TEXT-ALIGN: left
+}
+.RadETableWrapperHeaderRight {
+ VERTICAL-ALIGN: top; WIDTH: 1px; HEIGHT: 24px
+}
+.RadETableWrapperBodyLeft {
+ WIDTH: 0px
+}
+.RadETableWrapperBodyCenter {
+ WIDTH: 100%; HEIGHT: 100%
+}
+.RadETableWrapperBodyRight {
+ WIDTH: 0px
+}
+.RadETableWrapperFooterLeft {
+ FONT-SIZE: 0px; WIDTH: 0px; BORDER-BOTTOM: #b4b4b4 1px solid; BACKGROUND-REPEAT: no-repeat; HEIGHT: 13px
+}
+.RadETableWrapperFooterCenter {
+ FONT-SIZE: 0px; WIDTH: 100%; LINE-HEIGHT: 0px; BORDER-BOTTOM: #b4b4b4 1px solid; HEIGHT: 13px
+}
+.RadETableWrapperFooterRight {
+ FONT-SIZE: 0px; BACKGROUND-IMAGE: url(CssImg/footerResize.gif); WIDTH: 14px; CURSOR: nw-resize; LINE-HEIGHT: 0px; BORDER-BOTTOM: #b4b4b4 1px solid; BACKGROUND-REPEAT: no-repeat; HEIGHT: 13px
+}
+.RadETableWrapperFooterRightOver {
+ FONT-SIZE: 0px; WIDTH: 0px; CURSOR: nw-resize; LINE-HEIGHT: 0px; HEIGHT: 0px
+}
+.RadERadWindowHeader {
+ DISPLAY: block; PADDING-LEFT: 4px; FONT-WEIGHT: bold; FONT-SIZE: 11px; WIDTH: 100%; CURSOR: default; COLOR: #212121; PADDING-TOP: 6px; FONT-STYLE: normal; FONT-FAMILY: Microsoft Sans Serif
+}
+.RadERadWindowButtonClose {
+ DISPLAY: block; BACKGROUND-IMAGE: url(CssImg/dialogueHeaderClose.gif); WIDTH: 19px; CURSOR: pointer; BACKGROUND-REPEAT: no-repeat; HEIGHT: 24px
+}
+.RadERadWindowButtonPinOff {
+ DISPLAY: block; BACKGROUND-IMAGE: url(CssImg/dialogueHeaderPinOff.gif); WIDTH: 16px; CURSOR: pointer; BACKGROUND-REPEAT: no-repeat; HEIGHT: 24px
+}
+.RadERadWindowButtonPinOn {
+ DISPLAY: block; BACKGROUND-IMAGE: url(CssImg/dialogueHeaderPinOn.gif); WIDTH: 16px; CURSOR: pointer; BACKGROUND-REPEAT: no-repeat; HEIGHT: 24px
+}
+.RadERibbon {
+ BORDER-RIGHT: #e4e4e4 1px solid; BORDER-TOP: #e4e4e4 1px solid; MARGIN-BOTTOM: 1px; BORDER-LEFT: #e4e4e4 1px solid; MARGIN-RIGHT: 1px; BORDER-BOTTOM: #e4e4e4 1px solid
+}
+.RadERibbon .RadAutoDockButton {
+ MARGIN-TOP: 1px; CURSOR: default
+}
+.RadERibbon .RadETitleGrip {
+ BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; FONT: 11px Arial, Verdana, Sans-serif; CURSOR: default; HEIGHT: 11px; BORDER-RIGHT-WIDTH: 0px
+}
+.RadERibbon .RadEToolbar {
+ BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px
+}
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/EventMixin.js b/schemas/OMNA Schema-based Namespace Registry_fichiers/EventMixin.js
new file mode 100644
index 0000000..c6919ea
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/EventMixin.js
@@ -0,0 +1,158 @@
+if (typeof window.RadControlsNamespace == "undefined")
+{
+ window.RadControlsNamespace = {};
+}
+
+if (
+ typeof(window.RadControlsNamespace.EventMixin) == "undefined" ||
+ typeof(window.RadControlsNamespace.EventMixin.Version) == null ||
+ window.RadControlsNamespace.EventMixin.Version < 2
+ )
+{
+
+ RadControlsNamespace.EventMixin =
+ {
+ Version : 2, // Change the version when make changes. Change the value in the IF also
+
+ Initialize : function (obj)
+ {
+
+ obj._listeners = {};
+ obj._eventsEnabled = true;
+ obj.AttachEvent = this.AttachEvent;
+
+ obj.DetachEvent = this.DetachEvent;
+ obj.RaiseEvent = this.RaiseEvent;
+
+ obj.EnableEvents = this.EnableEvents;
+ obj.DisableEvents = this.DisableEvents;
+
+ obj.DisposeEventHandlers = this.DisposeEventHandlers;
+
+ },
+
+ DisableEvents : function ()
+ {
+ this._eventsEnabled = false;
+ },
+
+ EnableEvents : function ()
+ {
+ this._eventsEnabled = true;
+ },
+
+ AttachEvent : function (eventName, handler)
+ {
+ if (!this._listeners[eventName])
+ {
+ this._listeners[eventName] = [];
+ }
+
+ this._listeners[eventName][this._listeners[eventName].length] = (RadControlsNamespace.EventMixin.ResolveFunction(handler));
+ },
+
+
+ DetachEvent : function (eventName, handler)
+ {
+ var listeners = this._listeners[eventName];
+ if (!listeners)
+ {
+ return false;
+ }
+
+ var funcHandler = RadControlsNamespace.EventMixin.ResolveFunction(handler);
+
+ for (var i = 0; i < listeners.length; i ++)
+ {
+ if (funcHandler == listeners[i])
+ {
+ listeners.splice(i, 1);
+ return true;
+ }
+ }
+
+ return false;
+ },
+
+ DisposeEventHandlers : function()
+ {
+ for (var eventName in this._listeners)
+ {
+ var listeners = null;
+ if (this._listeners.hasOwnProperty(eventName))
+ {
+ listeners = this._listeners[eventName];
+ for (var i = 0; i < listeners.length; i++)
+ {
+ listeners[i] = null;
+ }
+
+ listeners = null;
+ }
+ }
+ },
+
+ ResolveFunction : function (func)
+ {
+ if (typeof(func) == "function")
+ {
+ return func;
+ }
+ else if (typeof(window[func]) == "function")
+ {
+ return window[func];
+ }
+ else
+ {
+ return new Function("var Sender = arguments[0]; var Arguments = arguments[1];" + func);
+ }
+ },
+
+
+ RaiseEvent : function (eventName, eventArgs)
+ {
+ if (!this._eventsEnabled)
+ {
+ return true;
+ }
+ var outcome = true;
+
+ if (this[eventName])
+ {
+
+ var eventResult = RadControlsNamespace.EventMixin.ResolveFunction(this[eventName])(this, eventArgs);
+ if (typeof(eventResult) == "undefined")
+ {
+ eventResult = true;
+ }
+ outcome = outcome && eventResult;
+ }
+
+ if (!this._listeners[eventName]) return outcome;
+
+ for (var i = 0; i < this._listeners[eventName].length; i ++)
+ {
+ var handler = this._listeners[eventName][i];
+ var eventResult = handler(this, eventArgs);
+ if (typeof(eventResult) == "undefined")
+ {
+ eventResult = true;
+ }
+ outcome = outcome && eventResult;
+ }
+
+ return outcome;
+ }
+ }
+}
+
+
+//BEGIN_ATLAS_NOTIFY
+if (typeof(Sys) != "undefined")
+{
+ if (Sys.Application != null && Sys.Application.notifyScriptLoaded != null)
+ {
+ Sys.Application.notifyScriptLoaded();
+ }
+}
+//END_ATLAS_NOTIFY
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/MsAjaxMixin.js b/schemas/OMNA Schema-based Namespace Registry_fichiers/MsAjaxMixin.js
new file mode 100644
index 0000000..ba7422b
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/MsAjaxMixin.js
@@ -0,0 +1,115 @@
+/***************************************************************
+USAGE:
+
+1. Include this script before your client object class definition.
+
+2. Call the MsAjaxMixin right after your function definition,
+so that it attaches the necessary methods to the prototype
+
+RadControlsNamespace.MsAjaxMixin.Initialize(RadMenu, 'RadMenu');
+
+3. Change your client object initialization:
+ - rework your construction logic so that the constructor accepts only one element -- a DOM node.
+ - pass any additional data to an Initalize() method after the object is constructed.
+4. Call the initializeBase method in the constructor of your JavaScript object:
+
+function RadMenu(element)
+{
+ ...
+
+ if (typeof(RadMenu.initializeBase) == "function")
+ {
+ RadMenu.initializeBase(this, [element]);
+ }
+}
+
+5. Create a static factory method that will create a new object. Let it accept a client ID only:
+
+RadMenu.Create = function(clientID)
+{
+ return new RadMenu(document.getElementById(clientID));
+}
+
+6. Change your InitScript rendering:
+ - it should not call new RadMenu() directly. use the factory method instead: RadMenu.Create()
+
+Look below for a sample RadMenu.Create() implementation. That method will create your object and
+register it with the MS AJAX script runtime if it is present on the page.
+
+***************************************************************/
+
+//RadMenu.Create = function ()
+//{
+// var clientID = arguments[0];
+//
+// if (typeof ($create) == "function")
+// {
+// //the global RadMenu function object
+// var type = this;
+//
+// //{name : 'value'} will trigger a menuInstance.set_name('value');
+// var properties = {};
+//
+// //{itemClick : OnItemClick} will trigger a menuInstance.add_itemClick(OnItemClick);
+// var events = {};
+//
+// //{"Treeview" : "RadTreeView1} will trigger a menuInstance.set_Treeview($find('RadTreeView1'));
+// var references = {};
+//
+// //the DOM element that this component will attach to. crucial for partial updates and disposes
+// var domElement = $get(clientID);
+// return $create(type, properties, events, references, domElement);
+// }
+// else
+// {
+// var element = document.getElementById(clientID);
+// return new this(element);
+// }
+//}
+
+if (typeof window.RadControlsNamespace == "undefined")
+{
+ window.RadControlsNamespace = {};
+}
+
+if (
+ typeof(window.RadControlsNamespace.MsAjaxMixin) == "undefined" ||
+ typeof(window.RadControlsNamespace.MsAjaxMixin.Version) == null ||
+ window.RadControlsNamespace.MsAjaxMixin.Version < 1
+ )
+{
+ RadControlsNamespace.MsAjaxMixin =
+ {
+ Version : 1,
+ Initialize : function(type, typeName)
+ {
+ if (typeof(type.registerClass) != "function")
+ {
+ return;
+ }
+
+ type.inheritsFrom(Sys.UI.Control);
+ type.registerClass(typeName, Sys.UI.Control, Sys.IDisposable);
+
+ type.prototype.initialize = function()
+ {
+ Sys.UI.Control.callBaseMethod(this, 'initialize');
+ }
+
+ type.prototype.dispose = function()
+ {
+ Sys.UI.Control.callBaseMethod(this, 'dispose');
+ this.Dispose();
+ }
+ }
+ }
+}
+//BEGIN_ATLAS_NOTIFY
+if (typeof(Sys) != "undefined")
+{
+ if (Sys.Application != null && Sys.Application.notifyScriptLoaded != null)
+ {
+ Sys.Application.notifyScriptLoaded();
+ }
+}
+//END_ATLAS_NOTIFY
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/OMA.css b/schemas/OMNA Schema-based Namespace Registry_fichiers/OMA.css
new file mode 100644
index 0000000..15521ae
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/OMA.css
@@ -0,0 +1,348 @@
+P {
+ FONT-WEIGHT: normal; FONT-SIZE: 10px; COLOR: rgb(78,78,78); FONT-FAMILY: verdana
+}
+.OmaTitle1 {
+ FONT-WEIGHT: normal; FONT-SIZE: 20px; PADDING-BOTTOM: 4px; MARGIN: 0px; COLOR: #ae1d29; PADDING-TOP: 4px; FONT-FAMILY: verdana
+}
+.OmaTitle2 {
+ PADDING-RIGHT: 10px; DISPLAY: block; PADDING-LEFT: 10px; FONT-WEIGHT: bold; FONT-SIZE: 10px; PADDING-BOTTOM: 2px; COLOR: #ffffff; PADDING-TOP: 2px; FONT-FAMILY: verdana; BACKGROUND-COLOR: #ae1d29
+}
+.OmaP1 {
+ FONT-WEIGHT: normal; FONT-SIZE: 10px; COLOR: rgb(78,78,78); FONT-FAMILY: verdana
+}
+.OmaP1 LI {
+ PADDING-RIGHT: 5px; DISPLAY: list-item; PADDING-LEFT: 5px; LIST-STYLE-IMAGE: url(/organization/OMA/images/list-arrow-grey.png); PADDING-BOTTOM: 5px; PADDING-TOP: 5px; TEXT-ALIGN: justify
+}
+LI {
+ PADDING-RIGHT: 5px; DISPLAY: list-item; PADDING-LEFT: 5px; LIST-STYLE-IMAGE: url(//images/list-arrow-grey.png); PADDING-BOTTOM: 5px; PADDING-TOP: 5px; TEXT-ALIGN: justify
+}
+.OmaP1 A:link {
+ FONT-WEIGHT: normal; FONT-SIZE: 10px; COLOR: rgb(78,78,78); FONT-FAMILY: verdana; TEXT-DECORATION: underline
+}
+.OmaP1 A:hover {
+ FONT-WEIGHT: normal; FONT-SIZE: 10px; COLOR: rgb(174,29,41); FONT-FAMILY: verdana; TEXT-DECORATION: underline
+}
+.OmaP1 A:visited {
+ FONT-WEIGHT: normal; FONT-SIZE: 10px; COLOR: rgb(0,49,128); FONT-FAMILY: verdana; TEXT-DECORATION: underline
+}
+.OmaP1Bold {
+ FONT-WEIGHT: bolder; FONT-SIZE: 10px; COLOR: rgb(78,78,78); FONT-FAMILY: verdana
+}
+.OmaP1Bold A:link {
+ FONT-WEIGHT: bolder; FONT-SIZE: 12px; COLOR: rgb(78,78,78); FONT-FAMILY: verdana; TEXT-DECORATION: underline
+}
+.OmaP1Bold A:hover {
+ FONT-WEIGHT: bolder; FONT-SIZE: 12px; COLOR: rgb(78,78,78); FONT-FAMILY: verdana; TEXT-DECORATION: underline
+}
+.OmaP1Bold A:visited {
+ FONT-WEIGHT: bolder; FONT-SIZE: 12px; COLOR: rgb(78,78,78); FONT-FAMILY: verdana; TEXT-DECORATION: underline
+}
+.OmaBreadCrumb {
+ COLOR: rgb(151,144,128); FONT-FAMILY: verdana
+}
+.OmaBreadCrumb A:hover {
+ TEXT-DECORATION: underline
+}
+.OmaFooter {
+ VERTICAL-ALIGN: middle; COLOR: rgb(151,144,128); FONT-FAMILY: verdana; TEXT-ALIGN: center
+}
+.OmaFooter A {
+ FONT-WEIGHT: bolder
+}
+.OmaFooter A:hover {
+ TEXT-DECORATION: underline
+}
+.BlocLittle {
+ FONT-WEIGHT: bold; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(../images/square-bloc-home.png); COLOR: #666666; TEXT-INDENT: 10px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; HEIGHT: 27px; TEXT-ALIGN: center
+}
+.BlocLittle-TopBorder {
+ BORDER-TOP: #d3cab4 1px solid; FONT-WEIGHT: bold; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(../images/square-bloc-home.png); COLOR: #666666; TEXT-INDENT: 10px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; HEIGHT: 27px
+}
+.BlocLittleRedArrowBackground {
+ PADDING-RIGHT: 8px; BACKGROUND-POSITION: 50% 50%; PADDING-LEFT: 5px; BACKGROUND-IMAGE: url(../images/home-table-arrow-red.png); PADDING-BOTTOM: 3px; WIDTH: 10px; PADDING-TOP: 2px; BORDER-BOTTOM: #d3cab4 1px dashed; BACKGROUND-REPEAT: no-repeat; HEIGHT: 8px
+}
+.BlocLittleRedArrowBackground-down {
+ PADDING-RIGHT: 8px; BACKGROUND-POSITION: 50% 50%; PADDING-LEFT: 5px; BACKGROUND-IMAGE: url(../images/home-table-arrow-red.png); PADDING-BOTTOM: 3px; WIDTH: 10px; PADDING-TOP: 2px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 8px
+}
+.BlocLittleRedArrowImage {
+ PADDING-RIGHT: 8px; PADDING-LEFT: 5px; PADDING-BOTTOM: 3px; WIDTH: 10px; PADDING-TOP: 2px; BORDER-BOTTOM: #d3cab4 1px dashed; HEIGHT: 8px; BACKGROUND-COLOR: white
+}
+.BlocLittleRedArrowImage-down {
+ PADDING-RIGHT: 8px; PADDING-LEFT: 5px; PADDING-BOTTOM: 3px; WIDTH: 10px; PADDING-TOP: 2px; HEIGHT: 8px; BACKGROUND-COLOR: white
+}
+.BlocLittlePhoto {
+ PADDING-LEFT: 2px; PADDING-BOTTOM: 2px; PADDING-TOP: 2px; HEIGHT: 94px
+}
+.BlocLittlePhotoUnder {
+ PADDING-RIGHT: 10px; BACKGROUND-POSITION: 50% bottom; BORDER-TOP: #d3cab4 1px dashed; FONT-WEIGHT: bold; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(../images/gradiant-bloc-home.png); PADDING-BOTTOM: 1px; MARGIN-LEFT: auto; COLOR: #979080; MARGIN-RIGHT: auto; PADDING-TOP: 1px; BACKGROUND-REPEAT: repeat-x; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; HEIGHT: 21px; TEXT-ALIGN: right
+}
+.BlocLittlePhotoUnder A:link {
+ COLOR: #979080; TEXT-DECORATION: underline
+}
+.BlocLittlePhotoUnder A:hover {
+ COLOR: #ae1d29; TEXT-DECORATION: underline
+}
+.BlocLittlePhotoUnder A:visited {
+ COLOR: #003180; TEXT-DECORATION: underline
+}
+.BlocLittleText {
+ FONT-SIZE: 10px; COLOR: rgb(151,144,128); FONT-STYLE: normal; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; TEXT-ALIGN: justify
+}
+.BlocLittleTextBold {
+ FONT-WEIGHT: bold; FONT-SIZE: 10px; COLOR: #666666; FONT-STYLE: normal; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; TEXT-ALIGN: justify
+}
+.BlocLittleCase {
+ PADDING-RIGHT: 5px
+}
+.BlocLittleTable1 {
+ PADDING-RIGHT: 5px; PADDING-LEFT: 5px; FONT-WEIGHT: bold; FONT-SIZE: 10px; PADDING-BOTTOM: 2px; COLOR: #979080; PADDING-TOP: 5px; BORDER-BOTTOM: #d3cab4 1px dashed; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; HEIGHT: 12px; BACKGROUND-COLOR: white
+}
+.BlocLittleTable1 A:link {
+ TEXT-DECORATION: none
+}
+.BlocLittleTable1 A:hover {
+ TEXT-DECORATION: underline
+}
+.BlocLittleTable1-down {
+ PADDING-RIGHT: 5px; PADDING-LEFT: 5px; FONT-WEIGHT: bold; FONT-SIZE: 10px; PADDING-BOTTOM: 2px; COLOR: #979080; PADDING-TOP: 5px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; HEIGHT: 12px; BACKGROUND-COLOR: white
+}
+.BlocLittleTable1-down A:link {
+ TEXT-DECORATION: none
+}
+.BlocLittleTable1-down A:hover {
+ TEXT-DECORATION: underline
+}
+.BlocLittleTable3 {
+ PADDING-RIGHT: 1px; PADDING-LEFT: 1px; FONT-WEIGHT: normal; FONT-SIZE: 10px; PADDING-BOTTOM: 1px; COLOR: #979080; PADDING-TOP: 2px; BORDER-BOTTOM: #d3cab4 1px dashed; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; HEIGHT: 19px; BACKGROUND-COLOR: white; TEXT-ALIGN: left
+}
+.BlocLittleTable3 A:link {
+ TEXT-DECORATION: none
+}
+.BlocLittleTable3 A:hover {
+ TEXT-DECORATION: underline
+}
+.BlocLittleTable3-down {
+ PADDING-RIGHT: 1px; PADDING-LEFT: 1px; FONT-WEIGHT: normal; FONT-SIZE: 10px; PADDING-BOTTOM: 1px; COLOR: #979080; PADDING-TOP: 2px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; HEIGHT: 12px; BACKGROUND-COLOR: white; TEXT-ALIGN: left
+}
+.BlocLittleTable3-down A:link {
+ TEXT-DECORATION: none
+}
+.BlocLittleTable3-down A:hover {
+ TEXT-DECORATION: underline
+}
+.TableTitre1 {
+ BORDER-RIGHT: white 3px solid; PADDING-LEFT: 3px; FONT-WEIGHT: bolder; FONT-SIZE: 10px; LEFT: 10px; CLIP: rect(auto auto auto 3px); COLOR: #ffffff; BOTTOM: 3px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; TOP: 3px; HEIGHT: 20px; BACKGROUND-COLOR: #ae1d29
+}
+.TableTitre2 {
+ BORDER-RIGHT: white 3px solid; PADDING-LEFT: 3px; FONT-WEIGHT: bolder; FONT-SIZE: 10px; COLOR: #7a7466; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; HEIGHT: 23px; BACKGROUND-COLOR: #e7e1d3
+}
+.TableP1big {
+ BORDER-RIGHT: white 3px solid; PADDING-LEFT: 3px; FONT-SIZE: 10px; COLOR: #7a7466; BORDER-BOTTOM: #7a7466 1px dashed; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; HEIGHT: 23px; BACKGROUND-COLOR: #ffffff
+}
+.TableP1bigCenter {
+ BORDER-RIGHT: white 3px solid; PADDING-LEFT: 3px; FONT-SIZE: 10px; COLOR: #7a7466; BORDER-BOTTOM: #7a7466 1px dashed; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; HEIGHT: 23px; BACKGROUND-COLOR: #ffffff; TEXT-ALIGN: center
+}
+.TableP1little {
+ BORDER-RIGHT: white 3px solid; PADDING-LEFT: 3px; FONT-SIZE: 10px; COLOR: #7a7466; BORDER-BOTTOM: #7a7466 1px dashed; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; HEIGHT: 23px; BACKGROUND-COLOR: #f5f2ed
+}
+.TableP1littleCenter {
+ BORDER-RIGHT: white 3px solid; PADDING-LEFT: 3px; FONT-SIZE: 10px; COLOR: #7a7466; BORDER-BOTTOM: #7a7466 1px dashed; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; HEIGHT: 23px; BACKGROUND-COLOR: #f5f2ed; TEXT-ALIGN: center
+}
+.TableP1littleCenter A:link {
+ COLOR: #7a7466; TEXT-DECORATION: underline
+}
+.TableP1littleCenter A:hover {
+ COLOR: rgb(174,29,41); TEXT-DECORATION: underline
+}
+.TableP1littleCenter A:visited {
+ COLOR: rgb(0,49,128); TEXT-DECORATION: underline
+}
+.TableP1little A:link {
+ COLOR: #7a7466; TEXT-DECORATION: underline
+}
+.TableP1little A:hover {
+ COLOR: rgb(174,29,41); TEXT-DECORATION: underline
+}
+.TableP1little A:visited {
+ COLOR: rgb(0,49,128); TEXT-DECORATION: underline
+}
+.TableP1big A:link {
+ COLOR: #7a7466; TEXT-DECORATION: underline
+}
+.TableP1big A:hover {
+ COLOR: rgb(174,29,41); TEXT-DECORATION: underline
+}
+.TableP1big A:visited {
+ COLOR: rgb(0,49,128); TEXT-DECORATION: underline
+}
+.TableP1littleDate {
+ BORDER-RIGHT: white 3px solid; PADDING-LEFT: 3px; FONT-SIZE: 10px; COLOR: #7a7466; BORDER-BOTTOM: #7a7466 1px dashed; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; BACKGROUND-COLOR: #f5f2ed; TEXT-ALIGN: center
+}
+.Oma_Text_Medium {
+ FONT-WEIGHT: normal; FONT-SIZE: 10px; COLOR: #979080; FONT-FAMILY: verdana
+}
+.Oma_Text_Medium A:link {
+ TEXT-DECORATION: underline
+}
+.Oma_Text_Medium A:hover {
+ FONT-WEIGHT: normal; FONT-SIZE: 10px; COLOR: #ae1d29; TEXT-DECORATION: underline
+}
+.Oma_Text_Medium A:visited {
+ FONT-WEIGHT: normal; FONT-SIZE: 10px; COLOR: #003180; TEXT-DECORATION: underline
+}
+#collapsemenuDiv {
+ FONT-WEIGHT: normal; FONT-SIZE: 10px; COLOR: #979080; FONT-FAMILY: verdana
+}
+#expandmenuDiv {
+ FONT-WEIGHT: normal; FONT-SIZE: 10px; COLOR: #979080; FONT-FAMILY: verdana
+}
+#collapseSearchDiv {
+ FONT-WEIGHT: normal; FONT-SIZE: 10px; COLOR: #979080; FONT-FAMILY: verdana
+}
+#expandSearchDiv {
+ FONT-WEIGHT: normal; FONT-SIZE: 10px; COLOR: #979080; FONT-FAMILY: verdana
+}
+A {
+ COLOR: #979080
+}
+A:hover {
+ COLOR: #979080
+}
+.HEAD0 {
+ FONT-WEIGHT: bold; BACKGROUND-IMAGE: url(../images/square-background-top.png); COLOR: #979080; BACKGROUND-REPEAT: repeat-x; FONT-FAMILY: Arial, Helvetica, sans-serif; WHITE-SPACE: nowrap; HEIGHT: 29px
+}
+.MENU-TITLE {
+ FONT-SIZE: 11px; COLOR: #000000; FONT-FAMILY: Arial, Helvetica, sans-serif
+}
+.HEAD1 {
+ FONT-WEIGHT: bolder; FONT-SIZE: 70%; BACKGROUND-IMAGE: url(../images/square-background-top.png); COLOR: #979080; BACKGROUND-REPEAT: repeat-x; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; HEIGHT: 29px
+}
+A.MENU-ICON {
+ FONT-WEIGHT: normal; FONT-SIZE: 11px; COLOR: #979080; FONT-FAMILY: Arial; TEXT-ALIGN: right; TEXT-DECORATION: none
+}
+.MENU-ICON {
+ FONT-WEIGHT: normal; FONT-SIZE: 11px; COLOR: #979080; FONT-FAMILY: Arial
+}
+TD {
+ FONT-WEIGHT: normal; FONT-SIZE: 10px; COLOR: #979080; FONT-FAMILY: verdana
+}
+.header_text {
+ FONT-WEIGHT: bold; FONT-SIZE: 10px; COLOR: #29aae1; FONT-FAMILY: Verdana, sans-serif, Helvetica, Arial
+}
+.simple_table {
+
+}
+.header_div_text {
+ MARGIN-LEFT: 10px
+}
+.Menu {
+
+}
+.oma_div_menu {
+ BACKGROUND-IMAGE: url(../images_menu/button-grey-background.png); WIDTH: 100%; BACKGROUND-REPEAT: repeat
+}
+LI {
+ BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; BORDER-RIGHT-WIDTH: 0px
+}
+.oma_div_menu_layout {
+ BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BORDER-LEFT-WIDTH: 0px; Z-INDEX: 99; BACKGROUND-IMAGE: url(../images_menu/button-grey-background.png); BORDER-BOTTOM-WIDTH: 0px; PADDING-BOTTOM: 0px; PADDING-TOP: 0px; BACKGROUND-REPEAT: repeat; BORDER-RIGHT-WIDTH: 0px
+}
+#td_total_bar {
+ PADDING-RIGHT: 0px; PADDING-LEFT: 0px; Z-INDEX: 99; BACKGROUND-IMAGE: url(../images_menu/button-grey-background.png); PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; BACKGROUND-REPEAT: repeat
+}
+.Menu_first_level_over {
+ BACKGROUND-IMAGE: url(../images_menu/button-grey-background.png)
+}
+.link Menu_second_level {
+ FONT-SIZE: 10px; BACKGROUND-IMAGE: url(../images_menu/menu-backgrond-pink.png)
+}
+.Menu_second_level {
+ FONT-SIZE: 10px; BACKGROUND-IMAGE: url(../images_menu/menu-backgrond-pink.png)
+}
+.Menu_second_level A {
+ DISPLAY: block; PADDING-LEFT: 3px; FONT-WEIGHT: bold; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(../images_menu/menu-backgrond-pink.png); MARGIN-BOTTOM: 3px; WIDTH: 227px; COLOR: #979080; PADDING-TOP: 3px; FONT-FAMILY: verdana; HEIGHT: 18px; TEXT-DECORATION: none
+}
+.Menu_second_level A:hover {
+ PADDING-LEFT: 3px; FONT-WEIGHT: bold; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(../images_menu/menu-backgrond-red.png); MARGIN-BOTTOM: 3px; WIDTH: 227px; COLOR: #ffffff; PADDING-TOP: 3px; FONT-FAMILY: verdana; HEIGHT: 18px; TEXT-DECORATION: none
+}
+.oma_header_bar {
+ BACKGROUND-IMAGE: url(../images/square-background-top.png); PADDING-TOP: 0px; BACKGROUND-REPEAT: repeat-x; HEIGHT: 29px
+}
+.oma_header_bar A:link {
+ FONT-WEIGHT: bold
+}
+.copy_breadcrumb_heading {
+ FONT-WEIGHT: normal; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(../images/square-background-top.png); WIDTH: 100%; COLOR: #979080; BACKGROUND-REPEAT: repeat-x; FONT-FAMILY: verdana; HEIGHT: 29px; TEXT-DECORATION: none
+}
+.homepage_content1 {
+ BORDER-RIGHT: #d3cab4 1px solid; BORDER-TOP: #d3cab4 1px solid; MARGIN: 0px; OVERFLOW: auto; BORDER-LEFT: #d3cab4 1px solid; WIDTH: 228px; BORDER-BOTTOM: #d3cab4 1px solid; HEIGHT: 142px
+}
+.homepage_content2 {
+ BORDER-RIGHT: #d3cab4 1px solid; BORDER-TOP: #d3cab4 1px solid; MARGIN: 0px; OVERFLOW: auto; BORDER-LEFT: #d3cab4 1px solid; WIDTH: 228px; BORDER-BOTTOM: #d3cab4 1px solid; HEIGHT: 142px
+}
+.homepage_content3 {
+ BORDER-RIGHT: #d3cab4 1px solid; BORDER-TOP: #d3cab4 1px solid; MARGIN: 0px; OVERFLOW: auto; BORDER-LEFT: #d3cab4 1px solid; WIDTH: 228px; BORDER-BOTTOM: #d3cab4 1px solid; HEIGHT: 142px
+}
+.homepage_content4 {
+ BORDER-RIGHT: #d3cab4 1px solid; BORDER-TOP: #d3cab4 1px solid; MARGIN: 0px; OVERFLOW: auto; BORDER-LEFT: #d3cab4 1px solid; WIDTH: 228px; BORDER-BOTTOM: #d3cab4 1px solid; HEIGHT: 142px
+}
+#oma_homepage_container {
+ BORDER-TOP-WIDTH: 6px; BACKGROUND-IMAGE: url(../images/home-banner-grey-long.png); BACKGROUND-REPEAT: repeat-x
+}
+.tpl_oma_twocols_right_col_container {
+ BACKGROUND: #f4f1eb
+}
+#content_right_menu_top {
+ BACKGROUND: #f4f1eb
+}
+#content_right_menu_bottom {
+ BACKGROUND: #f4f1eb
+}
+.tpl_oma_onecol {
+ PADDING-LEFT: 15px; WIDTH: 700px; PADDING-TOP: 18px
+}
+#oma_template_container {
+ PADDING-LEFT: 15px; PADDING-TOP: 0px
+}
+.radEditor {
+
+}
+#div_content {
+ TEXT-ALIGN: left
+}
+.oma_input_text {
+ BORDER-RIGHT: #ffffff 1px solid; BORDER-TOP: #979580 1px solid; FONT-SIZE: 10px; BORDER-LEFT: #979580 1px solid; WIDTH: 121px; COLOR: #000000; BORDER-BOTTOM: #ffffff 1px solid; FONT-FAMILY: verdana; HEIGHT: 17px; BACKGROUND-COLOR: #ffffff
+}
+.header_bar_link {
+ FONT-WEIGHT: bolder; FONT-SIZE: 10px; COLOR: #979080; FONT-FAMILY: verdana; BACKGROUND-COLOR: #faf8f5
+}
+.header_bar_link:hover {
+ FONT-WEIGHT: bolder; FONT-SIZE: 10px; COLOR: #979080; FONT-FAMILY: verdana; BACKGROUND-COLOR: #faf8f5; TEXT-DECORATION: underline
+}
+.header_bar_button {
+ FONT-WEIGHT: bolder; FONT-SIZE: 10px; COLOR: #979080; FONT-FAMILY: verdana; HEIGHT: 18px; BACKGROUND-COLOR: #faf8f5
+}
+.imagepopup {
+ FONT-WEIGHT: bolder; FONT-SIZE: 12px; WIDTH: 300px; COLOR: #ffffff; FONT-FAMILY: verdana; HEIGHT: 18px; BACKGROUND-COLOR: #909090
+}
+.oma_content_panel {
+ HEIGHT: 450px
+}
+.image1 {
+ OVERFLOW: hidden
+}
+#image1-text {
+ OVERFLOW: hidden
+}
+#image1-container {
+ OVERFLOW: hidden
+}
+.image1 {
+ Z-INDEX: -1; POSITION: relative; TOP: -100px
+}
+.image1-text {
+ VERTICAL-ALIGN: middle; TEXT-ALIGN: center
+}
+.center {
+ MARGIN-LEFT: auto; MARGIN-RIGHT: auto
+}
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/Overlay.js b/schemas/OMNA Schema-based Namespace Registry_fichiers/Overlay.js
new file mode 100644
index 0000000..4bdb306
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/Overlay.js
@@ -0,0 +1,91 @@
+if (typeof window.RadControlsNamespace == "undefined")
+{
+ window.RadControlsNamespace = {};
+}
+
+if (
+ typeof(window.RadControlsNamespace.Overlay) == "undefined" ||
+ typeof(window.RadControlsNamespace.Overlay.Version) == null ||
+ window.RadControlsNamespace.Overlay.Version < 1.1
+ )
+{
+ window.RadControlsNamespace.Overlay = function (element)
+ {
+
+ if (!this.SupportsOverlay())
+ {
+ return;
+ }
+
+ this.Element = element;
+
+ this.Shim = document.createElement("IFRAME");
+ this.Shim.src="javascript:'';";
+ this.Element.parentNode.insertBefore(this.Shim, this.Element);
+
+ if (element.style.zIndex > 0)
+ {
+ this.Shim.style.zIndex = element.style.zIndex - 1;
+ }
+ this.Shim.style.position = "absolute";
+ this.Shim.style.border = "0px";
+ this.Shim.frameBorder = 0;
+ this.Shim.style.filter = "progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0)";
+ this.Shim.disabled = "disabled";
+ }
+
+ window.RadControlsNamespace.Overlay.Version = 1.1;// update in the header IF also
+
+ RadControlsNamespace.Overlay.prototype.SupportsOverlay = function()
+ {
+ return (RadControlsNamespace.Browser.IsIE);
+ }
+
+ RadControlsNamespace.Overlay.prototype.Update = function ()
+ {
+ if (!this.SupportsOverlay())
+ {
+ return;
+ }
+
+ this.Shim.style.top = this.ToUnit(this.Element.style.top);
+ this.Shim.style.left = this.ToUnit(this.Element.style.left);
+ this.Shim.style.width = this.Element.offsetWidth + "px";
+ this.Shim.style.height = this.Element.offsetHeight + "px";
+
+ // this.Shim.style.border = "0px solid red";
+ }
+
+ RadControlsNamespace.Overlay.prototype.ToUnit = function (value)
+ {
+ if (!value) return "0px";
+ return parseInt(value) + "px";
+ }
+
+ RadControlsNamespace.Overlay.prototype.Dispose = function ()
+ {
+ if (!this.SupportsOverlay())
+ {
+ return;
+ }
+
+ if (this.Shim.parentNode)
+ {
+ this.Shim.parentNode.removeChild(this.Shim);
+ }
+
+ this.Element = null;
+ this.Shim = null;
+
+ }
+}
+
+//BEGIN_ATLAS_NOTIFY
+if (typeof(Sys) != "undefined")
+{
+ if (Sys.Application != null && Sys.Application.notifyScriptLoaded != null)
+ {
+ Sys.Application.notifyScriptLoaded();
+ }
+}
+//END_ATLAS_NOTIFY \ No newline at end of file
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/RadMenu.js b/schemas/OMNA Schema-based Namespace Registry_fichiers/RadMenu.js
new file mode 100644
index 0000000..6951585
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/RadMenu.js
@@ -0,0 +1,1219 @@
+if (typeof window.RadMenuNamespace == "undefined")
+{
+ window.RadMenuNamespace = {};
+}
+
+if (typeof window.RadControlsNamespace == "undefined")
+{
+ window.RadControlsNamespace = {};
+}
+
+RadControlsNamespace.AppendStyleSheet = function(callback, clientID, pathToCssFile)
+{
+ if (!pathToCssFile)
+ {
+ return;
+ }
+
+ var isGecko = window.netscape && !window.opera;
+
+ if (!callback && isGecko)
+ {
+ //immediate css loading for Gecko
+ document.write("<" + "link" + " rel='stylesheet' type='text/css' href='" + pathToCssFile + "' />");
+ }
+ else
+ {
+ var linkObject = document.createElement("link");
+ linkObject.rel = "stylesheet";
+ linkObject.type = "text/css";
+ linkObject.href = pathToCssFile;
+ document.getElementsByTagName("head")[0].appendChild(linkObject);
+ }
+};
+
+RadMenuNamespace.ItemFlow = {Vertical : 0, Horizontal : 1};
+RadMenuNamespace.ExpandDirection = {Auto : 0, Up : 1, Down : 2, Left : 3, Right : 4};
+
+RadMenuNamespace.ExpandDirectionPropertyName = {"1" : 'bottom', "2" : 'top', "3" : 'right', "4" : 'left'};
+
+function RadMenu (element)
+{
+ this.DomElement = element;
+
+ this.ChildItemList = this.DomElement.getElementsByTagName("ul")[0];
+ this.StateField = document.getElementById(element.id + "_Hidden");
+ this.Items = [];
+ this.AllItems = [];
+ this.OpenedItem = null;
+ this.LastExpandedItem = null;
+ this.ExpandAnimation = {};
+ this.CollapseAnimation = {};
+ this.CollapseDelay = 500;
+ this.ExpandDelay = 100;
+ this.ID = element.id;
+ this.Skin = "Default";
+ this.RightToLeft = false;
+ this.EnableScreenBoundaryDetection = true;
+ this.InUpdate = false;
+ this.Initialized = false;
+
+ this.State = {};
+ this.ItemState = {};
+
+ this.CausesValidation = true;
+ this.Flow = RadMenuNamespace.ItemFlow.Horizontal;
+ this.ClickToOpen = false;
+ this.Enabled = true;
+ this.EnableAutoScroll = false;
+ this.Clicked = false; // click to open flag
+ this.OriginalZIndex = this.DomElement.style.zIndex;
+ this.StateFieldDetached = false;
+
+
+ this.Attributes = {};
+ RadControlsNamespace.EventMixin.Initialize(this);
+ RadControlsNamespace.DomEventMixin.Initialize(this);
+
+/* if (typeof(RadMenu.initializeBase) == "function")
+ {
+ RadMenu.initializeBase(this, [element]);
+ }*/
+}
+
+/*RadControlsNamespace.MsAjaxMixin.Initialize(RadMenu, 'RadMenu');*/
+
+RadMenu.Create = function ()
+{
+ var clientID = arguments[0];
+ /*
+ if (typeof ($create) == "function")
+ {
+
+ //the global RadMenu function object
+ var type = this;
+
+ //{name : 'value'} will trigger a menuInstance.set_name('value');
+ var properties = {};
+
+ //{itemClick : OnItemClick} will trigger a menuInstance.add_itemClick(OnItemClick);
+ var events = {};
+
+ //{"Treeview" : "RadTreeView1} will trigger a menuInstance.set_Treeview($find('RadTreeView1'));
+ var references = {};
+
+ //the DOM element that this component will attach to. crucial for partial updates and disposes
+ var domElement = $get(clientID);
+
+ return $create(type, properties, events, references, domElement);
+ }
+ else
+ {*/
+ var oldMenu = window[clientID];
+
+ if (oldMenu != null && oldMenu.Dispose)
+ {
+ oldMenu.Dispose();
+ }
+ var element = document.getElementById(clientID);
+ return new this(element);
+ /*}*/
+}
+
+RadMenu.JSONIncludeDeep = { "Attributes" : true };
+
+RadMenu.CreateState = function (instance)
+{
+ instance.InitialState = {};
+ for (var i in instance)
+ {
+ var type = typeof instance[i];
+ if (type == "number" || type == "string" || type == "boolean")
+ instance.InitialState[i] = instance[i];
+ }
+}
+
+RadMenu.GetFirstChildByTagName = function(parentNode, tagName)
+{
+ var child = parentNode.getElementsByTagName(tagName)[0];
+
+ if (child && child.parentNode == parentNode)
+ {
+ return child;
+ }
+ return null;
+}
+
+RadMenu.prototype.RenderInProgress = function()
+{
+ return this.DomElement.offsetWidth == 0 && RadControlsNamespace.Browser.IsIE;
+}
+
+RadMenu.prototype.Detach = function(e)
+{
+ if (!(RadControlsNamespace.Browser.IsIE) || document.readyState == "complete")
+ {
+ if (!this.StateFieldDetached)
+ {
+ var parentNode = this.DomElement.parentNode;
+ this.StateField.parentNode.removeChild(this.StateField);
+ parentNode.insertBefore(this.StateField, this.DomElement);
+ this.StateFieldDetached = true;
+ }
+
+ //To solve the IE7 issue (disappearing html elements)
+ this.DomElement.parentNode.removeChild(this.DomElement);
+ document.forms[0].insertBefore(this.DomElement, document.forms[0].firstChild);
+ this.DomElement.style.position = "absolute";
+ this.Detached = true;
+ }
+}
+
+RadMenu.prototype.ReAttach = function(e)
+{
+ if (!(RadControlsNamespace.Browser.IsIE) || document.readyState == "complete")
+ {
+ this.DomElement.parentNode.removeChild(this.DomElement);
+ this.StateField.parentNode.insertBefore(this.DomElement, this.StateField);
+ this.Detached = false;
+ }
+}
+
+RadMenu.prototype.Show = function(e)
+{
+ if (!this.IsContext)
+ {
+ return;
+ }
+
+ if (!this.RaiseEvent("OnClientContextShowing"))
+ {
+ return RadControlsNamespace.DomEvent.PreventDefault(e);
+ }
+
+ for (var i in RadMenuNamespace.ContextMenus)
+ {
+ RadMenuNamespace.ContextMenus[i].Hide();
+ }
+ var x = this.MouseEventX(e);
+ var y = this.MouseEventY(e);
+
+
+ if (this.RightToLeft)
+ {
+ this.ShowAt(x, y);
+ return this.ShowAt(x - this.ChildItemList.offsetWidth, y);
+ }
+
+ return this.ShowAt(x, y);
+}
+
+RadMenu.prototype.CreateRuntimeScroll = function (height)
+{
+ if (this.Scroll)
+ {
+ this.Scroll.SetHeight(height);
+ return;
+ }
+
+ this.BuildScrollObject(true);
+ this.Scroll.Initialize()
+
+ this.ScrollWrap = this.ChildItemList.parentNode;
+ this.Ease.Element = this.ScrollWrap;
+ this.Ease.Overlay.Element = this.ScrollWrap;
+ this.ScrollWrap.className = "scrollWrap " + this.ChildItemList.className;
+ this.ChildItemList.className = "active vertical";
+
+ this.Scroll.SetHeight(height);
+}
+
+RadMenu.prototype.ShowAt = function(x, y)
+{
+ if (!this.IsContext)
+ {
+ return;
+ }
+
+ if (!this.Detached)
+ {
+ this.Detach();
+ }
+ this.ShownAsContext = true;
+
+ this.Ease.ShowElements();
+
+ var documentSize = RadControlsNamespace.Screen.GetViewPortSize();
+
+ if (this.EnableAutoScroll && y + this.ChildItemList.offsetHeight > documentSize.height)
+ {
+ this.Ease.ShowElements();
+ this.Ease.UpdateContainerSize();
+ this.CreateRuntimeScroll(documentSize.height - y + "px");
+ }
+
+ if (this.ScrollWrap)
+ {
+ this.ScrollWrap.style.width = this.ChildItemList.offsetWidth + "px";
+ this.Scroll.Initialize();
+ }
+
+ this.Ease.UpdateContainerSize();
+
+ if (!this.WidthFixed)
+ {
+ this.WidthFixed = true;
+ this.FixItemWidth(this);
+ }
+ this.Position(x, y);
+ this.Ease.In();
+
+ this.RaiseEvent('OnClientContextShown', null);
+
+ return false;
+
+}
+
+RadMenu.prototype.Position = function (x, y)
+{
+ var portSize = RadControlsNamespace.Screen.GetViewPortSize();
+
+ x = Math.min(x, portSize.width - this.DomElement.offsetWidth);
+ y = Math.min(y, portSize.height - this.DomElement.offsetHeight);
+
+ if (isNaN(x)) x = 0;
+ if (isNaN(y)) y = 0;
+ this.DomElement.style.left = x + "px";
+ this.DomElement.style.top = y + "px";
+}
+
+RadMenu.prototype.MouseEventX = function(e)
+{
+ if (e.pageX)
+ {
+ return e.pageX;
+ }
+ else if (e.clientX)
+ {
+ if (RadControlsNamespace.Browser.StandardsMode)
+ {
+ return (e.clientX + document.documentElement.scrollLeft);
+ }
+ return (e.clientX + document.body.scrollLeft);
+ }
+};
+
+RadMenu.prototype.MouseEventY = function(e)
+{
+ if (e.pageY)
+ {
+ return e.pageY;
+ }
+ else if (e.clientY)
+ {
+ if (RadControlsNamespace.Browser.StandardsMode)
+ {
+ return (e.clientY + document.documentElement.scrollTop);
+ }
+ return (e.clientY + document.body.scrollTop);
+ }
+};
+
+RadMenu.prototype.EventSource = function(e)
+{
+ return RadControlsNamespace.DomEvent.GetTarget(e);
+}
+
+RadMenu.prototype.Hide = function()
+{
+ if (this.ShownAsContext)
+ {
+ if (this.Detached)
+ {
+ this.ReAttach();
+ }
+
+ this.Ease.Out();
+ this.ShownAsContext = false;
+
+ this.RaiseEvent('OnClientContextHidden', null);
+ }
+}
+
+RadMenu.prototype.Initialize = function (configObject, itemData)
+{
+ this.LoadConfiguration(configObject);
+ this.ItemData = itemData;
+
+
+ this.DetermineDirection();
+
+ this.ApplyRTL();
+
+ if (this.IsContext)
+ {
+ this.InitContextMenu();
+ }
+
+ this.CreateControlHierarchy(this, 0);
+
+ if (!this.Enabled)
+ {
+ this.Disable();
+ }
+
+ if (this.Flow == RadMenuNamespace.ItemFlow.Vertical)
+ {
+ this.FixRootItemWidth();
+ }
+
+ this.AttachEventHandlers();
+
+ this.Initialized = true;
+
+ RadMenu.CreateState(this);
+
+ this.RaiseEvent('OnClientLoad', null);
+};
+
+
+RadMenu.prototype.AttachEventHandlers = function ()
+{
+ var instance = this;
+
+ this.DomElement.RadShow = function ()
+ {
+ if (instance.Flow == RadMenuNamespace.ItemFlow.Vertical)
+ {
+ instance.FixRootItemWidth();
+ }
+ }
+
+ this.AttachDomEvent(window, "unload", "Dispose");
+
+ if (!this.ClickToOpen && RadControlsNamespace.Browser.IsIE)
+ {
+ this.AttachDomEvent(document, "mouseout", "MouseOutHandler");
+ }
+ if (this.ClickToOpen)
+ {
+ this.AttachDomEvent(document, "click", "CloseOpenedItems");
+ }
+
+ //To refresh the menu position - required for IE because the menu is relatively positioned.
+ this.AttachDomEvent(window, "resize", "RefreshPosition");
+}
+
+RadMenu.prototype.RefreshPosition = function(e)
+{
+ //Causing infinite window resizing when placed in iframe
+ if (!this.IsContext)
+ {
+ this.DomElement.style.cssText = this.DomElement.style.cssText;
+ }
+}
+
+RadMenu.prototype.MouseOutHandler = function(e)
+{
+ var sourceElement = RadControlsNamespace.DomEvent.GetTarget(e);
+ var destinationElement = RadControlsNamespace.DomEvent.GetRelatedTarget(e);
+ if (!destinationElement && !this.IsChildOf(this.DomElement, sourceElement))
+ {
+ //The mouse is out of the window or the current frame - close the menu
+ var instance = this;
+ setTimeout(function(){ instance.Close(); }, this.CollapseDelay);
+ }
+}
+
+RadMenu.prototype.CloseOpenedItems = function(e)
+{
+ var sourceElement = this.EventSource(e);
+
+ if (!this.IsChildOf(this.DomElement, sourceElement))
+ {
+ this.Close();
+
+ this.Clicked = false;
+ }
+}
+
+RadMenu.prototype.DetermineDirection = function ()
+{
+ var el = this.DomElement;
+ while (el.tagName.toLowerCase() != 'html')
+ {
+ if (el.dir)
+ {
+ this.RightToLeft = (el.dir.toLowerCase() == "rtl");
+ return;
+ }
+ el = el.parentNode;
+ }
+
+ this.RightToLeft = false;
+}
+
+RadMenu.prototype.ApplyRTL = function ()
+{
+ if (!this.RightToLeft) return;
+
+ if (this.RenderInProgress())
+ {
+ //When the menu is inside a TABLE call it when the window loads
+ this.AttachDomEvent(window, "load", "ApplyRTL");
+ return;
+ }
+
+ this.FixItemWidthInRTL();
+
+ if (RadControlsNamespace.Browser.IsIE)
+ {
+ this.DomElement.dir = "ltr";
+ }
+ if (!this.IsContext)
+ {
+ this.DomElement.className += " rtl RadMenu_" + this.Skin + "_rtl";
+ }
+ else
+ {
+ this.DomElement.className += " rtlcontext RadMenu_" + this.Skin + "_rtl";
+ }
+}
+
+
+RadMenu.prototype.BuildScrollObject = function (wrapNeeded)
+{
+ var isVertical = RadMenuNamespace.ItemFlow.Vertical == this.Flow;
+ var options = {PerTabScrolling : false, ScrollButtonsPosition : 1, ScrollPosition : 0};
+ this.Scroll = new RadControlsNamespace.Scroll(this.ChildItemList, isVertical, options);
+ this.Scroll.ScrollOnHover = true;
+ this.Scroll.LeaveGapsForArrows = false;
+ this.Scroll.WrapNeeded = wrapNeeded;
+ if (isVertical)
+ {
+ this.Scroll.LeftArrowClass = "topArrow";
+ this.Scroll.LeftArrowClassDisabled = "topArrowDisabled";
+ this.Scroll.RightArrowClass = "bottomArrow";
+ this.Scroll.RightArrowClassDisabled = "bottomArrowDisabled";
+ }
+}
+
+RadMenu.prototype.InitContextMenu = function ()
+{
+ if (this.ChildItemList.parentNode != this.DomElement)
+ {
+ this.ScrollWrap = this.ChildItemList.parentNode;
+
+ this.BuildScrollObject(false);
+ }
+
+
+ this.Ease = new RadControlsNamespace.Ease(
+ this.ScrollWrap || this.ChildItemList,
+ this,
+ 0,
+ 0,
+ null,
+ true
+
+ );
+
+ if (this.Ease.Overlay.Shim)
+ {
+ this.Ease.Overlay.Shim.id = this.DomElement.id + "IframeOverlay";
+ }
+
+ this.Flow = RadMenuNamespace.ItemFlow.Vertical;
+ this.Ease.SetSide("top");
+ if (RadControlsNamespace.Browser.IsOpera)
+ {
+ this.AttachDomEvent(document, "mousedown", "OnContextMenu");
+ }
+ else
+ {
+ this.AttachDomEvent(document, "contextmenu", "OnContextMenu");
+ }
+ this.AttachDomEvent(document, "click", "OnDocumentClick");
+
+ if (!RadMenuNamespace.ContextMenus)
+ {
+ RadMenuNamespace.ContextMenus = {};
+ }
+
+ if (!RadMenuNamespace.ContextElements)
+ {
+ RadMenuNamespace.ContextElements = {};
+ }
+
+ if (this.ContextMenuElementID)
+ {
+ RadMenuNamespace.ContextElements[this.ContextMenuElementID] = true;
+ }
+
+ RadMenuNamespace.ContextMenus[this.ID] = this;
+
+}
+
+RadMenu.prototype.OnContextMenu = function(e)
+{
+ if (RadControlsNamespace.Browser.IsOpera)
+ {
+ if (e.button != 2)
+ {
+ return;
+ }
+ }
+
+ this.ContextElement = document.getElementById(this.ContextMenuElementID);
+
+ if (this.ContextMenuElementID && !this.ContextElement)
+ {
+
+ return;
+ }
+
+ var sourceElement = this.EventSource(e);
+ if (this.ContextElement)
+ {
+ if (sourceElement == this.ContextElement || this.IsChildOf(this.ContextElement, sourceElement))
+ {
+ this.Show(e);
+ RadControlsNamespace.DomEvent.PreventDefault(e);
+ RadControlsNamespace.DomEvent.StopPropagation(e);
+ }
+ }
+ else if (!RadMenuNamespace.ContextElements[sourceElement.id])
+ {
+ this.Show(e);
+ RadControlsNamespace.DomEvent.PreventDefault(e);
+ RadControlsNamespace.DomEvent.StopPropagation(e);
+ }
+}
+
+RadMenu.prototype.IsChildOf = function(parent, child)
+{
+ if (child == parent)
+ {
+ return false;
+ }
+
+ while (child && (child != document.body))
+ {
+ if (child == parent)
+ {
+ return true;
+ }
+ try
+ {
+ child = child.parentNode;
+ }catch (e)
+ {
+ return false;
+ }
+ }
+
+ return false;
+};
+
+RadMenu.prototype.OnDocumentClick = function(e)
+{
+ var sourceElement = this.EventSource(e);
+
+ if (this.IsChildOf(this.DomElement, sourceElement))
+ {
+ if (this.ClickToOpen)
+ {
+ return;
+ }
+
+ if (!this.IsChildOfMenuItem(sourceElement))
+ {
+ return;
+ }
+ }
+
+ this.Hide();
+}
+
+RadMenu.prototype.IsChildOfMenuItem = function (element)
+{
+ var tagName = element.tagName.toLowerCase();
+ var className = element.className;
+
+ if (tagName == "span" && className.indexOf("text") > -1)
+ {
+ return true;
+ }
+
+ if (tagName == "a" && className.indexOf("link") > -1)
+ {
+ return true;
+ }
+
+ if (tagName == "img" && className == "leftImage")
+ {
+ return true;
+ }
+
+ return false;
+}
+
+RadMenu.prototype.Enable = function ()
+{
+ this.Enabled = true;
+ this.DomElement.disabled = "";
+ for (var i = 0; i < this.AllItems.length; i ++)
+ {
+ this.AllItems[i].Enable();
+ }
+}
+
+RadMenu.prototype.Disable = function ()
+{
+ this.Enabled = false;
+ this.DomElement.disabled = "disabled";
+ for (var i = 0; i < this.AllItems.length; i ++)
+ {
+ this.AllItems[i].Disable();
+ }
+}
+
+RadMenu.prototype.Focus = function ()
+{
+ this.DomElement.focus();
+}
+
+RadMenu.prototype.Dispose = function ()
+{
+ if (this.Disposed)
+ {
+ return;
+ }
+
+ this.Disposed = true;
+
+ for (var i = 0; i < this.AllItems.length; i ++)
+ {
+ this.AllItems[i].Dispose();
+ }
+
+ //TODO: Find the parent FORM
+ if (this.Detached && this.DomElement)
+ {
+ if(this.DomElement.parentNode)
+ {
+ this.DomElement.parentNode.removeChild(this.DomElement);
+ }
+ }
+
+ if (this.DomElement)
+ {
+ this.DomElement.RadShow = null;
+ }
+
+ this.DomElement = null;
+ this.ChildItemList = null;
+ this.StateField = null;
+ this.DisposeDomEventHandlers();
+ if (this.IsContext && RadMenuNamespace.ContextMenus)
+ {
+ RadMenuNamespace.ContextMenus[this.ID] = null;
+ }
+}
+
+RadMenu.prototype.CreateMenuItem = function (parent, domElement)
+{
+ var item = new RadMenuItem(domElement);
+ this.AddItemToParent(parent, item);
+ return item;
+};
+
+RadMenu.prototype.AddItemToParent = function(parent, item)
+{
+ item.Index = parent.Items.length;
+ parent.Items[parent.Items.length] = item;
+
+ item.GlobalIndex = this.AllItems.length;
+ this.AllItems[this.AllItems.length] = item;
+
+ item.Parent = parent;
+ item.Menu = this;
+}
+
+RadMenu.prototype.CreateControlHierarchy = function (parent, level)
+{
+ parent.Level = level;
+ var element = parent.ChildItemList;
+ if (!element)
+ {
+ return;
+ }
+
+ for (var i = 0; i < element.childNodes.length; i ++)
+ {
+ var domNode = element.childNodes[i];
+ if (domNode.nodeType == 3) continue;
+ var item = this.CreateMenuItem(parent, domNode);
+ item.Initialize();
+ if (level == 0)
+ {
+ item.PostInitialize();
+ }
+ this.CreateControlHierarchy(item, level + 1);
+ }
+};
+
+RadMenu.prototype.FixItemWidthInRTL = function ()
+{
+ var maxWidth = 0;
+ var maxItemWidth = 0;
+ var ul = this.ChildItemList;
+
+ for (var i = 0; i < ul.childNodes.length; i ++)
+ {
+ var li = ul.childNodes[i];
+
+ if (li.nodeType == 3)
+ continue;
+
+ var element = RadMenu.GetFirstChildByTagName(li, "a");
+
+ // Skip separators
+ if (!element)
+ {
+ continue;
+ }
+ if (this.RightToLeft)
+ {
+ var image = element.getElementsByTagName("img")[0];
+ if (image)
+ {
+ image.style.styleFloat = "left";
+ }
+ }
+
+ maxWidth = Math.max(RadControlsNamespace.Box.GetOuterWidth(element), maxWidth);
+
+ if (this.RightToLeft)
+ {
+ var image = element.getElementsByTagName("img")[0];
+ if (image)
+ {
+ image.style.styleFloat = "right";
+ }
+ }
+ }
+
+ for (var i = 0; i < ul.childNodes.length; i ++)
+ {
+ var li = ul.childNodes[i];
+
+ if (li.nodeType == 3) continue;
+
+ if (RadControlsNamespace.Browser.IsOpera)
+ {
+ li.style.cssFloat = "none";
+ }
+
+ var a = RadMenu.GetFirstChildByTagName(li, "a");
+ //Skip separators
+ if (!a) continue;
+
+ var imageOnly = !RadMenu.GetFirstChildByTagName(a, "span").firstChild;
+
+ if (!RadControlsNamespace.Browser.IsIE || !imageOnly)
+ {
+ RadControlsNamespace.Box.SetOuterWidth(a, RadControlsNamespace.Box.GetOuterWidth(a));
+ }
+ }
+
+ if (RadControlsNamespace.Browser.IsSafari)
+ {
+ ul.style.width = RadMenu.GetFirstChildByTagName(ul, "li").offsetWidth + "px";
+ }
+};
+
+
+RadMenu.prototype.FixItemWidth = function (item)
+{
+
+ var maxWidth = 0;
+ var ul = item.ChildItemList;
+ var widestItem = null;
+
+ for (var i = 0; i < ul.childNodes.length; i ++)
+ {
+ var li = ul.childNodes[i];
+
+ if (li.nodeType == 3)
+ continue;
+
+ var element = RadMenu.GetFirstChildByTagName(li, "a");
+
+
+ if (!element)
+ {
+ element = RadMenu.GetFirstChildByTagName(li, "div");
+ if (!element)
+ {
+ //Separator
+ continue;
+ }
+ }
+ if (this.RightToLeft)
+ {
+ var image = element.getElementsByTagName("img")[0];
+ if (image)
+ {
+ image.style.styleFloat = "left";
+ image.style.cssFloat = "left";
+ }
+ }
+ var width = RadControlsNamespace.Box.GetOuterWidth(element);
+
+ if (isNaN(width))
+ {
+ continue;
+ }
+
+ if (width > maxWidth)
+ {
+ maxWidth = width;
+ widestItem = li;
+ }
+
+ if (this.RightToLeft)
+ {
+ var image = element.getElementsByTagName("img")[0];
+ if (image)
+ {
+ image.style.styleFloat = "right";
+ image.style.cssFloat = "right";
+ }
+ }
+ }
+
+ var calculatedMaxWidth = 0;
+
+ for (var i = 0; i < ul.childNodes.length; i ++)
+ {
+ var li = ul.childNodes[i];
+
+ if (li.nodeType == 3) continue;
+
+ if (RadControlsNamespace.Browser.IsOpera)
+ {
+ li.style.cssFloat = "none";
+ }
+
+ var a = RadMenu.GetFirstChildByTagName(li, "a");
+
+ if (a)
+ {
+ var imageOnly = !RadMenu.GetFirstChildByTagName(a, "span").firstChild;
+
+ if (!RadControlsNamespace.Browser.IsIE || !imageOnly)
+ {
+ if (a.style.display != "none")
+ {
+ if (calculatedMaxWidth > 0)
+ {
+ a.style.width = calculatedMaxWidth + "px";
+ }
+ else
+ {
+ calculatedMaxWidth = RadControlsNamespace.Box.SetOuterWidth(a, maxWidth);
+ }
+ }
+ }
+ }
+ else
+ {
+ li.style.width = maxWidth + "px";
+ }
+ }
+
+ if (RadControlsNamespace.Browser.IsSafari)
+ {
+ if (widestItem)
+ {
+ ul.style.width = widestItem.offsetWidth + "px";
+ }
+ }
+};
+
+RadMenu.prototype.FixRootItemWidth = function()
+{
+ var instance = this;
+ var fixItemWidthClosure = function()
+ {
+ instance.FixItemWidth(instance);
+ }
+
+ if (this.RenderInProgress() || RadControlsNamespace.Browser.IsOpera || RadControlsNamespace.Browser.IsSafari)
+ {
+ if (window.addEventListener)
+ {
+ window.addEventListener('load', fixItemWidthClosure, false);
+ }
+ else
+ {
+ window.attachEvent('onload', fixItemWidthClosure);
+ }
+ }
+ else
+ {
+ fixItemWidthClosure();
+ }
+}
+
+RadMenu.prototype.FixListWidth = function (item)
+{
+ if (this.RightToLeft)
+ {
+ this.FixItemWidth(item);
+ }
+
+ var totalWidth = 0;
+ var ul = item.ChildItemList;
+ for (var i = 0; i < ul.childNodes.length; i ++)
+ {
+ var node = ul.childNodes[i];
+ if (node.nodeType == 3) continue;
+ totalWidth += node.offsetWidth;
+ // Additional
+ node.style.clear = "none";
+ }
+ ul.style.width = totalWidth + "px";
+};
+
+
+RadMenu.prototype.LoadConfiguration = function (configObject)
+{
+ for (var property in configObject)
+ {
+ this[property] = configObject[property];
+ }
+
+ if (!this.DefaultGroupSettings)
+ {
+ this.DefaultGroupSettings = {};
+ }
+
+ if (typeof this.DefaultGroupSettings.Flow == 'undefined')
+ {
+ this.DefaultGroupSettings.Flow = RadMenuNamespace.ItemFlow.Vertical;
+ }
+
+ if (typeof this.DefaultGroupSettings.ExpandDirection == 'undefined')
+ {
+ this.DefaultGroupSettings.ExpandDirection = RadMenuNamespace.ExpandDirection.Auto;
+ }
+
+ if (typeof this.DefaultGroupSettings.OffsetX == 'undefined')
+ {
+ this.DefaultGroupSettings.OffsetX = 0;
+ }
+
+ if (typeof this.DefaultGroupSettings.OffsetY == 'undefined')
+ {
+ this.DefaultGroupSettings.OffsetY = 0;
+ }
+
+};
+
+RadMenu.prototype.Close = function (configObject)
+{
+ if (this.OpenedItem)
+ {
+ this.OpenedItem.Close();
+ }
+};
+
+RadMenu.prototype.FindItemByText = function(text)
+{
+ for (var i = 0; i < this.AllItems.length; i++)
+ {
+ if (this.AllItems[i].Text == text)
+ {
+ return this.AllItems[i];
+ }
+ }
+
+ return null;
+};
+
+RadMenu.prototype.FindItemById = function(id)
+{
+ for (var i = 0; i < this.AllItems.length; i++)
+ {
+ if (this.AllItems[i].ID == id)
+ {
+ return this.AllItems[i];
+ }
+ }
+ return null;
+};
+
+RadMenu.prototype.FindItemByValue = function(value)
+{
+ for (var i = 0; i < this.AllItems.length; i++)
+ {
+ if (this.AllItems[i].Value == value)
+ {
+ return this.AllItems[i];
+ }
+ }
+ return null;
+};
+
+RadMenu.prototype.FindItemByUrl = function(url)
+{
+ for (var i = 0; i < this.AllItems.length; i++)
+ {
+ if (this.AllItems[i].NavigateUrl == url)
+ {
+ return this.AllItems[i];
+ }
+ }
+ return null;
+};
+
+RadMenu.prototype.SetContextElementID = function (id)
+{
+ if (!RadMenuNamespace.ContextElements)
+ {
+ RadMenuNamespace.ContextElements = {};
+ }
+
+ if (this.ContextMenuElementID)
+ {
+ RadMenuNamespace.ContextElements[this.ContextMenuElementID] = false;
+ }
+
+ this.ContextMenuElementID = id;
+ RadMenuNamespace.ContextElements[this.ContextMenuElementID] = false;
+}
+
+RadMenu.prototype.RecordState = function ()
+{
+ if (this.InUpdate || !this.Initialized)
+ {
+ return;
+ }
+
+
+ var state = RadControlsNamespace.JSON.stringify(this, this.InitialState, RadMenu.JSONIncludeDeep);
+ var itemState = []
+ for (var i in this.ItemState)
+ {
+ if (this.ItemState[i] == "") continue;
+ if (typeof this.ItemState[i] == "function") continue;
+ itemState[itemState.length] = this.ItemState[i];
+ }
+ this.StateField.value = "{\"State\":" + state + ",\"ItemState\":{" + itemState.join(",") + "}}";
+}
+
+RadMenu.prototype.PersistClientSideItems = function ()
+{
+ for (var i = 0; i < this.AllItems.length; i++)
+ {
+ var item = this.AllItems[i];
+
+ if (item.ClientSide)
+ {
+ item.RecordState(true);
+ }
+ }
+}
+
+RadMenu.prototype.SetAttribute = function (name, value)
+{
+ this.Attributes[name] = value;
+ this.RecordState();
+}
+
+RadMenu.prototype.GetAttribute = function (name)
+{
+ return this.Attributes[name];
+}
+
+RadMenu.CreateChildItemContainer = function(parentItem)
+{
+ var animationContainer = document.createElement("div");
+ animationContainer.className = "slide";
+ parentItem.DomElement.appendChild(animationContainer);
+
+ var groupContainer = document.createElement("ul");
+
+ if (parentItem.Flow == RadMenuNamespace.ItemFlow.Horizontal)
+ {
+ groupContainer.className = "horizontal group level" + parentItem.Level;
+ }else
+ {
+ groupContainer.className = "vertical group level" + parentItem.Level;
+ }
+ animationContainer.appendChild(groupContainer);
+}
+
+RadMenu.prototype.AddItem = function(item)
+{
+ var domElement = document.createElement("li");
+ domElement.className = "item last";
+
+ var linkElement = document.createElement("a");
+
+ linkElement.className = "link";
+
+ var textElement = document.createElement("span");
+ textElement.className = "text";
+
+ linkElement.appendChild(textElement);
+
+ domElement.appendChild(linkElement);
+
+ item.SetDomElement(domElement);
+
+ var menu = this.Menu || this;
+
+ if (menu != this && this.Items.length == 0)
+ {
+ RadMenu.CreateChildItemContainer(this);
+ this.InitializeDomElements();
+ this.InitializeAnimation();
+ }
+
+ this.ChildItemList.appendChild(domElement);
+
+ menu.AddItemToParent(this, item);
+ item.Level = this.Level + 1;
+ var text = item.Text;
+ item.Text = "";
+ item.ID = this.ID + "_m" + (this.Items.length - 1);
+ item.Initialize();
+ item.SetText(text);
+
+
+ if (this.Menu)
+ {
+ item.ParentClientID = this.ID;
+ }
+
+ linkElement.href = "#";
+
+ if (this.Items.length > 1)
+ {
+ var previousDomElement = this.Items[this.Items.length - 2].DomElement;
+ previousDomElement.className = previousDomElement.className.replace(" last", "");
+ }
+}
+
+//BEGIN_ATLAS_NOTIFY
+if (typeof(Sys) != "undefined")
+{
+ if (Sys.Application != null && Sys.Application.notifyScriptLoaded != null)
+ {
+ Sys.Application.notifyScriptLoaded();
+ }
+}
+//END_ATLAS_NOTIFY
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/RadMenuItem.js b/schemas/OMNA Schema-based Namespace Registry_fichiers/RadMenuItem.js
new file mode 100644
index 0000000..6382d11
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/RadMenuItem.js
@@ -0,0 +1,1479 @@
+function RadMenuItem(domElement)
+{
+ if (domElement)
+ {
+ this.SetDomElement(domElement);
+ }
+ else
+ {
+ this.ClientSide = true;
+ }
+
+ this.IsSeparator = false;
+ this.AnimationContainer = null;
+ this.OpenedItem = null;
+ this.FocusedItem = null;
+ this.Items = [];
+ this.Attributes = {};
+ this.Index = -1;
+ this.Level = -1;
+ this.Parent = null;
+ this.Menu = null;
+ this.GroupSettings = {};
+ this.TimeoutPointer = null;
+ this.Templated = false;
+ this.NavigateAfterClick = true;
+
+ // css classes, load from the server
+ this.FocusedCssClass = "focused";
+ this.ClickedCssClass = "clicked";
+ this.ExpandedCssClass = "expanded";
+ this.DisabledCssClass = "disabled";
+ this.CssClass = "";
+
+ // state flags
+ this.State = RadMenuItemState.Closed;
+ this.Focused = false;
+ this.Clicked = false;
+ this.Enabled = true;
+
+ this.Initialized = false;
+}
+
+RadMenuItem.prototype.SetDomElement = function(domElement)
+{
+ this.DomElement = domElement;
+
+ this.LinkElement = RadMenu.GetFirstChildByTagName(this.DomElement, "a");
+
+ if (this.LinkElement == null)
+ {
+
+ this.ID = this.DomElement.id;
+ this.TextElement = RadMenu.GetFirstChildByTagName(this.DomElement, "span");
+ this.NavigateUrl = "";
+ }
+ else
+ {
+ this.ID = this.LinkElement.id;
+ this.TextElement = RadMenu.GetFirstChildByTagName(this.LinkElement, "span");
+ this.NavigateUrl = this.LinkElement.href;
+ }
+}
+RadMenuItem.prototype.PostInitializeItems = function ()
+{
+ for (var i = 0; i < this.Items.length; i ++)
+ {
+ this.Items[i].PostInitialize();
+ }
+}
+
+RadMenuItem.prototype.SetText = function (text)
+{
+ this.PostInitialize();
+ this.TextElement.innerHTML = text;
+ this.Text = text;
+ this.RecordState();
+}
+
+RadMenuItem.prototype.SetNavigateUrl = function (url)
+{
+ this.PostInitialize();
+ this.LinkElement.setAttribute("href", url);
+ this.NavigateUrl = url;
+ this.RecordState();
+}
+
+RadMenuItem.prototype.SetValue = function (value)
+{
+ this.PostInitialize();
+ this.Value = value;
+ this.RecordState();
+}
+
+RadMenuItem.prototype.InitializeDomElements = function()
+{
+ if (!this.Templated)
+ {
+ this.AnimationContainer = RadMenu.GetFirstChildByTagName(this.DomElement, "div");
+ this.ImageElement = RadMenu.GetFirstChildByTagName(this.LinkElement || this.DomElement, "img");
+ if (this.ImageElement)
+ {
+ this.ImageUrl = this.ImageElement.src;
+ }
+ }
+ else
+ {
+ this.TextElement = RadMenu.GetFirstChildByTagName(this.DomElement, "div");
+ this.AnimationContainer = this.TextElement.nextSibling;
+ }
+
+ if (this.AnimationContainer)
+ {
+ var ul = this.AnimationContainer.getElementsByTagName("ul")[0];
+
+ this.ChildItemList = ul;
+
+ if (this.ChildItemList.parentNode != this.AnimationContainer)
+ {
+ this.ScrollWrap = this.ChildItemList.parentNode;
+ }
+ }
+}
+
+RadMenuItem.prototype.InitializeAnimation = function()
+{
+ this.DetermineExpandDirection();
+
+ if (!this.AnimationContainer)
+ {
+ return;
+ }
+
+ this.Ease = new RadControlsNamespace.Ease(
+ this.ScrollWrap || this.ChildItemList,
+ this.Menu,
+ this.GroupSettings.OffsetX,
+ this.GroupSettings.OffsetY,
+ this,
+ true
+ );
+
+ if (this.Ease.Overlay.Shim && this.LinkElement)
+ {
+ this.Ease.Overlay.Shim.id = this.LinkElement.id + "IframeOverlay";
+ }
+
+ var expandDirection = this.GroupSettings.ExpandDirection;
+ var easeProperty = RadMenuNamespace.ExpandDirectionPropertyName[expandDirection];
+
+ this.Ease.SetSide(easeProperty);
+ this.TextElement.className = "text expand" + this.Ease.GetSide();
+ this.AnimationContainer.style.zIndex = this.GlobalIndex + 10;
+ this.ChildItemList.style.zIndex = this.GlobalIndex + 10;
+ if (this.ScrollWrap)
+ {
+ this.CreateScroll();
+ }
+}
+
+RadMenuItem.prototype.Initialize = function ()
+{
+ RadControlsNamespace.DomEventMixin.Initialize(this);
+
+ this.LoadConfiguration();
+
+ this.InitializeDomElements();
+
+ if (this.TextElement && this.TextElement.firstChild)
+ {
+
+ this.Text = this.TextElement.firstChild.nodeValue;
+ }
+
+ this.OriginalZIndex = Math.max(this.DomElement.style.zIndex, this.Menu.OriginalZIndex);
+
+};
+
+RadMenuItem.prototype.PostInitialize = function ()
+{
+ if (this.Initialized)
+ {
+ return;
+ }
+ this.InitializeAnimation();
+ this.AttachEventHandlers();
+ this.RenderAccessKey();
+ RadMenu.CreateState(this);
+ this.UpdateCssClass();
+ this.Initialized = true;
+}
+
+RadMenuItem.prototype.RenderAccessKey = function ()
+{
+ if (this.IsSeparator || this.Templated)
+ {
+ return;
+ }
+
+ var accessKey = this.LinkElement.accessKey.toLowerCase();
+
+ // If accessKey is not set
+ if (!accessKey)
+ {
+ return;
+ }
+ var text = this.TextElement.firstChild.nodeValue;
+ var indexOfAccessKey = text.toLowerCase().indexOf(accessKey);
+
+ // If accesKey is not found
+ if (indexOfAccessKey == -1)
+ {
+ return;
+ }
+
+ this.TextElement.innerHTML =
+ text.substr(0, indexOfAccessKey) +
+ "<u>" +
+ text.substr(indexOfAccessKey, 1) +
+ "</u>" +
+ text.substr(indexOfAccessKey + 1, text.length);
+}
+
+RadMenuItem.prototype.CreateScroll = function ()
+{
+ this.ScrollWrap.style.zIndex = this.GlobalIndex + 10;
+ this.BuildScrollObject(false);
+
+}
+
+RadMenuItem.prototype.BuildScrollObject = function (wrapNeeded)
+{
+ var isVertical = RadMenuNamespace.ItemFlow.Vertical == this.GroupSettings.Flow;
+ var options = {PerTabScrolling : false, ScrollButtonsPosition : 1, ScrollPosition : 0};
+ this.Scroll = new RadControlsNamespace.Scroll(this.ChildItemList, isVertical, options);
+ this.Scroll.ScrollOnHover = true;
+ this.Scroll.LeaveGapsForArrows = false;
+ this.Scroll.WrapNeeded = wrapNeeded;
+ if (this.GroupSettings.Flow == RadMenuNamespace.ItemFlow.Vertical)
+ {
+ this.Scroll.LeftArrowClass = "topArrow";
+ this.Scroll.LeftArrowClassDisabled = "topArrowDisabled";
+ this.Scroll.RightArrowClass = "bottomArrow";
+ this.Scroll.RightArrowClassDisabled = "bottomArrowDisabled";
+ }
+}
+
+RadMenuItem.prototype.CreateRuntimeScroll = function (height)
+{
+ if (this.Scroll)
+ {
+ this.Scroll.SetHeight(height);
+ return;
+ }
+
+ this.BuildScrollObject(true);
+ this.Scroll.Initialize()
+
+ this.ScrollWrap = this.ChildItemList.parentNode;
+ this.Ease.Element = this.ScrollWrap;
+ this.Ease.Overlay.Element = this.ScrollWrap;
+ this.ScrollWrap.className = "scrollWrap " + this.ChildItemList.className;
+ this.ChildItemList.className = this.ChildItemList.className.replace("group", "");
+ this.Scroll.SetHeight(height);
+}
+
+RadMenuItem.prototype.Dispose = function ()
+{
+ if (!this.Initialized) return;
+ this.DisposeDomEventHandlers();
+ if (this.Ease)
+ {
+ this.Ease.Dispose();
+ }
+ this.DomElement = null;
+ this.LinkElement = null;
+ this.AnimationContainer = null;
+}
+
+RadMenuItem.prototype.Focus = function ()
+{
+ if (!this.CanFocus())
+ {
+ return;
+ }
+
+ this.PostInitializeItems();
+
+ if (this.Parent.OpenedItem && this.Parent.OpenedItem != this)
+ {
+ this.Parent.OpenedItem.Close();
+ }
+
+ if (this.Parent.State != RadMenuItemState.Open && this.Parent.Open)
+ {
+ this.Parent.Open();
+ }
+
+ this.Parent.FocusedItem = this;
+
+ if (!this.Focused && this.LinkElement)
+ {
+ this.LinkElement.focus();
+ }
+
+ this.UpdateCssClass();
+
+ this.RaiseEvent("OnClientItemFocus");
+}
+
+RadMenuItem.prototype.Hide = function()
+{
+ if (this.LinkElement)
+ {
+ this.LinkElement.style.display = "none";
+ }
+ else
+ {
+ this.TextElement.style.display = "none";
+ }
+
+ if (this.Parent.Flow == RadMenuNamespace.ItemFlow.Vertical)
+ {
+ var siblings = this.Parent.Items;
+ for (var i = 0; i < siblings.length; i++)
+ {
+ if (siblings[i] != this)
+ {
+ if (siblings[i].LinkElement)
+ {
+ siblings[i].LinkElement.style.width = "auto";
+ }
+ }
+ }
+ if (RadControlsNamespace.Browser.IsSafari)
+ {
+ this.Parent.ChildItemList.style.width = "auto";
+ }
+
+ this.Menu.WidthFixed = false;
+
+ if (this.Parent.DomElement.offsetWidth > 0)
+ {
+ this.Menu.FixItemWidth(this.Parent);
+ }
+ }
+}
+
+RadMenuItem.prototype.IsVisible = function()
+{
+ if (!this.LinkElement)
+ {
+ return this.TextElement.style.display != "none";
+ }
+
+ return this.LinkElement.style.display != "none";
+}
+
+RadMenuItem.prototype.Show = function()
+{
+ if (this.LinkElement)
+ {
+ this.LinkElement.style.display = "";
+ }
+ else
+ {
+ this.TextElement.style.display = "";
+ }
+
+ if (this.Parent.Flow == RadMenuNamespace.ItemFlow.Vertical)
+ {
+ this.Menu.WidthFixed = false;
+
+ if (this.Parent.DomElement.offsetWidth > 0)
+ {
+ this.Menu.FixItemWidth(this.Parent);
+ }
+ }
+}
+
+
+RadMenuItem.prototype.Blur = function ()
+{
+ if (this.IsSeparator)
+ {
+ return;
+ }
+
+ if (this.Focused)
+ {
+ this.LinkElement.blur();
+ }
+
+ this.Parent.FocusedItem = null;
+ this.UpdateCssClass();
+ this.RaiseEvent("OnClientItemBlur");
+}
+
+
+RadMenuItem.prototype.GetEaseSide = function ()
+{
+ var expandDirection = this.GroupSettings.ExpandDirection;
+ return RadMenuNamespace.ExpandDirectionPropertyName[expandDirection];
+}
+
+RadMenuItem.prototype.RaiseEvent = function(eventName)
+{
+ return this.Menu.RaiseEvent(eventName, {Item:this});
+}
+
+RadMenuItem.prototype.UpdateCssClass = function ()
+{
+ if (this.IsSeparator || this.Templated)
+ {
+ return;
+ }
+
+ var cssClass = "link " + this.CssClass;
+
+ if (this.Focused)
+ {
+ cssClass = cssClass + " " + this.FocusedCssClass;
+ }
+
+ if (this.State == RadMenuItemState.Open)
+ {
+ cssClass = cssClass + " " + this.ExpandedCssClass;
+ }
+
+ if (this.Clicked)
+ {
+ cssClass = cssClass + " " + this.ClickedCssClass;
+ }
+
+ if (!this.Enabled)
+ {
+ cssClass = cssClass + " " + this.DisabledCssClass;
+ }
+
+ this.LinkElement.className = cssClass;
+ this.UpdateImageUrl();
+}
+
+RadMenuItem.prototype.UpdateImageUrl = function ()
+{
+ if (!this.ImageElement) return;
+
+ var newUrl = this.ImageUrl;
+
+ if (this.Hovered && this.ImageOverUrl)
+ {
+ newUrl = this.ImageOverUrl;
+ }
+
+ if (this.State == RadMenuItemState.Open && this.ExpandedImageUrl)
+ {
+ newUrl = this.ExpandedImageUrl;
+ }
+
+ if (!this.Enabled && this.DisabledImageUrl)
+ {
+ newUrl = this.DisabledImageUrl;
+ }
+
+ if (this.Clicked && this.ImageClickedUrl)
+ {
+ newUrl = this.ImageClickedUrl;
+ }
+
+
+ newUrl = newUrl.replace(/&amp;/ig, "&");
+
+ if (newUrl != this.ImageElement.src)
+ {
+ this.ImageElement.src = newUrl;
+ }
+}
+
+
+RadMenuItem.prototype.Enable = function ()
+{
+ if (this.IsSeparator || this.Templated)
+ {
+ return;
+ }
+
+ this.LinkElement.disabled = "";
+
+ if (this.ImageElement)
+ {
+ this.ImageElement.disabled = "";
+ }
+
+ this.Enabled = true;
+ this.EnableDomEventHandling();
+ this.UpdateCssClass();
+}
+
+RadMenuItem.prototype.Disable = function ()
+{
+ if (this.IsSeparator || this.Templated)
+ {
+ return;
+ }
+
+ this.LinkElement.disabled = "disabled";
+
+ if (this.ImageElement)
+ {
+ this.ImageElement.disabled = "disabled";
+ }
+
+ this.Enabled = false;
+ this.DisableDomEventHandling();
+ this.UpdateCssClass();
+}
+
+
+
+RadMenuItem.prototype.OnCollapseComplete = function()
+{
+ this.RaiseEvent("OnClientItemClose");
+}
+
+RadMenuItem.prototype.HideChildren = function ()
+{
+ for (var i = 0; i < this.Items.length; i++)
+ {
+ if (this.Items[i].AnimationContainer)
+ {
+ this.Items[i].AnimationContainer.style.display = "none";
+ }
+ }
+}
+
+RadMenuItem.prototype.CalculateScrollWrapSize = function ()
+{
+ if (!this.ScrollWrap)
+ {
+ return;
+ }
+ if (!this.ScrollWrap.style.height)
+ {
+ this.ScrollWrap.style.height = this.ChildItemList.offsetHeight + "px";
+ }
+
+ var isVertical = RadMenuNamespace.ItemFlow.Vertical == this.Flow;
+ if (isVertical)
+ {
+ this.ScrollWrap.style.width = this.ChildItemList.offsetWidth + "px";
+ }
+};
+
+RadMenuItem.prototype.OnEase = function(newValue)
+{
+ var isVertical = RadMenuNamespace.ItemFlow.Vertical == this.Flow;
+
+ if (!isVertical) return;
+
+ if (this.ChildrenDetached && this.Scroll)
+ {
+ //Hack for IE6 - arrows disappear after scrolling
+ this.Scroll.RightArrow.style.cssText = this.Scroll.RightArrow.style.cssText;
+ this.Scroll.LeftArrow.style.cssText = this.Scroll.LeftArrow.style.cssText;
+ }
+}
+
+/**
+ * Event handlers
+ */
+
+RadMenuItem.prototype.AttachEventHandlers = function ()
+{
+ this.AttachDomEvent(this.DomElement, "mouseover", "MouseOverHandler");
+ this.AttachDomEvent(this.DomElement, "mouseout", "MouseOutHandler");
+
+ if (this.IsSeparator || this.Templated)
+ {
+ return;
+ }
+
+ this.AttachDomEvent(this.LinkElement, "click", "ClickHandler", true);
+
+ this.AttachDomEvent(this.LinkElement, "mouseout", "HRefMouseOutHandler");
+ this.AttachDomEvent(this.LinkElement, "mouseover", "HRefMouseOverHandler");
+
+ this.AttachDomEvent(this.LinkElement, "mousedown", "MouseDownHandler");
+ this.AttachDomEvent(this.LinkElement, "mouseup", "MouseUpHandler");
+
+ this.AttachDomEvent(this.LinkElement, "blur", "BlurHandler");
+ this.AttachDomEvent(this.LinkElement, "focus", "FocusHandler");
+
+ this.AttachDomEvent(this.LinkElement, "keydown", "KeyDownHandler");
+};
+
+RadMenuItem.prototype.MouseDownHandler = function (e)
+{
+ this.Clicked = true;
+ this.UpdateCssClass();
+}
+
+RadMenuItem.prototype.MouseUpHandler = function (e)
+{
+ this.Clicked = false;
+ this.UpdateCssClass();
+}
+
+RadMenuItem.prototype.HRefMouseOutHandler = function (e)
+{
+ var to = RadControlsNamespace.DomEvent.GetRelatedTarget(e);
+
+ if (this.Menu.IsChildOf(this.LinkElement, to) || to == this.LinkElement)
+ {
+ return;
+ }
+ this.Hovered = false;
+
+ this.UpdateImageUrl();
+
+ this.RaiseEvent("OnClientMouseOut");
+}
+
+RadMenuItem.prototype.HRefMouseOverHandler = function (e)
+{
+ var from = RadControlsNamespace.DomEvent.GetRelatedTarget(e);
+ if (this.Menu.IsChildOf(this.LinkElement, from) || this.LinkElement == from)
+ {
+ return;
+ }
+
+ this.Hovered = true;
+
+ this.UpdateImageUrl();
+
+ this.RaiseEvent("OnClientMouseOver");
+}
+
+RadMenuItem.prototype.KeyDownHandler = function (e)
+{
+ var arrows = {left : 37, up : 38, right : 39, down : 40, esc : 27 };
+
+ var keyCode = RadControlsNamespace.DomEvent.GetKeyCode(e);
+
+ if (keyCode == arrows.right)
+ {
+ if (this.Menu.RightToLeft)
+ {
+ this.HandleLeftArrow();
+ }
+ else
+ {
+ this.HandleRightArrow();
+ }
+ }
+ else if (keyCode == arrows.left)
+ {
+ if (this.Menu.RightToLeft)
+ {
+ this.HandleRightArrow();
+ }
+ else
+ {
+ this.HandleLeftArrow();
+ }
+ }
+ else if (keyCode == arrows.up)
+ {
+ this.HandleUpArrow();
+ }
+ else if (keyCode == arrows.down)
+ {
+ this.HandleDownArrow();
+ }
+
+ else if (keyCode == arrows.esc)
+ {
+ if (this.Parent == this.Menu)
+ {
+ this.Blur();
+ }
+ else
+ {
+ this.Parent.Close();
+ this.Parent.Focus();
+ }
+ }
+ else
+ {
+ return;
+ }
+
+ RadControlsNamespace.DomEvent.PreventDefault(e);
+
+}
+
+
+RadMenuItem.prototype.FocusHandler = function (e)
+{
+ this.Focused = true;
+ this.Focus();
+}
+
+RadMenuItem.prototype.BlurHandler = function (e)
+{
+ this.Focused = false;
+ //Korchev: Causes problem when second level item is clicked - the item cannot be open after that
+ //this.Menu.Clicked = false;
+
+ this.Blur();
+}
+
+RadMenuItem.prototype.NavigatesToURL = function ()
+{
+ if (location.href + "#" == this.NavigateUrl || location.href == this.NavigateUrl)
+ {
+ return false;
+ }
+ return (new RegExp("//")).test(this.LinkElement.href);
+}
+
+RadMenuItem.prototype.Validate = function ()
+{
+ if (!this.Menu.CausesValidation || this.NavigatesToURL())
+ {
+ return true;
+ }
+
+ if (typeof (Page_ClientValidate) != 'function')
+ {
+ return true;
+ }
+
+ return Page_ClientValidate(this.Menu.ValidationGroup);
+}
+
+
+RadMenuItem.prototype.ClickHandler = function (e)
+{
+ if (!this.Enabled)
+ {
+ return RadControlsNamespace.DomEvent.PreventDefault(e);
+ }
+ if (!this.RaiseEvent("OnClientItemClicking"))
+ {
+ return RadControlsNamespace.DomEvent.PreventDefault(e);
+ }
+ if (!this.Validate())
+ {
+ return RadControlsNamespace.DomEvent.PreventDefault(e);
+ }
+
+ var returnValue = true;
+
+ if (!this.Menu.ClickToOpen)
+ {
+ returnValue = true;
+ }
+ else if (this.Level > 1) // only first level items toggle this
+ {
+ returnValue = true;
+ }
+ else
+ {
+ if (!this.Menu.Clicked)
+ {
+ this.Open();
+ }
+ else
+ {
+ this.Close();
+ }
+
+ this.Menu.Clicked = !this.Menu.Clicked;
+ }
+
+ this.RaiseEvent("OnClientItemClicked");
+
+ if (!this.NavigateAfterClick || !returnValue)
+ {
+ RadControlsNamespace.DomEvent.PreventDefault(e);
+ }
+}
+
+RadMenuItem.prototype.PreventClose = function()
+{
+ if (this.State == RadMenuItemState.AboutToClose)
+ {
+ this.ClearTimeout();
+ this.State = RadMenuItemState.Open;
+ this.Parent.OpenedItem = this;
+ }
+ if (this.Parent.PreventClose)
+ {
+ this.Parent.PreventClose();
+ }
+}
+
+RadMenuItem.prototype.Open = function ()
+{
+ this.PostInitializeItems();
+
+ this.Menu.AboutToCollapse = false;
+
+ if (this.Parent != this.Menu && this.Parent.State != RadMenuItemState.Open)
+ {
+ this.Parent.Open();
+ }
+
+ if (!this.AnimationContainer) return;
+
+ this.Parent.OpenedItem = this;
+
+ this.State = RadMenuItemState.Open;
+
+ var documentSize = RadControlsNamespace.Screen.GetViewPortSize();
+
+ this.ChildItemList.style.display = "block";
+
+ this.Ease.ShowElements();
+
+ if (this.GroupSettings.Flow == RadMenuNamespace.ItemFlow.Vertical)
+ {
+ this.Menu.FixItemWidth(this);
+ }
+ else
+ {
+ this.Menu.FixListWidth(this);
+ }
+
+ if (this.Menu.EnableAutoScroll && this.ChildItemList.offsetHeight > documentSize.height)
+ {
+ if (!this.ScrollWrap || this.ScrollWrap.offsetHeight > documentSize.height)
+ {
+ this.CreateRuntimeScroll(documentSize.height + "px");
+ this.Ease.ShowElements();
+ this.Ease.UpdateContainerSize();
+ }
+ }
+
+ this.Ease.SetSide(this.GetEaseSide());
+ this.Ease.UpdateContainerSize();
+
+ if (this.Scroll)
+ {
+ this.CalculateScrollWrapSize();
+ this.Scroll.Initialize();
+ }
+
+
+ this.PositionChildContainer(documentSize);
+
+
+ this.Ease.In();
+
+ this.UpdateCssClass();
+
+ this.DomElement.style.zIndex = this.OriginalZIndex + 1000;
+
+ if (!RadControlsNamespace.Browser.IsNetscape)
+ {
+ this.Menu.DomElement.style.zIndex = this.Menu.OriginalZIndex + 1000;
+ }
+
+ this.RaiseEvent("OnClientItemOpen");
+};
+
+RadMenuItem.prototype.MouseOverHandler = function (e)
+{
+ this.PreventClose();
+
+ if (this.Menu.ClickToOpen && !this.Menu.Clicked)
+ {
+ return;
+ }
+
+ if (this.State == RadMenuItemState.Open || this.State == RadMenuItemState.AboutToOpen)
+ {
+ return;
+ }
+
+ if (this.Parent.OpenedItem != this && this.Parent.OpenedItem)
+ {
+ var openedItem = this.Parent.OpenedItem;
+ if (openedItem.TimeoutPointer)
+ {
+ openedItem.ClearTimeout();
+ }
+ openedItem.State = RadMenuItemState.AboutToClose;
+ openedItem.SetTimeout(function() {
+ openedItem.Close();
+ openedItem.TimeoutPointer = null;
+ }, this.Menu.ExpandDelay);
+ }
+
+ if (this.Items.length < 1)
+ return;
+
+ this.Menu.LastOpenedItem = this;
+ this.State = RadMenuItemState.AboutToOpen;
+
+ var instance = this;
+ this.SetTimeout(function () {
+ instance.Open();
+ instance.TimeoutPointer = null;
+ }, this.Menu.ExpandDelay);
+}
+
+RadMenuItem.prototype.Close = function ()
+{
+ if (this.IsSeparator)
+ {
+ return;
+ }
+
+ if (this.State == RadMenuItemState.Closed)
+ {
+ return;
+ }
+
+ if (this.OpenedItem)
+ {
+ this.OpenedItem.Close();
+ }
+
+ this.Parent.OpenedItem = null;
+
+ if (!this.AnimationContainer) return;
+
+ this.State = RadMenuItemState.Closed;
+
+ if (this.Level == 1)
+ {
+ this.Menu.AboutToCollapse = true;
+ }
+
+ this.Ease.Out();
+
+ this.UpdateCssClass();
+
+ this.DomElement.style.zIndex = this.OriginalZIndex;
+ if (!RadControlsNamespace.Browser.IsNetscape)
+ {
+ if (this.Level == 1)
+ {
+ this.Menu.DomElement.style.zIndex = this.Menu.OriginalZIndex;
+ }
+ }
+ this.HideChildren ();
+}
+
+RadMenuItem.prototype.MouseOutHandler = function (e)
+{
+ var to = RadControlsNamespace.DomEvent.GetRelatedTarget(e);
+
+ if ((!to) || this.Menu.IsChildOf(this.DomElement, to) || to == this.DomElement)
+ {
+ return;
+ }
+
+ if (this.ChildrenDetached)
+ {
+ if (this.Menu.IsChildOf(this.Parent.AnimationContainer, to))
+ {
+ return;
+ }
+ }
+
+ try
+ {
+ //Fix FireFox "_moz_editor_bogus_node" problem.
+ var bogusNode = to.parentNode;
+ }catch (e)
+ {
+ return;
+ }
+
+
+ if (this.State == RadMenuItemState.Closed || this.State == RadMenuItemState.AboutToClose)
+ {
+ return;
+ }
+
+ if (this.State == RadMenuItemState.AboutToOpen)
+ {
+ this.ClearTimeout();
+ this.State = RadMenuItemState.Closed;
+ this.Parent.OpenedItem = null;
+ return;
+ }
+
+ if (this.Menu.ClickToOpen)
+ {
+ return;
+ }
+
+ this.State = RadMenuItemState.AboutToClose;
+ var instance = this;
+ this.SetTimeout(function () {
+ instance.Close();
+ instance.TimeoutPointer = null;
+ }, this.Menu.CollapseDelay);
+}
+
+RadMenuItem.prototype.SetTimeout = function (closure, delay)
+{
+ this.TimeoutPointer = setTimeout(closure, delay);
+}
+
+RadMenuItem.prototype.ClearTimeout = function()
+{
+ if (this.TimeoutPointer)
+ {
+ clearTimeout(this.TimeoutPointer);
+ this.TimeoutPointer = null;
+ }
+}
+
+RadMenuItem.prototype.PositionChildContainer = function (documentSize)
+{
+ var top = 0;
+ var left = 0;
+ var expandDirection = this.GroupSettings.ExpandDirection;
+ var easeProperty = RadMenuNamespace.ExpandDirectionPropertyName[expandDirection];
+
+ var ownerBox = this.DomElement;
+
+ var itemHeight = RadControlsNamespace.Box.GetOuterHeight(ownerBox);
+ var itemWidth = RadControlsNamespace.Box.GetOuterWidth(ownerBox);
+
+ var itemBox = this.AnimationContainer;
+
+ //itemBox.style.border = "1px solid red";
+ var childItemsHeight = RadControlsNamespace.Box.GetOuterHeight(itemBox);
+ var childItemsWidth = RadControlsNamespace.Box.GetOuterWidth(itemBox);
+
+
+
+
+ if (expandDirection == RadMenuNamespace.ExpandDirection.Down)
+ {
+ top = itemHeight;
+ }
+ else if (expandDirection == RadMenuNamespace.ExpandDirection.Right)
+ {
+ left = itemWidth;
+ }
+
+ this.SetContainerPosition(left, top);
+
+ var childItemsPosition = RadControlsNamespace.Screen.GetElementPosition(itemBox);
+
+
+ if (this.Menu.RightToLeft)
+ {
+ left = itemWidth - childItemsWidth;
+ }
+
+
+ if (!this.Menu.EnableScreenBoundaryDetection)
+ {
+ this.Ease.SetSide(easeProperty);
+ this.TextElement.className = "text expand" + this.Ease.GetSide();
+ return;
+ }
+
+ // Screen boundary detection
+
+
+
+ if (
+ RadControlsNamespace.Screen.ElementOverflowsRight(documentSize, itemBox) &&
+ expandDirection == RadMenuNamespace.ExpandDirection.Right
+ )
+ {
+ expandDirection = RadMenuNamespace.ExpandDirection.Left;
+ easeProperty = "right";
+ left = 0;
+ }
+
+ else if (childItemsPosition.x - childItemsWidth < 0 && expandDirection == RadMenuNamespace.ExpandDirection.Left)
+ {
+ expandDirection = RadMenuNamespace.ExpandDirection.Right;
+ easeProperty = "left";
+ left = itemWidth;
+ }
+
+ else if (childItemsPosition.y - childItemsHeight < 0 && expandDirection == RadMenuNamespace.ExpandDirection.Up)
+ {
+ expandDirection = RadMenuNamespace.ExpandDirection.Down;
+ easeProperty = "top";
+ top = itemHeight;
+ }
+
+ else if (
+ RadControlsNamespace.Screen.ElementOverflowsBottom(documentSize, itemBox) &&
+ expandDirection == RadMenuNamespace.ExpandDirection.Down
+ )
+ {
+ //Check if there is enough space to invert the expand direction
+ var itemBox = RadControlsNamespace.Screen.GetElementPosition(this.DomElement);
+ if (itemBox.y > this.AnimationContainer.offsetHeight)
+ {
+ expandDirection = RadMenuNamespace.ExpandDirection.Up;
+ easeProperty = "bottom";
+ top = itemHeight;
+ }
+ }
+
+ // Side offset
+
+ if ( RadControlsNamespace.Screen.ElementOverflowsRight(documentSize, itemBox) &&
+ (expandDirection == RadMenuNamespace.ExpandDirection.Down ||
+ expandDirection == RadMenuNamespace.ExpandDirection.Up)
+ )
+ {
+ if (!this.Menu.RightToLeft)
+ {
+ left = documentSize.width - (childItemsPosition.x + childItemsWidth);
+ }
+ }
+ else if (RadControlsNamespace.Screen.ElementOverflowsBottom(documentSize, itemBox))
+ {
+ if (expandDirection == RadMenuNamespace.ExpandDirection.Left ||
+ expandDirection == RadMenuNamespace.ExpandDirection.Right)
+ {
+ top = documentSize.height - (childItemsPosition.y + childItemsHeight);
+ //alert(top);
+ }
+ }
+
+ this.SetContainerPosition(left, top);
+
+
+ this.Ease.SetSide(easeProperty);
+ this.TextElement.className = "text expand" + this.Ease.GetSide();
+
+};
+
+RadMenuItem.prototype.SetContainerPosition = function(left, top)
+{
+ var y = top + this.GroupSettings.OffsetY;
+ if (this.Parent.ScrollWrap)
+ {
+ if (this.Parent == this.Menu && this.Menu.IsContext)
+ {
+ this.Parent.AnimationContainer = this.Menu.DomElement;
+ }
+
+ if (this.Parent.AnimationContainer)
+ {
+ this.ChildrenDetached = true;
+ this.Parent.AnimationContainer.appendChild(this.AnimationContainer);
+ }
+
+ y += this.DomElement.offsetTop;
+
+ var childListTop = parseInt(this.Parent.ChildItemList.style.top);
+
+ if (isNaN(childListTop))
+ {
+ childListTop = 0;
+ }
+
+ if (this.GroupSettings.OffsetY == 0)
+ {
+ // Compensate for the scroll offset only if there is no group offset Y set.
+ y += childListTop;
+ }
+ }
+
+ this.AnimationContainer.style.top = y + "px";
+ this.AnimationContainer.style.left = (left + this.GroupSettings.OffsetX) + "px";
+}
+
+RadMenuItem.prototype.SetAttribute = function (name, value)
+{
+ this.PostInitialize();
+ this.Attributes[name] = value;
+ this.RecordState();
+}
+
+RadMenuItem.prototype.SetImageUrl = function (src)
+{
+ this.PostInitialize();
+ this.ImageUrl = src;
+ this.ImageElement.src = src;
+ this.RecordState();
+}
+
+RadMenuItem.prototype.SetImageOverUrl = function (src)
+{
+ this.PostInitialize();
+ this.ImageOverUrl = src;
+ this.RecordState();
+}
+
+RadMenuItem.prototype.GetAttribute = function (name)
+{
+ return this.Attributes[name];
+}
+
+RadMenuItem.prototype.DetermineExpandDirection = function ()
+{
+ if (this.GroupSettings.ExpandDirection != RadMenuNamespace.ExpandDirection.Auto)
+ {
+ return;
+ }
+
+ if (this.Parent.Flow == RadMenuNamespace.ItemFlow.Vertical)
+ {
+ if (this.Menu.RightToLeft)
+ {
+ this.GroupSettings.ExpandDirection = RadMenuNamespace.ExpandDirection.Left;
+ }
+ else
+ {
+ this.GroupSettings.ExpandDirection = RadMenuNamespace.ExpandDirection.Right;
+ }
+ }
+ else
+ {
+ this.GroupSettings.ExpandDirection = RadMenuNamespace.ExpandDirection.Down;
+ }
+}
+
+RadMenuItem.prototype.LoadConfiguration = function ()
+{
+ if (this.Menu.ItemData[this.ID])
+ {
+ for (var property in this.Menu.ItemData[this.ID])
+ {
+ this[property] = this.Menu.ItemData[this.ID][property];
+ }
+ }
+
+ var defaultSettings = this.Menu.DefaultGroupSettings;
+
+ // default settings for nested config objects
+ if (typeof this.GroupSettings.Flow == 'undefined')
+ {
+ this.GroupSettings.Flow = defaultSettings.Flow;
+ }
+
+ this.Flow = this.GroupSettings.Flow;
+
+
+
+ if (typeof this.GroupSettings.ExpandDirection == 'undefined')
+ {
+ this.GroupSettings.ExpandDirection = defaultSettings.ExpandDirection;
+ }
+
+ if (typeof this.GroupSettings.OffsetX == 'undefined')
+ {
+ this.GroupSettings.OffsetX = defaultSettings.OffsetX;
+ }
+
+ if (typeof this.GroupSettings.OffsetY == 'undefined')
+ {
+ this.GroupSettings.OffsetY = defaultSettings.OffsetY;
+ }
+
+ if (!this.Enabled)
+ {
+ this.Disable();
+ }
+};
+
+/**
+ * Keyboard handlers
+ */
+
+RadMenuItem.prototype.HandleRightArrow = function ()
+{
+ if (this.Parent.Flow == RadMenuNamespace.ItemFlow.Horizontal)
+ {
+ this.FocusNextItem();
+ }
+ else
+ {
+ if (this.Items.length && this.GroupSettings.ExpandDirection == RadMenuNamespace.ExpandDirection.Right)
+ {
+ this.FocusFirstChild();
+ }
+ else if (this.Parent.GroupSettings &&
+ this.Parent.GroupSettings.ExpandDirection == RadMenuNamespace.ExpandDirection.Left)
+ {
+ this.Parent.Focus();
+ }
+ else
+ {
+ if (this.Menu.OpenedItem)
+ {
+ this.Menu.OpenedItem.GetNextItem().Focus();
+ }
+ }
+ }
+}
+
+RadMenuItem.prototype.HandleLeftArrow = function ()
+{
+ if (this.Parent.Flow == RadMenuNamespace.ItemFlow.Horizontal)
+ {
+ this.FocusPreviousItem();
+ }
+ else
+ {
+ if (this.Items.length && this.GroupSettings.ExpandDirection == RadMenuNamespace.ExpandDirection.Left)
+ {
+ this.FocusFirstChild();
+ }
+ else if (this.Parent.GroupSettings &&
+ this.Parent.GroupSettings.ExpandDirection == RadMenuNamespace.ExpandDirection.Right)
+ {
+ this.Parent.Focus();
+ }
+ else
+ {
+ if (this.Menu.OpenedItem)
+ {
+ this.Menu.OpenedItem.GetPreviousItem().Focus();
+ }
+ }
+ }
+}
+
+RadMenuItem.prototype.HandleUpArrow = function ()
+{
+ if (this.Parent.Flow == RadMenuNamespace.ItemFlow.Vertical)
+ {
+ this.FocusPreviousItem();
+ }
+ else
+ {
+ this.FocusLastChild();
+ }
+}
+
+
+RadMenuItem.prototype.HandleDownArrow = function ()
+{
+ if (this.Parent.Flow == RadMenuNamespace.ItemFlow.Vertical)
+ {
+ this.FocusNextItem();
+ }
+ else
+ {
+ this.FocusFirstChild();
+ }
+}
+
+
+RadMenuItem.prototype.GetNextItem = function ()
+{
+ if (this.Index == this.Parent.Items.length - 1)
+ {
+ return this.Parent.Items[0];
+ }
+
+ return this.Parent.Items[this.Index + 1];
+}
+
+RadMenuItem.prototype.GetPreviousItem = function ()
+{
+ if (this.Index == 0)
+ {
+ return this.Parent.Items[this.Parent.Items.length - 1];
+ }
+
+ return this.Parent.Items[this.Index - 1];
+}
+
+RadMenuItem.prototype.CanFocus = function ()
+{
+ return (!this.IsSeparator) && this.Enabled;
+}
+
+RadMenuItem.prototype.FocusFirstChild = function ()
+{
+ if (!this.Items.length)
+ {
+ return;
+ }
+
+ var item = this.Items[0];
+
+ while (!item.CanFocus())
+ {
+
+ item = item.GetNextItem();
+ if (item == this.Items[0])
+ {
+ return; // no items to focus
+ }
+ }
+
+ item.Focus();
+
+}
+
+
+
+RadMenuItem.prototype.FocusLastChild = function ()
+{
+ if (!this.Items.length)
+ {
+ return;
+ }
+
+ var item = this.Items[this.Items.length - 1];
+
+ while (!item.CanFocus())
+ {
+ item = item.GetPreviousItem();
+ if (this.Items.length - 1)
+ {
+ return; // no items to focus
+ }
+ }
+ item.Focus();
+}
+
+
+
+RadMenuItem.prototype.FocusNextItem = function ()
+{
+ var item = this.GetNextItem();
+
+ while (!item.CanFocus())
+ {
+ item = item.GetNextItem();
+ }
+ item.Focus();
+}
+
+RadMenuItem.prototype.FocusPreviousItem = function ()
+{
+ var item = this.GetPreviousItem();
+
+ while (!item.CanFocus())
+ {
+ item = item.GetPreviousItem();
+ }
+ item.Focus();
+}
+
+RadMenuItem.prototype.RecordState = function (forceSerialize)
+{
+ if (this.ClientSide && !forceSerialize)
+ {
+ return;
+ }
+ var serialized = RadControlsNamespace.JSON.stringify(this, this.InitialState, RadMenu.JSONIncludeDeep);
+ if (serialized == "{}")
+ {
+ this.Menu.ItemState[this.ID] = "";
+ }
+ else
+ {
+ this.Menu.ItemState[this.ID] = "\"" + this.ID + "\":" + serialized;
+ }
+
+ this.Menu.RecordState();
+}
+
+RadMenuItem.prototype.AddItem = function()
+{
+ this.Menu.AddItem.apply(this, arguments);
+ this.Menu.FixItemWidth(this);
+}
+
+//BEGIN_ATLAS_NOTIFY
+if (typeof(Sys) != "undefined")
+{
+ if (Sys.Application != null && Sys.Application.notifyScriptLoaded != null)
+ {
+ Sys.Application.notifyScriptLoaded();
+ }
+}
+//END_ATLAS_NOTIFY \ No newline at end of file
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/RadMenuItemState.js b/schemas/OMNA Schema-based Namespace Registry_fichiers/RadMenuItemState.js
new file mode 100644
index 0000000..b438c86
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/RadMenuItemState.js
@@ -0,0 +1,22 @@
+function RadMenuItemState()
+{
+}
+
+RadMenuItemState =
+{
+ Closed : 0,
+ Open : 1,
+ AboutToClose : 2,
+ AboutToOpen : 3
+}
+
+
+//BEGIN_ATLAS_NOTIFY
+if (typeof(Sys) != "undefined")
+{
+ if (Sys.Application != null && Sys.Application.notifyScriptLoaded != null)
+ {
+ Sys.Application.notifyScriptLoaded();
+ }
+}
+//END_ATLAS_NOTIFY \ No newline at end of file
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/Screen.js b/schemas/OMNA Schema-based Namespace Registry_fichiers/Screen.js
new file mode 100644
index 0000000..e9bf95c
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/Screen.js
@@ -0,0 +1,156 @@
+if (typeof window.RadControlsNamespace == "undefined")
+{
+ window.RadControlsNamespace = {};
+}
+
+if (
+ typeof(window.RadControlsNamespace.Screen) == "undefined" ||
+ typeof(window.RadControlsNamespace.Screen.Version) == null ||
+ window.RadControlsNamespace.Screen.Version < 1.1
+ )
+{
+
+ window.RadControlsNamespace.Screen =
+ {
+
+ Version : 1.1,
+
+ GetViewPortSize : function()
+ {
+ var width = 0;
+ var height = 0;
+
+ var canvas = document.body;
+
+ if (RadControlsNamespace.Browser.StandardsMode && !RadControlsNamespace.Browser.IsSafari)
+ {
+ canvas = document.documentElement;
+ }
+
+ if (RadControlsNamespace.Browser.IsMozilla && document.compatMode != "CSS1Compat")
+ {
+ canvas = document.body;
+ }
+
+ if (window.innerWidth)
+ {
+ width = window.innerWidth;
+ height = window.innerHeight;
+ }
+ else
+ {
+ width = canvas.clientWidth;
+ height = canvas.clientHeight;
+ }
+
+ width += canvas.scrollLeft;
+ height += canvas.scrollTop;
+
+ return { width : width - 6, height : height - 6 };
+ },
+
+ GetElementPosition : function (el)
+ {
+ var parent = null;
+ var pos = {x: 0, y: 0};
+ var box;
+
+ if (el.getBoundingClientRect)
+ {
+ // IE
+ box = el.getBoundingClientRect();
+ var scrollTop = document.documentElement.scrollTop || document.body.scrollTop;
+ var scrollLeft = document.documentElement.scrollLeft || document.body.scrollLeft;
+
+ pos.x = box.left + scrollLeft - 2;
+ pos.y = box.top + scrollTop - 2;
+
+ return pos;
+ }
+ else if (document.getBoxObjectFor)
+ {
+ // gecko
+ try
+ {
+ box = document.getBoxObjectFor(el);
+ pos.x = box.x - 2;
+ pos.y = box.y - 2;
+ }catch(e){}
+ }
+ else
+ {
+ // safari/opera
+ pos.x = el.offsetLeft;
+ pos.y = el.offsetTop;
+ parent = el.offsetParent;
+ if (parent != el)
+ {
+ while (parent)
+ {
+ pos.x += parent.offsetLeft;
+ pos.y += parent.offsetTop;
+ parent = parent.offsetParent;
+ }
+ }
+ }
+
+
+ if (window.opera)
+ {
+ parent = el.offsetParent;
+
+ while (parent && parent.tagName.toLowerCase() != 'body' && parent.tagName.toLowerCase() != 'html')
+ {
+ pos.x -= parent.scrollLeft;
+ pos.y -= parent.scrollTop;
+ parent = parent.offsetParent;
+ }
+ }
+ else
+ {
+ parent = el.parentNode;
+ while (parent && parent.tagName.toLowerCase() != 'body' && parent.tagName.toLowerCase() != 'html')
+ {
+ pos.x -= parent.scrollLeft;
+ pos.y -= parent.scrollTop;
+
+ parent = parent.parentNode;
+ }
+ }
+
+ return pos;
+ },
+
+ ElementOverflowsTop : function (element)
+ {
+ return this.GetElementPosition(element).y < 0;
+ },
+
+ ElementOverflowsLeft : function (element)
+ {
+ return this.GetElementPosition(element).x < 0;
+ },
+
+ ElementOverflowsBottom : function (screenSize, element)
+ {
+ var bottomEdge = this.GetElementPosition(element).y + RadControlsNamespace.Box.GetOuterHeight(element);
+ return bottomEdge > screenSize.height;
+ },
+
+ ElementOverflowsRight : function (screenSize, element)
+ {
+ var rightEdge = this.GetElementPosition(element).x + RadControlsNamespace.Box.GetOuterWidth(element);
+ return rightEdge > screenSize.width;
+ }
+ }
+}
+
+//BEGIN_ATLAS_NOTIFY
+if (typeof(Sys) != "undefined")
+{
+ if (Sys.Application != null && Sys.Application.notifyScriptLoaded != null)
+ {
+ Sys.Application.notifyScriptLoaded();
+ }
+}
+//END_ATLAS_NOTIFY \ No newline at end of file
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/Scroll.js b/schemas/OMNA Schema-based Namespace Registry_fichiers/Scroll.js
new file mode 100644
index 0000000..ce26f3f
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/Scroll.js
@@ -0,0 +1,601 @@
+if (typeof window.RadControlsNamespace == "undefined")
+{
+ window.RadControlsNamespace = {};
+}
+
+RadControlsNamespace.ScrollButtonsPosition = {Left : 0, Middle : 1, Right : 2 };
+
+RadControlsNamespace.Scroll = function (element, vertical, scrollOptionsObject)
+{
+ this.Owner = scrollOptionsObject;
+ this.Element = element;
+ this.IsVertical = vertical;
+ this.ScrollButtonsPosition = scrollOptionsObject.ScrollButtonsPosition;
+ this.ScrollPosition = scrollOptionsObject.ScrollPosition;
+ this.PerTabScrolling = scrollOptionsObject.PerTabScrolling;
+ this.ScrollOnHover = false;
+ this.WrapNeeded = false;
+ this.LeaveGapsForArrows = true;
+
+ this.LeftArrowClass = "leftArrow";
+ this.LeftArrowClassDisabled = "leftArrowDisabled";
+ this.RightArrowClass = "rightArrow";
+ this.RightArrowClassDisabled = "rightArrowDisabled";
+ this.Initialized = false;
+};
+
+
+RadControlsNamespace.Scroll.Create = function (element, vertical, scrollOptionsObject)
+{
+ return new RadControlsNamespace.Scroll(element, vertical, scrollOptionsObject);
+}
+
+
+RadControlsNamespace.Scroll.prototype.Initialize = function ()
+{
+ if (this.Initialized)
+ {
+ this.ApplyOverflow();
+ this.CalculateMinMaxPosition();
+ this.EvaluateArrowStatus();
+ return false;
+ }
+
+ if (
+ (this.Element.offsetWidth == 0 && !this.IsVertical)
+ ||
+ (this.Element.offsetHeight == 0 && this.IsVertical)
+ )
+ {
+ return false;
+ }
+
+ this.Initialized = true;
+
+ this.ScrollAmount = 2;
+ this.Direction = 0;
+
+ if (this.WrapNeeded)
+ {
+ var scrollWrap = this.CreateScrollWrap();
+ }
+ this.ApplyOverflow();
+ this.Element.style.position = "relative";
+ this.AttachArrows();
+
+ this.CalculateMinMaxPosition();
+
+ if (this.PerTabScrolling)
+ {
+ this.CalculateInitialTab();
+ }
+
+
+ this.AttachScrollMethods();
+
+ this.EvaluateArrowStatus();
+
+ this.AttachEventHandlers();
+
+ this.ScrollTo(this.ScrollPosition);
+ this.ApplyOverflow();
+ return scrollWrap;
+};
+
+RadControlsNamespace.Scroll.prototype.ApplyOverflow = function ()
+{
+ if (RadControlsNamespace.Browser.IsIE)
+ {
+ this.Element.parentNode.style.overflow = "visible";
+ if (this.IsVertical)
+ {
+ this.Element.parentNode.style.overflowX = "";
+ this.Element.parentNode.style.overflowY = "hidden";
+ }
+ else
+ {
+ this.Element.parentNode.style.overflowX = "hidden";
+ this.Element.parentNode.style.overflowY = "hidden";
+ }
+ }
+ else
+ {
+ this.Element.parentNode.style.overflow = "hidden";
+ }
+
+ if (!this.ScrollNeeded())
+ {
+ this.Element.parentNode.style.overflow = "visible";
+ this.Element.parentNode.style.overflowX = "visible";
+ this.Element.parentNode.style.overflowY = "visible";
+ }
+
+}
+
+RadControlsNamespace.Scroll.prototype.ResizeHandler = function ()
+{
+ if (this.Disposed)
+ {
+ return;
+ }
+ if (!this.Initialized)
+ {
+ this.Initialize();
+ }
+
+ if (!this.Initialized)
+ {
+ return;
+ }
+
+ if (!this.Element.offsetHeight || !this.Element.offsetWidth)
+ {
+ return;
+ }
+
+
+ this.CalculateMinMaxPosition();
+
+ if (this.Element.offsetWidth < this.Element.parentNode.offsetWidth)
+ {
+ this.ScrollTo(0);
+ }
+
+ var stylePosition = parseInt(this.IsVertical ? this.Element.style.top : this.Element.style.left);
+
+ if (isNaN(stylePosition))
+ {
+ stylePosition = 0;
+ }
+
+ var instance = this;
+/*
+ this.intervalPointer = setTimeout(function ()
+ {
+ if (instance.Disposed)
+ {
+ return;
+ }
+ instance.ApplyOverflow();
+ instance.ScrollTo(stylePosition);
+ instance.EvaluateArrowStatus();
+ }, 100);*/
+}
+
+RadControlsNamespace.Scroll.prototype.AttachEventHandlers = function ()
+{
+ var element = this.Element;
+ var instance = this;
+ this.resizeClosure = function()
+ {
+ instance.ResizeHandler();
+ }
+
+ if (window.addEventListener)
+ {
+ window.addEventListener("resize", this.resizeClosure, false);
+ }
+ else
+ {
+ window.attachEvent("onresize", this.resizeClosure);
+ }
+}
+
+RadControlsNamespace.Scroll.prototype.Dispose = function()
+{
+ this.Disposed = true;
+ this.Element = null;
+ clearTimeout(this.intervalPointer);
+ if (window.removeEventListener)
+ {
+ window.removeEventListener("resize", this.resizeClosure, false);
+ }
+ else
+ {
+ window.detachEvent("onresize", this.resizeClosure);
+ }
+}
+
+RadControlsNamespace.Scroll.prototype.AttachArrows = function ()
+{
+ // arrow creations
+ var leftArrow = this.CreateArrow("&laquo;", 1, this.LeftArrowClass);
+
+ var rightArrow = this.CreateArrow("&raquo;", -1, this.RightArrowClass);
+ this.LeftArrow = leftArrow;
+ this.RightArrow = rightArrow;
+ if (this.IsVertical)
+ {
+ leftArrow.style.left = "0px";
+ rightArrow.style.left = "0px";
+ if (this.ScrollButtonsPosition == RadControlsNamespace.ScrollButtonsPosition.Middle)
+ {
+ leftArrow.style.top = "0px";
+ rightArrow.style.bottom = "0px";
+ }
+ else if (this.ScrollButtonsPosition == RadControlsNamespace.ScrollButtonsPosition.Left)
+ {
+ leftArrow.style.top = "0px";
+ rightArrow.style.top = leftArrow.offsetHeight + "px";
+ }
+ else
+ {
+ rightArrow.style.bottom = "0px";
+ leftArrow.style.bottom = leftArrow.offsetHeight + "px";
+ }
+ }
+ else
+ {
+ leftArrow.style.top = "0px";
+ rightArrow.style.top = "0px";
+ if (this.ScrollButtonsPosition == RadControlsNamespace.ScrollButtonsPosition.Middle)
+ {
+ leftArrow.style.left = "-1px";
+ rightArrow.style.right = "-1px";
+ }
+ else if (this.ScrollButtonsPosition == RadControlsNamespace.ScrollButtonsPosition.Left)
+ {
+ leftArrow.style.left = "-1px";
+ rightArrow.style.left = (leftArrow.offsetWidth -1) + "px";
+ }
+ else
+ {
+ rightArrow.style.right = "-1px";
+ leftArrow.style.right = (rightArrow.offsetWidth - 1) + "px";
+ }
+ }
+
+
+}
+
+RadControlsNamespace.Scroll.prototype.CreateArrow = function(arrowText, scrollDirection, cssClass)
+{
+ var arrow = document.createElement('a');
+ arrow.href = "#";
+ arrow.className = cssClass;
+ arrow.style.zIndex = "2000";
+ arrow.appendChild(document.createTextNode("&nbsp;"));
+ this.Element.parentNode.appendChild(arrow);
+
+ var instance = this;
+ arrow.ScrollDirection = scrollDirection;
+ if (this.ScrollOnHover)
+ {
+ arrow.onmousedown = function ()
+ {
+ if (this.disabled)
+ {
+ return false;
+ }
+ instance.ScrollAmount = 3;
+ return true;
+ }
+
+ arrow.onmouseup = function ()
+ {
+ instance.ScrollAmount = 1;
+ }
+
+ arrow.onmouseover = function ()
+ {
+ if (this.disabled)
+ {
+ return false;
+ }
+ instance.ScrollAmount = 1;
+ instance.Scroll(this.ScrollDirection);
+ return true;
+ }
+
+ arrow.onmouseout = function ()
+ {
+ instance.scrollAmount = 0;
+ instance.Stop();
+ return false;
+ }
+ }
+ else
+ {
+ arrow.onmousedown = function ()
+ {
+ instance.Scroll(this.ScrollDirection);
+ }
+
+ arrow.onmouseup = function ()
+ {
+ instance.Stop();
+ }
+ }
+
+
+ arrow.onclick = function ()
+ {
+ return false;
+ }
+
+
+ return arrow;
+}
+
+RadControlsNamespace.Scroll.prototype.SetHeight = function (value)
+{
+ if (parseInt(value) == 0)
+ {
+ return;
+ }
+ this.Element.parentNode.style.height = value;
+ this.Initialize();
+}
+
+RadControlsNamespace.Scroll.prototype.SetWidth = function (value)
+{
+ if (parseInt(value) == 0)
+ {
+ return;
+ }
+ this.Element.parentNode.style.width = value;
+ this.Initialize();
+}
+
+RadControlsNamespace.Scroll.prototype.CreateScrollWrap = function ()
+{
+ var scrollWrap = document.createElement('div');
+ var originalContainer = this.Element.parentNode;
+ scrollWrap.appendChild(this.Element);
+ scrollWrap.style.position = "relative";
+ scrollWrap.align = "left"; // WTF??
+
+ originalContainer.appendChild(scrollWrap);
+
+ if (this.IsVertical)
+ {
+ scrollWrap.style.styleFloat = "left";
+ scrollWrap.style.cssFloat = "left";
+ this.Element.style.display = "none";
+ scrollWrap.style.height = scrollWrap.parentNode.parentNode.offsetHeight + "px";
+ this.Element.style.display = "block";
+ }
+ else
+ {
+
+ var realWidth = 0;
+ for (var i = 0; i < this.Element.childNodes.length; i ++)
+ {
+ var node = this.Element.childNodes[i];
+ if (!node.tagName) continue;
+
+ realWidth += node.offsetWidth;
+ }
+
+ this.Element.style.width = (realWidth + 3) + "px";
+ }
+
+ return scrollWrap;
+};
+
+RadControlsNamespace.Scroll.prototype.CalculateMinMaxPosition = function ()
+{
+ if (!this.Initialized)
+ {
+ return;
+ }
+
+ if (this.IsVertical)
+ {
+ var scrollSize = this.Element.parentNode.offsetHeight - this.Element.offsetHeight;
+ var leftSize = this.LeftArrow.offsetHeight;
+ var rightSize = this.RightArrow.offsetHeight;
+ }
+ else
+ {
+ var scrollSize = this.Element.parentNode.offsetWidth - this.Element.offsetWidth;
+ var leftSize = this.LeftArrow.offsetWidth;
+ var rightSize = this.RightArrow.offsetWidth;
+ }
+
+ if (!this.LeaveGapsForArrows)
+ {
+ leftSize = 0;
+ rightSize = 0;
+ }
+
+ this.MaxScrollPosition = 0;
+ this.MinScrollPosition = scrollSize - rightSize - leftSize;
+
+ if (this.ScrollButtonsPosition ==
+ RadControlsNamespace.ScrollButtonsPosition.Middle)
+ {
+ this.Offset = leftSize;
+ }
+
+ else if (this.ScrollButtonsPosition ==
+ RadControlsNamespace.ScrollButtonsPosition.Left)
+ {
+ this.Offset = leftSize + rightSize;
+ }
+ else
+ {
+ this.Offset = 0;
+ }
+
+}
+
+RadControlsNamespace.Scroll.prototype.CalculateInitialTab = function ()
+{
+ // calculate the selected tab
+ var lis = this.Element.getElementsByTagName('li');
+ if (lis.length > 0)
+ {
+ var i = 0;
+
+ while (this.ScrollPosition < - (this.IsVertical ? lis[i].offsetTop : lis[i].offsetLeft))
+ {
+ i ++;
+ }
+ this.CurrentTab = i;
+ }
+}
+
+RadControlsNamespace.Scroll.prototype.AttachScrollMethods = function ()
+{
+ if (this.PerTabScrolling)
+ {
+ this.Scroll = RadControlsNamespace.Scroll.StartPerTabScroll;
+ this.Stop = RadControlsNamespace.Scroll.StopPerTabScroll;
+ }
+
+ else
+ {
+ this.Scroll = RadControlsNamespace.Scroll.StartSmoothScroll;
+ this.Stop = RadControlsNamespace.Scroll.StopSmoothScroll;
+ }
+
+};
+
+RadControlsNamespace.Scroll.prototype.EvaluateArrowStatus = function ()
+{
+ var rightEndReached = ! (this.ScrollPosition > this.MinScrollPosition);
+ var leftEndReached = ! (this.ScrollPosition < this.MaxScrollPosition);
+ this.RightArrow.disabled = rightEndReached;
+ this.LeftArrow.disabled = leftEndReached;
+ if (leftEndReached)
+ {
+ if (this.LeftArrow.className != this.LeftArrowClassDisabled)
+ {
+ this.LeftArrow.className = this.LeftArrowClassDisabled;
+ }
+ }
+ else
+ {
+ if (this.LeftArrow.className != this.LeftArrowClass)
+ {
+ this.LeftArrow.className = this.LeftArrowClass;
+ }
+ }
+
+ if (rightEndReached)
+ {
+
+ if (this.RightArrow.className != this.RightArrowClassDisabled)
+ {
+ this.RightArrow.className = this.RightArrowClassDisabled;
+ }
+ }
+ else
+ {
+ if (this.RightArrow.className != this.RightArrowClass)
+ {
+ this.RightArrow.className = this.RightArrowClass;
+ }
+ }
+}
+
+RadControlsNamespace.Scroll.StartSmoothScroll = function (direction)
+{
+ this.Stop();
+ this.Direction = direction;
+ var instance = this;
+ var scrollActivity = function ()
+ {
+ instance.ScrollBy(instance.Direction * instance.ScrollAmount);
+ }
+
+ scrollActivity();
+ this.scrollInterval = setInterval(scrollActivity, 10);
+};
+
+
+RadControlsNamespace.Scroll.prototype.ScrollTo = function (position)
+{
+ position = Math.max(position, this.MinScrollPosition);
+ position = Math.min(position, this.MaxScrollPosition);
+ position += this.Offset;
+ if (this.IsVertical)
+ {
+ this.Element.style.top = position + "px";
+ }
+ else
+ {
+ this.Element.style.left = position + "px";
+ }
+
+ this.Owner.ScrollPosition = this.ScrollPosition = position - this.Offset;
+ this.EvaluateArrowStatus();
+}
+
+RadControlsNamespace.Scroll.prototype.ScrollBy = function (amount)
+{
+ var newScrollPosition = this.ScrollPosition;
+ this.ScrollTo(newScrollPosition + amount);
+}
+
+
+/*Static methods, transformed in the AttachScrollMethods */
+
+RadControlsNamespace.Scroll.StartPerTabScroll = function (direction)
+{
+ this.Stop();
+ var lis = this.Element.getElementsByTagName('li');
+ var nextTab = this.CurrentTab - direction;
+
+ if (nextTab < 0 || nextTab > lis.length)
+ {
+ return;
+ }
+ var dimDiv = direction == -1 ? this.CurrentTab : nextTab;
+ this.CurrentTab = nextTab;
+
+
+
+ if (this.IsVertical)
+ {
+ var newPosition = lis[dimDiv].offsetHeight;
+ }
+ else
+ {
+ var newPosition = lis[dimDiv].offsetWidth;
+ }
+
+ this.ScrollBy(newPosition * direction);
+ this.EvaluateArrowStatus();
+};
+
+
+RadControlsNamespace.Scroll.prototype.ScrollNeeded = function ()
+{
+ return true;
+
+ if (this.IsVertical)
+ {
+ return this.Element.offsetHeight > this.Element.parentNode.offsetHeight;
+ }
+
+ return this.Element.offsetWidth > this.Element.parentNode.offsetWidth;
+}
+
+RadControlsNamespace.Scroll.StopSmoothScroll = function (direction)
+{
+ if (this.OnScrollStop)
+ {
+ this.OnScrollStop();
+ }
+ clearInterval(this.scrollInterval);
+};
+
+RadControlsNamespace.Scroll.StopPerTabScroll = function (direction)
+{
+ if (this.OnScrollStop)
+ {
+ this.OnScrollStop();
+ }
+};
+
+//BEGIN_ATLAS_NOTIFY
+if (typeof(Sys) != "undefined")
+{
+ if (Sys.Application != null && Sys.Application.notifyScriptLoaded != null)
+ {
+ Sys.Application.notifyScriptLoaded();
+ }
+}
+//END_ATLAS_NOTIFY \ No newline at end of file
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/Ticker.js b/schemas/OMNA Schema-based Namespace Registry_fichiers/Ticker.js
new file mode 100644
index 0000000..100c8c7
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/Ticker.js
@@ -0,0 +1,65 @@
+if (typeof window.RadControlsNamespace == "undefined")
+{
+ window.RadControlsNamespace = {};
+}
+
+RadControlsNamespace.Ticker = function (listener)
+{
+ this.Listener = listener;
+ this.IntervalPointer = null;
+}
+
+RadControlsNamespace.Ticker.prototype =
+{
+ Configure : function (config)
+ {
+ this.Duration = config.Duration;
+ this.Interval = 16;
+ },
+
+ Start : function ()
+ {
+ clearInterval(this.IntervalPointer);
+ this.TimeElapsed = 0;
+ var instance = this;
+ var closure = function ()
+ {
+ instance.Tick();
+ }
+
+ this.Tick();
+ this.IntervalPointer = setInterval(closure, this.Interval);
+ },
+
+ Tick : function ()
+ {
+ this.TimeElapsed += this.Interval;
+ this.Listener.OnTick(this.TimeElapsed);
+
+ if (this.TimeElapsed >= this.Duration)
+ {
+ this.Stop();
+ }
+ },
+
+ Stop : function ()
+ {
+ if (this.IntervalPointer)
+ {
+ this.Listener.OnTickEnd();
+ clearInterval(this.IntervalPointer);
+ this.IntervalPointer = null;
+ }
+ }
+
+}
+
+//BEGIN_ATLAS_NOTIFY
+if (typeof(Sys) != "undefined")
+{
+ if (Sys.Application != null && Sys.Application.notifyScriptLoaded != null)
+ {
+ Sys.Application.notifyScriptLoaded();
+ }
+}
+//END_ATLAS_NOTIFY \ No newline at end of file
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/banner-logo-right.png b/schemas/OMNA Schema-based Namespace Registry_fichiers/banner-logo-right.png
new file mode 100644
index 0000000..293a2d9
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/banner-logo-right.png
Binary files differ
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/button-on-Technical-Information.png b/schemas/OMNA Schema-based Namespace Registry_fichiers/button-on-Technical-Information.png
new file mode 100644
index 0000000..c2214ea
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/button-on-Technical-Information.png
Binary files differ
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/button-out-About-OMA.png b/schemas/OMNA Schema-based Namespace Registry_fichiers/button-out-About-OMA.png
new file mode 100644
index 0000000..9ddf769
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/button-out-About-OMA.png
Binary files differ
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/button-out-Implementations.png b/schemas/OMNA Schema-based Namespace Registry_fichiers/button-out-Implementations.png
new file mode 100644
index 0000000..f736519
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/button-out-Implementations.png
Binary files differ
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/button-out-Member-meetings.png b/schemas/OMNA Schema-based Namespace Registry_fichiers/button-out-Member-meetings.png
new file mode 100644
index 0000000..90cdb41
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/button-out-Member-meetings.png
Binary files differ
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/button-out-Membership.png b/schemas/OMNA Schema-based Namespace Registry_fichiers/button-out-Membership.png
new file mode 100644
index 0000000..caa6795
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/button-out-Membership.png
Binary files differ
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/button-out-News.png b/schemas/OMNA Schema-based Namespace Registry_fichiers/button-out-News.png
new file mode 100644
index 0000000..100a936
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/button-out-News.png
Binary files differ
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/button-out-TestFests.png b/schemas/OMNA Schema-based Namespace Registry_fichiers/button-out-TestFests.png
new file mode 100644
index 0000000..028e8b4
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/button-out-TestFests.png
Binary files differ
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/button-search.png b/schemas/OMNA Schema-based Namespace Registry_fichiers/button-search.png
new file mode 100644
index 0000000..e741aad
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/button-search.png
Binary files differ
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/home-logo.png b/schemas/OMNA Schema-based Namespace Registry_fichiers/home-logo.png
new file mode 100644
index 0000000..6ed8bd7
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/home-logo.png
Binary files differ
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/icon-apply-for-login.png b/schemas/OMNA Schema-based Namespace Registry_fichiers/icon-apply-for-login.png
new file mode 100644
index 0000000..00b2ec0
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/icon-apply-for-login.png
Binary files differ
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/icon-contact.png b/schemas/OMNA Schema-based Namespace Registry_fichiers/icon-contact.png
new file mode 100644
index 0000000..860cd43
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/icon-contact.png
Binary files differ
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/icon-login.png b/schemas/OMNA Schema-based Namespace Registry_fichiers/icon-login.png
new file mode 100644
index 0000000..5abcecb
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/icon-login.png
Binary files differ
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/icon-sitemap.png b/schemas/OMNA Schema-based Namespace Registry_fichiers/icon-sitemap.png
new file mode 100644
index 0000000..df4cb67
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/icon-sitemap.png
Binary files differ
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/indication-navigation-arrow-grey.png b/schemas/OMNA Schema-based Namespace Registry_fichiers/indication-navigation-arrow-grey.png
new file mode 100644
index 0000000..322a43a
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/indication-navigation-arrow-grey.png
Binary files differ
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/json.js b/schemas/OMNA Schema-based Namespace Registry_fichiers/json.js
new file mode 100644
index 0000000..7a8bd4a
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/json.js
@@ -0,0 +1,214 @@
+/*
+Copyright (c) 2005 JSON.org
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The Software shall be used for Good, not Evil.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+*/
+
+/*
+ The global object JSON contains two methods.
+
+ JSON.stringify(value) takes a JavaScript value and produces a JSON text.
+ The value must not be cyclical.
+
+ JSON.parse(text) takes a JSON text and produces a JavaScript value. It will
+ throw a 'JSONError' exception if there is an error.
+*/
+if (typeof window.RadControlsNamespace == "undefined")
+{
+ window.RadControlsNamespace = {};
+}
+
+if (
+ typeof(window.RadControlsNamespace.JSON) == "undefined" ||
+ typeof(window.RadControlsNamespace.JSON.Version) == null ||
+ window.RadControlsNamespace.JSON.Version < 1
+ )
+{
+
+ window.RadControlsNamespace.JSON = {
+
+ Version : 1, // Change the version when make changes. Change the value in the IF also
+
+ copyright: '(c)2005 JSON.org',
+ license: 'http://www.crockford.com/JSON/license.html',
+ /*
+ Stringify a JavaScript value, producing a JSON text.
+ */
+ stringify: function (v, def) {
+ var a = [];
+ var deep = arguments[2] || {};
+ /*
+ Emit a string.
+ */
+ function e(s) {
+ a[a.length] = s;
+ }
+
+ /*
+ Convert a value.
+ */
+ function g(x)
+ {
+ var c, i, l, v;
+
+ switch (typeof x) {
+ case 'object':
+ if (x) {
+ if (x instanceof Array) {
+ e('[');
+ l = a.length;
+ for (i = 0; i < x.length; i += 1) {
+ v = x[i];
+ if (typeof v != 'undefined' &&
+ typeof v != 'function') {
+ if (l < a.length) {
+ e(',');
+ }
+ g(v);
+ }
+ }
+ e(']');
+ return '';
+ } else if (typeof x.valueOf == 'function')
+ {
+ e('{');
+ l = a.length;
+ for (i in x)
+ {
+
+ v = x[i];
+
+ // Modified to skip default props
+ if (def && v == def[i])
+ {
+ continue;
+ }
+
+
+ var type = typeof v;
+ if (
+ type == 'undefined' ||
+ type == 'function'
+ )
+ {
+ continue;
+ }
+
+ if (type == "object" && !deep[i])
+ {
+ continue;
+ }
+
+
+ if (l < a.length)
+ {
+ e(',');
+ }
+ g(i);
+ e(':');
+ g(v);
+ }
+ return e('}');
+ }
+ }
+ e('null');
+ return '';
+ case 'number':
+ e(isFinite(x) ? +x : 'null');
+ return '';
+ case 'string':
+ l = x.length;
+ e('"');
+ for (i = 0; i < l; i += 1) {
+ c = x.charAt(i);
+ if (c >= ' ') {
+ if (c == '\\' || c == '"') {
+ e('\\');
+ }
+ e(c);
+ } else {
+ switch (c) {
+ case '\b':
+ e('\\b');
+ break;
+ case '\f':
+ e('\\f');
+ break;
+ case '\n':
+ e('\\n');
+ break;
+ case '\r':
+ e('\\r');
+ break;
+ case '\t':
+ e('\\t');
+ break;
+ default:
+ c = c.charCodeAt();
+ e('\\u00' + Math.floor(c / 16).toString(16) +
+ (c % 16).toString(16));
+ }
+ }
+ }
+ e('"');
+ return '';
+ case 'boolean':
+ e(String(x));
+ return '';
+ default:
+ e('null');
+ return '';
+ }
+ }
+
+ g(v, 0);
+ return a.join('');
+ },
+
+ // Addition
+ stringifyHashTable : function (hash, idMember, initial)
+ {
+ var a = [];
+ if (!initial) initial = [];
+ for (var i = 0; i < hash.length; i ++)
+ {
+ var ser = this.stringify(hash[i], initial[i]);
+ if (ser == '{}') continue;
+ a[a.length] = "\"" + hash[i][idMember] + "\":" + ser;
+ }
+ return "{" + a.join(',') + "}";
+ },
+ /*
+ Parse a JSON text, producing a JavaScript value.
+ */
+ parse: function (text) {
+ return (/^([ \t\r\n,:{}\[\]]|"(\\["\\\/bfnrtu]|[^\x00-\x1f"\\]+)*"|-?\d+(\.\d*)?([eE][+-]?\d+)?|true|false|null)+$/.test(text)) &&
+ eval('(' + text + ')');
+ }
+ }
+}
+
+//BEGIN_ATLAS_NOTIFY
+if (typeof(Sys) != "undefined")
+{
+ if (Sys.Application != null && Sys.Application.notifyScriptLoaded != null)
+ {
+ Sys.Application.notifyScriptLoaded();
+ }
+}
+//END_ATLAS_NOTIFY \ No newline at end of file
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/menu.css b/schemas/OMNA Schema-based Namespace Registry_fichiers/menu.css
new file mode 100644
index 0000000..b4f70e6
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/menu.css
@@ -0,0 +1,105 @@
+.radmenu {
+ FLOAT: left; WHITE-SPACE: normal; POSITION: relative
+}
+.radmenu:unknown {
+ CLEAR: both; DISPLAY: block; VISIBILITY: hidden; HEIGHT: 0px; content: "."
+}
+.radmenu UL.horizontal {
+ PADDING-RIGHT: 0px; DISPLAY: none; PADDING-LEFT: 0px; LEFT: 0px; FLOAT: left; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; POSITION: relative
+}
+.radmenu UL.vertical {
+ PADDING-RIGHT: 0px; DISPLAY: none; PADDING-LEFT: 0px; LEFT: 0px; FLOAT: left; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; POSITION: relative
+}
+.radmenu .item {
+ LIST-STYLE: none none outside; DISPLAY: inline; FLOAT: left; POSITION: relative
+}
+.radmenu .horizontal .item {
+ CLEAR: none
+}
+.radmenu .vertical .item {
+ CLEAR: both
+}
+.radmenu UL.active {
+ DISPLAY: block
+}
+.radmenu UL.rootGroup {
+ DISPLAY: block
+}
+.radmenu .slide {
+ DISPLAY: none; FLOAT: left; OVERFLOW: hidden; POSITION: absolute; HEIGHT: 1px
+}
+.contextMenu {
+ DISPLAY: none; FLOAT: left; OVERFLOW: hidden; POSITION: absolute; HEIGHT: 1px
+}
+.contextMenu {
+ Z-INDEX: 1000
+}
+.radmenu .text {
+ DISPLAY: block
+}
+.radmenu A.link {
+ DISPLAY: block; CURSOR: default
+}
+.scrollWrap {
+ LEFT: 0px; FLOAT: left; OVERFLOW: hidden; POSITION: absolute
+}
+.radmenu .leftArrow {
+ Z-INDEX: 2000; TEXT-INDENT: -1000em; POSITION: absolute
+}
+.radmenu .topArrow {
+ Z-INDEX: 2000; TEXT-INDENT: -1000em; POSITION: absolute
+}
+.radmenu .bottomArrow {
+ Z-INDEX: 2000; TEXT-INDENT: -1000em; POSITION: absolute
+}
+.radmenu .rightArrow {
+ Z-INDEX: 2000; TEXT-INDENT: -1000em; POSITION: absolute
+}
+.radmenu .leftArrowDisabled {
+ DISPLAY: none; TEXT-INDENT: -1000em
+}
+.radmenu .topArrowDisabled {
+ DISPLAY: none; TEXT-INDENT: -1000em
+}
+.radmenu .bottomArrowDisabled {
+ DISPLAY: none; TEXT-INDENT: -1000em
+}
+.radmenu .rightArrowDisabled {
+ DISPLAY: none; TEXT-INDENT: -1000em
+}
+.radmenu .bottomArrow {
+ MARGIN-BOTTOM: -1px
+}
+.radmenu .bottomArrowDisabled {
+ MARGIN-BOTTOM: -1px
+}
+.radmenu .leftImage {
+ BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; FLOAT: left; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px
+}
+.rtl {
+ FLOAT: right
+}
+.rtl UL.horizontal {
+ FLOAT: right
+}
+.rtl UL.vertical {
+ FLOAT: right
+}
+.rtl .item {
+ FLOAT: right
+}
+.rtl .leftImage {
+ BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; FLOAT: right; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px
+}
+.rtlcontext .leftImage {
+ BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; FLOAT: right; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px
+}
+.radmenu UL.rootGroup {
+ FLOAT: left
+}
+.radmenu .link {
+ WIDTH: auto; WHITE-SPACE: nowrap
+}
+.centeredim {
+ DISPLAY: block; MARGIN-LEFT: auto; MARGIN-RIGHT: auto
+}
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/style(1).css b/schemas/OMNA Schema-based Namespace Registry_fichiers/style(1).css
new file mode 100644
index 0000000..27115ae
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/style(1).css
@@ -0,0 +1,420 @@
+.omabutton {
+ PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: 12px; PADDING-BOTTOM: 0px; COLOR: #666666; LINE-HEIGHT: normal; PADDING-TOP: 0px; FONT-STYLE: normal; FONT-FAMILY: "Century Gothic"; TEXT-DECORATION: none
+}
+.footer {
+ FONT-SIZE: 9pt; FONT-FAMILY: Arial, Helvetica, sans-serif
+}
+.header {
+ FONT-SIZE: 9pt; FONT-FAMILY: Arial, Helvetica, sans-serif
+}
+.navbartab {
+ FONT-SIZE: 9pt; FONT-FAMILY: Arial, Helvetica, sans-serif
+}
+.footerlink {
+ FONT-SIZE: 11px; COLOR: #336600; FONT-FAMILY: Arial, Helvetica, sans-serif
+}
+.maintext {
+ FONT-SIZE: 11px; COLOR: #000000; LINE-HEIGHT: 14px; FONT-FAMILY: Arial, Helvetica, sans-serif
+}
+.subtitles {
+ FONT-SIZE: 12px; COLOR: #000000; LINE-HEIGHT: 15px; FONT-FAMILY: Arial, Helvetica, sans-serif
+}
+.login {
+ FONT-WEIGHT: normal; FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Arial, Helvetica, sans-serif
+}
+BODY {
+ MARGIN: 0pt 0px 0px; HEIGHT: 100%; BACKGROUND-COLOR: #413c3c
+}
+.GCF-GT {
+
+}
+.A-FOOTER {
+ FONT-SIZE: 65%; COLOR: #003333; TEXT-DECORATION: none
+}
+.left_nav_item_on A {
+ FONT-WEIGHT: bold; COLOR: #000000; FONT-FAMILY: "Arial", Verdana, Helvetica, Sans-serif
+}
+.link_leftnav_sel A {
+ FONT-WEIGHT: bold; COLOR: #000000; FONT-FAMILY: "Arial", Verdana, Helvetica, Sans-serif
+}
+.left_nav_item_on A {
+ FONT-WEIGHT: bold; COLOR: #000000; FONT-FAMILY: "Arial", Verdana, Helvetica, Sans-serif
+}
+A.ALOGINMENU {
+ COLOR: #555555; FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif; TEXT-DECORATION: none
+}
+A.NAVIGATOR:link {
+ COLOR: #074401
+}
+A.NAVIGATOR:visited {
+ FONT-SIZE: 110%; COLOR: #074401
+}
+A.NAVIGATOR:active {
+ COLOR: #076901
+}
+A.SORTBY {
+ FONT-WEIGHT: bold; COLOR: black; TEXT-DECORATION: none
+}
+.ARCHIVED {
+ BACKGROUND-COLOR: #d2d2d2
+}
+.BCKG {
+ BACKGROUND-COLOR: #fef4e2
+}
+.BIGBOLDTEXT {
+ FONT-WEIGHT: bolder; FONT-SIZE: 100%; FONT-FAMILY: Arial, "Verdana", Helvetica, Sans-serif
+}
+.BIGTEXT {
+ FONT-SIZE: 100%; FONT-FAMILY: Arial, "Verdana", Helvetica, Sans-serif
+}
+.BLUE-LIGHT {
+ BACKGROUND: #5780d5
+}
+BODY {
+ MARGIN: 0pt; COLOR: #000000; FONT-FAMILY: Arial, Helvetica, Sans-serif; BACKGROUND-COLOR: #ffffff
+}
+BODY.POPUP {
+ MARGIN: 3pt; OVERFLOW: auto; COLOR: #000000; FONT-FAMILY: Arial, "Verdana", Helvetica, Sans-serif; BACKGROUND-COLOR: #ffffff
+}
+.BODY-ICONS {
+ MARGIN: 4pt 22pt 4pt 12pt
+}
+.BORDER {
+ BORDER-RIGHT: #c0c0c0 1px solid; BORDER-TOP: #c0c0c0 1px solid; BORDER-LEFT: #c0c0c0 1px solid; BORDER-BOTTOM: #c0c0c0 1px solid
+}
+.BORDER-BROWSER {
+ BORDER-RIGHT: lightgrey 3px inset; BORDER-TOP: dimgray 3px inset; MARGIN-TOP: 7px; MARGIN-LEFT: 3px; BORDER-LEFT: dimgray 3px inset; WIDTH: 98%; MARGIN-RIGHT: 3px; BORDER-BOTTOM: lightgrey 3px inset
+}
+.BORDER-HEADER {
+ BORDER-RIGHT: #c0c0c0 0px solid; BORDER-TOP: #c0c0c0 0px solid; BORDER-LEFT: #c0c0c0 0px solid; BORDER-BOTTOM: #c0c0c0 0px solid
+}
+.BULLET1 {
+ LIST-STYLE-IMAGE: url(../Images/arrow.gif); LIST-STYLE-TYPE: disc
+}
+BUTTON {
+ BORDER-TOP-STYLE: none; FONT-FAMILY: Verdana, Helvetica, sans-serif; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
+}
+.BUTTONdisabled {
+ FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif
+}
+CAPTION {
+ FONT-WEIGHT: lighter; FONT-SIZE: 70%; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; TEXT-ALIGN: left
+}
+.CAL-ITEMS {
+ FONT-SIZE: 8pt; COLOR: black; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.CAL-ITEMS A {
+ TEXT-DECORATION: none
+}
+.CAL-WE A {
+ TEXT-DECORATION: none
+}
+.CAL-TODAY A {
+ TEXT-DECORATION: none
+}
+.CAL-NEXTPREV A {
+ TEXT-DECORATION: none
+}
+.CAL_NEXTPREV {
+ FONT-WEIGHT: bolder; FONT-SIZE: 9pt; COLOR: #fffff0; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; BACKGROUND-COLOR: #669933
+}
+.CAL-WE {
+ FONT-SIZE: 8pt; COLOR: black; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; BACKGROUND-COLOR: #a2cc83
+}
+.CAL-TITLE {
+ FONT-WEIGHT: bolder; FONT-SIZE: 9pt; COLOR: #fffff0; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; BACKGROUND-COLOR: #517f40
+}
+.CAL-TODAY {
+ FONT-SIZE: 8pt; COLOR: black; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; BACKGROUND-COLOR: #99cc66
+}
+.CELL-BORDER {
+ BORDER-RIGHT: #ffffff 1px solid; BORDER-TOP: #ffffff 1px solid; BORDER-LEFT: #ffffff 1px solid; BORDER-BOTTOM: #ffffff 1px solid
+}
+.CELL-HEADER {
+ BACKGROUND-COLOR: #99cc00
+}
+.CELL-MENU {
+ PADDING-RIGHT: 2pt; PADDING-LEFT: 2pt; VERTICAL-ALIGN: top; PADDING-TOP: 3pt; BACKGROUND-COLOR: #ffffff
+}
+.CENTER {
+ TEXT-ALIGN: center
+}
+.DATAGRID {
+ BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px
+}
+.DATAGRID TD {
+ PADDING-RIGHT: 3px; PADDING-LEFT: 3px; FONT-SIZE: 9pt; PADDING-BOTTOM: 1px; PADDING-TOP: 1px; BORDER-COLLAPSE: collapse
+}
+DG-NAVIGATOR {
+ BORDER-RIGHT: white 0px; BORDER-TOP: white 0px; FONT-WEIGHT: bolder; BORDER-LEFT: white 0px; COLOR: #5780d5; BORDER-BOTTOM: white 0px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+DD {
+ FONT-SIZE: 70%; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+DT {
+ FONT-WEIGHT: bolder; FONT-SIZE: 70%; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.ERROR {
+ FONT-SIZE: 11px; COLOR: #aa0000; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.EVEN {
+ BACKGROUND-COLOR: #f1ece1; TEXT-ALIGN: left
+}
+.FILEBROWSER {
+ FONT-SIZE: 70%; COLOR: black; FONT-FAMILY: Tahoma,Verdana
+}
+.FILEBROWSER_HEADER_CELL {
+ BORDER-RIGHT: black 1px solid; BORDER-TOP: white 1px solid; FONT-SIZE: 70%; BORDER-LEFT: white 1px solid; BORDER-BOTTOM: black 1px solid; FONT-FAMILY: Tahoma,Verdana
+}
+.FILEBROWSER_HEADER_LINE {
+ BACKGROUND-COLOR: #d6d6ce
+}
+FORM {
+ MARGIN-BOTTOM: 0px; WIDTH: 100%; HEIGHT: 100%
+}
+FORM.POPUP {
+ MARGIN-BOTTOM: 0px; OVERFLOW: auto; WIDTH: 100%; HEIGHT: 100%
+}
+.FRAMETOP {
+ FONT-WEIGHT: bold; COLOR: black; BORDER-BOTTOM: #333399 2px solid; FONT-FAMILY: Arial, Helvetica, sans-serif; WHITE-SPACE: nowrap; HEIGHT: 13px; BACKGROUND-COLOR: #cbe5e5
+}
+H1 {
+ MARGIN-TOP: 0pt; FONT-SIZE: 90%; MARGIN-BOTTOM: 9pt; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; TEXT-ALIGN: left
+}
+H2 {
+ MARGIN-TOP: 0pt; FONT-SIZE: 85%; MARGIN-BOTTOM: 6pt; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; TEXT-ALIGN: left
+}
+H3 {
+ MARGIN-TOP: 0pt; FONT-WEIGHT: bolder; FONT-SIZE: 80%; MARGIN-BOTTOM: 3pt; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; TEXT-ALIGN: left
+}
+.HEAD0 {
+ FONT-WEIGHT: bold; COLOR: white; FONT-FAMILY: Arial, Helvetica, sans-serif; WHITE-SPACE: nowrap; HEIGHT: 25px; BACKGROUND-COLOR: #6f695c
+}
+.HEAD1 {
+ FONT-WEIGHT: bolder; FONT-SIZE: 70%; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; BACKGROUND-COLOR: #feefc6
+}
+.HIDDEN {
+ DISPLAY: none
+}
+.INFO {
+ COLOR: #5780d5
+}
+.LEFT {
+ TEXT-ALIGN: left
+}
+.LEFT-HEADER {
+ PADDING-LEFT: 40pt; FONT-SIZE: 110%; VERTICAL-ALIGN: middle; COLOR: #fffff0; TEXT-ALIGN: left
+}
+LI {
+ FONT-SIZE: 100%; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; TEXT-DECORATION: none
+}
+.LISTTABLE {
+ MARGIN-TOP: 3px; MARGIN-LEFT: 3px; WIDTH: 98%; MARGIN-RIGHT: 3px; BORDER-COLLAPSE: collapse; BACKGROUND-COLOR: #dbeccd
+}
+.LOGINMENU {
+ FONT-WEIGHT: normal; FONT-SIZE: 11px; COLOR: #555555; FONT-FAMILY: Arial
+}
+TR.LOGINMENU TD {
+ BORDER-COLLAPSE: collapse; HEIGHT: 25px
+}
+.MANDATORYFIELD {
+ FONT-WEIGHT: bold; FONT-SIZE: 12px; COLOR: red; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+A.MENU-ICON {
+ FONT-WEIGHT: normal; FONT-SIZE: 75%; COLOR: #555555; FONT-FAMILY: Arial; TEXT-ALIGN: right; TEXT-DECORATION: none
+}
+A.MENU-ICON2 {
+ FONT-WEIGHT: normal; FONT-SIZE: 75%; COLOR: #222222; FONT-FAMILY: Arial; TEXT-ALIGN: right; TEXT-DECORATION: none
+}
+.MENU-TITLE {
+ COLOR: white; FONT-FAMILY: Verdana, Helvetica, sans-serif; HEIGHT: 29px
+}
+.MENU-ICON {
+ FONT-WEIGHT: normal; FONT-SIZE: 11px; COLOR: #979080; FONT-FAMILY: Arial
+}
+.MENU-ICON-NIV1 {
+ FONT-SIZE: 60%; MARGIN-LEFT: 10px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.MENU-TABLE {
+ WIDTH: 226px; BACKGROUND-COLOR: white
+}
+.SEARCH-CELL {
+ BORDER-RIGHT: #c0c0c0 2px solid; MARGIN-BOTTOM: 3px; WIDTH: 15%; BACKGROUND-COLOR: #f1ece1
+}
+.NAVIGATION {
+ FONT-WEIGHT: bolder; COLOR: #5780d5; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.NAVIGATOR {
+ FONT-WEIGHT: bold; FONT-SIZE: 110%; COLOR: black
+}
+.NAVIGATORCURRENT {
+ FONT-WEIGHT: bold; FONT-SIZE: 110%; COLOR: green
+}
+.NORMALBOLDTEXT {
+ FONT-WEIGHT: bolder; FONT-SIZE: 9pt; FONT-FAMILY: Arial, Helvetica, sans-serif
+}
+.NORMALITALICTEXT {
+ FONT-SIZE: 9pt; FONT-STYLE: italic; FONT-FAMILY: Arial, Helvetica, sans-serif
+}
+.NORMALTEXT {
+ FONT-SIZE: 9pt; FONT-FAMILY: Arial, Helvetica, sans-serif
+}
+.ODD {
+ BACKGROUND-COLOR: #ffffff; TEXT-ALIGN: left
+}
+OL {
+ FONT-WEIGHT: bolder; COLOR: #44628e
+}
+P {
+ MARGIN-TOP: 0pt; FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif; TEXT-ALIGN: justify
+}
+.RIGHT {
+ TEXT-ALIGN: right
+}
+.RIGHT-HEADER {
+ COLOR: #fffff0; TEXT-ALIGN: right
+}
+.RIGHT-INLINE {
+ DISPLAY: inline; TEXT-ALIGN: right
+}
+.SEARCH-TABLE {
+ BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BACKGROUND: #f1ece1; BORDER-BOTTOM-WIDTH: 0px; WIDTH: 100%; TEXT-ALIGN: left; BORDER-RIGHT-WIDTH: 0px
+}
+.SMALLBOLDTEXT {
+ FONT-WEIGHT: bolder; FONT-SIZE: 9pt; FONT-FAMILY: Arial, Helvetica, sans-serif
+}
+.SMALLITALICTEXT {
+ FONT-SIZE: 65%; FONT-STYLE: italic; FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif
+}
+.SMALLTEXT {
+ FONT-SIZE: 9pt; FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif
+}
+.SMALLEVEN {
+ FONT-SIZE: 10px; COLOR: #c43c03; FONT-FAMILY: Arial, "Verdana", Helvetica, Sans-serif
+}
+.SMALLODD {
+ FONT-SIZE: 10px; COLOR: navy; FONT-FAMILY: Arial, "Verdana", Helvetica, Sans-serif
+}
+.SORTBY {
+ FONT-WEIGHT: bold; COLOR: black
+}
+.SUBTITLE {
+ BACKGROUND-COLOR: #fef4e2
+}
+.TABLE-FOOTER {
+ BACKGROUND: #ffffff
+}
+.TABLE-HEADER {
+ BACKGROUND: #99cc00; WIDTH: 100%; COLOR: #fffff0; HEIGHT: 100%
+}
+TABLE-FORM {
+ BORDER-RIGHT: 0px solid; BORDER-TOP: 0px solid; MARGIN-BOTTOM: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: 0px solid; MARGIN-RIGHT: 3px; BORDER-BOTTOM: 0px solid
+}
+.TABLE-MAX-HEIGHT {
+ HEIGHT: 100%
+}
+.TABLE-SEPARATOR {
+ COLOR: #f5f5f5
+}
+TD.FILEBROWSER A {
+ COLOR: black; TEXT-DECORATION: none
+}
+A:hover {
+
+}
+A {
+ TEXT-DECORATION: none
+}
+TD.LIST {
+ BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 0px; FONT-SIZE: 60%; PADDING-BOTTOM: 0px; BORDER-LEFT: #cccccc 1px solid; PADDING-TOP: 0px; BORDER-BOTTOM: #cccccc 1px solid; BORDER-COLLAPSE: collapse
+}
+.TEXT-FOOTER {
+ FONT-SIZE: 9pt; COLOR: silver
+}
+TH {
+ FONT-WEIGHT: bolder; FONT-SIZE: 10px; COLOR: white; BORDER-BOTTOM: #c1c1c1 1px solid; FONT-FAMILY: Verdana, Helvetica, Sans-serif; WHITE-SPACE: nowrap; HEIGHT: 25px; BACKGROUND-COLOR: #6f695c
+}
+.TITLE {
+ FONT-WEIGHT: bolder; FONT-SIZE: 95%; COLOR: #000000; FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif; BACKGROUND-COLOR: #cbe5e5; TEXT-ALIGN: center
+}
+.TITLE1 {
+ FONT-WEIGHT: bolder; FONT-SIZE: 100%; COLOR: #000000; FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif; BACKGROUND-COLOR: #e0e8f8; TEXT-ALIGN: center
+}
+UL {
+ FONT-SIZE: 100%
+}
+.UNSPACE {
+ PADDING-RIGHT: 0pt; PADDING-LEFT: 0pt; PADDING-BOTTOM: 0pt; PADDING-TOP: 0pt
+}
+.WARNING {
+ FONT-SIZE: 100%; COLOR: #ff0000; FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif
+}
+.WARNING-SMALL {
+ FONT-SIZE: 65%; COLOR: #ff0000; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.igmv_Month {
+ TABLE-LAYOUT: fixed; MARGIN-TOP: 5px; FONT-WEIGHT: bold; FONT-SIZE: x-small; OVERFLOW: hidden; BORDER-LEFT: #aca899 1px outset; COLOR: white; LINE-HEIGHT: 25px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; BORDER-COLLAPSE: collapse
+}
+.igmv_WeekNumber {
+ BORDER-RIGHT: black 1px solid; PADDING-RIGHT: 1px; BORDER-TOP: 1px outset; FONT-SIZE: 10pt; WIDTH: 20px; BORDER-BOTTOM: 1px outset; FONT-FAMILY: Tahoma, Verdana, Arial, Helvetica, sans-serif; BACKGROUND-COLOR: #ece9d8; TEXT-ALIGN: center
+}
+.igmv_MonthDayOfWeekHeader {
+ BORDER-RIGHT: 1px outset; PADDING-RIGHT: 2px; BORDER-TOP: 1px outset; MARGIN-TOP: 1px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 1px; MARGIN-LEFT: 1px; BORDER-LEFT: 1px outset; CURSOR: default; MARGIN-RIGHT: 1px; PADDING-TOP: 3px; BORDER-BOTTOM: #aca899 1px solid; FONT-FAMILY: Tahoma, Verdana, Arial, Helvetica, sans-serif; HEIGHT: 20px; BACKGROUND-COLOR: #ece9d8; TEXT-ALIGN: center
+}
+.igmv_MonthHeader {
+ WIDTH: 100%; HEIGHT: 25px; TEXT-ALIGN: center
+}
+.igmv_CaptionHeader {
+ BORDER-RIGHT: #608058 1px solid; FONT-WEIGHT: bold; FONT-SIZE: x-small; BACKGROUND-IMAGE: url(../images/MonthHeaderCaption_bg.png); COLOR: #ffffff; LINE-HEIGHT: 25px; BORDER-BOTTOM: #608058 1px solid; BACKGROUND-REPEAT: repeat-x; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; HEIGHT: 25px; TEXT-ALIGN: center
+}
+.igmv_Day {
+ BORDER-RIGHT: black 1px solid; COLOR: black; BORDER-BOTTOM: black 1px solid; BACKGROUND-COLOR: #ffffff
+}
+.igmv_OtherMonthDay {
+ BORDER-RIGHT: black 1px solid; COLOR: black; BORDER-BOTTOM: black 1px solid; BACKGROUND-COLOR: #dbeccd
+}
+.igmv_Today {
+
+}
+.igmv_ActiveDay {
+
+}
+.igmv_DayHeader {
+ PADDING-RIGHT: 2px; FONT-SIZE: x-small; COLOR: black; PADDING-TOP: 1px; BORDER-BOTTOM: #ffffd5 1px solid; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; HEIGHT: 15px; TEXT-ALIGN: right
+}
+.igmv_OtherMonthDayHeader {
+ PADDING-RIGHT: 2px; FONT-SIZE: x-small; PADDING-BOTTOM: 2px; COLOR: black; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; HEIGHT: 15px; TEXT-ALIGN: right
+}
+.igmv_TodayHeader {
+ BACKGROUND-POSITION: 50% bottom; BACKGROUND-IMAGE: url(../images/TodayHeader_bg.png); LINE-HEIGHT: 16px; BACKGROUND-REPEAT: repeat-x; HEIGHT: 17px; BACKGROUND-COLOR: #ffffd5
+}
+.igmv_ActiveDayHeader {
+ BORDER-RIGHT: #ffffd5 1px solid; PADDING-RIGHT: 1px; BORDER-TOP: #ffffd5 1px solid; BACKGROUND-IMAGE: none; BORDER-LEFT: #ffffd5 1px solid; COLOR: #ffffff; PADDING-TOP: 0px; BORDER-BOTTOM: #ffffd5 1px solid; HEIGHT: 13px; BACKGROUND-COLOR: #a2cc83
+}
+.igmv_Appointment {
+ MARGIN-TOP: 1px; PADDING-LEFT: 1px; FONT-SIZE: xx-small; MARGIN-LEFT: 2px; CURSOR: pointer; LINE-HEIGHT: 10px; MARGIN-RIGHT: 2px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; POSITION: relative; TOP: 0px; TEXT-ALIGN: left
+}
+.igmv_SelectedAppointment {
+ MARGIN-TOP: 1px; PADDING-LEFT: 0px; FONT-SIZE: xx-small; PADDING-BOTTOM: 0px; MARGIN-LEFT: 2px; CURSOR: pointer; COLOR: white; LINE-HEIGHT: 10px; MARGIN-RIGHT: 2px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; POSITION: relative; TOP: 0px; HEIGHT: 10px; BACKGROUND-COLOR: #93a070
+}
+.igmv_AllDayEvent {
+ MARGIN-TOP: 0px; FONT-SIZE: xx-small; MARGIN-LEFT: 0px; CURSOR: pointer; LINE-HEIGHT: 10px; MARGIN-RIGHT: 0px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; BACKGROUND-COLOR: #ffffff; TEXT-ALIGN: left
+}
+.igmv_NavigationButton {
+ BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND-POSITION: left top; PADDING-LEFT: 0px; BORDER-LEFT-WIDTH: 0px; BACKGROUND-IMAGE: url(../images/MonthHeaderCaption_bg.png); BORDER-BOTTOM-WIDTH: 0px; PADDING-BOTTOM: 0px; MARGIN-LEFT: 5px; LINE-HEIGHT: 25px; MARGIN-RIGHT: 5px; PADDING-TOP: 0px; HEIGHT: 24px; BORDER-RIGHT-WIDTH: 0px
+}
+.REALTYPE1 {
+ FONT-SIZE: xx-small; COLOR: #339933; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.REALTYPE2 {
+ FONT-SIZE: xx-small; COLOR: #0000ff; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.REALTYPE3 {
+ FONT-SIZE: xx-small; COLOR: #cc0000; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.REALTYPE4 {
+ FONT-SIZE: xx-small; COLOR: #ff9933; FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif
+}
+.REALTYPE5 {
+ FONT-SIZE: xx-small; COLOR: #9933cc; FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif
+}
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/style.css b/schemas/OMNA Schema-based Namespace Registry_fichiers/style.css
new file mode 100644
index 0000000..f983cb2
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/style.css
@@ -0,0 +1,438 @@
+.omabutton {
+ PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: 12px; PADDING-BOTTOM: 0px; COLOR: #666666; LINE-HEIGHT: normal; PADDING-TOP: 0px; FONT-STYLE: normal; FONT-FAMILY: "Century Gothic"; TEXT-DECORATION: none
+}
+.footer {
+ FONT-SIZE: 9pt; FONT-FAMILY: Arial, Helvetica, sans-serif
+}
+.header {
+ FONT-SIZE: 9pt; FONT-FAMILY: Arial, Helvetica, sans-serif
+}
+.navbartab {
+ FONT-SIZE: 9pt; FONT-FAMILY: Arial, Helvetica, sans-serif
+}
+.footerlink {
+ FONT-SIZE: 11px; COLOR: #336600; FONT-FAMILY: Arial, Helvetica, sans-serif
+}
+.maintext {
+ FONT-SIZE: 11px; COLOR: #000000; LINE-HEIGHT: 14px; FONT-FAMILY: Arial, Helvetica, sans-serif
+}
+.subtitles {
+ FONT-SIZE: 12px; COLOR: #000000; LINE-HEIGHT: 15px; FONT-FAMILY: Arial, Helvetica, sans-serif
+}
+.login {
+ FONT-WEIGHT: normal; FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Arial, Helvetica, sans-serif
+}
+BODY {
+ MARGIN: 0pt 0px 0px; FONT-FAMILY: Verdana; HEIGHT: 100%; BACKGROUND-COLOR: #ffffff
+}
+.GCF-GT {
+
+}
+.ARCHIVED {
+ BACKGROUND-COLOR: #d2d2d2
+}
+.BCKG {
+ BACKGROUND-COLOR: #fef4e2
+}
+.BIGBOLDTEXT {
+ FONT-WEIGHT: bolder; FONT-SIZE: 100%; FONT-FAMILY: Arial, "Verdana", Helvetica, Sans-serif
+}
+.BIGTEXT {
+ FONT-SIZE: 100%; FONT-FAMILY: Arial, "Verdana", Helvetica, Sans-serif
+}
+.BLUE-LIGHT {
+ BACKGROUND: #5780d5
+}
+BODY {
+ MARGIN: 0pt; COLOR: #000000; FONT-FAMILY: Arial, Helvetica, Sans-serif; BACKGROUND-COLOR: #ffffff
+}
+BODY.POPUP {
+ MARGIN: 3pt; OVERFLOW: auto; COLOR: #000000; FONT-FAMILY: Arial, "Verdana", Helvetica, Sans-serif; BACKGROUND-COLOR: #ffffff
+}
+.BODY-ICONS {
+ MARGIN: 4pt 22pt 4pt 12pt
+}
+.BORDER {
+ BORDER-RIGHT: #c0c0c0 1px solid; BORDER-TOP: #c0c0c0 1px solid; BORDER-LEFT: #c0c0c0 1px solid; BORDER-BOTTOM: #c0c0c0 1px solid
+}
+.BORDER-BROWSER {
+ BORDER-RIGHT: lightgrey 3px inset; BORDER-TOP: dimgray 3px inset; MARGIN-TOP: 7px; MARGIN-LEFT: 3px; BORDER-LEFT: dimgray 3px inset; WIDTH: 98%; MARGIN-RIGHT: 3px; BORDER-BOTTOM: lightgrey 3px inset
+}
+.BORDER-HEADER {
+ BORDER-RIGHT: #c0c0c0 0px solid; BORDER-TOP: #c0c0c0 0px solid; BORDER-LEFT: #c0c0c0 0px solid; BORDER-BOTTOM: #c0c0c0 0px solid
+}
+.BULLET1 {
+ LIST-STYLE-IMAGE: url(../Images/arrow.gif); LIST-STYLE-TYPE: disc
+}
+.BUTTON {
+ BORDER-RIGHT: #6f695c 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: #aea799 1px solid; PADDING-LEFT: 2px; BACKGROUND: #aea799; PADDING-BOTTOM: 2px; BORDER-LEFT: #aea799 1px solid; COLOR: #ffffff; PADDING-TOP: 2px; BORDER-BOTTOM: #6f695c 1px solid; FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif; TEXT-DECORATION: none
+}
+.button {
+ BORDER-RIGHT: #6f695c 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: #aea799 1px solid; PADDING-LEFT: 2px; BACKGROUND: #aea799; PADDING-BOTTOM: 2px; BORDER-LEFT: #aea799 1px solid; COLOR: #ffffff; PADDING-TOP: 2px; BORDER-BOTTOM: #6f695c 1px solid; FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif; TEXT-DECORATION: none
+}
+.BUTTONdisabled {
+ FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif
+}
+CAPTION {
+ FONT-WEIGHT: lighter; FONT-SIZE: 70%; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; TEXT-ALIGN: left
+}
+.CAL-ITEMS {
+ FONT-SIZE: 8pt; COLOR: black; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.CAL-ITEMS A {
+ TEXT-DECORATION: none
+}
+.CAL-WE A {
+ TEXT-DECORATION: none
+}
+.CAL-TODAY A {
+ TEXT-DECORATION: none
+}
+.CAL-NEXTPREV A {
+ TEXT-DECORATION: none
+}
+.CAL_NEXTPREV {
+ FONT-WEIGHT: bolder; FONT-SIZE: 9pt; COLOR: #fffff0; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; BACKGROUND-COLOR: #669933
+}
+.CAL-WE {
+ FONT-SIZE: 8pt; COLOR: black; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; BACKGROUND-COLOR: #a2cc83
+}
+.CAL-TITLE {
+ FONT-WEIGHT: bolder; FONT-SIZE: 9pt; COLOR: #fffff0; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; BACKGROUND-COLOR: #517f40
+}
+.CAL-TODAY {
+ FONT-SIZE: 8pt; COLOR: black; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; BACKGROUND-COLOR: #99cc66
+}
+.CELL-BORDER {
+ BORDER-RIGHT: #ffffff 1px solid; BORDER-TOP: #ffffff 1px solid; BORDER-LEFT: #ffffff 1px solid; BORDER-BOTTOM: #ffffff 1px solid
+}
+.CELL-HEADER {
+ BACKGROUND-COLOR: #99cc00
+}
+.CELL-MENU {
+ PADDING-RIGHT: 2pt; PADDING-LEFT: 2pt; VERTICAL-ALIGN: middle; PADDING-TOP: 3pt; BACKGROUND-COLOR: #ffffff
+}
+.CENTER {
+ TEXT-ALIGN: center
+}
+.DATAGRID {
+ BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px
+}
+.DATAGRID TD {
+ PADDING-RIGHT: 3px; PADDING-LEFT: 3px; FONT-SIZE: 9pt; PADDING-BOTTOM: 1px; PADDING-TOP: 1px; BORDER-COLLAPSE: collapse
+}
+DG-NAVIGATOR {
+ BORDER-RIGHT: white 0px; BORDER-TOP: white 0px; FONT-WEIGHT: bolder; BORDER-LEFT: white 0px; COLOR: #5780d5; BORDER-BOTTOM: white 0px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+DD {
+ FONT-SIZE: 70%; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+DT {
+ FONT-WEIGHT: bolder; FONT-SIZE: 70%; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.ERROR {
+ FONT-SIZE: 11px; COLOR: #aa0000; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.EVEN {
+ BACKGROUND-COLOR: #e1f0f0; TEXT-ALIGN: left
+}
+.even {
+ BACKGROUND-COLOR: #e1f0f0; TEXT-ALIGN: left
+}
+.FILEBROWSER {
+ FONT-SIZE: 70%; COLOR: black; FONT-FAMILY: Tahoma,Verdana
+}
+.FILEBROWSER_HEADER_CELL {
+ BORDER-RIGHT: black 1px solid; BORDER-TOP: white 1px solid; FONT-SIZE: 70%; BORDER-LEFT: white 1px solid; BORDER-BOTTOM: black 1px solid; FONT-FAMILY: Tahoma,Verdana
+}
+.FILEBROWSER_HEADER_LINE {
+ BACKGROUND-COLOR: #d6d6ce
+}
+FORM {
+ MARGIN-BOTTOM: 0px; WIDTH: 100%; HEIGHT: 100%
+}
+FORM.POPUP {
+ MARGIN-BOTTOM: 0px; OVERFLOW: auto; WIDTH: 100%; HEIGHT: 100%
+}
+.FRAMETOP {
+ FONT-WEIGHT: bold; COLOR: black; BORDER-BOTTOM: #333399 2px solid; FONT-FAMILY: Arial, Helvetica, sans-serif; WHITE-SPACE: nowrap; HEIGHT: 13px; BACKGROUND-COLOR: #cbe5e5
+}
+H1 {
+ MARGIN-TOP: 0pt; FONT-SIZE: 90%; MARGIN-BOTTOM: 9pt; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; TEXT-ALIGN: left
+}
+H2 {
+ MARGIN-TOP: 0pt; FONT-SIZE: 85%; MARGIN-BOTTOM: 6pt; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; TEXT-ALIGN: left
+}
+H3 {
+ MARGIN-TOP: 0pt; FONT-WEIGHT: bolder; FONT-SIZE: 80%; MARGIN-BOTTOM: 3pt; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; TEXT-ALIGN: left
+}
+.HIDDEN {
+ DISPLAY: none
+}
+.INFO {
+ COLOR: #5780d5
+}
+.LEFT {
+ TEXT-ALIGN: left
+}
+.LEFT-HEADER {
+ PADDING-LEFT: 40pt; FONT-SIZE: 110%; VERTICAL-ALIGN: middle; COLOR: #fffff0; TEXT-ALIGN: left
+}
+.LISTTABLE {
+ MARGIN-TOP: 3px; MARGIN-LEFT: 3px; WIDTH: 98%; MARGIN-RIGHT: 3px; BORDER-COLLAPSE: collapse; BACKGROUND-COLOR: #dbeccd
+}
+.LOGINMENU {
+ FONT-WEIGHT: normal; FONT-SIZE: 11px; COLOR: #555555; FONT-FAMILY: Arial
+}
+TR.LOGINMENU TD {
+ BORDER-COLLAPSE: collapse; HEIGHT: 25px
+}
+.MANDATORYFIELD {
+ FONT-WEIGHT: bold; FONT-SIZE: 12px; COLOR: red; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+A.MENU-ICON2 {
+ FONT-WEIGHT: normal; FONT-SIZE: 75%; COLOR: #222222; FONT-FAMILY: Arial; TEXT-ALIGN: right; TEXT-DECORATION: none
+}
+.MENU-ICON-NIV1 {
+ FONT-SIZE: 60%; MARGIN-LEFT: 10px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.MENU-TABLE {
+ MARGIN-BOTTOM: 3px; WIDTH: 100%; BACKGROUND-COLOR: #ffffff
+}
+.SEARCH-CELL {
+ BORDER-RIGHT: #c0c0c0 2px solid; MARGIN-BOTTOM: 3px; WIDTH: 15%; BACKGROUND-COLOR: #fffff0
+}
+.NAVIGATION {
+ FONT-WEIGHT: bolder; COLOR: #5780d5; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.NAVIGATOR {
+ FONT-WEIGHT: bold; FONT-SIZE: 110%; COLOR: black
+}
+.NAVIGATORCURRENT {
+ FONT-WEIGHT: bold; FONT-SIZE: 110%; COLOR: green
+}
+.NORMALBOLDTEXT {
+ FONT-WEIGHT: bolder; FONT-SIZE: 9pt; FONT-FAMILY: Arial, Helvetica, sans-serif
+}
+.NORMALITALICTEXT {
+ FONT-SIZE: 9pt; FONT-STYLE: italic; FONT-FAMILY: Arial, Helvetica, sans-serif
+}
+.NORMALTEXT {
+ FONT-SIZE: 9pt; FONT-FAMILY: Arial, Helvetica, sans-serif
+}
+.ODD {
+ BACKGROUND-COLOR: #ffffff; TEXT-ALIGN: left
+}
+.odd {
+ BACKGROUND-COLOR: #ffffff; TEXT-ALIGN: left
+}
+OL {
+ FONT-WEIGHT: bolder; COLOR: #44628e
+}
+.RIGHT {
+ TEXT-ALIGN: right
+}
+.RIGHT-HEADER {
+ COLOR: #fffff0; TEXT-ALIGN: right
+}
+.RIGHT-INLINE {
+ DISPLAY: inline; TEXT-ALIGN: right
+}
+.SEARCH-TABLE {
+ BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px
+}
+.SMALLBOLDTEXT {
+ FONT-WEIGHT: bolder; FONT-SIZE: 9pt; FONT-FAMILY: Arial, Helvetica, sans-serif
+}
+.SMALLITALICTEXT {
+ FONT-SIZE: 65%; FONT-STYLE: italic; FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif
+}
+.SMALLTEXT {
+ FONT-SIZE: 65%; FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif
+}
+.SMALLEVEN {
+ FONT-SIZE: 10px; COLOR: #c43c03; FONT-FAMILY: Arial, "Verdana", Helvetica, Sans-serif
+}
+.SMALLODD {
+ FONT-SIZE: 10px; COLOR: navy; FONT-FAMILY: Arial, "Verdana", Helvetica, Sans-serif
+}
+.SORTBY {
+ FONT-WEIGHT: bold; COLOR: black
+}
+.SUBTITLE {
+ BACKGROUND-COLOR: #fef4e2
+}
+.TABLE-FOOTER {
+ BACKGROUND: #ffffff
+}
+.TABLE-HEADER {
+ BACKGROUND: #99cc00; WIDTH: 100%; COLOR: #fffff0; HEIGHT: 100%
+}
+TABLE-FORM {
+ BORDER-RIGHT: 0px solid; BORDER-TOP: 0px solid; MARGIN-BOTTOM: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: 0px solid; MARGIN-RIGHT: 3px; BORDER-BOTTOM: 0px solid
+}
+.TABLE-MAX-HEIGHT {
+ HEIGHT: 100%
+}
+.TABLE-SEPARATOR {
+ COLOR: #f5f5f5
+}
+TD.FILEBROWSER A {
+ COLOR: black; TEXT-DECORATION: none
+}
+TD.LIST {
+ BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 0px; FONT-SIZE: 60%; PADDING-BOTTOM: 0px; BORDER-LEFT: #cccccc 1px solid; PADDING-TOP: 0px; BORDER-BOTTOM: #cccccc 1px solid; BORDER-COLLAPSE: collapse
+}
+.TEXT-FOOTER {
+ FONT-SIZE: 9pt; COLOR: silver
+}
+TH {
+ FONT-WEIGHT: bold; FONT-SIZE: 80%; COLOR: black; BORDER-BOTTOM: #c1c1c1 1px solid; FONT-FAMILY: Arial, Verdana, Helvetica, Sans-serif; WHITE-SPACE: nowrap; HEIGHT: 25px; BACKGROUND-COLOR: #cbe5e5
+}
+.TITLE {
+ FONT-WEIGHT: bolder; FONT-SIZE: 95%; COLOR: #000000; FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif; BACKGROUND-COLOR: #cbe5e5; TEXT-ALIGN: center
+}
+.TITLE1 {
+ FONT-WEIGHT: bolder; FONT-SIZE: 100%; COLOR: #000000; FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif; BACKGROUND-COLOR: #e0e8f8; TEXT-ALIGN: center
+}
+UL {
+ FONT-SIZE: 100%
+}
+.UNSPACE {
+ PADDING-RIGHT: 0pt; PADDING-LEFT: 0pt; PADDING-BOTTOM: 0pt; PADDING-TOP: 0pt
+}
+.WARNING {
+ FONT-SIZE: 100%; COLOR: #ff0000; FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif
+}
+.WARNING-SMALL {
+ FONT-SIZE: 65%; COLOR: #ff0000; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.igmv_Month {
+ TABLE-LAYOUT: fixed; MARGIN-TOP: 5px; FONT-WEIGHT: bold; FONT-SIZE: x-small; OVERFLOW: hidden; BORDER-LEFT: #aca899 1px outset; COLOR: white; LINE-HEIGHT: 25px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; BORDER-COLLAPSE: collapse
+}
+.igmv_WeekNumber {
+ BORDER-RIGHT: black 1px solid; PADDING-RIGHT: 1px; BORDER-TOP: 1px outset; FONT-SIZE: 10pt; WIDTH: 20px; BORDER-BOTTOM: 1px outset; FONT-FAMILY: Tahoma, Verdana, Arial, Helvetica, sans-serif; BACKGROUND-COLOR: #ece9d8; TEXT-ALIGN: center
+}
+.igmv_MonthDayOfWeekHeader {
+ BORDER-RIGHT: 1px outset; PADDING-RIGHT: 2px; BORDER-TOP: 1px outset; MARGIN-TOP: 1px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 1px; MARGIN-LEFT: 1px; BORDER-LEFT: 1px outset; CURSOR: default; MARGIN-RIGHT: 1px; PADDING-TOP: 3px; BORDER-BOTTOM: #aca899 1px solid; FONT-FAMILY: Tahoma, Verdana, Arial, Helvetica, sans-serif; HEIGHT: 20px; BACKGROUND-COLOR: #ece9d8; TEXT-ALIGN: center
+}
+.igmv_MonthHeader {
+ WIDTH: 100%; HEIGHT: 25px; TEXT-ALIGN: center
+}
+.igmv_CaptionHeader {
+ BORDER-RIGHT: #608058 1px solid; FONT-WEIGHT: bold; FONT-SIZE: x-small; BACKGROUND-IMAGE: url(../images/MonthHeaderCaption_bg.png); COLOR: #ffffff; LINE-HEIGHT: 25px; BORDER-BOTTOM: #608058 1px solid; BACKGROUND-REPEAT: repeat-x; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; HEIGHT: 25px; TEXT-ALIGN: center
+}
+.igmv_Day {
+ BORDER-RIGHT: black 1px solid; COLOR: black; BORDER-BOTTOM: black 1px solid; BACKGROUND-COLOR: #ffffff
+}
+.igmv_OtherMonthDay {
+ BORDER-RIGHT: black 1px solid; COLOR: black; BORDER-BOTTOM: black 1px solid; BACKGROUND-COLOR: #dbeccd
+}
+.igmv_Today {
+
+}
+.igmv_ActiveDay {
+
+}
+.igmv_DayHeader {
+ PADDING-RIGHT: 2px; FONT-SIZE: x-small; COLOR: black; PADDING-TOP: 1px; BORDER-BOTTOM: #ffffd5 1px solid; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; HEIGHT: 15px; TEXT-ALIGN: right
+}
+.igmv_OtherMonthDayHeader {
+ PADDING-RIGHT: 2px; FONT-SIZE: x-small; PADDING-BOTTOM: 2px; COLOR: black; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; HEIGHT: 15px; TEXT-ALIGN: right
+}
+.igmv_TodayHeader {
+ BACKGROUND-POSITION: 50% bottom; BACKGROUND-IMAGE: url(../images/TodayHeader_bg.png); LINE-HEIGHT: 16px; BACKGROUND-REPEAT: repeat-x; HEIGHT: 17px; BACKGROUND-COLOR: #ffffd5
+}
+.igmv_ActiveDayHeader {
+ BORDER-RIGHT: #ffffd5 1px solid; PADDING-RIGHT: 1px; BORDER-TOP: #ffffd5 1px solid; BACKGROUND-IMAGE: none; BORDER-LEFT: #ffffd5 1px solid; COLOR: #ffffff; PADDING-TOP: 0px; BORDER-BOTTOM: #ffffd5 1px solid; HEIGHT: 13px; BACKGROUND-COLOR: #a2cc83
+}
+.igmv_Appointment {
+ MARGIN-TOP: 1px; PADDING-LEFT: 1px; FONT-SIZE: xx-small; MARGIN-LEFT: 2px; CURSOR: pointer; LINE-HEIGHT: 10px; MARGIN-RIGHT: 2px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; POSITION: relative; TOP: 0px; TEXT-ALIGN: left
+}
+.igmv_SelectedAppointment {
+ MARGIN-TOP: 1px; PADDING-LEFT: 0px; FONT-SIZE: xx-small; PADDING-BOTTOM: 0px; MARGIN-LEFT: 2px; CURSOR: pointer; COLOR: white; LINE-HEIGHT: 10px; MARGIN-RIGHT: 2px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; POSITION: relative; TOP: 0px; HEIGHT: 10px; BACKGROUND-COLOR: #93a070
+}
+.igmv_AllDayEvent {
+ MARGIN-TOP: 0px; FONT-SIZE: xx-small; MARGIN-LEFT: 0px; CURSOR: pointer; LINE-HEIGHT: 10px; MARGIN-RIGHT: 0px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; BACKGROUND-COLOR: #ffffff; TEXT-ALIGN: left
+}
+.igmv_NavigationButton {
+ BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 0px; BACKGROUND-POSITION: left top; PADDING-LEFT: 0px; BORDER-LEFT-WIDTH: 0px; BACKGROUND-IMAGE: url(../images/MonthHeaderCaption_bg.png); BORDER-BOTTOM-WIDTH: 0px; PADDING-BOTTOM: 0px; MARGIN-LEFT: 5px; LINE-HEIGHT: 25px; MARGIN-RIGHT: 5px; PADDING-TOP: 0px; HEIGHT: 24px; BORDER-RIGHT-WIDTH: 0px
+}
+.REALTYPE1 {
+ FONT-SIZE: xx-small; COLOR: #339933; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.REALTYPE2 {
+ FONT-SIZE: xx-small; COLOR: #0000ff; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.REALTYPE3 {
+ FONT-SIZE: xx-small; COLOR: #cc0000; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.REALTYPE4 {
+ FONT-SIZE: xx-small; COLOR: #ff9933; FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif
+}
+.REALTYPE5 {
+ FONT-SIZE: xx-small; COLOR: #9933cc; FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif
+}
+#leftnav_body {
+ FONT-WEIGHT: bolder; FONT-SIZE: 10px; MARGIN-BOTTOM: 3px; CURSOR: pointer; COLOR: #979080; PADDING-TOP: 0px; FONT-FAMILY: verdana; TEXT-DECORATION: none
+}
+#leftnav_container {
+ MARGIN-TOP: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: normal; FONT-SIZE: 10px; MARGIN-BOTTOM: 3px; WIDTH: 227px; CURSOR: pointer; COLOR: #979080; PADDING-TOP: 0px; FONT-FAMILY: verdana; TEXT-DECORATION: none
+}
+.link_leftnav {
+ PADDING-LEFT: 0px; FONT-WEIGHT: bolder; FONT-SIZE: 10px; MARGIN-BOTTOM: 3px; CURSOR: pointer; COLOR: white; PADDING-TOP: 3px; FONT-FAMILY: verdana; HEIGHT: 21px; TEXT-DECORATION: none
+}
+.link_leftnav_sel {
+ DISPLAY: block; PADDING-LEFT: 0px; FONT-WEIGHT: bolder; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(../images_menu/menu-left-background-selected.gif); MARGIN-BOTTOM: 3px; WIDTH: 100%; CURSOR: pointer; COLOR: #ffffff; PADDING-TOP: 3px; FONT-FAMILY: verdana; HEIGHT: 21px; TEXT-DECORATION: none
+}
+.copy_leftnav {
+ WIDTH: 100%; CURSOR: pointer; PADDING-TOP: 3px; HEIGHT: 21px; TEXT-DECORATION: none
+}
+.left_nav_item {
+ PADDING-LEFT: 5px; FONT-WEIGHT: bolder; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(../images_menu/menu-left-background-transparent-brown-arrow.gif); MARGIN-BOTTOM: 0px; CURSOR: pointer; COLOR: #979080; PADDING-TOP: 5px; BORDER-BOTTOM: white 1px solid; BACKGROUND-REPEAT: no-repeat; FONT-FAMILY: verdana; HEIGHT: 16px; BACKGROUND-COLOR: rgb(231,225,211); TEXT-DECORATION: none
+}
+.left_nav_item_on {
+ PADDING-LEFT: 5px; FONT-WEIGHT: bolder; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(../images_menu/menu-left-background-transparent-white-arrow-for-red-bg.gif); MARGIN-BOTTOM: 0px; CURSOR: pointer; COLOR: white; PADDING-TOP: 5px; BORDER-BOTTOM: white 1px solid; BACKGROUND-REPEAT: no-repeat; FONT-FAMILY: verdana; HEIGHT: 16px; BACKGROUND-COLOR: rgb(174,29,41); TEXT-DECORATION: none
+}
+.left_nav_item_selected {
+ DISPLAY: block; PADDING-LEFT: 5px; FONT-WEIGHT: bolder; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(../images_menu/menu-left-background-transparent-white-arrow-for-brown-bg.gif); MARGIN-BOTTOM: 0px; CURSOR: pointer; COLOR: #ffffff; PADDING-TOP: 5px; BORDER-BOTTOM: white 1px solid; BACKGROUND-REPEAT: no-repeat; FONT-FAMILY: verdana; HEIGHT: 16px; BACKGROUND-COLOR: rgb(111,105,92); TEXT-DECORATION: none
+}
+.left_nav_2_pad {
+ PADDING-LEFT: 55px; FONT-WEIGHT: bolder; FONT-SIZE: 10px; MARGIN-BOTTOM: 0px; CURSOR: pointer; COLOR: #979080; PADDING-TOP: 2px; BORDER-BOTTOM: white 1px solid; BACKGROUND-REPEAT: no-repeat; FONT-FAMILY: verdana; HEIGHT: 16px; BACKGROUND-COLOR: rgb(244,240,230); TEXT-DECORATION: none
+}
+.left_nav_2_pad_on {
+ PADDING-LEFT: 55px; FONT-WEIGHT: bolder; FONT-SIZE: 10px; MARGIN-BOTTOM: 0px; CURSOR: pointer; COLOR: #ae1d29; PADDING-TOP: 2px; BORDER-BOTTOM: white 1px solid; BACKGROUND-REPEAT: no-repeat; FONT-FAMILY: verdana; HEIGHT: 16px; BACKGROUND-COLOR: rgb(244,240,230); TEXT-DECORATION: none
+}
+.left_nav_2_pad:hover {
+ PADDING-LEFT: 55px; FONT-WEIGHT: bolder; FONT-SIZE: 10px; MARGIN-BOTTOM: 3px; CURSOR: pointer; COLOR: #979080; PADDING-TOP: 2px; BORDER-BOTTOM: white 1px solid; BACKGROUND-REPEAT: no-repeat; FONT-FAMILY: verdana; HEIGHT: 16px; BACKGROUND-COLOR: rgb(244,240,230); TEXT-DECORATION: none
+}
+.left_nav_1_pad {
+ PADDING-LEFT: 35px; FONT-WEIGHT: bolder; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(../images_menu/menu-left-under-transparent-background.png); MARGIN-BOTTOM: 0px; CURSOR: pointer; COLOR: #979080; PADDING-TOP: 5px; BORDER-BOTTOM: white 1px solid; BACKGROUND-REPEAT: no-repeat; FONT-FAMILY: verdana; HEIGHT: 16px; BACKGROUND-COLOR: rgb(244,240,230); TEXT-DECORATION: none
+}
+.left_nav_1_pad_on {
+ PADDING-LEFT: 35px; FONT-WEIGHT: bolder; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(../images_menu/menu-left-under-transparent-background.png); MARGIN-BOTTOM: 0px; CURSOR: pointer; COLOR: #ae1d29; PADDING-TOP: 5px; BORDER-BOTTOM: white 1px solid; BACKGROUND-REPEAT: no-repeat; FONT-FAMILY: verdana; HEIGHT: 16px; BACKGROUND-COLOR: rgb(244,240,230); TEXT-DECORATION: none
+}
+.left_nav_1_pad:hover {
+ PADDING-LEFT: 35px; FONT-WEIGHT: bolder; FONT-SIZE: 10px; BACKGROUND-IMAGE: url(../images_menu/menu-left-under-transparent-background.png); MARGIN-BOTTOM: 3px; CURSOR: pointer; COLOR: #979080; PADDING-TOP: 5px; BORDER-BOTTOM: white 1px solid; BACKGROUND-REPEAT: no-repeat; FONT-FAMILY: verdana; HEIGHT: 16px; BACKGROUND-COLOR: rgb(244,240,230); TEXT-DECORATION: none
+}
+.Menu_first_level_on {
+ BACKGROUND: red
+}
+A {
+ COLOR: #979080
+}
+A:hover {
+ COLOR: #979080
+}
+.POST {
+ BORDER-RIGHT: #6f695c 1px solid; BORDER-TOP: #6f695c 1px solid; BACKGROUND: #f1ece1; BORDER-LEFT: #6f695c 1px solid; BORDER-BOTTOM: #6f695c 1px solid
+}
+.post {
+ BORDER-RIGHT: #6f695c 1px solid; BORDER-TOP: #6f695c 1px solid; BACKGROUND: #f1ece1; BORDER-LEFT: #6f695c 1px solid; BORDER-BOTTOM: #6f695c 1px solid
+}
+.small_button {
+ BACKGROUND-POSITION: 50% top; FONT-SIZE: 0px; BACKGROUND-IMAGE: url(../../../Common/images/csv.gif); WIDTH: 36px; COLOR: #ffffff; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; HEIGHT: 14px; BORDER-BOTTOM-STYLE: none
+}
+.SMALL_BUTTON {
+ BACKGROUND-POSITION: 50% top; FONT-SIZE: 0px; BACKGROUND-IMAGE: url(../../../Common/images/csv.gif); WIDTH: 36px; COLOR: #ffffff; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; HEIGHT: 14px; BORDER-BOTTOM-STYLE: none
+}
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/styles.css b/schemas/OMNA Schema-based Namespace Registry_fichiers/styles.css
new file mode 100644
index 0000000..1a4dd62
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/styles.css
@@ -0,0 +1,135 @@
+.RadMenu_Default {
+ BORDER-RIGHT: #e5e5e5 1px solid; BORDER-TOP: #e5e5e5 1px solid; BACKGROUND: url(img/MenuItemBackground.gif) #ececec repeat-x; BORDER-LEFT: #bbbbbb 1px solid; BORDER-BOTTOM: #bbbbbb 1px solid
+}
+.RadMenu_Default_Context {
+ BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px
+}
+.RadMenu_Default .link {
+ BORDER-RIGHT: #d6d6d6 1px solid; BACKGROUND: url(img/MenuItemBackground.gif) #ececec repeat-x; BORDER-LEFT: #fff 1px solid; COLOR: #666; LINE-HEIGHT: 20px; TEXT-DECORATION: none
+}
+.RadMenu_Default .link:hover {
+ COLOR: #000
+}
+.RadMenu_Default .focused {
+ COLOR: #000
+}
+.RadMenu_Default .expanded {
+ COLOR: #000
+}
+.RadMenu_Default .text {
+ PADDING-RIGHT: 36px; PADDING-LEFT: 10px; FONT-SIZE: 11px; FONT-FAMILY: Arial, Verdana
+}
+.RadMenu_Default .group {
+ BORDER-RIGHT: #bbbbbb 0px solid; BORDER-TOP: #bbbbbb 1px solid; BORDER-LEFT: #bbbbbb 1px solid; BORDER-BOTTOM: #bbbbbb 0px solid
+}
+.RadMenu_Default .group .link {
+ BORDER-TOP: #fff 1px solid; BACKGROUND: #f7f7f7; BORDER-BOTTOM: #d7d7d7 1px solid; TEXT-ALIGN: left
+}
+.RadMenu_Default .group .link:hover {
+ FONT-WEIGHT: normal; BACKGROUND: #ededed; BORDER-BOTTOM-COLOR: #d7d7d7
+}
+.RadMenu_Default .group .focused {
+ FONT-WEIGHT: normal; BACKGROUND: #ededed; BORDER-BOTTOM-COLOR: #d7d7d7
+}
+.RadMenu_Default .group .expanded {
+ FONT-WEIGHT: normal; BACKGROUND: #ededed; BORDER-BOTTOM-COLOR: #d7d7d7
+}
+.RadMenu_Default .leftArrow {
+ BACKGROUND: url(img/left.gif) #ededed no-repeat center center; WIDTH: 15px
+}
+.RadMenu_Default .rightArrow {
+ BACKGROUND: url(img/left.gif) #ededed no-repeat center center; WIDTH: 15px
+}
+.RadMenu_Default .topArrow {
+ BACKGROUND: url(img/left.gif) #ededed no-repeat center center; WIDTH: 15px
+}
+.RadMenu_Default .bottomArrow {
+ BACKGROUND: url(img/left.gif) #ededed no-repeat center center; WIDTH: 15px
+}
+.RadMenu_Default .leftArrowDisabled {
+ BACKGROUND: url(img/left.gif) #ededed no-repeat center center; WIDTH: 15px
+}
+.RadMenu_Default .rightArrowDisabled {
+ BACKGROUND: url(img/left.gif) #ededed no-repeat center center; WIDTH: 15px
+}
+.RadMenu_Default .topArrowDisabled {
+ BACKGROUND: url(img/left.gif) #ededed no-repeat center center; WIDTH: 15px
+}
+.RadMenu_Default .bottomArrowDisabled {
+ BACKGROUND: url(img/left.gif) #ededed no-repeat center center; WIDTH: 15px
+}
+.RadMenu_Default .topArrow {
+ BACKGROUND-IMAGE: url(img/top.gif); WIDTH: 100%
+}
+.RadMenu_Default .topArrowDisabled {
+ BACKGROUND-IMAGE: url(img/top.gif); WIDTH: 100%
+}
+.RadMenu_Default .bottomArrow {
+ BACKGROUND-IMAGE: url(img/bottom.gif); WIDTH: 100%
+}
+.RadMenu_Default .bottomArrowDisabled {
+ BACKGROUND-IMAGE: url(img/bottom.gif); WIDTH: 100%
+}
+.RadMenu_Default .rightArrow {
+ HEIGHT: 100%
+}
+.RadMenu_Default .leftArrow {
+ HEIGHT: 100%
+}
+.RadMenu_Default .rightArrow {
+ BACKGROUND-IMAGE: url(img/right.gif)
+}
+.RadMenu_Default .rightArrowDisabled {
+ BACKGROUND-IMAGE: url(img/right.gif)
+}
+.RadMenu_Default .vertical .separator .text {
+ FONT-SIZE: 1px; BACKGROUND: #ccc; PADDING-TOP: 2px
+}
+.RadMenu_Default .expandLeft {
+ BACKGROUND: url(img/groupImage.gif) no-repeat right center; MARGIN-RIGHT: 4px
+}
+.RadMenu_Default .expandRight {
+ BACKGROUND: url(img/groupImage.gif) no-repeat right center; MARGIN-RIGHT: 4px
+}
+.RadMenu_Default_rtl .expandLeft {
+ BACKGROUND: url(img/groupImageRTL.gif) no-repeat left center
+}
+.RadMenu_Default_rtl .expandRight {
+ BACKGROUND: url(img/groupImageRTL.gif) no-repeat left center
+}
+.RadMenu_Default .link:hover .expandLeft {
+ BACKGROUND: url(img/invertedGroupImage.gif) no-repeat right center
+}
+.RadMenu_Default .link:hover .expandRight {
+ BACKGROUND: url(img/invertedGroupImage.gif) no-repeat right center
+}
+.RadMenu_Default .focused .expandLeft {
+ BACKGROUND: url(img/invertedGroupImage.gif) no-repeat right center
+}
+.RadMenu_Default .focused .expandRight {
+ BACKGROUND: url(img/invertedGroupImage.gif) no-repeat right center
+}
+.RadMenu_Default .expanded .expandLeft {
+ BACKGROUND: url(img/invertedGroupImage.gif) no-repeat right center
+}
+.RadMenu_Default .expanded .expandRight {
+ BACKGROUND: url(img/invertedGroupImage.gif) no-repeat right center
+}
+.RadMenu_Default_rtl .link:hover .expandLeft {
+ BACKGROUND: url(img/groupImageRTL.gif) no-repeat left center
+}
+.RadMenu_Default_rtl .link:hover .expandRight {
+ BACKGROUND: url(img/groupImageRTL.gif) no-repeat left center
+}
+.RadMenu_Default_rtl .focused .expandLeft {
+ BACKGROUND: url(img/groupImageRTL.gif) no-repeat left center
+}
+.RadMenu_Default_rtl .focused .expandRight {
+ BACKGROUND: url(img/groupImageRTL.gif) no-repeat left center
+}
+.RadMenu_Default_rtl .expanded .expandLeft {
+ BACKGROUND: url(img/groupImageRTL.gif) no-repeat left center
+}
+.RadMenu_Default_rtl .expanded .expandRight {
+ BACKGROUND: url(img/groupImageRTL.gif) no-repeat left center
+}
diff --git a/schemas/OMNA Schema-based Namespace Registry_fichiers/template.css b/schemas/OMNA Schema-based Namespace Registry_fichiers/template.css
new file mode 100644
index 0000000..0700836
--- /dev/null
+++ b/schemas/OMNA Schema-based Namespace Registry_fichiers/template.css
@@ -0,0 +1,672 @@
+.copy_main_list {
+ FONT-SIZE: 1em; COLOR: #3b3b39; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.icon_arrow {
+ FLOAT: right; MARGIN: 4px 8px 0px 0px
+}
+.icon_arrow_rb {
+ FLOAT: left; MARGIN: 4px 4px 0px 0px
+}
+.icon_open {
+ MARGIN: 2px 0px 0px; VERTICAL-ALIGN: top
+}
+.icon_minus {
+ MARGIN: 2px 0px 0px; VERTICAL-ALIGN: top
+}
+#leftarea_margin {
+ FLOAT: left; WIDTH: 6px
+}
+#leftarea {
+ FLOAT: left; MARGIN: 2px 0px 0px; WIDTH: 234px; HEIGHT: 100%
+}
+#left_block_hp {
+ FLOAT: left; WIDTH: 374px; HEIGHT: 100%
+}
+#left_block_hp_top {
+ FLOAT: left; WIDTH: 374px; LINE-HEIGHT: 5px; HEIGHT: 5px; BACKGROUND-COLOR: #348fcd
+}
+#left_block_hp_btm {
+ FLOAT: left; WIDTH: 374px; LINE-HEIGHT: 5px; HEIGHT: 5px; BACKGROUND-COLOR: #b9e1f5
+}
+#left_block_hp_body {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/back_lft1.jpg); WIDTH: 374px; BACKGROUND-REPEAT: repeat-x; HEIGHT: 674px
+}
+.left_block_hp_margin {
+ FLOAT: left; WIDTH: 12px
+}
+#left_block_hp_content {
+ FLOAT: left; WIDTH: 93%
+}
+#left_block_hp_tl {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/left_block_tl.gif); WIDTH: 5px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 5px
+}
+#left_block_hp_tr {
+ FLOAT: right; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/left_block_tr.gif); WIDTH: 5px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 5px
+}
+#left_block_hp_bl {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/left_block_bl.gif); WIDTH: 5px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 5px
+}
+#left_block_hp_br {
+ FLOAT: right; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/left_block_br.gif); WIDTH: 5px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 5px
+}
+.arrow_left {
+ FLOAT: left; MARGIN: 4px 4px 0px 0px
+}
+.home_tl_img {
+ FLOAT: left
+}
+#right_block_home_container {
+ FLOAT: left; WIDTH: 597px; HEIGHT: 100%
+}
+#right_block_home_top {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/home_right_block_top_strip.gif); WIDTH: 100%; LINE-HEIGHT: 6px; BACKGROUND-REPEAT: repeat-x; HEIGHT: 6px
+}
+#right_block_top_tl {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/home_right_block_top_tl.gif); WIDTH: 6px; LINE-HEIGHT: 6px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 6px
+}
+#right_block_top_tr {
+ FLOAT: right; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/home_right_block_top_tr.gif); WIDTH: 6px; LINE-HEIGHT: 6px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 6px
+}
+#right_block_home_heading_bg {
+ BORDER-RIGHT: #dcdcdc 1px solid; FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/home_right_top_strip.gif); BORDER-LEFT: #dcdcdc 1px solid; WIDTH: 595px; LINE-HEIGHT: 6px; BACKGROUND-REPEAT: repeat-x; HEIGHT: 59px
+}
+#right_block_inner {
+ BORDER-RIGHT: #dcdcdc 1px solid; FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/back_rtg.jpg); BORDER-LEFT: #dcdcdc 1px solid; WIDTH: 595px; BACKGROUND-REPEAT: repeat-x; HEIGHT: 565px; BACKGROUND-COLOR: #e0f1fa
+}
+#right_block_inner_plain {
+ BORDER-RIGHT: #dcdcdc 1px solid; FLOAT: left; BORDER-LEFT: #dcdcdc 1px solid; WIDTH: 595px; HEIGHT: 100%; BACKGROUND-COLOR: #fff
+}
+#right_block_inner_btm {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/hr_block_btm_dark_strip.gif); WIDTH: 597px; LINE-HEIGHT: 7px; BACKGROUND-REPEAT: repeat-x; HEIGHT: 7px
+}
+#right_block_inner_btm_bl {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/hr_block_btm_dark_bl.gif); WIDTH: 5px; LINE-HEIGHT: 7px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 7px
+}
+#right_block_inner_btm_br {
+ FLOAT: right; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/hr_block_btm_dark_br.gif); WIDTH: 5px; LINE-HEIGHT: 7px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 7px
+}
+#right_block_home_btm_light {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/home_right_block_btm_light.gif); WIDTH: 597px; LINE-HEIGHT: 7px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 7px
+}
+#right_block_top_section {
+ FLOAT: left; WIDTH: 594px
+}
+#right_block_home_container .divider {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/body_divider.gif); MARGIN: 2px 6px 0px; WIDTH: 1px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 11px
+}
+.right_box_object {
+ FLOAT: left; MARGIN: 0px 0px 6px 4px; WIDTH: 584px
+}
+.right_box_top {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/right_box_grad_strip.gif); BACKGROUND-REPEAT: repeat-x; HEIGHT: 23px
+}
+.right_box_tr {
+ FLOAT: right; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/right_box_tr.gif); WIDTH: 5px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 23px
+}
+.right_box_tl {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/right_box_tl.gif); WIDTH: 5px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 23px
+}
+.right_box_bl {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/right_box_bl.gif); WIDTH: 17px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 20px
+}
+.right_box_br {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/right_box_br.gif); WIDTH: 19px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 20px
+}
+#right_box_top_section_body {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/top_section_grad_strip.gif); WIDTH: 594px; BACKGROUND-REPEAT: repeat-y
+}
+.right_box_body {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/right_box_dbl_grad_strip.gif); WIDTH: 585px; BACKGROUND-REPEAT: repeat-y; HEIGHT: 84px
+}
+.right_box_content_left {
+ FLOAT: left; MARGIN: 6px 0px 0px 8px; WIDTH: 268px
+}
+.right_box_content_right {
+ FLOAT: left; MARGIN: 6px 0px 0px 28px; WIDTH: 268px
+}
+.right_box_content {
+ FLOAT: left; MARGIN: 6px 0px 0px 8px; WIDTH: 404px
+}
+#right_box_top_section_content {
+ FLOAT: left; MARGIN: 0px 0px 0px 6px; WIDTH: 580px
+}
+.right_box_btm {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/right_box_btm_strip.gif); WIDTH: 594px; LINE-HEIGHT: 20px; BACKGROUND-REPEAT: repeat-x; HEIGHT: 20px
+}
+.right_double_box_btm {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/right_box_btm.gif); WIDTH: 585px; LINE-HEIGHT: 19px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 19px
+}
+.right_box_btm_lc {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/right_box_bl.gif); WIDTH: 13px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 20px
+}
+.right_box_btm_rc {
+ FLOAT: right; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/right_box_br.gif); WIDTH: 15px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 20px
+}
+.right_box_top_content {
+ FLOAT: left; MARGIN: 3px 0px 0px 6px; WIDTH: 240px; HEIGHT: 20px
+}
+.right_box_icon {
+ FLOAT: right; MARGIN: 4px 2px 0px 0px
+}
+#right_box_wide_body {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/right_box_wide_grad_strip.gif); WIDTH: 406px; BACKGROUND-REPEAT: repeat-y
+}
+#content_nav {
+ BORDER-RIGHT: #dcdcdc 1px solid; FLOAT: left; BORDER-LEFT: #dcdcdc 1px solid; WIDTH: 595px; HEIGHT: 27px
+}
+#ContentDivContainer {
+ FLOAT: left; WIDTH: 410px; HEIGHT: 100%
+}
+#right_block_left_col {
+ FLOAT: left; WIDTH: 312px; HEIGHT: 100%
+}
+.right_block_img {
+ CLEAR: both; FLOAT: left; MARGIN: 8px 0px 8px 6px
+}
+#right_block_right_col {
+ FLOAT: left; WIDTH: 280px; HEIGHT: 100%
+}
+#rightblue_container {
+ CLEAR: both; BORDER-TOP: white 2px solid; FLOAT: left; WIDTH: 706px; HEIGHT: 100%
+}
+#rightblue_top {
+ FLOAT: left; WIDTH: 716px; HEIGHT: 6px; BACKGROUND-COLOR: #387cae
+}
+#rightblue_tlc {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/rightblue_tl.gif); WIDTH: 5px; LINE-HEIGHT: 6px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 6px
+}
+#rightblue_trc {
+ FLOAT: right; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/rightblue_tr.gif); WIDTH: 5px; LINE-HEIGHT: 6px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 6px
+}
+#rightblue_body {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/rightblue_grad_strip.gif); WIDTH: 716px; BACKGROUND-REPEAT: repeat-x; HEIGHT: 100%
+}
+#rightblue_main_block {
+ FONT-SIZE: 0.8em; FLOAT: left; WIDTH: 460px; HEIGHT: 100%
+}
+#rightblue_main_block_wide {
+ FLOAT: left; WIDTH: 694px; HEIGHT: 100%
+}
+#rightblue_main_body {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/righblue_main_grad_strip.gif); WIDTH: 439px; BACKGROUND-REPEAT: repeat-x; HEIGHT: 100%; BACKGROUND-COLOR: #fff
+}
+#rightblue_main_body_wide {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/righblue_main_grad_strip.gif); WIDTH: 682px; BACKGROUND-REPEAT: repeat-x; HEIGHT: 100%; BACKGROUND-COLOR: #fff
+}
+#rightblue_main_content_wide {
+ PADDING-RIGHT: 8px; PADDING-LEFT: 8px; FONT-SIZE: 0.8em; FLOAT: left; PADDING-BOTTOM: 8px; WIDTH: 662px; PADDING-TOP: 8px; HEIGHT: 100%
+}
+#rightwhite_main_body {
+ FLOAT: left; WIDTH: 682px; HEIGHT: 100%; BACKGROUND-COLOR: #fff
+}
+#rightblue_main_content {
+ PADDING-RIGHT: 14px; PADDING-LEFT: 14px; MIN-HEIGHT: 400px; FLOAT: left; PADDING-BOTTOM: 8px; WIDTH: 410px; PADDING-TOP: 8px; HEIGHT: 400px
+}
+.panel_object {
+ CLEAR: both; FLOAT: left; MARGIN: 0px 0px 2px; WIDTH: 234px
+}
+.panel_top {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/panel_grad_strip.gif); WIDTH: 234px; BORDER-BOTTOM: #9dbcda 1px solid; BACKGROUND-REPEAT: repeat-x; HEIGHT: 22px
+}
+.panel_lc {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/panel_lc.gif); WIDTH: 5px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 22px
+}
+.panel_rc {
+ FLOAT: right; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/panel_rc.gif); WIDTH: 5px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 22px
+}
+.panel_body {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/panel_grad_body_strip.gif); WIDTH: 234px; BACKGROUND-REPEAT: repeat-y; HEIGHT: 100%
+}
+#panel_btm {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/right_panel_btm.gif); WIDTH: 234px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 16px
+}
+.panel_content {
+ PADDING-RIGHT: 0px; PADDING-LEFT: 10px; FLOAT: left; PADDING-BOTTOM: 6px; WIDTH: 214px; PADDING-TOP: 6px
+}
+.panel_arrow {
+ FLOAT: left; MARGIN: 4px 6px 0px 0px
+}
+.panel_heading {
+ FLOAT: left; MARGIN: 5px 0px 0px 3px
+}
+#heading_margin {
+ FLOAT: left; WIDTH: 8px; HEIGHT: 12px
+}
+#heading_block {
+ FLOAT: left; MARGIN: 6px 0px; WIDTH: 439px
+}
+#heading_top {
+ CLEAR: both; FLOAT: left; WIDTH: 439px; LINE-HEIGHT: 12px; HEIGHT: 12px; BACKGROUND-COLOR: #659bc1
+}
+#heading_btm {
+ CLEAR: both; FLOAT: left; WIDTH: 439px; LINE-HEIGHT: 12px; HEIGHT: 12px; BACKGROUND-COLOR: #71a2c5
+}
+#heading_body {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/heading_grad_strip.gif); WIDTH: 439px; BACKGROUND-REPEAT: repeat-x; HEIGHT: 100%
+}
+#heading_content {
+ WIDTH: 500px
+}
+#heading_block_tl {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/heading_tl.gif); WIDTH: 12px; LINE-HEIGHT: 13px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 12px
+}
+#heading_block_tr {
+ FLOAT: right; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/heading_tr.gif); WIDTH: 12px; LINE-HEIGHT: 12px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 12px
+}
+#heading_block_bl {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/heading_bl.gif); WIDTH: 12px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 12px
+}
+#heading_block_br {
+ FLOAT: right; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/heading_br.gif); WIDTH: 12px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 12px
+}
+#righblue_main_top {
+ CLEAR: both; FLOAT: left; WIDTH: 439px; LINE-HEIGHT: 9px; HEIGHT: 9px
+}
+#righblue_main_tl {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/contentnav_tlc.gif); WIDTH: 10px; LINE-HEIGHT: 9px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 9px
+}
+#righblue_main_tr {
+ FLOAT: right; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/contentnav_trc.gif); WIDTH: 10px; LINE-HEIGHT: 9px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 9px
+}
+#righblue_main_tl_light {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/contentnav_tlc_light.gif); WIDTH: 10px; LINE-HEIGHT: 9px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 9px
+}
+#righblue_main_tr_light {
+ FLOAT: right; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/contentnav_trc_light.gif); WIDTH: 10px; LINE-HEIGHT: 9px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 9px
+}
+#right_btm_section_container {
+ FLOAT: left; WIDTH: 418px; HEIGHT: 97px
+}
+#right_btm_section_left {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/right_btm_section_corners.gif); WIDTH: 14px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 97px
+}
+#right_btm_section_body {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/right_btm_section_body_bg.gif); WIDTH: 404px; BACKGROUND-REPEAT: repeat-x; HEIGHT: 97px
+}
+#right_btm_content {
+ FLOAT: left; MARGIN: 0px 0px 0px 8px; WIDTH: 300px
+}
+.right_btm_section_img {
+ FLOAT: right; MARGIN: -143px 0px 0px
+}
+.right_btm_section_heading {
+ FLOAT: left; MARGIN: 12px 0px 0px
+}
+#top_right_links {
+ FLOAT: right; MARGIN: 0px 5px 0px 0px; WIDTH: 140px; HEIGHT: 44px
+}
+#top_right_links_lc {
+ FLOAT: left; WIDTH: 120px; TEXT-ALIGN: right
+}
+#top_right_links_rc {
+ FLOAT: left; WIDTH: 18px
+}
+.top_right_icon {
+ CLEAR: both; FLOAT: right; MARGIN: 3px 0px 0px
+}
+#right_box_wide_body {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/right_box_wide_grad_strip.gif); WIDTH: 415px; BACKGROUND-REPEAT: repeat-y
+}
+#contentnav_container {
+ FLOAT: left; WIDTH: 439px; HEIGHT: 29px
+}
+.contentnav_link {
+ FLOAT: left
+}
+.copy_main {
+ FONT-SIZE: 0.75em; COLOR: #3b3b39; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.copy_main_lg {
+ FONT-SIZE: 1em; COLOR: #3b3b39; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.copy_home_main {
+ FONT-SIZE: 0.8em; COLOR: #3b3b39; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.copy_main_heading {
+ COLOR: #3b3b39; LINE-HEIGHT: 1em
+}
+.copy_heading_alt {
+ FONT-SIZE: 1.5em; FLOAT: left; MARGIN: 0px 0px 0px 8px; COLOR: #fff; LINE-HEIGHT: 1.2em
+}
+.copy_heading_dark {
+ FONT-SIZE: 1.5em; FLOAT: left; MARGIN: 12px 0px 12px 6px; LINE-HEIGHT: 1.2em
+}
+.copy_heading_right_box {
+ FONT-SIZE: 0.9em; COLOR: #fff; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.copy_subhead_right_box {
+ FONT-WEIGHT: bold; FONT-SIZE: 0.7em; COLOR: #3a3a3a; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.copy_reg_light {
+ PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 0.7em; PADDING-BOTTOM: 0px; MARGIN: 0px 0px 4px; COLOR: #5e5f61; LINE-HEIGHT: 1.2em; PADDING-TOP: 0px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.copy_reg_bold {
+ FONT-WEIGHT: bold
+}
+A.link_main:link {
+ FONT-SIZE: 0.9em; COLOR: #002a4c; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+A.link_main:active {
+ FONT-SIZE: 0.9em; COLOR: #002a4c; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+A.link_main:visited {
+ FONT-SIZE: 0.9em; COLOR: #002a4c; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+A.link_main:hover {
+ FONT-SIZE: 0.9em; COLOR: #2a79b0; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+A.link_panel:link {
+ FONT-SIZE: 0.7em; FLOAT: left; COLOR: #002a4c; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+A.link_panel:active {
+ FONT-SIZE: 0.7em; FLOAT: left; COLOR: #002a4c; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+A.link_panel:visited {
+ FONT-SIZE: 0.7em; FLOAT: left; COLOR: #002a4c; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+A.link_panel:hover {
+ FONT-SIZE: 0.7em; FLOAT: left; COLOR: #2a79b0; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+A.link_icon:link {
+ FONT-SIZE: 0.6em; COLOR: #002a4c; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+A.link_icon:active {
+ FONT-SIZE: 0.6em; COLOR: #002a4c; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+A.link_icon:visited {
+ FONT-SIZE: 0.6em; COLOR: #002a4c; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+A.link_icon:hover {
+ FONT-SIZE: 0.6em; COLOR: #fff; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+A.link_right_box:link {
+ FONT-SIZE: 0.6em; FLOAT: left; COLOR: #002b4c; LINE-HEIGHT: 1.9em; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+A.link_right_box:active {
+ FONT-SIZE: 0.6em; FLOAT: left; COLOR: #002b4c; LINE-HEIGHT: 1.9em; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+A.link_right_box:visited {
+ FONT-SIZE: 0.6em; FLOAT: left; COLOR: #002b4c; LINE-HEIGHT: 1.9em; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+A.link_right_box:hover {
+ FONT-SIZE: 0.6em; FLOAT: left; COLOR: #002b4c; LINE-HEIGHT: 1.9em; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+A.link_right_box_bold:link {
+ FONT-WEIGHT: bold; FONT-SIZE: 0.6em; FLOAT: left; COLOR: #002b4c; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+A.link_right_box:active {
+ FONT-WEIGHT: bold; FONT-SIZE: 0.6em; FLOAT: left; COLOR: #002b4c; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+A.link_right_box_bold:visited {
+ FONT-WEIGHT: bold; FONT-SIZE: 0.6em; FLOAT: left; COLOR: #002b4c; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+A.link_right_box_bold:hover {
+ FONT-WEIGHT: bold; FONT-SIZE: 0.6em; FLOAT: left; COLOR: #002b4c; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.margin_12pxwide {
+ FLOAT: left; WIDTH: 12px
+}
+TABLE .heading {
+ FONT-WEIGHT: bold; FONT-SIZE: 0.9em; COLOR: #002a4c; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; BACKGROUND-COLOR: #9aceee
+}
+TABLE .data {
+ BORDER-RIGHT: #deeffa 1px solid; BORDER-TOP: #deeffa 1px solid; FONT-SIZE: 0.9em; BORDER-LEFT: #deeffa 1px solid; COLOR: #3b3b39; BORDER-BOTTOM: #deeffa 1px solid; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+#heading_block_light_tl {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/heading_light_tl.gif); WIDTH: 12px; LINE-HEIGHT: 12px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 12px
+}
+#heading_block_light_tr {
+ FLOAT: right; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/heading_light_tr.gif); WIDTH: 12px; LINE-HEIGHT: 12px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 12px
+}
+#heading_block_light_bl {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/heading_light_bl.gif); WIDTH: 12px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 12px
+}
+#heading_block_light_br {
+ FLOAT: right; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/heading_light_br.gif); WIDTH: 12px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 12px
+}
+#heading_landing_body {
+ FLOAT: left; WIDTH: 439px; HEIGHT: 100%; BACKGROUND-COLOR: #fff
+}
+#rightblue_body_landing {
+ FLOAT: left; WIDTH: 716px; HEIGHT: 100%; BACKGROUND-COLOR: #50b9e6
+}
+#landing_tlc {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/landing_tl.gif); WIDTH: 10px; LINE-HEIGHT: 10px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 10px
+}
+#landing_trc {
+ FLOAT: right; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/landing_tr.gif); WIDTH: 10px; LINE-HEIGHT: 10px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 10px
+}
+#landing_blc {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/landing_bl.gif); WIDTH: 10px; LINE-HEIGHT: 10px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 10px
+}
+#landing_brc {
+ FLOAT: right; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/landing_br.gif); WIDTH: 10px; LINE-HEIGHT: 10px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 10px
+}
+#landing_btm {
+ FLOAT: left; WIDTH: 716px; HEIGHT: 10px; BACKGROUND-COLOR: #52b9e4
+}
+#landing_main_btm {
+ CLEAR: both; FLOAT: left; WIDTH: 439px; LINE-HEIGHT: 12px; HEIGHT: 12px; BACKGROUND-COLOR: #fff
+}
+#landing_forth_events_body {
+ FONT-SIZE: 0.7em; FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/landing_events_strip.gif); WIDTH: 246px; COLOR: #3a3a38; LINE-HEIGHT: 1.1em; BACKGROUND-REPEAT: repeat-y; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; HEIGHT: 100%
+}
+#heading_top_ms {
+ CLEAR: both; FLOAT: left; WIDTH: 439px; LINE-HEIGHT: 12px; HEIGHT: 0px
+}
+#heading_btm_ms {
+ CLEAR: both; FLOAT: left; WIDTH: 439px; LINE-HEIGHT: 12px; HEIGHT: 12px
+}
+#heading_content_ms {
+ CLEAR: both; FLOAT: left; WIDTH: 439px; HEIGHT: 23px
+}
+#rightblue_body_landing_ms {
+ FLOAT: left; WIDTH: 720px; HEIGHT: 100%; BACKGROUND-COLOR: #fff
+}
+#rightblue_main_block_ms {
+ FLOAT: left; WIDTH: 508px; HEIGHT: 100%
+}
+#rightblue_main_block_wide_ms {
+ FLOAT: left; WIDTH: 715px; HEIGHT: 100%
+}
+#rightblue_container_ms {
+ CLEAR: both; FLOAT: left; WIDTH: 722px; HEIGHT: 100%
+}
+#rightblue_top_ms {
+ FLOAT: left; WIDTH: 719px; HEIGHT: 6px
+}
+#rightblue_top_left {
+ FLOAT: left; WIDTH: 497px; HEIGHT: 6px
+}
+#rightblue_top_right {
+ FLOAT: left; BORDER-LEFT: white 3px solid; WIDTH: 69px; HEIGHT: 6px
+}
+#heading_landing_body_ms {
+ FLOAT: left; WIDTH: 439px; HEIGHT: 40px; BACKGROUND-COLOR: #50b9e6
+}
+#landing_tlc_ms {
+ FLOAT: left; BACKGROUND-IMAGE: url(/ETSISite/Organization/ETSI/images/landing_tl_event.gif); WIDTH: 10px; LINE-HEIGHT: 10px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 10px
+}
+#landing_trc_ms {
+ FLOAT: right; BACKGROUND-IMAGE: url(/ETSISite/Organization/ETSI/images/landing_tr_event.gif); WIDTH: 10px; LINE-HEIGHT: 10px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 10px
+}
+.copy_landing_ms {
+ FONT-SIZE: 0.7em; COLOR: #3a3a38; LINE-HEIGHT: 1.1em; FONT-FAMILY: Verdana, Arial, sans-serif, Helvetica
+}
+#landing_main_body_ms {
+ FLOAT: left; WIDTH: 507px; HEIGHT: 100%; BACKGROUND-COLOR: #fff
+}
+.landing_events_container_ms {
+ FLOAT: left; WIDTH: 200px; HEIGHT: 100%
+}
+.landing_events_body_ms {
+ BORDER-RIGHT: red 0px solid; BORDER-TOP: red 0px solid; FLOAT: left; BORDER-LEFT: red 0px solid; WIDTH: 200px; BORDER-BOTTOM: red 0px solid; HEIGHT: 100%
+}
+.landing_events_top_panel_ms {
+ BORDER-RIGHT: red 0px solid; BORDER-TOP: red 0px solid; FLOAT: left; BACKGROUND-IMAGE: url(/ETSISite/Organization/ETSI/images/events_top_strip.gif); BORDER-LEFT: red 0px solid; WIDTH: 205px; BORDER-BOTTOM: red 0px solid; BACKGROUND-REPEAT: repeat-y; HEIGHT: 100%
+}
+.landing_events_copy_ms {
+ FLOAT: left; MARGIN: 0px 0px 0px 6px; WIDTH: 150px; HEIGHT: 100%
+}
+#quote_container_ms {
+ FLOAT: left; MARGIN: 0px 0px 0px 8px; WIDTH: 95%; HEIGHT: 100%
+}
+#rightblue_top_ms {
+ FLOAT: left; WIDTH: 716px; HEIGHT: 6px; BACKGROUND-COLOR: #377eb2
+}
+.plugtest_page_title {
+ FONT-SIZE: 1.4em; FLOAT: left; MARGIN: 0px 0px 0px 8px; COLOR: #24a5de; LINE-HEIGHT: 1.2em; POSITION: relative
+}
+.copy_landing {
+ FONT-SIZE: 1em; COLOR: #3a3a38; LINE-HEIGHT: 1.1em; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.copy_landing_bold {
+ FONT-WEIGHT: bold; FONT-SIZE: 0.7em; COLOR: #3a3a38; LINE-HEIGHT: 0.7em; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.copy_landing_events {
+ FONT-SIZE: 0.7em; FLOAT: left; MARGIN: 0px 0px 6px; COLOR: #3a3a38; LINE-HEIGHT: 1.1em; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.copy_landing_events_bold {
+ FONT-WEIGHT: bold; FONT-SIZE: 0.7em; FLOAT: left; MARGIN: 6px 0px 0px; COLOR: #3a3a38; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.copy_landing_subheading {
+ FONT-WEIGHT: bold; FONT-SIZE: 0.8em; FLOAT: left; COLOR: #fff; LINE-HEIGHT: 1.1em; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; HEIGHT: 18px
+}
+.plugtest_quote {
+ PADDING-RIGHT: 0px; PADDING-LEFT: 8px; FONT-SIZE: 1em; FLOAT: left; PADDING-BOTTOM: 12px; WIDTH: 190px; COLOR: #29aae1; LINE-HEIGHT: 1.1em; PADDING-TOP: 12px; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.plugtest_quote_bold {
+ FONT-WEIGHT: bold
+}
+.copy_content_box {
+ FONT-SIZE: 0.7em; FLOAT: left; COLOR: #53a9cc; LINE-HEIGHT: 1.1em; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+.copy_content_box_heading {
+ FONT-WEIGHT: bold; FONT-SIZE: 0.7em; FLOAT: left; MARGIN: 0px 0px 8px; WIDTH: 140px; COLOR: #53a9cc; LINE-HEIGHT: 1.1em; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+A.link_landing:link {
+ FONT-SIZE: 0.6em; COLOR: #fff; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+A.link_landing:active {
+ FONT-SIZE: 0.6em; COLOR: #fff; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+A.link_landing:visited {
+ FONT-SIZE: 0.6em; COLOR: #fff; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+A.link_landing:hover {
+ FONT-SIZE: 0.6em; COLOR: #2a79b0; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif
+}
+A.link_events:link {
+ FONT-SIZE: 0.7em; FLOAT: left; MARGIN: 4px 0px; COLOR: #53a9cc; LINE-HEIGHT: 1.2em; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; TEXT-DECORATION: none
+}
+A.link_events:active {
+ FONT-SIZE: 0.7em; FLOAT: left; MARGIN: 4px 0px; COLOR: #53a9cc; LINE-HEIGHT: 1.2em; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; TEXT-DECORATION: none
+}
+A.link_events:visited {
+ FONT-SIZE: 0.7em; FLOAT: left; MARGIN: 4px 0px; COLOR: #53a9cc; LINE-HEIGHT: 1.2em; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; TEXT-DECORATION: none
+}
+A.link_events:hover {
+ FONT-SIZE: 0.7em; FLOAT: left; MARGIN: 4px 0px; COLOR: #53a9cc; LINE-HEIGHT: 1.2em; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; TEXT-DECORATION: none
+}
+#landing_main_body {
+ FLOAT: left; WIDTH: 439px; HEIGHT: 100%
+}
+.main_landing_img {
+ FLOAT: left
+}
+.main_body_img {
+ FLOAT: right
+}
+#landing_main_content {
+ FLOAT: left; MARGIN: 0px 0px 4px; BORDER-LEFT: #50b9e6 1px solid; WIDTH: 439px; HEIGHT: 100%; BACKGROUND-COLOR: #fff
+}
+#landing_main_inner_content {
+ FLOAT: left; MARGIN: 4px 0px 4px 8px; WIDTH: 420px; HEIGHT: 100%
+}
+#landing_main_left_col {
+ FLOAT: left; MARGIN: 8px 0px 0px; WIDTH: 190px; HEIGHT: 100%
+}
+#landing_main_right_col {
+ FLOAT: right; WIDTH: 224px; HEIGHT: 100%
+}
+#landing_main_col {
+ FONT-SIZE: 1em; FLOAT: left; MARGIN: 8px 0px 0px; WIDTH: 420px; COLOR: #3a3a38; LINE-HEIGHT: 1.1em; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; HEIGHT: 100%
+}
+.landing_events_container {
+ FLOAT: left; WIDTH: 246px; HEIGHT: 100%
+}
+.landing_events_body {
+ FONT-SIZE: 0.7em; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/landing_events_strip.gif); WIDTH: 246px; COLOR: #3a3a38; LINE-HEIGHT: 1.1em; BACKGROUND-REPEAT: repeat-y; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; HEIGHT: 100%
+}
+.landing_events_btm {
+ FLOAT: left
+}
+.landing_events_top_panel {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/landing_events_top_strip.gif); WIDTH: 246px; BACKGROUND-REPEAT: repeat-y; HEIGHT: 100%
+}
+.landing_events_copy {
+ FLOAT: left; MARGIN: 0px 0px 0px 6px; WIDTH: 190px; HEIGHT: 100%
+}
+#quote_container {
+ FLOAT: left; MARGIN: 0px 0px 0px 8px; WIDTH: 95%; HEIGHT: 100%
+}
+.quote_open {
+ FLOAT: left
+}
+.quote_closed {
+ FLOAT: right
+}
+#leftarea_landing_margin {
+ FLOAT: left; WIDTH: 2px
+}
+#content_box {
+ FONT-SIZE: 1em; FLOAT: left; WIDTH: 224px; COLOR: #53a9cc; LINE-HEIGHT: 1.1em; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; HEIGHT: 100%
+}
+#content_box_top {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/content_box_top.gif); WIDTH: 224px; LINE-HEIGHT: 17px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 17px
+}
+#content_box_btm {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/content_box_btm.gif); WIDTH: 224px; LINE-HEIGHT: 17px; BACKGROUND-REPEAT: no-repeat; HEIGHT: 17px
+}
+#content_box_body {
+ FLOAT: left; BACKGROUND-IMAGE: url(/GenericSite/Organization/ETSI/images/content_box_bg_strip.gif); WIDTH: 224px; BACKGROUND-REPEAT: repeat-y; HEIGHT: 100%
+}
+#content_box_copy {
+ FLOAT: left; MARGIN: 0px 0px 0px 10px; WIDTH: 180px
+}
+.content_banner_image {
+
+}
+.question_mark {
+ FLOAT: right
+}
+.plugtests_logo {
+ FLOAT: right; MARGIN: 0px 8px 0px 0px
+}
+.oma_main_content {
+ HEIGHT: 80%
+}
+#content_main {
+ PADDING-LEFT: 15px; BACKGROUND: white; WIDTH: 450px; PADDING-TOP: 18px; HEIGHT: 200px
+}
+#content_main_onecol {
+ PADDING-LEFT: 15px; BACKGROUND: white; WIDTH: 674px; PADDING-TOP: 18px; HEIGHT: 200px
+}
+#content_whitespace {
+ PADDING-LEFT: 0px; BACKGROUND: white; WIDTH: 0px; PADDING-TOP: 0px; HEIGHT: 200px
+}
+#content_right_menu_top {
+ WIDTH: 228px; HEIGHT: 100px
+}
+#content_right_menu_bottom {
+ WIDTH: 228px; HEIGHT: 100px
+}
+#oma_nomenu_container {
+ PADDING-LEFT: 0px
+}
+#main_table {
+ WIDTH: 800px
+}
+.oma_homepage_zone_separator {
+ WIDTH: 9px
+}
diff --git a/schemas/basicPolicy.xml b/schemas/basicPolicy.xml
new file mode 100644
index 0000000..a43d30b
--- /dev/null
+++ b/schemas/basicPolicy.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema
+ targetNamespace="urn:ietf:params:xml:ns:pidf:geopriv10:basicPolicy"
+ xmlns:tns="urn:ietf:params:xml:ns:pidf:geopriv10:basicPolicy"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified" attributeFormDefault="unqualified">
+
+ <!-- This import brings in the XML language attribute xml:lang-->
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace"
+ schemaLocation="http://www.w3.org/2001/xml.xsd"/>
+
+ <xs:complexType name="locPolicyType">
+ <xs:sequence>
+ <xs:element name="retransmission-allowed" type="xs:boolean"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="retention-expiry" type="xs:dateTime"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="external-ruleset" type="xs:anyURI"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="note-well" type="tns:notewell"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:complexType name="notewell">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute ref="xml:lang" />
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+
+</xs:schema> \ No newline at end of file
diff --git a/schemas/caps.xml b/schemas/caps.xml
new file mode 100644
index 0000000..696a7ea
--- /dev/null
+++ b/schemas/caps.xml
@@ -0,0 +1,409 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:tns="urn:ietf:params:xml:ns:pidf:caps"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="urn:ietf:params:xml:ns:pidf:caps"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified">
+
+<!-- This import brings in the XML language
+ attribute xml:lang-->
+
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace"
+ schemaLocation="http://www.w3.org/2001/xml.xsd"/>
+
+<!-- ROOT -->
+ <xs:element name="servcaps" type="tns:servcapstype"/>
+ <xs:complexType name="servcapstype">
+ <xs:sequence>
+ <xs:element name="actor" type="tns:actortype"
+ minOccurs="0"/>
+ <xs:element name="application" type="tns:applicationtype"
+ minOccurs="0"/>
+ <xs:element name="audio" type="tns:audiotype" minOccurs="0"/>
+ <xs:element name="automata" type="tns:automatatype"
+ minOccurs="0"/>
+ <xs:element name="class" type="tns:classtype"
+ minOccurs="0"/>
+ <xs:element name="control" type="tns:controltype"
+ minOccurs="0"/>
+ <xs:element name="data" type="tns:datatype"
+ minOccurs="0"/>
+ <xs:element name="description" type="tns:descriptiontype"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="duplex" type="tns:duplextype"
+ minOccurs="0"/>
+ <xs:element name="event-packages" type="tns:event-packagestype"
+ minOccurs="0"/>
+ <xs:element name="extensions" type="tns:extensionstype"
+ minOccurs="0"/>
+ <xs:element name="isfocus" type="tns:isfocustype"
+ minOccurs="0"/>
+ <xs:element name="message" type="tns:messagetype"
+ minOccurs="0"/>
+ <xs:element name="methods" type="tns:methodstype"
+ minOccurs="0"/>
+ <xs:element name="languages" type="tns:languagestype"
+ minOccurs="0"/>
+ <xs:element name="priority" type="tns:prioritytype"
+ minOccurs="0"/>
+ <xs:element name="schemes" type="tns:schemestype"
+ minOccurs="0"/>
+ <xs:element name="text" type="tns:texttype"
+ minOccurs="0"/>
+ <xs:element name="type" type="tns:typetype"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="video" type="tns:videotype"
+ minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##any" processContents="lax"/>
+ </xs:complexType>
+
+ <xs:element name="devcaps" type="tns:devcaps"/>
+ <xs:complexType name="devcaps">
+ <xs:sequence>
+ <xs:element name="description" type="tns:descriptiontype"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="mobility" type="tns:mobilitytype"
+ minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##any" processContents="lax"/>
+ </xs:complexType>
+
+ <!-- AUDIO -->
+ <xs:simpleType name="audiotype">
+ <xs:restriction base="xs:boolean"/>
+ </xs:simpleType>
+
+ <!-- APPLICATION -->
+ <xs:simpleType name="applicationtype">
+ <xs:restriction base="xs:boolean"/>
+ </xs:simpleType>
+
+ <!-- DATA -->
+ <xs:simpleType name="datatype">
+ <xs:restriction base="xs:boolean"/>
+ </xs:simpleType>
+
+ <!-- CONTROL -->
+ <xs:simpleType name="controltype">
+ <xs:restriction base="xs:boolean"/>
+ </xs:simpleType>
+
+ <!-- VIDEO -->
+ <xs:simpleType name="videotype">
+ <xs:restriction base="xs:boolean"/>
+ </xs:simpleType>
+
+ <!-- TEXT -->
+ <xs:simpleType name="texttype">
+ <xs:restriction base="xs:boolean"/>
+ </xs:simpleType>
+
+ <!-- MESSAGE -->
+ <xs:simpleType name="messagetype">
+ <xs:restriction base="xs:boolean"/>
+ </xs:simpleType>
+
+ <!-- TYPE -->
+ <xs:simpleType name="typetype">
+ <xs:restriction base="xs:string"/>
+ </xs:simpleType>
+
+ <!-- AUTOMATA -->
+ <xs:simpleType name="automatatype">
+ <xs:restriction base="xs:boolean"/>
+ </xs:simpleType>
+
+ <!-- CLASS -->
+ <xs:complexType name="classtype">
+ <xs:sequence>
+ <xs:element name="supported" type="tns:classtypes"
+ minOccurs="0"/>
+ <xs:element name="notsupported" type="tns:classtypes"
+ minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="classtypes">
+ <xs:sequence>
+ <xs:element name="business" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="personal" type="xs:string"
+ minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+
+ <!-- DUPLEX -->
+ <xs:complexType name="duplextype">
+ <xs:sequence>
+ <xs:element name="supported" type="tns:duplextypes"
+ minOccurs="0"/>
+ <xs:element name="notsupported" type="tns:duplextypes"
+ minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="duplextypes">
+ <xs:sequence>
+ <xs:element name="full" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="half" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="receive-only" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="send-only" type="xs:string"
+ minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+
+ <!-- DESCRIPTION -->
+ <xs:complexType name="descriptiontype">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute ref="xml:lang"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+
+ <!-- EVENT-PACKAGES -->
+ <xs:complexType name="event-packagestype">
+ <xs:sequence>
+ <xs:element name="supported" type="tns:eventtypes"
+ minOccurs="0"/>
+ <xs:element name="notsupported" type="tns:eventtypes"
+ minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="eventtypes">
+ <xs:sequence>
+ <xs:element name="conference" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="dialog" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="kpml" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="message-summary" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="poc-settings" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="presence" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="reg" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="refer" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="Siemens-RTP-Stats"
+ type="xs:string" minOccurs="0"/>
+ <xs:element name="spirits-INDPs"
+ type="xs:string" minOccurs="0"/>
+ <xs:element name="spirits-user-prof"
+ type="xs:string" minOccurs="0"/>
+ <xs:element name="winfo" type="xs:string"
+ minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+
+ <!-- PRIORITY -->
+ <xs:complexType name="prioritytype">
+ <xs:sequence>
+ <xs:element name="supported" type="tns:prioritytypes"
+ minOccurs="0"/>
+ <xs:element name="notsupported" type="tns:prioritytypes"
+ minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="prioritytypes">
+ <xs:sequence>
+ <xs:element name="equals" type="tns:equalstype"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="higherhan" type="tns:higherthantype"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="lowerthan" type="tns:lowerthantype"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="range" type="tns:rangetype"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:any namespace="##other" processContents="lax"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="lowerthantype">
+ <xs:attribute name="maxvalue" type="xs:integer"
+ use="required"/>
+ </xs:complexType>
+ <xs:complexType name="higherthantype">
+ <xs:attribute name="minvalue" type="xs:integer"
+ use="required"/>
+ </xs:complexType>
+ <xs:complexType name="equalstype">
+ <xs:attribute name="value" type="xs:integer"
+ use="required"/>
+ </xs:complexType>
+ <xs:complexType name="rangetype">
+ <xs:attribute name="minvalue" type="xs:integer"
+ use="required"/>
+ <xs:attribute name="maxvalue" type="xs:integer"
+ use="required"/>
+ </xs:complexType>
+
+ <!-- METHODS -->
+ <xs:complexType name="methodstype">
+ <xs:sequence>
+ <xs:element name="supported" type="tns:methodtypes"
+ minOccurs="0"/>
+ <xs:element name="notsupported" type="tns:methodtypes"
+ minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="methodtypes">
+ <xs:sequence>
+ <xs:element name="ACK" type="xs:string" minOccurs="0"/>
+ <xs:element name="BYE" type="xs:string" minOccurs="0"/>
+ <xs:element name="CANCEL" type="xs:string" minOccurs="0"/>
+ <xs:element name="INFO" type="xs:string" minOccurs="0"/>
+ <xs:element name="INVITE" type="xs:string" minOccurs="0"/>
+ <xs:element name="MESSAGE" type="xs:string" minOccurs="0"/>
+ <xs:element name="NOTIFY" type="xs:string" minOccurs="0"/>
+ <xs:element name="OPTIONS" type="xs:string" minOccurs="0"/>
+ <xs:element name="PRACK" type="xs:string" minOccurs="0"/>
+ <xs:element name="PUBLISH" type="xs:string" minOccurs="0"/>
+ <xs:element name="REFER" type="xs:string" minOccurs="0"/>
+ <xs:element name="REGISTER" type="xs:string" minOccurs="0"/>
+ <xs:element name="SUBSCRIBE" type="xs:string" minOccurs="0"/>
+ <xs:element name="UPDATE" type="xs:string" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+
+ <!-- EXTENSIONS -->
+ <xs:complexType name="extensionstype">
+ <xs:sequence>
+ <xs:element name="supported" type="tns:extensiontypes"
+ minOccurs="0"/>
+ <xs:element name="notsupported" type="tns:extensiontypes"
+ minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="extensiontypes">
+ <xs:sequence>
+ <xs:element name="rel100" type="xs:string" minOccurs="0"/>
+ <xs:element name="early-session" type="xs:string" minOccurs="0"/>
+ <xs:element name="eventlist" type="xs:string" minOccurs="0"/>
+ <xs:element name="from-change" type="xs:string" minOccurs="0"/>
+ <xs:element name="gruu" type="xs:string" minOccurs="0"/>
+ <xs:element name="hist-info" type="xs:string" minOccurs="0"/>
+ <xs:element name="join" type="xs:string" minOccurs="0"/>
+ <xs:element name="norefersub" type="xs:string" minOccurs="0"/>
+ <xs:element name="path" type="xs:string" minOccurs="0"/>
+ <xs:element name="precondition" type="xs:string" minOccurs="0"/>
+ <xs:element name="pref" type="xs:string" minOccurs="0"/>
+ <xs:element name="privacy" type="xs:string" minOccurs="0"/>
+ <xs:element name="recipient-list-invite" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="recipient-list-subscribe" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="replaces" type="xs:string" minOccurs="0"/>
+ <xs:element name="resource-priority" type="xs:string" minOccurs="0"/>
+ <xs:element name="sdp-anat" type="xs:string" minOccurs="0"/>
+ <xs:element name="sec-agree" type="xs:string" minOccurs="0"/>
+ <xs:element name="tdialog" type="xs:string" minOccurs="0"/>
+ <xs:element name="timer" type="xs:string" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+
+ <!-- SCHEMES -->
+ <xs:complexType name="schemestype">
+ <xs:sequence>
+ <xs:element name="supported" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="s" type="xs:string" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="notsupported" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="s" type="xs:string" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+
+ <!-- ACTOR -->
+ <xs:complexType name="actortype">
+ <xs:sequence>
+ <xs:element name="supported" type="tns:actortypes"
+ minOccurs="0"/>
+ <xs:element name="notsupported" type="tns:actortypes"
+ minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="actortypes">
+ <xs:sequence>
+ <xs:element name="attendant" type="xs:string" minOccurs="0"/>
+ <xs:element name="information" type="xs:string" minOccurs="0"/>
+ <xs:element name="msg-taker" type="xs:string" minOccurs="0"/>
+ <xs:element name="principal" type="xs:string" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+
+ <!-- ISFOCUS -->
+ <xs:simpleType name="isfocustype">
+ <xs:restriction base="xs:boolean"/>
+ </xs:simpleType>
+
+ <!-- LANGUAGES -->
+ <xs:complexType name="languagestype">
+ <xs:sequence>
+ <xs:element name="supported" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="l" type="xs:string" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="notsupported" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="l" type="xs:string" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+
+ <!-- MOBILITY -->
+ <xs:complexType name="mobilitytype">
+ <xs:sequence>
+ <xs:element name="supported" type="tns:mobilitytypes"
+ minOccurs="0"/>
+ <xs:element name="notsupported" type="tns:mobilitytypes"
+ minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="mobilitytypes">
+ <xs:sequence>
+ <xs:element name="fixed" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="mobile" type="xs:string"
+ minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+</xs:schema>
diff --git a/schemas/cipid.xml b/schemas/cipid.xml
new file mode 100644
index 0000000..298af85
--- /dev/null
+++ b/schemas/cipid.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:cipid="urn:ietf:params:xml:ns:pidf:cipid" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:ietf:params:xml:ns:pidf:cipid" elementFormDefault="qualified" attributeFormDefault="unqualified">
+ <xs:annotation>
+ <xs:documentation>
+ Describes CIPID tuple extensions for PIDF.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:element name="card" type="xs:anyURI"/>
+ <xs:element name="display-name" type="xs:string"/>
+ <xs:element name="homepage" type="xs:anyURI"/>
+ <xs:element name="icon" type="xs:anyURI"/>
+ <xs:element name="map" type="xs:anyURI"/>
+ <xs:element name="sound" type="xs:anyURI"/>
+</xs:schema>
diff --git a/schemas/civicAddr.xml b/schemas/civicAddr.xml
new file mode 100644
index 0000000..3942c39
--- /dev/null
+++ b/schemas/civicAddr.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0"?>
+<xs:schema
+ targetNamespace="urn:ietf:params:xml:ns:pidf:geopriv10:civicAddr"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ xmlns:ca="urn:ietf:params:xml:ns:pidf:geopriv10:civicAddr"
+ xmlns:xml="http://www.w3.org/XML/1998/namespace"
+ elementFormDefault="qualified" attributeFormDefault="unqualified">
+
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace"
+ schemaLocation="http://www.w3.org/2001/xml.xsd"/>
+
+ <xs:simpleType name="iso3166a2">
+ <xs:restriction base="xs:token">
+ <xs:pattern value="[A-Z]{2}"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:complexType name="caType">
+ <xs:simpleContent>
+ <xs:extension base="xs:token">
+ <xs:attribute ref="xml:lang" use="optional"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+
+ <xs:element name="civicAddress" type="ca:civicAddress"/>
+ <xs:complexType name="civicAddress">
+ <xs:sequence>
+ <xs:element name="country" type="ca:iso3166a2" minOccurs="0"/>
+ <xs:element name="A1" type="ca:caType" minOccurs="0"/>
+ <xs:element name="A2" type="ca:caType" minOccurs="0"/>
+ <xs:element name="A3" type="ca:caType" minOccurs="0"/>
+ <xs:element name="A4" type="ca:caType" minOccurs="0"/>
+ <xs:element name="A5" type="ca:caType" minOccurs="0"/>
+ <xs:element name="A6" type="ca:caType" minOccurs="0"/>
+ <xs:element name="PRM" type="ca:caType" minOccurs="0"/>
+ <xs:element name="PRD" type="ca:caType" minOccurs="0"/>
+ <xs:element name="RD" type="ca:caType" minOccurs="0"/>
+ <xs:element name="STS" type="ca:caType" minOccurs="0"/>
+ <xs:element name="POD" type="ca:caType" minOccurs="0"/>
+ <xs:element name="POM" type="ca:caType" minOccurs="0"/>
+ <xs:element name="RDSEC" type="ca:caType" minOccurs="0"/>
+ <xs:element name="RDBR" type="ca:caType" minOccurs="0"/>
+ <xs:element name="RDSUBBR" type="ca:caType" minOccurs="0"/>
+ <xs:element name="HNO" type="ca:caType" minOccurs="0"/>
+ <xs:element name="HNS" type="ca:caType" minOccurs="0"/>
+ <xs:element name="LMK" type="ca:caType" minOccurs="0"/>
+ <xs:element name="LOC" type="ca:caType" minOccurs="0"/>
+ <xs:element name="FLR" type="ca:caType" minOccurs="0"/>
+ <xs:element name="NAM" type="ca:caType" minOccurs="0"/>
+ <xs:element name="PC" type="ca:caType" minOccurs="0"/>
+ <xs:element name="BLD" type="ca:caType" minOccurs="0"/>
+ <xs:element name="UNIT" type="ca:caType" minOccurs="0"/>
+ <xs:element name="ROOM" type="ca:caType" minOccurs="0"/>
+ <xs:element name="SEAT" type="ca:caType" minOccurs="0"/>
+ <xs:element name="PLC" type="xs:token" minOccurs="0"/>
+ <xs:element name="PCN" type="ca:caType" minOccurs="0"/>
+ <xs:element name="POBOX" type="ca:caType" minOccurs="0"/>
+ <xs:element name="ADDCODE" type="ca:caType" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##any" processContents="lax"/>
+ </xs:complexType>
+</xs:schema> \ No newline at end of file
diff --git a/schemas/civicLoc.xml b/schemas/civicLoc.xml
new file mode 100644
index 0000000..6010053
--- /dev/null
+++ b/schemas/civicLoc.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema
+ targetNamespace="urn:ietf:params:xml:ns:pidf:geopriv10:civicLoc"
+ xmlns:tns="urn:ietf:params:xml:ns:pidf:geopriv10:civicLoc"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified" attributeFormDefault="unqualified">
+
+ <xs:complexType name="civicAddress">
+ <xs:sequence>
+ <xs:element name="country" type="xs:string"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="A1" type="xs:string"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="A2" type="xs:string"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="A3" type="xs:string"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="A4" type="xs:string"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="A5" type="xs:string"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="A6" type="xs:string"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="PRD" type="xs:string"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="POD" type="xs:string"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="STS" type="xs:string"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="HNO" type="xs:string"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="HNS" type="xs:string"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="LMK" type="xs:string"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="LOC" type="xs:string"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="FLR" type="xs:string"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="NAM" type="xs:string"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="PC" type="xs:string"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+
+</xs:schema>
+
+
diff --git a/schemas/common-policy.xsd b/schemas/common-policy.xsd
new file mode 100644
index 0000000..529f3c8
--- /dev/null
+++ b/schemas/common-policy.xsd
@@ -0,0 +1,80 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Extracted from RFC 4745
+http://www.rfc-editor.org/rfc/rfc4745.txt
+
+NOTE: This file has been patched in order to generate a usable object mapping
+-->
+<xs:schema targetNamespace="urn:ietf:params:xml:ns:common-policy" xmlns:cp="urn:ietf:params:xml:ns:common-policy" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
+ <!-- /ruleset -->
+ <xs:element name="ruleset">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="rule" type="cp:ruleType" minOccurs="0" maxOccurs="unbounded" />
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <!-- /ruleset/rule -->
+ <xs:complexType name="ruleType">
+ <xs:sequence>
+ <xs:element name="conditions" type="cp:conditionsType" minOccurs="0" />
+ <xs:element name="actions" type="cp:extensibleType" minOccurs="0" />
+ <xs:element name="transformations" type="cp:extensibleType" minOccurs="0" />
+ </xs:sequence>
+ <xs:attribute name="id" type="xs:ID" use="required" />
+ </xs:complexType>
+ <!-- //rule/conditions -->
+ <xs:complexType name="conditionsType">
+ <xs:choice maxOccurs="unbounded">
+ <xs:element name="identity" type="cp:identityType" minOccurs="0" />
+ <xs:element name="sphere" type="cp:sphereType" minOccurs="0" />
+ <xs:element name="validity" type="cp:validityType" minOccurs="0" />
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded" />
+ </xs:choice>
+ </xs:complexType>
+ <!-- //conditions/identity -->
+ <xs:complexType name="identityType">
+ <xs:choice minOccurs="1" maxOccurs="unbounded">
+ <xs:element name="one" type="cp:oneType" />
+ <xs:element name="many" type="cp:manyType" />
+ <xs:any namespace="##other" processContents="lax" />
+ </xs:choice>
+ </xs:complexType>
+ <!-- //identity/one -->
+ <xs:complexType name="oneType">
+ <xs:sequence>
+ <xs:any namespace="##other" minOccurs="0" processContents="lax" />
+ </xs:sequence>
+ <xs:attribute name="id" type="xs:anyURI" use="required" />
+ </xs:complexType>
+ <!-- //identity/many -->
+ <xs:complexType name="manyType">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element name="except" type="cp:exceptType" />
+ <xs:any namespace="##other" minOccurs="0" processContents="lax" />
+ </xs:choice>
+ <xs:attribute name="domain" use="optional" type="xs:string" />
+ </xs:complexType>
+ <!-- //many/except -->
+ <xs:complexType name="exceptType">
+ <xs:attribute name="domain" type="xs:string" use="optional" />
+ <xs:attribute name="id" type="xs:anyURI" use="optional" />
+ </xs:complexType>
+ <!-- //conditions/sphere -->
+ <xs:complexType name="sphereType">
+ <xs:attribute name="value" type="xs:string" use="required" />
+ </xs:complexType>
+ <!-- //conditions/validity -->
+ <xs:complexType name="validityType">
+ <xs:sequence minOccurs="1" maxOccurs="unbounded">
+ <xs:element name="from" type="xs:dateTime" />
+ <xs:element name="until" type="xs:dateTime" />
+ </xs:sequence>
+ </xs:complexType>
+ <!-- //rule/actions or //rule/transformations -->
+ <xs:complexType name="extensibleType">
+ <xs:sequence>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded" />
+ </xs:sequence>
+ </xs:complexType>
+</xs:schema> \ No newline at end of file
diff --git a/schemas/common-schema.xsd b/schemas/common-schema.xsd
new file mode 100644
index 0000000..90bce05
--- /dev/null
+++ b/schemas/common-schema.xsd
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+ <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified" attributeFormDefault="unqualified">
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace"
+ schemaLocation="http://www.w3.org/2001/xml.xsd"/>
+ <xs:simpleType name="Timestamp_t">
+ <xs:annotation>
+ <xs:documentation>Timestamp type</xs:documentation>
+ </xs:annotation>
+ <xs:restriction base="xs:dateTime"/>
+ </xs:simpleType>
+ <xs:simpleType name="deviceID_t">
+ <xs:annotation>
+ <xs:documentation>Device ID, a URN</xs:documentation>
+ </xs:annotation>
+ <xs:restriction base="xs:anyURI"/>
+ </xs:simpleType>
+ <xs:complexType name="Note_t">
+ <xs:annotation>
+ <xs:documentation>Note type</xs:documentation>
+ </xs:annotation>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute ref="xml:lang"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:attributeGroup name="fromUntil">
+ <xs:attribute name="from" type="xs:dateTime"/>
+ <xs:attribute name="until" type="xs:dateTime"/>
+ </xs:attributeGroup>
+ <xs:complexType name="empty"/>
+ </xs:schema>
diff --git a/schemas/conference-info.xml b/schemas/conference-info.xml
new file mode 100644
index 0000000..1e14509
--- /dev/null
+++ b/schemas/conference-info.xml
@@ -0,0 +1,301 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:tns="urn:ietf:params:xml:ns:conference-info" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="urn:ietf:params:xml:ns:conference-info" targetNamespace="urn:ietf:params:xml:ns:conference-info" elementFormDefault="qualified" attributeFormDefault="unqualified">
+<!--
+ This imports the xml:language definition
+ -->
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/03/xml.xsd"/>
+<!--
+ CONFERENCE ELEMENT
+ -->
+ <xs:element name="conference-info" type="conference-type"/>
+<!--
+ CONFERENCE TYPE
+ -->
+ <xs:complexType name="conference-type">
+ <xs:sequence>
+ <xs:element name="conference-description" type="conference-description-type" minOccurs="0"/>
+ <xs:element name="host-info" type="host-type" minOccurs="0"/>
+ <xs:element name="conference-state" type="conference-state-type" minOccurs="0"/>
+ <xs:element name="users" type="users-type" minOccurs="0"/>
+ <xs:element name="sidebars-by-ref" type="uris-type" minOccurs="0"/>
+ <xs:element name="sidebars-by-val" type="sidebars-by-val-type" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="entity" type="xs:anyURI" use="required"/>
+ <xs:attribute name="state" type="state-type" use="optional" default="full"/>
+ <xs:attribute name="version" type="xs:unsignedInt" use="optional"/>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+<!--
+ STATE TYPE
+ -->
+ <xs:simpleType name="state-type">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="full"/>
+ <xs:enumeration value="partial"/>
+ <xs:enumeration value="deleted"/>
+ </xs:restriction>
+ </xs:simpleType>
+<!--
+ CONFERENCE DESCRIPTION TYPE
+ -->
+ <xs:complexType name="conference-description-type">
+ <xs:sequence>
+ <xs:element name="display-text" type="xs:string" minOccurs="0"/>
+ <xs:element name="subject" type="xs:string" minOccurs="0"/>
+ <xs:element name="free-text" type="xs:string" minOccurs="0"/>
+ <xs:element name="keywords" type="keywords-type" minOccurs="0"/>
+ <xs:element name="conf-uris" type="uris-type" minOccurs="0"/>
+ <xs:element name="service-uris" type="uris-type" minOccurs="0"/>
+ <xs:element name="maximum-user-count" type="xs:unsignedInt" minOccurs="0"/>
+ <xs:element name="available-media" type="conference-media-type" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+<!--
+ HOST TYPE
+ -->
+ <xs:complexType name="host-type">
+ <xs:sequence>
+ <xs:element name="display-text" type="xs:string" minOccurs="0"/>
+ <xs:element name="web-page" type="xs:anyURI" minOccurs="0"/>
+ <xs:element name="uris" type="uris-type" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+<!--
+ CONFERENCE STATE TYPE
+ -->
+ <xs:complexType name="conference-state-type">
+ <xs:sequence>
+ <xs:element name="user-count" type="xs:unsignedInt" minOccurs="0"/>
+ <xs:element name="active" type="xs:boolean" minOccurs="0"/>
+ <xs:element name="locked" type="xs:boolean" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+<!--
+ CONFERENCE MEDIA TYPE
+ -->
+ <xs:complexType name="conference-media-type">
+ <xs:sequence>
+ <xs:element name="entry" type="conference-medium-type" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+<!--
+ CONFERENCE MEDIUM TYPE
+ -->
+ <xs:complexType name="conference-medium-type">
+ <xs:sequence>
+ <xs:element name="display-text" type="xs:string" minOccurs="0"/>
+ <xs:element name="type" type="xs:string"/>
+ <xs:element name="status" type="media-status-type" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="label" type="xs:string" use="required"/>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+<!--
+ URIs TYPE
+ -->
+ <xs:complexType name="uris-type">
+ <xs:sequence>
+ <xs:element name="entry" type="uri-type" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="state" type="state-type" use="optional" default="full"/>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+<!--
+ URI TYPE
+ -->
+ <xs:complexType name="uri-type">
+ <xs:sequence>
+ <xs:element name="uri" type="xs:anyURI"/>
+ <xs:element name="display-text" type="xs:string" minOccurs="0"/>
+ <xs:element name="purpose" type="xs:string" minOccurs="0"/>
+ <xs:element name="modified" type="execution-type" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+<!--
+ KEWORDS TYPE
+ -->
+ <xs:simpleType name="keywords-type">
+ <xs:list itemType="xs:string"/>
+ </xs:simpleType>
+<!--
+ USERS TYPE
+ -->
+ <xs:complexType name="users-type">
+ <xs:sequence>
+ <xs:element name="user" type="user-type" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="state" type="state-type" use="optional" default="full"/>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+<!--
+ USER TYPE
+ -->
+ <xs:complexType name="user-type">
+ <xs:sequence>
+ <xs:element name="display-text" type="xs:string" minOccurs="0"/>
+ <xs:element name="associated-aors" type="uris-type" minOccurs="0"/>
+ <xs:element name="roles" type="user-roles-type" minOccurs="0"/>
+ <xs:element name="languages" type="user-languages-type" minOccurs="0"/>
+ <xs:element name="cascaded-focus" type="xs:anyURI" minOccurs="0"/>
+ <xs:element name="endpoint" type="endpoint-type" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="entity" type="xs:anyURI"/>
+ <xs:attribute name="state" type="state-type" use="optional" default="full"/>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+<!--
+ USER ROLES TYPE
+ -->
+ <xs:complexType name="user-roles-type">
+ <xs:sequence>
+ <xs:element name="entry" type="xs:string" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+<!--
+ USER LANGUAGES TYPE
+ -->
+ <xs:simpleType name="user-languages-type">
+ <xs:list itemType="xs:language"/>
+ </xs:simpleType>
+<!--
+ ENDPOINT TYPE
+ -->
+ <xs:complexType name="endpoint-type">
+ <xs:sequence>
+ <xs:element name="display-text" type="xs:string" minOccurs="0"/>
+ <xs:element name="referred" type="execution-type" minOccurs="0"/>
+ <xs:element name="status" type="endpoint-status-type" minOccurs="0"/>
+ <xs:element name="joining-method" type="joining-type" minOccurs="0"/>
+ <xs:element name="joining-info" type="execution-type" minOccurs="0"/>
+ <xs:element name="disconnection-method" type="disconnection-type" minOccurs="0"/>
+ <xs:element name="disconnection-info" type="execution-type" minOccurs="0"/>
+ <xs:element name="media" type="media-type" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="call-info" type="call-type" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="entity" type="xs:string"/>
+ <xs:attribute name="state" type="state-type" use="optional" default="full"/>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+<!--
+ ENDPOINT STATUS TYPE
+ -->
+ <xs:simpleType name="endpoint-status-type">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="pending"/>
+ <xs:enumeration value="dialing-out"/>
+ <xs:enumeration value="dialing-in"/>
+ <xs:enumeration value="alerting"/>
+ <xs:enumeration value="on-hold"/>
+ <xs:enumeration value="connected"/>
+ <xs:enumeration value="muted-via-focus"/>
+ <xs:enumeration value="disconnecting"/>
+ <xs:enumeration value="disconnected"/>
+ </xs:restriction>
+ </xs:simpleType>
+<!--
+ JOINING TYPE
+ -->
+ <xs:simpleType name="joining-type">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="dialed-in"/>
+ <xs:enumeration value="dialed-out"/>
+ <xs:enumeration value="focus-owner"/>
+ </xs:restriction>
+ </xs:simpleType>
+<!--
+ DISCONNECTION TYPE
+ -->
+ <xs:simpleType name="disconnection-type">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="departed"/>
+ <xs:enumeration value="booted"/>
+ <xs:enumeration value="failed"/>
+ <xs:enumeration value="busy"/>
+ </xs:restriction>
+ </xs:simpleType>
+<!--
+ EXECUTION TYPE
+ -->
+ <xs:complexType name="execution-type">
+ <xs:sequence>
+ <xs:element name="when" type="xs:dateTime" minOccurs="0"/>
+ <xs:element name="reason" type="xs:string" minOccurs="0"/>
+ <xs:element name="by" type="xs:anyURI" minOccurs="0"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+<!--
+ CALL TYPE
+ -->
+ <xs:complexType name="call-type">
+ <xs:choice>
+ <xs:element name="sip" type="sip-dialog-id-type"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:choice>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+<!--
+ SIP DIALOG ID TYPE
+ -->
+ <xs:complexType name="sip-dialog-id-type">
+ <xs:sequence>
+ <xs:element name="display-text" type="xs:string" minOccurs="0"/>
+ <xs:element name="call-id" type="xs:string"/>
+ <xs:element name="from-tag" type="xs:string"/>
+ <xs:element name="to-tag" type="xs:string"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+<!--
+ MEDIA TYPE
+ -->
+ <xs:complexType name="media-type">
+ <xs:sequence>
+ <xs:element name="display-text" type="xs:string" minOccurs="0"/>
+ <xs:element name="type" type="xs:string" minOccurs="0"/>
+ <xs:element name="label" type="xs:string" minOccurs="0"/>
+ <xs:element name="src-id" type="xs:string" minOccurs="0"/>
+ <xs:element name="status" type="media-status-type" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="id" type="xs:string" use="required"/>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+<!--
+ MEDIA STATUS TYPE
+ -->
+ <xs:simpleType name="media-status-type">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="recvonly"/>
+ <xs:enumeration value="sendonly"/>
+ <xs:enumeration value="sendrecv"/>
+ <xs:enumeration value="inactive"/>
+ </xs:restriction>
+ </xs:simpleType>
+<!--
+ SIDEBARS BY VAL TYPE
+ -->
+ <xs:complexType name="sidebars-by-val-type">
+ <xs:sequence>
+ <xs:element name="entry" type="conference-type" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="state" type="state-type" use="optional" default="full"/>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+</xs:schema>
diff --git a/schemas/consent-rules.xml b/schemas/consent-rules.xml
new file mode 100644
index 0000000..ddacb2e
--- /dev/null
+++ b/schemas/consent-rules.xml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+ <xs:schema
+ targetNamespace="urn:ietf:params:xml:ns:consent-rules"
+ xmlns:cr="urn:ietf:params:xml:ns:consent-rules"
+ xmlns:cp="urn:ietf:params:xml:ns:common-policy"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified">
+
+ <!-- Conditions -->
+ <xs:element name="recipient" type="cp:identityType"/>
+ <xs:element name="target" type="cp:identityType"/>
+
+ <!-- Actions -->
+ <xs:simpleType name="trans-values">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="deny"/>
+ <xs:enumeration value="grant"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:element name="trans-handling">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="trans-values">
+ <xs:attribute name="perm-uri" type="xs:anyURI"
+ use="required"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+
+ </xs:schema>
+
diff --git a/schemas/consent-status.xml b/schemas/consent-status.xml
new file mode 100644
index 0000000..f5f6e49
--- /dev/null
+++ b/schemas/consent-status.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema targetNamespace="urn:ietf:params:xml:ns:consent-status"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ xmlns:tns="urn:ietf:params:xml:ns:consent-status">
+ <xs:element name="consent-status">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="pending"/>
+ <xs:enumeration value="waiting"/>
+ <xs:enumeration value="error"/>
+ <xs:enumeration value="denied"/>
+ <xs:enumeration value="granted"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+</xs:schema> \ No newline at end of file
diff --git a/schemas/contact-1.0.xml b/schemas/contact-1.0.xml
new file mode 100644
index 0000000..9b4c244
--- /dev/null
+++ b/schemas/contact-1.0.xml
@@ -0,0 +1,388 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<schema targetNamespace="urn:ietf:params:xml:ns:contact-1.0"
+ xmlns:contact="urn:ietf:params:xml:ns:contact-1.0"
+ xmlns:epp="urn:ietf:params:xml:ns:epp-1.0"
+ xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
+ xmlns="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified">
+
+<!--
+Import common element types.
+-->
+ <import namespace="urn:ietf:params:xml:ns:eppcom-1.0"/>
+ <import namespace="urn:ietf:params:xml:ns:epp-1.0"/>
+
+ <annotation>
+ <documentation>
+ Extensible Provisioning Protocol v1.0
+ contact provisioning schema.
+ </documentation>
+ </annotation>
+
+<!--
+Child elements found in EPP commands.
+-->
+ <element name="check" type="contact:mIDType"/>
+ <element name="create" type="contact:createType"/>
+ <element name="delete" type="contact:sIDType"/>
+ <element name="info" type="contact:authIDType"/>
+ <element name="transfer" type="contact:authIDType"/>
+ <element name="update" type="contact:updateType"/>
+
+<!--
+Utility types.
+-->
+ <simpleType name="ccType">
+ <restriction base="token">
+ <length value="2"/>
+ </restriction>
+ </simpleType>
+
+ <complexType name="e164Type">
+ <simpleContent>
+ <extension base="contact:e164StringType">
+ <attribute name="x" type="token"/>
+ </extension>
+ </simpleContent>
+ </complexType>
+
+ <simpleType name="e164StringType">
+ <restriction base="token">
+ <pattern value="(\+[0-9]{1,3}\.[0-9]{1,14})?"/>
+ <maxLength value="17"/>
+ </restriction>
+ </simpleType>
+
+ <simpleType name="pcType">
+ <restriction base="token">
+ <maxLength value="16"/>
+ </restriction>
+ </simpleType>
+
+ <simpleType name="postalLineType">
+ <restriction base="normalizedString">
+ <minLength value="1"/>
+ <maxLength value="255"/>
+ </restriction>
+ </simpleType>
+
+ <simpleType name="optPostalLineType">
+ <restriction base="normalizedString">
+ <maxLength value="255"/>
+ </restriction>
+ </simpleType>
+
+<!--
+Child elements of the <create> command.
+-->
+ <complexType name="createType">
+ <sequence>
+ <element name="id" type="eppcom:clIDType"/>
+ <element name="postalInfo" type="contact:postalInfoType"
+ maxOccurs="2"/>
+ <element name="voice" type="contact:e164Type"
+ minOccurs="0"/>
+ <element name="fax" type="contact:e164Type"
+ minOccurs="0"/>
+ <element name="email" type="eppcom:minTokenType"/>
+ <element name="authInfo" type="contact:authInfoType"/>
+ <element name="disclose" type="contact:discloseType"
+ minOccurs="0"/>
+ </sequence>
+ </complexType>
+
+ <complexType name="postalInfoType">
+ <sequence>
+ <element name="name" type="contact:postalLineType"/>
+ <element name="org" type="contact:optPostalLineType"
+ minOccurs="0"/>
+ <element name="addr" type="contact:addrType"/>
+ </sequence>
+ <attribute name="type" type="contact:postalInfoEnumType"
+ use="required"/>
+ </complexType>
+
+ <simpleType name="postalInfoEnumType">
+ <restriction base="token">
+ <enumeration value="loc"/>
+ <enumeration value="int"/>
+ </restriction>
+ </simpleType>
+
+ <complexType name="addrType">
+ <sequence>
+ <element name="street" type="contact:optPostalLineType"
+ minOccurs="0" maxOccurs="3"/>
+ <element name="city" type="contact:postalLineType"/>
+ <element name="sp" type="contact:optPostalLineType"
+ minOccurs="0"/>
+ <element name="pc" type="contact:pcType"
+ minOccurs="0"/>
+ <element name="cc" type="contact:ccType"/>
+ </sequence>
+ </complexType>
+
+ <complexType name="authInfoType">
+ <choice>
+ <element name="pw" type="eppcom:pwAuthInfoType"/>
+ <element name="ext" type="eppcom:extAuthInfoType"/>
+ </choice>
+ </complexType>
+
+ <complexType name="discloseType">
+ <sequence>
+ <element name="name" type="contact:intLocType"
+ minOccurs="0" maxOccurs="2"/>
+ <element name="org" type="contact:intLocType"
+ minOccurs="0" maxOccurs="2"/>
+ <element name="addr" type="contact:intLocType"
+ minOccurs="0" maxOccurs="2"/>
+ <element name="voice" minOccurs="0"/>
+ <element name="fax" minOccurs="0"/>
+ <element name="email" minOccurs="0"/>
+ </sequence>
+ <attribute name="flag" type="boolean" use="required"/>
+ </complexType>
+
+ <complexType name="intLocType">
+ <attribute name="type" type="contact:postalInfoEnumType"
+ use="required"/>
+ </complexType>
+
+<!--
+Child element of commands that require only an identifier.
+-->
+ <complexType name="sIDType">
+ <sequence>
+ <element name="id" type="eppcom:clIDType"/>
+ </sequence>
+ </complexType>
+
+<!--
+Child element of commands that accept multiple identifiers.
+-->
+ <complexType name="mIDType">
+ <sequence>
+ <element name="id" type="eppcom:clIDType"
+ maxOccurs="unbounded"/>
+ </sequence>
+ </complexType>
+
+<!--
+Child elements of the <info> and <transfer> commands.
+-->
+ <complexType name="authIDType">
+ <sequence>
+ <element name="id" type="eppcom:clIDType"/>
+ <element name="authInfo" type="contact:authInfoType"
+ minOccurs="0"/>
+ </sequence>
+ </complexType>
+
+<!--
+Child elements of the <update> command.
+-->
+ <complexType name="updateType">
+ <sequence>
+ <element name="id" type="eppcom:clIDType"/>
+ <element name="add" type="contact:addRemType"
+ minOccurs="0"/>
+ <element name="rem" type="contact:addRemType"
+ minOccurs="0"/>
+ <element name="chg" type="contact:chgType"
+ minOccurs="0"/>
+ </sequence>
+ </complexType>
+
+<!--
+Data elements that can be added or removed.
+-->
+ <complexType name="addRemType">
+ <sequence>
+ <element name="status" type="contact:statusType"
+ maxOccurs="7"/>
+ </sequence>
+ </complexType>
+
+<!--
+Data elements that can be changed.
+-->
+ <complexType name="chgType">
+ <sequence>
+ <element name="postalInfo" type="contact:chgPostalInfoType"
+ minOccurs="0" maxOccurs="2"/>
+ <element name="voice" type="contact:e164Type"
+ minOccurs="0"/>
+ <element name="fax" type="contact:e164Type"
+ minOccurs="0"/>
+ <element name="email" type="eppcom:minTokenType"
+ minOccurs="0"/>
+ <element name="authInfo" type="contact:authInfoType"
+ minOccurs="0"/>
+ <element name="disclose" type="contact:discloseType"
+ minOccurs="0"/>
+ </sequence>
+ </complexType>
+
+ <complexType name="chgPostalInfoType">
+ <sequence>
+ <element name="name" type="contact:postalLineType"
+ minOccurs="0"/>
+ <element name="org" type="contact:optPostalLineType"
+ minOccurs="0"/>
+ <element name="addr" type="contact:addrType"
+ minOccurs="0"/>
+ </sequence>
+ <attribute name="type" type="contact:postalInfoEnumType"
+ use="required"/>
+ </complexType>
+
+<!--
+Child response elements.
+-->
+ <element name="chkData" type="contact:chkDataType"/>
+ <element name="creData" type="contact:creDataType"/>
+ <element name="infData" type="contact:infDataType"/>
+ <element name="panData" type="contact:panDataType"/>
+ <element name="trnData" type="contact:trnDataType"/>
+
+<!--
+<check> response elements.
+-->
+ <complexType name="chkDataType">
+ <sequence>
+ <element name="cd" type="contact:checkType"
+ maxOccurs="unbounded"/>
+ </sequence>
+ </complexType>
+
+ <complexType name="checkType">
+ <sequence>
+ <element name="id" type="contact:checkIDType"/>
+ <element name="reason" type="eppcom:reasonType"
+ minOccurs="0"/>
+ </sequence>
+ </complexType>
+
+ <complexType name="checkIDType">
+ <simpleContent>
+ <extension base="eppcom:clIDType">
+ <attribute name="avail" type="boolean"
+ use="required"/>
+ </extension>
+ </simpleContent>
+ </complexType>
+
+<!--
+<create> response elements.
+-->
+ <complexType name="creDataType">
+ <sequence>
+ <element name="id" type="eppcom:clIDType"/>
+ <element name="crDate" type="dateTime"/>
+ </sequence>
+ </complexType>
+
+<!--
+<info> response elements.
+-->
+ <complexType name="infDataType">
+ <sequence>
+ <element name="id" type="eppcom:clIDType"/>
+ <element name="roid" type="eppcom:roidType"/>
+ <element name="status" type="contact:statusType"
+ maxOccurs="7"/>
+ <element name="postalInfo" type="contact:postalInfoType"
+ maxOccurs="2"/>
+ <element name="voice" type="contact:e164Type"
+ minOccurs="0"/>
+ <element name="fax" type="contact:e164Type"
+ minOccurs="0"/>
+ <element name="email" type="eppcom:minTokenType"/>
+ <element name="clID" type="eppcom:clIDType"/>
+ <element name="crID" type="eppcom:clIDType"/>
+ <element name="crDate" type="dateTime"/>
+ <element name="upID" type="eppcom:clIDType"
+ minOccurs="0"/>
+ <element name="upDate" type="dateTime"
+ minOccurs="0"/>
+ <element name="trDate" type="dateTime"
+ minOccurs="0"/>
+ <element name="authInfo" type="contact:authInfoType"
+ minOccurs="0"/>
+ <element name="disclose" type="contact:discloseType"
+ minOccurs="0"/>
+ </sequence>
+ </complexType>
+
+<!--
+Status is a combination of attributes and an optional human-readable
+message that may be expressed in languages other than English.
+-->
+ <complexType name="statusType">
+ <simpleContent>
+ <extension base="normalizedString">
+ <attribute name="s" type="contact:statusValueType"
+ use="required"/>
+ <attribute name="lang" type="language"
+ default="en"/>
+ </extension>
+ </simpleContent>
+ </complexType>
+
+ <simpleType name="statusValueType">
+ <restriction base="token">
+ <enumeration value="clientDeleteProhibited"/>
+ <enumeration value="clientTransferProhibited"/>
+ <enumeration value="clientUpdateProhibited"/>
+ <enumeration value="linked"/>
+ <enumeration value="ok"/>
+ <enumeration value="pendingCreate"/>
+ <enumeration value="pendingDelete"/>
+ <enumeration value="pendingTransfer"/>
+ <enumeration value="pendingUpdate"/>
+ <enumeration value="serverDeleteProhibited"/>
+ <enumeration value="serverTransferProhibited"/>
+ <enumeration value="serverUpdateProhibited"/>
+ </restriction>
+ </simpleType>
+
+<!--
+Pending action notification response elements.
+-->
+ <complexType name="panDataType">
+ <sequence>
+ <element name="id" type="contact:paCLIDType"/>
+ <element name="paTRID" type="epp:trIDType"/>
+ <element name="paDate" type="dateTime"/>
+ </sequence>
+ </complexType>
+
+ <complexType name="paCLIDType">
+ <simpleContent>
+ <extension base="eppcom:clIDType">
+ <attribute name="paResult" type="boolean"
+ use="required"/>
+ </extension>
+ </simpleContent>
+ </complexType>
+
+<!--
+<transfer> response elements.
+-->
+ <complexType name="trnDataType">
+ <sequence>
+ <element name="id" type="eppcom:clIDType"/>
+ <element name="trStatus" type="eppcom:trStatusType"/>
+ <element name="reID" type="eppcom:clIDType"/>
+ <element name="reDate" type="dateTime"/>
+ <element name="acID" type="eppcom:clIDType"/>
+ <element name="acDate" type="dateTime"/>
+ </sequence>
+ </complexType>
+
+<!--
+End of schema.
+-->
+</schema> \ No newline at end of file
diff --git a/schemas/copycontrol.xml b/schemas/copycontrol.xml
new file mode 100644
index 0000000..76c73d6
--- /dev/null
+++ b/schemas/copycontrol.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema targetNamespace="urn:ietf:params:xml:ns:copycontrol"
+ xmlns="urn:ietf:params:xml:ns:copycontrol"
+ xmlns:rls="urn:ietf:params:xml:ns:resource-lists"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified">
+
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ Adds the copyControl, anonymize, and count attributes
+ to URIs included in a resource list.
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:import namespace="urn:ietf:params:xml:ns:resource-lists"
+ schemaLocation="urn:ietf:params:xml:schema:resource-lists"/>
+
+ <xs:attribute name="copyControl">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="to"/>
+ <xs:enumeration value="cc"/>
+ <xs:enumeration value="bcc"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+
+ <xs:attribute name="anonymize" type="xs:boolean" default="false"/>
+ <xs:attribute name="count" type="xs:nonNegativeInteger"
+ default="1"/>
+
+</xs:schema> \ No newline at end of file
diff --git a/schemas/cpl.xml b/schemas/cpl.xml
new file mode 100644
index 0000000..b9ec2b8
--- /dev/null
+++ b/schemas/cpl.xml
@@ -0,0 +1,533 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns="urn:ietf:params:xml:ns:cpl" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:ietf:params:xml:ns:cpl" elementFormDefault="qualified" attributeFormDefault="unqualified">
+ <xs:complexType name="TopLevelActionType" abstract="true">
+ <xs:group ref="Node"/>
+ </xs:complexType>
+ <xs:element name="toplevelaction" type="TopLevelActionType"/>
+ <xs:complexType name="ActionType" abstract="true"/>
+ <xs:element name="action" type="ActionType"/>
+ <xs:complexType name="SwitchType" abstract="true"/>
+ <xs:element name="switch" type="SwitchType"/>
+ <xs:complexType name="ModifierType" abstract="true"/>
+ <xs:element name="modifier" type="ModifierType"/>
+ <xs:element name="location" type="LocationType" substitutionGroup="modifier"/>
+ <xs:element name="lookup" type="LookupType" substitutionGroup="modifier"/>
+ <xs:element name="remove-location" type="RemoveLocationType" substitutionGroup="modifier"/>
+ <xs:element name="sub" type="SubAction"/>
+ <xs:group name="Node">
+ <xs:choice>
+ <xs:element ref="switch" minOccurs="0" maxOccurs="1"/>
+ <xs:element ref="modifier" minOccurs="0" maxOccurs="1"/>
+ <xs:element ref="sub" minOccurs="0" maxOccurs="1"/>
+ <xs:element ref="action" minOccurs="0" maxOccurs="1"/>
+ </xs:choice>
+ </xs:group>
+ <xs:complexType name="OtherwiseAction">
+ <xs:group ref="Node"/>
+ </xs:complexType>
+ <xs:complexType name="NotPresentAction">
+ <xs:group ref="Node"/>
+ </xs:complexType>
+ <xs:simpleType name="YesNoType">
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="yes"/>
+ <xs:enumeration value="no"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="StatusType">
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="busy"/>
+ <xs:enumeration value="notfound"/>
+ <xs:enumeration value="reject"/>
+ <xs:enumeration value="error"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="xs:string"/>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ <xs:simpleType name="OrderingType">
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="parallel"/>
+ <xs:enumeration value="sequential"/>
+ <xs:enumeration value="first-only"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="AddressFieldType">
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="origin"/>
+ <xs:enumeration value="destination"/>
+ <xs:enumeration value="original-destination"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="xs:string"/>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ <xs:simpleType name="AddressSubfieldType">
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="address-type"/>
+ <xs:enumeration value="user"/>
+ <xs:enumeration value="host"/>
+ <xs:enumeration value="port"/>
+ <xs:enumeration value="tel"/>
+ <xs:enumeration value="display"/>
+ <xs:enumeration value="password"/>
+ <xs:enumeration value="alias-type"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="xs:string"/>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ <xs:complexType name="AddressType">
+ <xs:annotation>
+ <xs:documentation>Exactly one of the three attributes must
+ appear</xs:documentation>
+ </xs:annotation>
+ <xs:group ref="Node"/>
+ <xs:attribute name="is" type="xs:string" use="optional"/>
+ <xs:attribute name="contains" type="xs:string" use="optional">
+ <xs:annotation>
+ <xs:documentation>for "display" only</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="subdomain-of" type="xs:string" use="optional">
+ <xs:annotation>
+ <xs:documentation>for "host", "tel" only</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:anyAttribute namespace="##any" processContents="lax"/>
+ </xs:complexType>
+ <xs:complexType name="AddressSwitchType">
+ <xs:complexContent>
+ <xs:extension base="SwitchType">
+ <xs:sequence>
+ <xs:element name="address" type="AddressType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:sequence minOccurs="0">
+ <xs:element name="not-present" type="NotPresentAction"/>
+ <xs:element name="address" type="AddressType" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:element name="otherwise" type="OtherwiseAction" minOccurs="0"/>
+ </xs:sequence>
+ <xs:attribute name="field" type="AddressFieldType" use="required"/>
+ <xs:attribute name="subfield" type="AddressSubfieldType" use="optional"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="address-switch" type="AddressSwitchType" substitutionGroup="switch"/>
+ <xs:simpleType name="StringFieldType">
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="subject"/>
+ <xs:enumeration value="organization"/>
+ <xs:enumeration value="user-agent"/>
+ <xs:enumeration value="display"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="StringType">
+ <xs:group ref="Node"/>
+ <xs:attribute name="is" type="xs:string" use="optional"/>
+ <xs:attribute name="contains" type="xs:string" use="optional"/>
+ <xs:anyAttribute namespace="##any" processContents="lax"/>
+ </xs:complexType>
+ <xs:complexType name="StringSwitchType">
+ <xs:complexContent>
+ <xs:extension base="SwitchType">
+ <xs:sequence>
+ <xs:element name="string" type="StringType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:sequence minOccurs="0">
+ <xs:element name="not-present" type="NotPresentAction"/>
+ <xs:element name="string" type="StringType" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:element name="otherwise" type="OtherwiseAction" minOccurs="0"/>
+ </xs:sequence>
+ <xs:attribute name="field" type="StringFieldType" use="required">
+ <xs:annotation>
+ <xs:documentation>Strings are matched as case-insensitive
+ Unicode strings.</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="string-switch" type="StringSwitchType" substitutionGroup="switch"/>
+ <xs:complexType name="LanguageType">
+ <xs:group ref="Node"/>
+ <xs:attribute name="matches" type="xs:string" use="required">
+ <xs:annotation>
+ <xs:documentation>The value of one of these parameters is a
+ language-tag, as defined in RFC
+ 3066.</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:anyAttribute namespace="##any" processContents="lax"/>
+ </xs:complexType>
+ <xs:complexType name="LanguageSwitchType">
+ <xs:complexContent>
+ <xs:extension base="SwitchType">
+ <xs:sequence>
+ <xs:element name="language" type="LanguageType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:sequence minOccurs="0">
+ <xs:element name="not-present" type="NotPresentAction"/>
+ <xs:element name="language" type="LanguageType" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:element name="otherwise" type="OtherwiseAction" minOccurs="0"/>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="language-switch" type="LanguageSwitchType" substitutionGroup="switch"/>
+ <xs:simpleType name="FreqType">
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:pattern value="[s|S][e|E][c|C][o|O][n|N][d|D][l|L][y|Y]"/>
+ <xs:pattern value="[m|M][i|I][n|N][u|U][t|T][e|E][l|L][y|Y]"/>
+ <xs:pattern value="[h|H][o|O][u|U][r|R][l|L][y|Y]"/>
+ <xs:pattern value="[d|D][a|A][i|I][l|L][y|Y]"/>
+ <xs:pattern value="[w|W][e|E][e|E][k|K][l|L][y|Y]"/>
+ <xs:pattern value="[m|M][o|N][n|N][t|T][h|H][l|L][y|Y]"/>
+ <xs:pattern value="[y|Y][e|E][a|A][r|R][l|L][y|Y]"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="YearDayType">
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:integer">
+ <xs:minInclusive value="-366"/>
+ <xs:maxInclusive value="-1"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="xs:integer">
+ <xs:minInclusive value="1"/>
+ <xs:maxExclusive value="366"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ <xs:simpleType name="DayType">
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:pattern value="[m|M][o|O]"/>
+ <xs:pattern value="[t|T][u|U]"/>
+ <xs:pattern value="[w|W][e|E]"/>
+ <xs:pattern value="[t|T][h|H]"/>
+ <xs:pattern value="[f|F][r|R]"/>
+ <xs:pattern value="[s|S][a|A]"/>
+ <xs:pattern value="[s|S][u|U]"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="TimeType">
+ <xs:annotation>
+ <xs:documentation>Exactly one of the two attributes "dtend" and
+ "duration" must occur. None of the attributes following
+ freq are meaningful unless freq appears.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:group ref="Node"/>
+ <xs:attribute name="dtstart" type="xs:string" use="required">
+ <xs:annotation>
+ <xs:documentation>RFC 2445 DATE-TIME</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="dtend" type="xs:string" use="optional">
+ <xs:annotation>
+ <xs:documentation>RFC 2445 DATE-TIME</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="duration" type="xs:string" use="optional">
+ <xs:annotation>
+ <xs:documentation>RFC 2445 DURATION</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="freq" type="FreqType" use="optional"/>
+ <xs:attribute name="interval" type="xs:positiveInteger" default="1"/>
+ <xs:attribute name="until" type="xs:string" use="optional">
+ <xs:annotation>
+ <xs:documentation>RFC 2445 DATE-TIME</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="count" type="xs:positiveInteger" use="optional"/>
+ <xs:attribute name="bysecond" type="xs:string" use="optional">
+ <xs:annotation>
+ <xs:documentation>Comma-separated list of seconds within a
+ minute. Valid values are 0 to 59.</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="byminute" type="xs:string" use="optional">
+ <xs:annotation>
+ <xs:documentation>Comma-separated list of minutes within an
+ hour. Valid values are 0 to 59.</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="byhour" type="xs:string" use="optional">
+ <xs:annotation>
+ <xs:documentation>Comma-separated list of hours of the day.
+ Valid values are 0 to 23.</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="byday" type="xs:string" use="optional">
+ <xs:annotation>
+ <xs:documentation>Comma-separated list of days of the week.
+ Valid values are "MO", "TU", "WE", "TH", "FR", "SA" and
+ "SU". These values are not case-sensitive. Each can be
+ preceded by a positive (+n) or negative (-n)
+ integer.</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="bymonthday" type="xs:string" use="optional">
+ <xs:annotation>
+ <xs:documentation>Comma-separated list of days of the month.
+ Valid values are 1 to 31 or -31 to
+ -1.</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="byyearday" type="xs:string" use="optional">
+ <xs:annotation>
+ <xs:documentation>Comma-separated list of days of the year.
+ Valid values are 1 to 366 or -366 to
+ -1.</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="byweekno" type="xs:string" use="optional">
+ <xs:annotation>
+ <xs:documentation>Comma-separated list of ordinals specifying
+ weeks of the year. Valid values are 1 to 53 or -53 to
+ -1.</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="bymonth" type="xs:string" use="optional">
+ <xs:annotation>
+ <xs:documentation>Comma-separated list of months of the year.
+ Valid values are 1 to 12.</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="wkst" type="DayType" default="MO"/>
+ <xs:attribute name="bysetpos" type="YearDayType"/>
+ <xs:anyAttribute namespace="##any" processContents="lax"/>
+ </xs:complexType>
+ <xs:simpleType name="TZIDType">
+ <xs:restriction base="xs:string"/>
+ </xs:simpleType>
+ <xs:simpleType name="TZURLType">
+ <xs:restriction base="xs:anyURI"/>
+ </xs:simpleType>
+ <xs:complexType name="TimeSwitchType">
+ <xs:complexContent>
+ <xs:extension base="SwitchType">
+ <xs:sequence>
+ <xs:element name="time" type="TimeType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:sequence minOccurs="0">
+ <xs:element name="not-present" type="NotPresentAction"/>
+ <xs:element name="time" type="TimeType" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:element name="otherwise" type="OtherwiseAction" minOccurs="0"/>
+ </xs:sequence>
+ <xs:attribute name="tzid" type="TZIDType"/>
+ <xs:attribute name="tzurl" type="TZURLType"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="time-switch" type="TimeSwitchType" substitutionGroup="switch"/>
+ <xs:simpleType name="PriorityValues">
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:pattern value="[e|E][m|M][e|E][r|R][g|G][e|E][n|N][c|C][y|Y]"/>
+ <xs:pattern value="[u|U][r|R][g|G][e|E][n|N][t|T]"/>
+ <xs:pattern value="[n|N][o|O][r|R][m|M][a|A][l|L]"/>
+ <xs:pattern value="[n|N][o|O][n|N]-[u|U][r|R][g|G][e|E][n|N][t|T]"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="PriorityType">
+ <xs:annotation>
+ <xs:documentation>Exactly one of the three attributes must
+ appear </xs:documentation>
+ </xs:annotation>
+ <xs:group ref="Node"/>
+ <xs:attribute name="less" type="PriorityValues"/>
+ <xs:attribute name="greater" type="PriorityValues"/>
+ <xs:attribute name="equal" type="xs:string">
+ <xs:annotation>
+ <xs:documentation>case-insensitive</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:anyAttribute namespace="##any" processContents="lax"/>
+ </xs:complexType>
+ <xs:complexType name="PrioritySwitchType">
+ <xs:complexContent>
+ <xs:extension base="SwitchType">
+ <xs:sequence>
+ <xs:element name="priority" type="PriorityType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:sequence minOccurs="0">
+ <xs:element name="not-present" type="NotPresentAction"/>
+ <xs:element name="priority" type="PriorityType" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:element name="otherwise" type="OtherwiseAction" minOccurs="0"/>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="priority-switch" type="PrioritySwitchType" substitutionGroup="switch"/>
+ <xs:simpleType name="LocationPriorityType">
+ <xs:restriction base="xs:float">
+ <xs:minInclusive value="0.0"/>
+ <xs:maxInclusive value="1.0"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="LocationType">
+ <xs:complexContent>
+ <xs:extension base="ModifierType">
+ <xs:group ref="Node"/>
+ <xs:attribute name="url" type="xs:anyURI" use="required"/>
+ <xs:attribute name="priority" type="LocationPriorityType" use="optional" default="1.0"/>
+ <xs:attribute name="clear" type="YesNoType" default="no"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="LookupType">
+ <xs:complexContent>
+ <xs:extension base="ModifierType">
+ <xs:all>
+ <xs:element name="success" minOccurs="0">
+ <xs:complexType>
+ <xs:group ref="Node"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="notfound" minOccurs="0">
+ <xs:complexType>
+ <xs:group ref="Node"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="failure" minOccurs="0">
+ <xs:complexType>
+ <xs:group ref="Node"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:all>
+ <xs:attribute name="source" type="xs:string" use="required"/>
+ <xs:attribute name="timeout" type="xs:positiveInteger" default="30"/>
+ <xs:attribute name="clear" type="YesNoType" default="no"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="RemoveLocationType">
+ <xs:complexContent>
+ <xs:extension base="ModifierType">
+ <xs:group ref="Node"/>
+ <xs:attribute name="location" type="xs:string" use="optional"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="LogAction">
+ <xs:complexContent>
+ <xs:extension base="ActionType">
+ <xs:group ref="Node"/>
+ <xs:attribute name="name" type="xs:string" use="optional"/>
+ <xs:attribute name="comment" type="xs:string" use="optional"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="log" type="LogAction" substitutionGroup="action"/>
+ <xs:complexType name="IncomingType">
+ <xs:complexContent>
+ <xs:extension base="TopLevelActionType"/>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="incoming" type="IncomingType" substitutionGroup="toplevelaction"/>
+ <xs:complexType name="OutgoingType">
+ <xs:complexContent>
+ <xs:extension base="TopLevelActionType"/>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="outgoing" type="OutgoingType" substitutionGroup="toplevelaction"/>
+ <xs:complexType name="ProxyAction">
+ <xs:complexContent>
+ <xs:extension base="ActionType">
+ <xs:all>
+ <xs:element name="busy" minOccurs="0">
+ <xs:complexType>
+ <xs:group ref="Node"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="noanswer" minOccurs="0">
+ <xs:complexType>
+ <xs:group ref="Node"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="failure" minOccurs="0">
+ <xs:complexType>
+ <xs:group ref="Node"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="redirection" minOccurs="0">
+ <xs:complexType>
+ <xs:group ref="Node"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="default" minOccurs="0">
+ <xs:complexType>
+ <xs:group ref="Node"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:all>
+ <xs:attribute name="timeout" type="xs:positiveInteger" use="optional" default="20"/>
+ <xs:attribute name="recursive" type="YesNoType" use="optional" default="yes"/>
+ <xs:attribute name="ordering" type="OrderingType" use="optional" default="parallel"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="proxy" type="ProxyAction" substitutionGroup="action"/>
+ <xs:complexType name="RedirectAction">
+ <xs:complexContent>
+ <xs:extension base="ActionType">
+ <xs:attribute name="permanent" type="YesNoType" default="no"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="redirect" type="RedirectAction" substitutionGroup="action"/>
+ <xs:complexType name="RejectAction">
+ <xs:complexContent>
+ <xs:extension base="ActionType">
+ <xs:attribute name="status" type="StatusType" use="required"/>
+ <xs:attribute name="reason" type="xs:string" use="optional"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="reject" type="RejectAction" substitutionGroup="action"/>
+ <xs:complexType name="MailAction">
+ <xs:complexContent>
+ <xs:extension base="ActionType">
+ <xs:group ref="Node"/>
+ <xs:attribute name="url" type="xs:anyURI" use="required"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="mail" type="MailAction" substitutionGroup="action"/>
+ <xs:complexType name="SubAction">
+ <xs:attribute name="ref" type="xs:string" use="required"/>
+ </xs:complexType>
+ <xs:complexType name="AncillaryType"/>
+ <xs:complexType name="SubactionType">
+ <xs:group ref="Node"/>
+ <xs:attribute name="id" use="required"/>
+ </xs:complexType>
+ <xs:complexType name="CPLType">
+ <xs:sequence>
+ <xs:element name="ancillary" type="AncillaryType" minOccurs="0" maxOccurs="1"/>
+ <xs:element name="subaction" type="SubactionType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="toplevelaction" minOccurs="0" maxOccurs="unbounded">
+ <xs:annotation>
+ <xs:documentation>Any toplevel action MUST NOT appear more
+ than once.</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:element name="cpl" type="CPLType"/>
+</xs:schema>
diff --git a/schemas/data-model.xsd b/schemas/data-model.xsd
new file mode 100644
index 0000000..3bd8068
--- /dev/null
+++ b/schemas/data-model.xsd
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+ <xs:schema targetNamespace="urn:ietf:params:xml:ns:pidf:data-model"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ xmlns="urn:ietf:params:xml:ns:pidf:data-model"
+ elementFormDefault="qualified" attributeFormDefault="unqualified">
+ <xs:include schemaLocation="common-schema.xsd"/>
+ <xs:element name="deviceID" type="deviceID_t">
+ <xs:annotation>
+ <xs:documentation>Device ID, a URN</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="device">
+ <xs:annotation>
+ <xs:documentation>Contains information about the
+ device</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:any namespace="##other" processContents="lax"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="deviceID"/>
+ <xs:element name="note" type="Note_t" minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xs:element name="timestamp" type="Timestamp_t" minOccurs="0"/>
+ </xs:sequence>
+ <xs:attribute name="id" type="xs:ID" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="person">
+ <xs:annotation>
+ <xs:documentation>Contains information about the human
+ user</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:any namespace="##other" processContents="lax"
+ minOccurs="0" maxOccurs="unbounded">
+ <xs:annotation>
+ <xs:documentation>Characteristic and status
+ information</xs:documentation>
+ </xs:annotation>
+ </xs:any>
+ <xs:element name="note" type="Note_t" minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xs:element name="timestamp" type="Timestamp_t" minOccurs="0"/>
+ </xs:sequence>
+ <xs:attribute name="id" type="xs:ID" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:schema>
+
diff --git a/schemas/dataProvider.xml b/schemas/dataProvider.xml
new file mode 100644
index 0000000..0ccc6d4
--- /dev/null
+++ b/schemas/dataProvider.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- edited with XMLSPY v5 rel. 3 U (http://www.xmlspy.com) by Patricia
+Bluhm (HBF Group) -->
+<xs:schema
+targetNamespace="urn:ietf:params:xml:ns:pidf:geopriv10:dataProvider"
+xmlns:tns="urn:ietf:params:xml:ns:pidf:geopriv10:dataProvider"
+xmlns:xs="http://www.w3.org/2001/XMLSchema"
+elementFormDefault="qualified" attributeFormDefault="unqualified">
+ <xs:complexType name="DataProviderIDType">
+ <xs:annotation>
+ <xs:documentation>NENA registered Company ID for
+Service Provider supplying location information</xs:documentation>
+ </xs:annotation>
+ <xs:all>
+ <xs:element name="DataProviderID"
+type="tns:NENACompanyIDType" minOccurs="0"/>
+ <xs:element name="TelURI" type="tns:TelURI_24x7Type"
+minOccurs="0"/>
+ <xs:element name="URL" type="xs:anyURI"
+minOccurs="0"/>
+ </xs:all>
+ </xs:complexType>
+ <xs:simpleType name="NENACompanyIDType">
+ <xs:annotation>
+ <xs:documentation>NENA registered Company
+ID.</xs:documentation>
+ </xs:annotation>
+ <xs:restriction base="xs:string">
+ <xs:maxLength value="5"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="TelURI_24x7Type">
+ <xs:annotation>
+ <xs:documentation>24x7 Tel URI for the caller's
+[location data] service provider. To be used for contacting service
+provider to resolve problems with location data. Possible values TN number,
+enumerated values when not available.</xs:documentation>
+ </xs:annotation>
+ <xs:union memberTypes="xs:anyURI">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:maxLength value="10"/>
+ <xs:enumeration value="NOT FOUND"/>
+ <xs:enumeration value="UNAVAILABL"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+</xs:schema>
+
+
+
+
+
+
diff --git a/schemas/dchk1.xml b/schemas/dchk1.xml
new file mode 100644
index 0000000..4139536
--- /dev/null
+++ b/schemas/dchk1.xml
@@ -0,0 +1,218 @@
+<?xml version="1.0"?>
+<schema xmlns="http://www.w3.org/2001/XMLSchema"
+ xmlns:dchk="urn:ietf:params:xml:ns:dchk1"
+ xmlns:iris="urn:ietf:params:xml:ns:iris1"
+ targetNamespace="urn:ietf:params:xml:ns:dchk1"
+ elementFormDefault="qualified" >
+
+ <import namespace="urn:ietf:params:xml:ns:iris1" />
+
+ <annotation>
+ <documentation>
+ Domain availability check schema
+ derived from IRIS schema
+ </documentation>
+ </annotation>
+
+ <!-- ========================================= -->
+ <!-- -->
+ <!-- Result Types -->
+ <!-- -->
+ <!-- ========================================= -->
+
+ <!-- -->
+ <!-- Domain -->
+ <!-- -->
+
+ <complexType
+ name="domainType">
+ <complexContent>
+ <extension
+ base="iris:resultType">
+ <sequence>
+ <element
+ name="domainName"
+ type="token" />
+ <element
+ name="idn"
+ type="token"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element name="status"
+ minOccurs="0"
+ maxOccurs="1">
+ <complexType>
+ <choice minOccurs="0" maxOccurs="unbounded">
+ <element
+ name="active"
+ type="dchk:domainStatusType" />
+ <element
+ name="inactive"
+ type="dchk:domainStatusType" />
+ <element
+ name="dispute"
+ type="dchk:domainStatusType" />
+ <element
+ name="renew"
+ type="dchk:domainStatusType" />
+ <element
+ name="addPeriod"
+ type="dchk:domainStatusType" />
+ <element
+ name="renewPeriod"
+ type="dchk:domainStatusType" />
+ <element
+ name="autoRenewPeriod"
+ type="dchk:domainStatusType" />
+ <element
+ name="transferPeriod"
+ type="dchk:domainStatusType" />
+ <element
+ name="redemptionPeriod"
+ type="dchk:domainStatusType" />
+ <element
+ name="restore"
+ type="dchk:domainStatusType" />
+ <element
+ name="policyCompliant"
+ type="dchk:domainStatusType" />
+ <element
+ name="policyNoncompliant"
+ type="dchk:domainStatusType" />
+ <element
+ name="reserved"
+ type="dchk:domainStatusType" />
+ <element
+ name="create"
+ type="dchk:domainStatusType" />
+ <element
+ name="delete"
+ type="dchk:domainStatusType" />
+ <element
+ name="transfer"
+ type="dchk:domainStatusType" />
+ <element
+ name="update"
+ type="dchk:domainStatusType" />
+ <element
+ name="other"
+ type="dchk:domainStatusType" />
+ </choice>
+ </complexType>
+ </element>
+ <element
+ name="registrationReference"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="createdDateTime"
+ type="dateTime"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="initialDelegationDateTime"
+ type="dateTime"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="expirationDateTime"
+ type="dateTime"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="lastDatabaseUpdateDateTime"
+ type="dateTime"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ ref="iris:seeAlso"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+
+ <element
+ name="domain"
+ type="dchk:domainType"
+ substitutionGroup="iris:result" />
+
+ <complexType
+ name="domainStatusType">
+ <sequence>
+ <element
+ name="appliedDate"
+ type="dateTime"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="ticket"
+ type="token"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ <element
+ name="description"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <complexType>
+ <simpleContent>
+ <extension
+ base="string">
+ <attribute
+ name="language"
+ type="language"
+ use="required" />
+ </extension>
+ </simpleContent>
+ </complexType>
+ </element>
+ <element
+ name="subStatus"
+ minOccurs="0"
+ maxOccurs="1">
+ <complexType>
+ <simpleContent>
+ <extension
+ base="token">
+ <attribute
+ type="token"
+ use="required"
+ name="authority"/>
+ </extension>
+ </simpleContent>
+ </complexType>
+ </element>
+ </sequence>
+ <attribute
+ name="actor">
+ <simpleType>
+ <restriction
+ base="string">
+ <enumeration
+ value="registry"/>
+ <enumeration
+ value="registrar"/>
+ <enumeration
+ value="registrationServiceProvider"/>
+ </restriction>
+ </simpleType>
+ </attribute>
+ <attribute
+ name="disposition">
+ <simpleType>
+ <restriction
+ base="string">
+ <enumeration
+ value="prohibited"/>
+ <enumeration
+ value="pending"/>
+ </restriction>
+ </simpleType>
+ </attribute>
+ <attribute
+ name="scope"
+ type="token" />
+ </complexType>
+</schema> \ No newline at end of file
diff --git a/schemas/dialog-info.xml b/schemas/dialog-info.xml
new file mode 100644
index 0000000..7973bb9
--- /dev/null
+++ b/schemas/dialog-info.xml
@@ -0,0 +1,125 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="urn:ietf:params:xml:ns:dialog-info" targetNamespace="urn:ietf:params:xml:ns:dialog-info" elementFormDefault="qualified" attributeFormDefault="unqualified">
+<!-- This import brings in the XML language attribute xml:lang-->
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/03/xml.xsd"/>
+ <xs:element name="dialog-info">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="tns:dialog" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="version" type="xs:nonNegativeInteger" use="required"/>
+ <xs:attribute name="state" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="full"/>
+ <xs:enumeration value="partial"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="entity" type="xs:anyURI" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="dialog">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="tns:state" minOccurs="1" maxOccurs="1"/>
+ <xs:element name="duration" type="xs:nonNegativeInteger" minOccurs="0" maxOccurs="1"/>
+ <xs:element name="replaces" minOccurs="0" maxOccurs="1">
+ <xs:complexType>
+ <xs:attribute name="call-id" type="xs:string" use="required"/>
+ <xs:attribute name="local-tag" type="xs:string" use="required"/>
+ <xs:attribute name="remote-tag" type="xs:string" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="referred-by" type="tns:nameaddr" minOccurs="0" maxOccurs="1"/>
+ <xs:element name="route-set" minOccurs="0" maxOccurs="1">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="hop" type="xs:string" minOccurs="1" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="local" type="tns:participant" minOccurs="0" maxOccurs="1"/>
+ <xs:element name="remote" type="tns:participant" minOccurs="0" maxOccurs="1"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="id" type="xs:string" use="required"/>
+ <xs:attribute name="call-id" type="xs:string" use="optional"/>
+ <xs:attribute name="local-tag" type="xs:string" use="optional"/>
+ <xs:attribute name="remote-tag" type="xs:string" use="optional"/>
+ <xs:attribute name="direction" use="optional">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="initiator"/>
+ <xs:enumeration value="recipient"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ </xs:element>
+ <xs:complexType name="participant">
+ <xs:sequence>
+ <xs:element name="identity" type="tns:nameaddr" minOccurs="0" maxOccurs="1"/>
+ <xs:element name="target" minOccurs="0" maxOccurs="1">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="param" minOccurs="0" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:attribute name="pname" type="xs:string" use="required"/>
+ <xs:attribute name="pval" type="xs:string" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ <xs:attribute name="uri" type="xs:string" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="session-description" type="tns:sessd" minOccurs="0" maxOccurs="1"/>
+ <xs:element name="cseq" type="xs:nonNegativeInteger" minOccurs="0" maxOccurs="1"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="nameaddr">
+ <xs:simpleContent>
+ <xs:extension base="xs:anyURI">
+ <xs:attribute name="display-name" type="xs:string" use="optional"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="sessd">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="type" type="xs:string" use="required"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:element name="state">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="event" use="optional">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="cancelled"/>
+ <xs:enumeration value="rejected"/>
+ <xs:enumeration value="replaced"/>
+ <xs:enumeration value="local-bye"/>
+ <xs:enumeration value="remote-bye"/>
+ <xs:enumeration value="error"/>
+ <xs:enumeration value="timeout"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="code" use="optional">
+ <xs:simpleType>
+ <xs:restriction base="xs:positiveInteger">
+ <xs:minInclusive value="100"/>
+ <xs:maxInclusive value="699"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/schemas/domain-1.0.xml b/schemas/domain-1.0.xml
new file mode 100644
index 0000000..4685985
--- /dev/null
+++ b/schemas/domain-1.0.xml
@@ -0,0 +1,432 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<schema targetNamespace="urn:ietf:params:xml:ns:domain-1.0"
+ xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"
+ xmlns:host="urn:ietf:params:xml:ns:host-1.0"
+ xmlns:epp="urn:ietf:params:xml:ns:epp-1.0"
+ xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
+ xmlns="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified">
+
+<!--
+Import common element types.
+-->
+<import namespace="urn:ietf:params:xml:ns:eppcom-1.0"/>
+<import namespace="urn:ietf:params:xml:ns:epp-1.0"/>
+<import namespace="urn:ietf:params:xml:ns:host-1.0"/>
+
+<annotation>
+ <documentation>
+ Extensible Provisioning Protocol v1.0
+ domain provisioning schema.
+ </documentation>
+</annotation>
+
+<!--
+Child elements found in EPP commands.
+-->
+<element name="check" type="domain:mNameType"/>
+<element name="create" type="domain:createType"/>
+<element name="delete" type="domain:sNameType"/>
+<element name="info" type="domain:infoType"/>
+<element name="renew" type="domain:renewType"/>
+<element name="transfer" type="domain:transferType"/>
+<element name="update" type="domain:updateType"/>
+<!--
+Child elements of the <create> command.
+-->
+<complexType name="createType">
+ <sequence>
+ <element name="name" type="eppcom:labelType"/>
+ <element name="period" type="domain:periodType"
+ minOccurs="0"/>
+ <element name="ns" type="domain:nsType"
+ minOccurs="0"/>
+ <element name="registrant" type="eppcom:clIDType"
+ minOccurs="0"/>
+ <element name="contact" type="domain:contactType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <element name="authInfo" type="domain:authInfoType"/>
+ </sequence>
+</complexType>
+
+<complexType name="periodType">
+ <simpleContent>
+ <extension base="domain:pLimitType">
+ <attribute name="unit" type="domain:pUnitType"
+ use="required"/>
+ </extension>
+ </simpleContent>
+</complexType>
+
+<simpleType name="pLimitType">
+ <restriction base="unsignedShort">
+ <minInclusive value="1"/>
+ <maxInclusive value="99"/>
+ </restriction>
+</simpleType>
+
+<simpleType name="pUnitType">
+ <restriction base="token">
+ <enumeration value="y"/>
+ <enumeration value="m"/>
+ </restriction>
+</simpleType>
+
+<complexType name="nsType">
+ <choice>
+ <element name="hostObj" type="eppcom:labelType"
+ maxOccurs="unbounded"/>
+ <element name="hostAttr" type="domain:hostAttrType"
+ maxOccurs="unbounded"/>
+ </choice>
+</complexType>
+<!--
+Name servers are either host objects or attributes.
+-->
+
+<complexType name="hostAttrType">
+ <sequence>
+ <element name="hostName" type="eppcom:labelType"/>
+ <element name="hostAddr" type="host:addrType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+</complexType>
+<!--
+If attributes, addresses are optional and follow the
+structure defined in the host mapping.
+-->
+
+<complexType name="contactType">
+ <simpleContent>
+ <extension base="eppcom:clIDType">
+ <attribute name="type" type="domain:contactAttrType"/>
+ </extension>
+ </simpleContent>
+</complexType>
+
+<simpleType name="contactAttrType">
+ <restriction base="token">
+ <enumeration value="admin"/>
+ <enumeration value="billing"/>
+ <enumeration value="tech"/>
+ </restriction>
+</simpleType>
+
+<complexType name="authInfoType">
+ <choice>
+ <element name="pw" type="eppcom:pwAuthInfoType"/>
+ <element name="ext" type="eppcom:extAuthInfoType"/>
+ </choice>
+</complexType>
+
+<!--
+Child element of commands that require a single name.
+-->
+<complexType name="sNameType">
+ <sequence>
+ <element name="name" type="eppcom:labelType"/>
+ </sequence>
+</complexType>
+<!--
+Child element of commands that accept multiple names.
+-->
+<complexType name="mNameType">
+ <sequence>
+ <element name="name" type="eppcom:labelType"
+ maxOccurs="unbounded"/>
+ </sequence>
+</complexType>
+
+<!--
+Child elements of the <info> command.
+-->
+<complexType name="infoType">
+ <sequence>
+ <element name="name" type="domain:infoNameType"/>
+ <element name="authInfo" type="domain:authInfoType"
+ minOccurs="0"/>
+ </sequence>
+</complexType>
+
+<complexType name="infoNameType">
+ <simpleContent>
+ <extension base = "eppcom:labelType">
+ <attribute name="hosts" type="domain:hostsType"
+ default="all"/>
+ </extension>
+ </simpleContent>
+</complexType>
+
+<simpleType name="hostsType">
+ <restriction base="token">
+ <enumeration value="all"/>
+ <enumeration value="del"/>
+ <enumeration value="none"/>
+ <enumeration value="sub"/>
+ </restriction>
+</simpleType>
+
+<!--
+Child elements of the <renew> command.
+-->
+<complexType name="renewType">
+ <sequence>
+ <element name="name" type="eppcom:labelType"/>
+ <element name="curExpDate" type="date"/>
+ <element name="period" type="domain:periodType"
+ minOccurs="0"/>
+ </sequence>
+</complexType>
+
+<!--
+Child elements of the <transfer> command.
+-->
+<complexType name="transferType">
+ <sequence>
+ <element name="name" type="eppcom:labelType"/>
+ <element name="period" type="domain:periodType"
+ minOccurs="0"/>
+ <element name="authInfo" type="domain:authInfoType"
+ minOccurs="0"/>
+ </sequence>
+</complexType>
+
+<!--
+Child elements of the <update> command.
+-->
+
+<complexType name="updateType">
+ <sequence>
+ <element name="name" type="eppcom:labelType"/>
+ <element name="add" type="domain:addRemType"
+ minOccurs="0"/>
+ <element name="rem" type="domain:addRemType"
+ minOccurs="0"/>
+ <element name="chg" type="domain:chgType"
+ minOccurs="0"/>
+ </sequence>
+</complexType>
+
+<!--
+Data elements that can be added or removed.
+-->
+<complexType name="addRemType">
+ <sequence>
+ <element name="ns" type="domain:nsType"
+ minOccurs="0"/>
+ <element name="contact" type="domain:contactType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <element name="status" type="domain:statusType"
+ minOccurs="0" maxOccurs="11"/>
+ </sequence>
+</complexType>
+
+<!--
+Data elements that can be changed.
+-->
+<complexType name="chgType">
+ <sequence>
+ <element name="registrant" type="domain:clIDChgType"
+ minOccurs="0"/>
+ <element name="authInfo" type="domain:authInfoChgType"
+ minOccurs="0"/>
+ </sequence>
+</complexType>
+
+<!--
+Allow the registrant value to be nullified by changing the
+minLength restriction to "0".
+-->
+<simpleType name="clIDChgType">
+ <restriction base="token">
+ <minLength value="0"/>
+ <maxLength value="16"/>
+ </restriction>
+</simpleType>
+
+<!--
+Allow the authInfo value to be nullified by including an
+empty element within the choice.
+-->
+<complexType name="authInfoChgType">
+ <choice>
+ <element name="pw" type="eppcom:pwAuthInfoType"/>
+ <element name="ext" type="eppcom:extAuthInfoType"/>
+ <element name="null"/>
+ </choice>
+</complexType>
+
+<!--
+Child response elements.
+-->
+<element name="chkData" type="domain:chkDataType"/>
+<element name="creData" type="domain:creDataType"/>
+<element name="infData" type="domain:infDataType"/>
+<element name="panData" type="domain:panDataType"/>
+<element name="renData" type="domain:renDataType"/>
+<element name="trnData" type="domain:trnDataType"/>
+
+<!--
+<check> response elements.
+-->
+<complexType name="chkDataType">
+ <sequence>
+ <element name="cd" type="domain:checkType"
+ maxOccurs="unbounded"/>
+ </sequence>
+</complexType>
+
+<complexType name="checkType">
+ <sequence>
+ <element name="name" type="domain:checkNameType"/>
+ <element name="reason" type="eppcom:reasonType"
+ minOccurs="0"/>
+ </sequence>
+</complexType>
+
+<complexType name="checkNameType">
+ <simpleContent>
+ <extension base="eppcom:labelType">
+ <attribute name="avail" type="boolean"
+ use="required"/>
+ </extension>
+ </simpleContent>
+</complexType>
+
+<!--
+<create> response elements.
+-->
+<complexType name="creDataType">
+ <sequence>
+ <element name="name" type="eppcom:labelType"/>
+ <element name="crDate" type="dateTime"/>
+ <element name="exDate" type="dateTime"
+ minOccurs="0"/>
+ </sequence>
+</complexType>
+
+<!--
+<info> response elements.
+-->
+<complexType name="infDataType">
+ <sequence>
+ <element name="name" type="eppcom:labelType"/>
+ <element name="roid" type="eppcom:roidType"/>
+ <element name="status" type="domain:statusType"
+ minOccurs="0" maxOccurs="11"/>
+ <element name="registrant" type="eppcom:clIDType"
+ minOccurs="0"/>
+ <element name="contact" type="domain:contactType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <element name="ns" type="domain:nsType"
+ minOccurs="0"/>
+ <element name="host" type="eppcom:labelType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <element name="clID" type="eppcom:clIDType"/>
+ <element name="crID" type="eppcom:clIDType"
+ minOccurs="0"/>
+ <element name="crDate" type="dateTime"
+ minOccurs="0"/>
+ <element name="upID" type="eppcom:clIDType"
+ minOccurs="0"/>
+ <element name="upDate" type="dateTime"
+ minOccurs="0"/>
+ <element name="exDate" type="dateTime"
+ minOccurs="0"/>
+ <element name="trDate" type="dateTime"
+ minOccurs="0"/>
+ <element name="authInfo" type="domain:authInfoType"
+ minOccurs="0"/>
+ </sequence>
+</complexType>
+
+<!--
+Status is a combination of attributes and an optional
+human-readable message that may be expressed in languages other
+than English.
+-->
+<complexType name="statusType">
+ <simpleContent>
+ <extension base="normalizedString">
+ <attribute name="s" type="domain:statusValueType"
+ use="required"/>
+ <attribute name="lang" type="language"
+ default="en"/>
+ </extension>
+ </simpleContent>
+</complexType>
+
+<simpleType name="statusValueType">
+ <restriction base="token">
+ <enumeration value="clientDeleteProhibited"/>
+ <enumeration value="clientHold"/>
+ <enumeration value="clientRenewProhibited"/>
+ <enumeration value="clientTransferProhibited"/>
+ <enumeration value="clientUpdateProhibited"/>
+ <enumeration value="inactive"/>
+ <enumeration value="ok"/>
+ <enumeration value="pendingCreate"/>
+ <enumeration value="pendingDelete"/>
+ <enumeration value="pendingRenew"/>
+ <enumeration value="pendingTransfer"/>
+ <enumeration value="pendingUpdate"/>
+ <enumeration value="serverDeleteProhibited"/>
+ <enumeration value="serverHold"/>
+ <enumeration value="serverRenewProhibited"/>
+ <enumeration value="serverTransferProhibited"/>
+ <enumeration value="serverUpdateProhibited"/>
+ </restriction>
+</simpleType>
+
+<!--
+Pending action notification response elements.
+-->
+<complexType name="panDataType">
+ <sequence>
+ <element name="name" type="domain:paNameType"/>
+ <element name="paTRID" type="epp:trIDType"/>
+ <element name="paDate" type="dateTime"/>
+ </sequence>
+</complexType>
+
+<complexType name="paNameType">
+ <simpleContent>
+ <extension base="eppcom:labelType">
+ <attribute name="paResult" type="boolean"
+ use="required"/>
+ </extension>
+ </simpleContent>
+</complexType>
+
+<!--
+<renew> response elements.
+-->
+<complexType name="renDataType">
+<sequence>
+ <element name="name" type="eppcom:labelType"/>
+ <element name="exDate" type="dateTime"
+ minOccurs="0"/>
+</sequence>
+</complexType>
+
+<!--
+<transfer> response elements.
+-->
+<complexType name="trnDataType">
+<sequence>
+ <element name="name" type="eppcom:labelType"/>
+ <element name="trStatus" type="eppcom:trStatusType"/>
+ <element name="reID" type="eppcom:clIDType"/>
+ <element name="reDate" type="dateTime"/>
+ <element name="acID" type="eppcom:clIDType"/>
+ <element name="acDate" type="dateTime"/>
+ <element name="exDate" type="dateTime"
+ minOccurs="0"/>
+</sequence>
+</complexType>
+
+<!--
+End of schema.
+-->
+</schema> \ No newline at end of file
diff --git a/schemas/dreg1.xml b/schemas/dreg1.xml
new file mode 100644
index 0000000..8e6f7e2
--- /dev/null
+++ b/schemas/dreg1.xml
@@ -0,0 +1,445 @@
+<?xml version="1.0"?>
+<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:dreg="urn:ietf:params:xml:ns:dreg1" xmlns:iris="urn:ietf:params:xml:ns:iris1" targetNamespace="urn:ietf:params:xml:ns:dreg1" elementFormDefault="qualified">
+ <import namespace="urn:ietf:params:xml:ns:iris1"/>
+ <annotation>
+ <documentation>
+ Domain registry schema
+ derived from IRIS schema
+ </documentation>
+ </annotation>
+<!-- ========================================= -->
+<!-- -->
+<!-- Query Types -->
+<!-- -->
+<!-- ========================================= -->
+<!-- -->
+<!-- Find Registrars By Name -->
+<!-- -->
+ <complexType name="findRegistrarsByNameType">
+ <complexContent>
+ <extension base="iris:queryType">
+ <sequence>
+ <element ref="dreg:baseDomain" minOccurs="0" maxOccurs="1"/>
+ <element name="namePart" type="dreg:exactOrPartialMatchParameter" minOccurs="0" maxOccurs="1"/>
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+ <element name="findRegistrarsByName" type="dreg:findRegistrarsByNameType" substitutionGroup="iris:query"/>
+<!-- -->
+<!-- Find Domains By Contact -->
+<!-- -->
+ <complexType name="findDomainsByContactType">
+ <complexContent>
+ <extension base="iris:queryType">
+ <sequence>
+ <element ref="dreg:baseDomain" minOccurs="0" maxOccurs="1"/>
+ <choice>
+ <group ref="dreg:contactSearchGroup"/>
+ <element name="contactHandle" type="dreg:exactMatchParameter"/>
+ </choice>
+ <element name="role" minOccurs="0" maxOccurs="1">
+ <simpleType>
+ <restriction base="string">
+ <enumeration value="registrant"/>
+ <enumeration value="billingContact"/>
+ <enumeration value="technicalContact"/>
+ <enumeration value="administrativeContact"/>
+ <enumeration value="legalContact"/>
+ <enumeration value="zoneContact"/>
+ <enumeration value="abuseContact"/>
+ <enumeration value="securityContact"/>
+ <enumeration value="otherContact"/>
+ </restriction>
+ </simpleType>
+ </element>
+ <element name="language" type="language" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+ <element name="findDomainsByContact" type="dreg:findDomainsByContactType" substitutionGroup="iris:query"/>
+<!-- -->
+<!-- Find Domains By Name -->
+<!-- -->
+ <complexType name="findDomainsByNameType">
+ <complexContent>
+ <extension base="iris:queryType">
+ <sequence>
+ <element name="namePart" type="dreg:partialMatchParameter"/>
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+ <element name="findDomainsByName" type="dreg:findDomainsByNameType" substitutionGroup="iris:query"/>
+<!-- -->
+<!-- Find Domains By Internationalized Name -->
+<!-- -->
+ <complexType name="findDomainsByIDNType">
+ <complexContent>
+ <extension base="iris:queryType">
+ <sequence>
+ <element name="namePart" type="dreg:exactMatchParameter"/>
+ <element name="language" type="language" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+ <element name="findDomainsByIDN" type="dreg:findDomainsByIDNType" substitutionGroup="iris:query"/>
+<!-- -->
+<!-- Find Contacts -->
+<!-- -->
+ <complexType name="findContactsType">
+ <complexContent>
+ <extension base="iris:queryType">
+ <sequence>
+ <group ref="dreg:contactSearchGroup"/>
+ <element name="language" type="language" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+ <element name="findContacts" type="dreg:findContactsType" substitutionGroup="iris:query"/>
+<!-- -->
+<!-- Find Domains By Host -->
+<!-- -->
+ <complexType name="findDomainsByHostType">
+ <complexContent>
+ <extension base="iris:queryType">
+ <sequence>
+ <element ref="dreg:baseDomain" minOccurs="0" maxOccurs="1"/>
+ <choice>
+ <element name="hostName" type="dreg:exactMatchParameter"/>
+ <element name="hostHandle" type="dreg:exactMatchParameter"/>
+ <element name="ipV4Address" type="dreg:exactMatchParameter"/>
+ <element name="ipV6Address" type="dreg:exactMatchParameter"/>
+ </choice>
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+ <element name="findDomainsByHost" type="dreg:findDomainsByHostType" substitutionGroup="iris:query"/>
+<!-- -->
+<!-- Contact Search Group -->
+<!-- -->
+ <group name="contactSearchGroup">
+ <choice>
+ <element name="commonName" type="dreg:exactOrPartialMatchParameter"/>
+ <element name="organization" type="dreg:exactOrPartialMatchParameter"/>
+ <element name="eMail" type="dreg:domainResourceParameter"/>
+ <element name="city" type="dreg:exactMatchParameter"/>
+ <element name="region" type="dreg:exactMatchParameter"/>
+ <element name="postalCode" type="dreg:exactMatchParameter"/>
+ </choice>
+ </group>
+ <complexType name="exactOrPartialMatchParameter">
+ <choice>
+ <group ref="dreg:partialMatchGroup"/>
+ <group ref="dreg:exactMatchGroup"/>
+ </choice>
+ </complexType>
+ <complexType name="exactMatchParameter">
+ <group ref="dreg:exactMatchGroup"/>
+ </complexType>
+ <complexType name="partialMatchParameter">
+ <sequence>
+ <group ref="dreg:partialMatchGroup"/>
+ </sequence>
+ </complexType>
+ <complexType name="domainResourceParameter">
+ <choice>
+ <group ref="dreg:exactMatchGroup"/>
+ <element name="inDomain" type="token"/>
+ </choice>
+ </complexType>
+ <element name="baseDomain" type="normalizedString"/>
+ <group name="partialMatchGroup">
+ <choice>
+ <sequence>
+ <element name="beginsWith">
+ <simpleType>
+ <restriction base="token">
+ <minLength value="1"/>
+ </restriction>
+ </simpleType>
+ </element>
+ <element minOccurs="0" name="endsWith">
+ <simpleType>
+ <restriction base="token">
+ <minLength value="1"/>
+ </restriction>
+ </simpleType>
+ </element>
+ </sequence>
+ <element name="endsWith">
+ <simpleType>
+ <restriction base="token">
+ <minLength value="1"/>
+ </restriction>
+ </simpleType>
+ </element>
+ </choice>
+ </group>
+ <group name="exactMatchGroup">
+ <sequence>
+ <element name="exactMatch" type="normalizedString"/>
+ </sequence>
+ </group>
+<!-- ========================================= -->
+<!-- -->
+<!-- Result Types -->
+<!-- -->
+<!-- ========================================= -->
+<!-- -->
+<!-- Domain -->
+<!-- -->
+ <complexType name="domainType">
+ <complexContent>
+ <extension base="iris:resultType">
+ <sequence>
+ <element name="domainName" type="token"/>
+ <element name="idn" type="token" minOccurs="0" maxOccurs="1"/>
+ <element name="domainHandle" type="dreg:normalizedStringPrivacyType" nillable="true" minOccurs="0" maxOccurs="1"/>
+ <element name="nameServer" type="iris:entityType" minOccurs="0" maxOccurs="unbounded"/>
+ <element name="registrant" type="iris:entityType" minOccurs="0" maxOccurs="1"/>
+ <element name="billingContact" type="iris:entityType" minOccurs="0" maxOccurs="unbounded"/>
+ <element name="technicalContact" type="iris:entityType" minOccurs="0" maxOccurs="unbounded"/>
+ <element name="administrativeContact" type="iris:entityType" minOccurs="0" maxOccurs="unbounded"/>
+ <element name="legalContact" type="iris:entityType" minOccurs="0" maxOccurs="unbounded"/>
+ <element name="zoneContact" type="iris:entityType" minOccurs="0" maxOccurs="unbounded"/>
+ <element name="abuseContact" type="iris:entityType" minOccurs="0" maxOccurs="unbounded"/>
+ <element name="securityContact" type="iris:entityType" minOccurs="0" maxOccurs="unbounded"/>
+ <element name="otherContact" type="iris:entityType" minOccurs="0" maxOccurs="unbounded"/>
+ <element name="lastContactModificationDateTime" type="dreg:dateTimePrivacyType" nillable="true" minOccurs="0" maxOccurs="1"/>
+ <element name="lastContactModificationBy" type="iris:entityType" minOccurs="0" maxOccurs="1"/>
+ <element name="status" minOccurs="0" maxOccurs="1">
+ <complexType>
+ <all>
+ <element name="reservedDelegation" minOccurs="0" maxOccurs="1" type="dreg:domainStatusType"/>
+ <element name="assignedAndActive" minOccurs="0" maxOccurs="1" type="dreg:domainStatusType"/>
+ <element name="assignedAndInactive" minOccurs="0" maxOccurs="1" type="dreg:domainStatusType"/>
+ <element name="assignedAndOnHold" minOccurs="0" maxOccurs="1" type="dreg:domainStatusType"/>
+ <element name="revoked" minOccurs="0" maxOccurs="1" type="dreg:domainStatusType"/>
+ <element name="transferPending" minOccurs="0" maxOccurs="1" type="dreg:domainStatusType"/>
+ <element name="registryLock" minOccurs="0" maxOccurs="1" type="dreg:domainStatusType"/>
+ <element name="registrarLock" minOccurs="0" maxOccurs="1" type="dreg:domainStatusType"/>
+ <element name="other" minOccurs="0" maxOccurs="1" type="dreg:domainStatusType"/>
+ </all>
+ </complexType>
+ </element>
+ <element name="domainVariant" type="iris:entityType" minOccurs="0" maxOccurs="unbounded"/>
+ <element name="registrationReference" type="iris:entityType" minOccurs="0" maxOccurs="1"/>
+ <element name="registry" minOccurs="0" maxOccurs="1">
+ <complexType>
+ <complexContent>
+ <extension base="iris:entityType">
+ <attribute name="hosting" type="boolean"/>
+ </extension>
+ </complexContent>
+ </complexType>
+ </element>
+ <element name="registrar" minOccurs="0" maxOccurs="1">
+ <complexType>
+ <complexContent>
+ <extension base="iris:entityType">
+ <attribute name="hosting" type="boolean"/>
+ </extension>
+ </complexContent>
+ </complexType>
+ </element>
+ <element name="initialDelegationDateTime" type="dreg:dateTimePrivacyType" nillable="true" minOccurs="0" maxOccurs="1"/>
+ <element name="lastRenewalDateTime" type="dreg:dateTimePrivacyType" nillable="true" minOccurs="0" maxOccurs="1"/>
+ <element name="expirationDateTime" type="dreg:dateTimePrivacyType" nillable="true" minOccurs="0" maxOccurs="1"/>
+ <element name="lastDelegationModificationDateTime" type="dreg:dateTimePrivacyType" nillable="true" minOccurs="0" maxOccurs="1"/>
+ <element name="lastDelegationModificationBy" type="iris:entityType" minOccurs="0" maxOccurs="1"/>
+ <element name="lastVerificationDateTime" type="dreg:dateTimePrivacyType" nillable="true" minOccurs="0" maxOccurs="1"/>
+ <element ref="iris:seeAlso" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+ <element name="domain" type="dreg:domainType" substitutionGroup="iris:result"/>
+<!-- -->
+<!-- Host -->
+<!-- -->
+ <complexType name="hostType">
+ <complexContent>
+ <extension base="iris:resultType">
+ <sequence>
+ <element name="hostHandle" type="dreg:normalizedStringPrivacyType" nillable="true" minOccurs="0" maxOccurs="1"/>
+ <element name="hostName" type="normalizedString"/>
+ <element name="ipV4Address" type="token" minOccurs="0" maxOccurs="unbounded"/>
+ <element name="ipV6Address" type="token" minOccurs="0" maxOccurs="unbounded"/>
+ <element name="hostContact" type="iris:entityType" minOccurs="0" maxOccurs="unbounded"/>
+ <element name="createdDateTime" type="dreg:dateTimePrivacyType" nillable="true" minOccurs="0" maxOccurs="1"/>
+ <element name="lastModificationDateTime" type="dreg:dateTimePrivacyType" nillable="true" minOccurs="0" maxOccurs="1"/>
+ <element name="lastVerificationDateTime" type="dreg:dateTimePrivacyType" nillable="true" minOccurs="0" maxOccurs="1"/>
+ <element ref="iris:seeAlso" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+ <element name="host" type="dreg:hostType" substitutionGroup="iris:result"/>
+<!-- -->
+<!-- Contact -->
+<!-- -->
+ <complexType name="contactType">
+ <complexContent>
+ <extension base="iris:resultType">
+ <sequence>
+ <element name="contactHandle" type="dreg:normalizedStringPrivacyType" nillable="true" minOccurs="0" maxOccurs="1"/>
+ <element name="commonName" type="dreg:normalizedStringPrivacyType" nillable="true" minOccurs="0" maxOccurs="1"/>
+ <element name="language" type="language" minOccurs="0" maxOccurs="1"/>
+ <element name="type" minOccurs="0" maxOccurs="1">
+ <complexType>
+ <choice>
+ <element name="person" type="dreg:contactTypeType"/>
+ <element name="organization" type="dreg:contactTypeType"/>
+ <element name="role" type="dreg:contactTypeType"/>
+ <element name="other" type="dreg:contactTypeType"/>
+ </choice>
+ </complexType>
+ </element>
+ <element name="organization" type="dreg:normalizedStringPrivacyType" nillable="true" minOccurs="0" maxOccurs="1"/>
+ <element name="eMail" type="dreg:stringPrivacyType" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
+ <element name="IDNeMail" type="dreg:stringPrivacyType" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
+ <element name="sip" type="dreg:stringPrivacyType" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
+ <element name="postalAddress" minOccurs="0" maxOccurs="unbounded">
+ <complexType>
+ <sequence>
+ <element name="address" type="dreg:stringPrivacyType" nillable="true" minOccurs="0" maxOccurs="1"/>
+ <element name="city" type="dreg:stringPrivacyType" nillable="true" minOccurs="0" maxOccurs="1"/>
+ <element name="region" type="dreg:stringPrivacyType" nillable="true" minOccurs="0" maxOccurs="1"/>
+ <element name="postalCode" type="dreg:normalizedStringPrivacyType" nillable="true" minOccurs="0" maxOccurs="1"/>
+ <element name="country" type="dreg:tokenPrivacyType" nillable="true" minOccurs="0" maxOccurs="1"/>
+ </sequence>
+ </complexType>
+ </element>
+ <element name="phone" type="dreg:normalizedStringPrivacyType" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
+ <element name="fax" type="dreg:normalizedStringPrivacyType" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
+ <element name="createdDateTime" type="dreg:dateTimePrivacyType" nillable="true" minOccurs="0" maxOccurs="1"/>
+ <element name="lastModificationDateTime" type="dreg:dateTimePrivacyType" nillable="true" minOccurs="0" maxOccurs="1"/>
+ <element name="lastVerificationDateTime" type="dreg:dateTimePrivacyType" nillable="true" minOccurs="0" maxOccurs="1"/>
+ <element name="translatedContact" type="iris:entityType" minOccurs="0" maxOccurs="unbounded"/>
+ <element ref="iris:seeAlso" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+ <element name="contact" type="dreg:contactType" substitutionGroup="iris:result"/>
+<!-- -->
+<!-- Registration Authority -->
+<!-- -->
+ <complexType name="registrationAuthorityType">
+ <complexContent>
+ <extension base="iris:resultType">
+ <sequence>
+ <element name="serviceInstance" type="iris:entityType"/>
+ <element name="organizationName" type="string" minOccurs="0" maxOccurs="1"/>
+ <choice minOccurs="0" maxOccurs="3">
+ <element name="registry">
+ <complexType/>
+ </element>
+ <element name="registrar">
+ <complexType/>
+ </element>
+ <element name="other">
+ <complexType/>
+ </element>
+ </choice>
+ <element name="domain" type="token" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+ <element name="registrationAuthority" type="dreg:registrationAuthorityType" substitutionGroup="iris:result"/>
+<!-- -->
+<!-- Privacy Label Types -->
+<!-- -->
+ <attributeGroup name="privacyLabelAttributeGroup">
+ <attribute name="private" type="boolean"/>
+ <attribute name="denied" type="boolean"/>
+ <attribute name="doNotRedistribute" type="boolean"/>
+ <attribute name="specialAccess" type="boolean"/>
+ </attributeGroup>
+ <complexType name="dateTimePrivacyType">
+ <simpleContent>
+ <extension base="dateTime">
+ <attributeGroup ref="dreg:privacyLabelAttributeGroup"/>
+ </extension>
+ </simpleContent>
+ </complexType>
+ <complexType name="stringPrivacyType">
+ <simpleContent>
+ <extension base="string">
+ <attributeGroup ref="dreg:privacyLabelAttributeGroup"/>
+ </extension>
+ </simpleContent>
+ </complexType>
+ <complexType name="normalizedStringPrivacyType">
+ <simpleContent>
+ <extension base="normalizedString">
+ <attributeGroup ref="dreg:privacyLabelAttributeGroup"/>
+ </extension>
+ </simpleContent>
+ </complexType>
+ <complexType name="tokenPrivacyType">
+ <simpleContent>
+ <extension base="token">
+ <attributeGroup ref="dreg:privacyLabelAttributeGroup"/>
+ </extension>
+ </simpleContent>
+ </complexType>
+ <complexType name="domainStatusType">
+ <sequence>
+ <element name="appliedDate" type="dateTime" minOccurs="0" maxOccurs="1"/>
+ <element name="description" minOccurs="0" maxOccurs="unbounded">
+ <complexType>
+ <simpleContent>
+ <extension base="string">
+ <attribute name="language" type="language" use="required"/>
+ </extension>
+ </simpleContent>
+ </complexType>
+ </element>
+ </sequence>
+ <attributeGroup ref="dreg:privacyLabelAttributeGroup"/>
+ <attribute name="scope" type="string"/>
+ </complexType>
+ <complexType name="contactTypeType">
+ <sequence>
+ <element name="description" minOccurs="0" maxOccurs="unbounded">
+ <complexType>
+ <simpleContent>
+ <extension base="string">
+ <attribute name="language" type="language" use="required"/>
+ </extension>
+ </simpleContent>
+ </complexType>
+ </element>
+ </sequence>
+ <attributeGroup ref="dreg:privacyLabelAttributeGroup"/>
+ </complexType>
+<!-- ========================================= -->
+<!-- -->
+<!-- Error Codes -->
+<!-- -->
+<!-- ========================================= -->
+<!-- -->
+<!-- Search Too Wide -->
+<!-- -->
+ <element name="searchTooWide" type="iris:codeType" substitutionGroup="iris:genericCode"/>
+<!-- -->
+<!-- Language Not Supported -->
+<!-- -->
+ <complexType name="languageNotSupportedType">
+ <complexContent>
+ <extension base="iris:codeType">
+ <sequence>
+ <element name="unsupportedLanguage" type="language" minOccurs="1" maxOccurs="unbounded"/>
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+ <element name="languageNotSupported" type="dreg:languageNotSupportedType" substitutionGroup="iris:genericCode"/>
+</schema>
diff --git a/schemas/dssc.xml b/schemas/dssc.xml
new file mode 100644
index 0000000..24ac1c9
--- /dev/null
+++ b/schemas/dssc.xml
@@ -0,0 +1,109 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ xmlns:dssc="urn:ietf:params:xml:ns:dssc"
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
+ targetNamespace="urn:ietf:params:xml:ns:dssc"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified">
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace"
+ schemaLocation="http://www.w3.org/2001/xml.xsd"/>
+ <xs:import namespace="http://www.w3.org/2000/09/xmldsig#"
+ schemaLocation="xmldsig-core-schema.xsd"/>
+ <xs:element name="SecuritySuitabilityPolicy"
+ type="dssc:SecuritySuitabilityPolicyType"/>
+ <xs:complexType name="SecuritySuitabilityPolicyType">
+ <xs:sequence>
+ <xs:element ref="dssc:PolicyName"/>
+ <xs:element ref="dssc:Publisher"/>
+ <xs:element name="PolicyIssueDate" type="xs:dateTime"/>
+ <xs:element name="NextUpdate" type="xs:dateTime" minOccurs="0"/>
+ <xs:element name="Usage" type="xs:string" minOccurs="0"/>
+ <xs:element ref="dssc:Algorithm" maxOccurs="unbounded"/>
+ <xs:element ref="ds:Signature" minOccurs="0"/>
+ </xs:sequence>
+ <xs:attribute name="version" type="xs:string" default="1"/>
+ <xs:attribute name="lang" default="en"/>
+ <xs:attribute name="id" type="xs:ID"/>
+ </xs:complexType>
+ <xs:element name="PolicyName" type="dssc:PolicyNameType"/>
+ <xs:complexType name="PolicyNameType">
+ <xs:sequence>
+ <xs:element ref="dssc:Name"/>
+ <xs:element ref="dssc:ObjectIdentifier" minOccurs="0"/>
+ <xs:element ref="dssc:URI" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:element name="Publisher" type="dssc:PublisherType"/>
+ <xs:complexType name="PublisherType">
+ <xs:sequence>
+ <xs:element ref="dssc:Name"/>
+ <xs:element name="Address" type="xs:string" minOccurs="0"/>
+ <xs:element ref="dssc:URI" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:element name="Name" type="xs:string"/>
+ <xs:element name="ObjectIdentifier">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:pattern value="(\d+\.)+\d+"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+ <xs:element name="URI" type="xs:anyURI"/>
+ <xs:element name="Algorithm" type="dssc:AlgorithmType"/>
+ <xs:complexType name="AlgorithmType">
+ <xs:sequence>
+ <xs:element ref="dssc:AlgorithmIdentifier"/>
+ <xs:element ref="dssc:Evaluation" maxOccurs="unbounded"/>
+ <xs:element ref="dssc:Information" minOccurs="0"/>
+ <xs:any namespace="##other" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:element name="AlgorithmIdentifier"
+ type="dssc:AlgorithmIdentifierType"/>
+ <xs:complexType name="AlgorithmIdentifierType">
+ <xs:sequence>
+ <xs:element ref="dssc:Name"/>
+ <xs:element ref="dssc:ObjectIdentifier" maxOccurs="unbounded"/>
+ <xs:element ref="dssc:URI" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:element name="Validity" type="dssc:ValidityType"/>
+ <xs:complexType name="ValidityType">
+ <xs:sequence>
+ <xs:element name="Start" type="xs:date" minOccurs="0"/>
+ <xs:element name="End" type="xs:date" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:element name="Information" type="dssc:InformationType"/>
+ <xs:complexType name="InformationType">
+ <xs:sequence>
+ <xs:element name="Text" type="xs:string" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:element name="Evaluation" type="dssc:EvaluationType"/>
+ <xs:complexType name="EvaluationType">
+ <xs:sequence>
+ <xs:element ref="dssc:Parameter" minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xs:element ref="dssc:Validity"/>
+ <xs:any namespace="##other" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:element name="Parameter" type="dssc:ParameterType"/>
+ <xs:complexType name="ParameterType">
+ <xs:sequence>
+ <xs:element name="Min" type="xs:int" minOccurs="0"/>
+ <xs:element name="Max" type="xs:int" minOccurs="0"/>
+ <xs:any namespace="##other" minOccurs="0"/>
+ </xs:sequence>
+ <xs:attribute name="name" type="xs:string" use="required"/>
+ </xs:complexType>
+</xs:schema>
+
+
+
+
+
+
+
diff --git a/schemas/e164epp-1.0.xml b/schemas/e164epp-1.0.xml
new file mode 100644
index 0000000..8f44621
--- /dev/null
+++ b/schemas/e164epp-1.0.xml
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<schema xmlns:e164="urn:ietf:params:xml:ns:e164epp-1.0" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:ietf:params:xml:ns:e164epp-1.0" elementFormDefault="qualified">
+ <annotation>
+ <documentation>
+ Extensible Provisioning Protocol v1.0
+ domain name extension schema for E.164 number provisioning.
+ </documentation>
+ </annotation>
+<!--
+ Child elements found in EPP commands.
+ -->
+ <element name="create" type="e164:createType"/>
+ <element name="update" type="e164:updateType"/>
+<!--
+ Global elements.
+ -->
+ <element name="naptr" type="e164:naptrType"/>
+<!--
+ Child elements of the <create> command.
+ -->
+ <complexType name="createType">
+ <sequence>
+ <element ref="e164:naptr" maxOccurs="unbounded"/>
+ </sequence>
+ </complexType>
+ <complexType name="naptrType">
+ <sequence>
+ <element name="order" type="unsignedShort"/>
+ <element name="pref" type="unsignedShort"/>
+ <element name="flags" type="e164:flagsType" minOccurs="0"/>
+ <element name="svc" type="e164:svcType"/>
+ <element name="regex" type="e164:regexType" minOccurs="0"/>
+ <element name="repl" type="e164:replType" minOccurs="0"/>
+ </sequence>
+ </complexType>
+ <simpleType name="flagsType">
+ <restriction base="token">
+ <pattern value="[A-Z]|[a-z]|[0-9]"/>
+ <length value="1"/>
+ </restriction>
+ </simpleType>
+ <simpleType name="svcType">
+ <restriction base="token">
+ <minLength value="1"/>
+ </restriction>
+ </simpleType>
+ <simpleType name="regexType">
+ <restriction base="token">
+ <minLength value="1"/>
+ </restriction>
+ </simpleType>
+ <simpleType name="replType">
+ <restriction base="token">
+ <minLength value="1"/>
+ <maxLength value="255"/>
+ </restriction>
+ </simpleType>
+<!--
+ Child elements of the <update> command.
+ -->
+ <complexType name="updateType">
+ <sequence>
+ <element name="add" type="e164:addRemType" minOccurs="0"/>
+ <element name="rem" type="e164:addRemType" minOccurs="0"/>
+ </sequence>
+ </complexType>
+<!--
+ Data elements that can be added or removed.
+ -->
+ <complexType name="addRemType">
+ <sequence>
+ <element ref="e164:naptr" maxOccurs="unbounded"/>
+ </sequence>
+ </complexType>
+<!--
+ Child response elements.
+ -->
+ <element name="infData" type="e164:infDataType"/>
+<!--
+ <info> response elements.
+ -->
+ <complexType name="infDataType">
+ <sequence>
+ <element ref="e164:naptr" maxOccurs="unbounded"/>
+ </sequence>
+ </complexType>
+<!--
+ End of schema.
+ -->
+</schema>
diff --git a/schemas/e164val-1.0.xml b/schemas/e164val-1.0.xml
new file mode 100644
index 0000000..f29d899
--- /dev/null
+++ b/schemas/e164val-1.0.xml
@@ -0,0 +1,127 @@
+<?xml version="1.0" encoding="UTF-8"?>
+ <schema targetNamespace="urn:ietf:params:xml:ns:e164val-1.0"
+ xmlns:e164val="urn:ietf:params:xml:ns:e164val-1.0"
+ xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
+ xmlns="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified">
+
+ <!--
+ Import common element types.
+ -->
+ <import namespace="urn:ietf:params:xml:ns:eppcom-1.0"
+ schemaLocation="eppcom-1.0.xsd"/>
+
+ <annotation>
+ <documentation>
+ Extensible Provisioning Protocol v1.0
+ domain name extension schema for framework for
+ provisioning of E.164 number validation information.
+ </documentation>
+ </annotation>
+
+ <!--
+ Child elements found in EPP commands.
+ -->
+ <element name="create" type="e164val:insertType"/>
+ <element name="update" type="e164val:updateType"/>
+ <element name="renew" type="e164val:insertType"/>
+ <element name="transfer" type="e164val:insertType"/>
+
+ <!--
+ Child elements of the <create>, <renew>, and <update> commands.
+ -->
+ <complexType name="insertType">
+ <sequence>
+ <element name="add" type="e164val:addType"
+ maxOccurs="unbounded" />
+ </sequence>
+ </complexType>
+
+ <!--
+ Child elements of the <update> command.
+ -->
+ <complexType name="updateType">
+ <sequence>
+ <element name="add" type="e164val:addType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <element name="rem" type="e164val:remType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <element name="chg" type="e164val:chgType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </sequence>
+ </complexType>
+
+ <!--
+ Data elements for add, chg and rem.
+ -->
+ <complexType name="addType">
+ <sequence>
+ <element ref="e164val:validationInfo"/>
+ </sequence>
+ <attribute name="id" type="eppcom:minTokenType"
+ use="required"/>
+ </complexType>
+
+ <complexType name="chgType">
+ <sequence>
+ <element ref="e164val:validationInfo"/>
+ </sequence>
+ <attribute name="id" type="eppcom:minTokenType"
+ use="required"/>
+ </complexType>
+
+ <complexType name="remType">
+ <attribute name="id" type="eppcom:minTokenType"
+ use="required"/>
+ </complexType>
+
+
+ <!--
+ Child elements found in EPP responses
+ -->
+ <element name="infData" type="e164val:infDataType"/>
+
+ <!--
+ child elements of the <info> response.
+ -->
+ <complexType name="infDataType">
+ <sequence>
+ <element name="inf" type="e164val:infType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </sequence>
+ </complexType>
+
+ <!--
+ Data elements for inf
+ -->
+ <complexType name="infType">
+ <sequence>
+ <element ref="e164val:validationInfo"/>
+ </sequence>
+ <attribute name="id" type="eppcom:minTokenType"
+ use="required"/>
+ </complexType>
+
+ <!--
+ Global elements.
+ -->
+ <element name="validationInfo" type="e164val:ValidationInfoType" />
+
+ <!--
+ Extension framework types.
+ -->
+ <complexType name="ValidationInfoType">
+ <sequence>
+ <any namespace="##other"/>
+ </sequence>
+ </complexType>
+
+
+ <!--
+ End of schema.
+ -->
+ </schema> \ No newline at end of file
diff --git a/schemas/e164valex-1.1.xml b/schemas/e164valex-1.1.xml
new file mode 100644
index 0000000..221f542
--- /dev/null
+++ b/schemas/e164valex-1.1.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<schema targetNamespace="urn:ietf:params:xml:ns:e164valex-1.1"
+ xmlns:e164valex="urn:ietf:params:xml:ns:e164valex-1.1"
+ xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
+ xmlns="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified">
+
+<!--
+Import common element types.
+-->
+ <import namespace="urn:ietf:params:xml:ns:eppcom-1.0"
+ schemaLocation="eppcom-1.0.xsd"/>
+
+ <annotation>
+ <documentation>
+ Example for E.164 number validation information.
+ </documentation>
+ </annotation>
+
+
+ <element name="simpleVal" type="e164valex:simpleValType"/>
+
+ <complexType name="simpleValType">
+ <sequence>
+ <element name="methodID" type="e164valex:methodIdType"/>
+ <element name="validationEntityID" type="eppcom:clIDType"
+ minOccurs="0"/>
+ <element name="registrarID" type="eppcom:clIDType"
+ minOccurs="0"/>
+ <element name="executionDate" type="date"/>
+ <element name="expirationDate" type="date"
+ minOccurs="0"/>
+ </sequence>
+ </complexType>
+
+ <simpleType name="methodIdType">
+ <restriction base="token">
+ <minLength value="1"/>
+ <maxLength value="63"/>
+ </restriction>
+ </simpleType>
+
+<!--
+End of schema.
+-->
+</schema> \ No newline at end of file
diff --git a/schemas/enum-token-1.0.xml b/schemas/enum-token-1.0.xml
new file mode 100644
index 0000000..fb96fcd
--- /dev/null
+++ b/schemas/enum-token-1.0.xml
@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<schema targetNamespace="urn:ietf:params:xml:ns:enum-token-1.0"
+ xmlns:enum-token="urn:ietf:params:xml:ns:enum-token-1.0"
+ xmlns:enum-tokendata="urn:ietf:params:xml:ns:enum-tokendata-1.0"
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
+ xmlns="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified">
+
+<!-- Import common element types. -->
+
+ <import namespace="http://www.w3.org/2000/09/xmldsig#"
+ schemaLocation="xmldsig-core-schema.xsd"/>
+ <import namespace="urn:ietf:params:xml:ns:enum-tokendata-1.0"
+ schemaLocation="enum-tokendata-1.0.xsd"/>
+
+ <annotation>
+ <documentation>
+ enum.at Validation Token core schema
+ </documentation>
+ </annotation>
+
+ <element name="token" type="enum-token:tokenBaseType"/>
+
+ <simpleType name="shortTokenType">
+ <restriction base="token">
+ <minLength value="1"/>
+ <maxLength value="20"/>
+ </restriction>
+ </simpleType>
+
+ <simpleType name="e164numberType">
+ <restriction base="token">
+ <maxLength value="20"/>
+ <pattern value="\+\d\d*"/>
+ </restriction>
+
+ </simpleType>
+
+ <complexType name="validationDataType">
+ <sequence>
+ <element name="E164Number"
+ type="enum-token:e164numberType"/>
+ <element name="lastE164Number" minOccurs="0"
+ type="enum-token:e164numberType"/>
+ <element name="validationEntityID"
+ type="enum-token:shortTokenType"/>
+ <element name="registrarID"
+ type="enum-token:shortTokenType"/>
+ <element name="methodID"
+ type="enum-token:shortTokenType"/>
+ <element name="executionDate" type="date"/>
+ <element name="expirationDate"
+ type="date" minOccurs="0"/>
+ </sequence>
+ <attribute name="serial" type="enum-token:shortTokenType"
+ use="required"/>
+ </complexType>
+
+ <complexType name="tokenBaseType">
+ <sequence>
+ <element name="validation"
+ type="enum-token:validationDataType"/>
+ <any namespace="urn:ietf:params:xml:ns:enum-tokendata-1.0"
+ minOccurs="0"/>
+ <any namespace="http://www.w3.org/2000/09/xmldsig#"/>
+ </sequence>
+ <attribute name="Id" type="ID" use="required"/>
+ </complexType>
+</schema>
+
diff --git a/schemas/enum-tokendata-1.0.xml b/schemas/enum-tokendata-1.0.xml
new file mode 100644
index 0000000..227486a
--- /dev/null
+++ b/schemas/enum-tokendata-1.0.xml
@@ -0,0 +1,89 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<schema targetNamespace="urn:ietf:params:xml:ns:enum-tokendata-1.0"
+ xmlns:enum-tokendata="urn:ietf:params:xml:ns:enum-tokendata-1.0"
+ xmlns="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified">
+
+ <element name="tokendata" type="enum-tokendata:tokenDataType"/>
+
+ <simpleType name="E115String">
+ <restriction base="string">
+ <pattern value="[&#x20;-&#x7A;&#xA0;-&#xD7FF;&#xE000;-&#xFFFD;]*"/>
+ </restriction>
+ </simpleType>
+
+ <simpleType name="E115StringUb256">
+ <restriction base="enum-tokendata:E115String">
+ <minLength value="1"/>
+ <maxLength value="256"/>
+ </restriction>
+ </simpleType>
+
+ <simpleType name="countryCodeType">
+ <restriction base="token">
+ <minLength value="2"/>
+ <maxLength value="2"/>
+ </restriction>
+ </simpleType>
+
+ <simpleType name="TokenType">
+ <restriction base="token">
+ <minLength value="1"/>
+ <maxLength value="64"/>
+ </restriction>
+ </simpleType>
+
+ <complexType name="addressType">
+ <all>
+ <element name="streetName" minOccurs="0"
+ type="enum-tokendata:E115StringUb256" />
+ <element name="houseNumber" minOccurs="0"
+ type="enum-tokendata:E115StringUb256"/>
+ <element name="postalCode" minOccurs="0"
+ type="enum-tokendata:E115StringUb256"/>
+ <element name="locality" minOccurs="0"
+ type="enum-tokendata:E115StringUb256"/>
+ <element name="countyStateOrProvince" minOccurs="0"
+ type="enum-tokendata:E115StringUb256"/>
+ <element name="ISOcountryCode" minOccurs="0"
+ type="enum-tokendata:countryCodeType"/>
+ </all>
+ </complexType>
+
+ <group name="tokenContactBaseGroup">
+ <sequence>
+ <element name="organisation" minOccurs="0"
+ type="enum-tokendata:E115StringUb256"/>
+ <element name="commercialregisternumber" minOccurs="0"
+ type="enum-tokendata:TokenType"/>
+ <element name="title" minOccurs="0"
+ type="enum-tokendata:TokenType"/>
+ <element name="firstname" minOccurs="0"
+ type="enum-tokendata:E115StringUb256"/>
+ <element name="lastname" minOccurs="0"
+ type="enum-tokendata:E115StringUb256"/>
+ <element name="address" minOccurs="0"
+ type="enum-tokendata:addressType"/>
+ <element name="phone" type="enum-tokendata:TokenType"
+ minOccurs="0" maxOccurs="10" />
+ <element name="fax" type="enum-tokendata:TokenType"
+ minOccurs="0" maxOccurs="10" />
+ <element name="email" type="enum-tokendata:TokenType"
+ minOccurs="0" maxOccurs="10" />
+ </sequence>
+ </group>
+
+ <complexType name="contactType">
+ <sequence>
+ <group ref="enum-tokendata:tokenContactBaseGroup"/>
+ </sequence>
+ </complexType>
+
+ <complexType name="tokenDataType">
+ <sequence>
+ <element name="contact" type="enum-tokendata:contactType"/>
+ </sequence>
+ </complexType>
+
+</schema> \ No newline at end of file
diff --git a/schemas/epp-1.0.xml b/schemas/epp-1.0.xml
new file mode 100644
index 0000000..3609ad5
--- /dev/null
+++ b/schemas/epp-1.0.xml
@@ -0,0 +1,446 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<schema targetNamespace="urn:ietf:params:xml:ns:epp-1.0"
+ xmlns:epp="urn:ietf:params:xml:ns:epp-1.0"
+ xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
+ xmlns="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified">
+
+<!--
+Import common element types.
+-->
+
+ <import namespace="urn:ietf:params:xml:ns:eppcom-1.0"/>
+
+ <annotation>
+ <documentation>
+ Extensible Provisioning Protocol v1.0 schema.
+ </documentation>
+ </annotation>
+
+<!--
+Every EPP XML instance must begin with this element.
+-->
+ <element name="epp" type="epp:eppType"/>
+
+<!--
+An EPP XML instance must contain a greeting, hello, command,
+response, or extension.
+-->
+ <complexType name="eppType">
+ <choice>
+ <element name="greeting" type="epp:greetingType"/>
+ <element name="hello"/>
+ <element name="command" type="epp:commandType"/>
+ <element name="response" type="epp:responseType"/>
+ <element name="extension" type="epp:extAnyType"/>
+ </choice>
+ </complexType>
+
+<!--
+A greeting is sent by a server in response to a client connection
+or <hello>.
+-->
+ <complexType name="greetingType">
+ <sequence>
+ <element name="svID" type="epp:sIDType"/>
+ <element name="svDate" type="dateTime"/>
+ <element name="svcMenu" type="epp:svcMenuType"/>
+ <element name="dcp" type="epp:dcpType"/>
+ </sequence>
+ </complexType>
+
+<!--
+Server IDs are strings with minimum and maximum length restrictions.
+-->
+ <simpleType name="sIDType">
+ <restriction base="normalizedString">
+ <minLength value="3"/>
+ <maxLength value="64"/>
+ </restriction>
+ </simpleType>
+
+<!--
+A server greeting identifies available object services.
+-->
+ <complexType name="svcMenuType">
+ <sequence>
+ <element name="version" type="epp:versionType"
+ maxOccurs="unbounded"/>
+ <element name="lang" type="language"
+ maxOccurs="unbounded"/>
+ <element name="objURI" type="anyURI"
+ maxOccurs="unbounded"/>
+ <element name="svcExtension" type="epp:extURIType"
+ minOccurs="0"/>
+ </sequence>
+ </complexType>
+
+<!--
+Data Collection Policy types.
+-->
+ <complexType name="dcpType">
+ <sequence>
+ <element name="access" type="epp:dcpAccessType"/>
+ <element name="statement" type="epp:dcpStatementType"
+ maxOccurs="unbounded"/>
+ <element name="expiry" type="epp:dcpExpiryType"
+ minOccurs="0"/>
+ </sequence>
+ </complexType>
+
+ <complexType name="dcpAccessType">
+ <choice>
+ <element name="all"/>
+ <element name="none"/>
+ <element name="null"/>
+ <element name="other"/>
+ <element name="personal"/>
+ <element name="personalAndOther"/>
+ </choice>
+ </complexType>
+
+ <complexType name="dcpStatementType">
+ <sequence>
+ <element name="purpose" type="epp:dcpPurposeType"/>
+ <element name="recipient" type="epp:dcpRecipientType"/>
+ <element name="retention" type="epp:dcpRetentionType"/>
+ </sequence>
+ </complexType>
+
+ <complexType name="dcpPurposeType">
+ <sequence>
+ <element name="admin"
+ minOccurs="0"/>
+ <element name="contact"
+ minOccurs="0"/>
+ <element name="other"
+ minOccurs="0"/>
+ <element name="prov"
+ minOccurs="0"/>
+ </sequence>
+ </complexType>
+
+ <complexType name="dcpRecipientType">
+ <sequence>
+ <element name="other"
+ minOccurs="0"/>
+ <element name="ours" type="epp:dcpOursType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <element name="public"
+ minOccurs="0"/>
+ <element name="same"
+ minOccurs="0"/>
+ <element name="unrelated"
+ minOccurs="0"/>
+ </sequence>
+ </complexType>
+
+ <complexType name="dcpOursType">
+ <sequence>
+ <element name="recDesc" type="epp:dcpRecDescType"
+ minOccurs="0"/>
+ </sequence>
+ </complexType>
+
+ <simpleType name="dcpRecDescType">
+ <restriction base="token">
+ <minLength value="1"/>
+ <maxLength value="255"/>
+ </restriction>
+ </simpleType>
+
+ <complexType name="dcpRetentionType">
+ <choice>
+ <element name="business"/>
+ <element name="indefinite"/>
+ <element name="legal"/>
+ <element name="none"/>
+ <element name="stated"/>
+ </choice>
+ </complexType>
+
+ <complexType name="dcpExpiryType">
+ <choice>
+ <element name="absolute" type="dateTime"/>
+ <element name="relative" type="duration"/>
+ </choice>
+ </complexType>
+
+<!--
+Extension framework types.
+-->
+ <complexType name="extAnyType">
+ <sequence>
+ <any namespace="##other"
+ maxOccurs="unbounded"/>
+ </sequence>
+ </complexType>
+
+ <complexType name="extURIType">
+ <sequence>
+ <element name="extURI" type="anyURI"
+ maxOccurs="unbounded"/>
+ </sequence>
+ </complexType>
+
+<!--
+An EPP version number is a dotted pair of decimal numbers.
+-->
+ <simpleType name="versionType">
+ <restriction base="token">
+ <pattern value="[1-9]+\.[0-9]+"/>
+ <enumeration value="1.0"/>
+ </restriction>
+ </simpleType>
+
+<!--
+Command types.
+-->
+ <complexType name="commandType">
+ <sequence>
+ <choice>
+ <element name="check" type="epp:readWriteType"/>
+ <element name="create" type="epp:readWriteType"/>
+ <element name="delete" type="epp:readWriteType"/>
+ <element name="info" type="epp:readWriteType"/>
+ <element name="login" type="epp:loginType"/>
+ <element name="logout"/>
+ <element name="poll" type="epp:pollType"/>
+ <element name="renew" type="epp:readWriteType"/>
+ <element name="transfer" type="epp:transferType"/>
+ <element name="update" type="epp:readWriteType"/>
+ </choice>
+ <element name="extension" type="epp:extAnyType"
+ minOccurs="0"/>
+ <element name="clTRID" type="epp:trIDStringType"
+ minOccurs="0"/>
+ </sequence>
+ </complexType>
+
+<!--
+The <login> command.
+-->
+ <complexType name="loginType">
+ <sequence>
+ <element name="clID" type="eppcom:clIDType"/>
+ <element name="pw" type="epp:pwType"/>
+ <element name="newPW" type="epp:pwType"
+ minOccurs="0"/>
+ <element name="options" type="epp:credsOptionsType"/>
+ <element name="svcs" type="epp:loginSvcType"/>
+ </sequence>
+ </complexType>
+
+ <complexType name="credsOptionsType">
+ <sequence>
+ <element name="version" type="epp:versionType"/>
+ <element name="lang" type="language"/>
+ </sequence>
+ </complexType>
+
+ <simpleType name="pwType">
+ <restriction base="token">
+ <minLength value="6"/>
+ <maxLength value="16"/>
+ </restriction>
+ </simpleType>
+
+ <complexType name="loginSvcType">
+ <sequence>
+ <element name="objURI" type="anyURI"
+ maxOccurs="unbounded"/>
+ <element name="svcExtension" type="epp:extURIType"
+ minOccurs="0"/>
+ </sequence>
+ </complexType>
+
+<!--
+The <poll> command.
+-->
+ <complexType name="pollType">
+ <attribute name="op" type="epp:pollOpType"
+ use="required"/>
+ <attribute name="msgID" type="token"/>
+ </complexType>
+
+ <simpleType name="pollOpType">
+ <restriction base="token">
+ <enumeration value="ack"/>
+ <enumeration value="req"/>
+ </restriction>
+ </simpleType>
+
+<!--
+The <transfer> command. This is object-specific, and uses attributes
+to identify the requested operation.
+-->
+ <complexType name="transferType">
+ <sequence>
+ <any namespace="##other"/>
+ </sequence>
+ <attribute name="op" type="epp:transferOpType"
+ use="required"/>
+ </complexType>
+
+ <simpleType name="transferOpType">
+ <restriction base="token">
+ <enumeration value="approve"/>
+ <enumeration value="cancel"/>
+ <enumeration value="query"/>
+ <enumeration value="reject"/>
+ <enumeration value="request"/>
+ </restriction>
+ </simpleType>
+
+<!--
+All other object-centric commands. EPP doesn't specify the syntax or
+semantics of object-centric command elements. The elements MUST be
+described in detail in another schema specific to the object.
+-->
+ <complexType name="readWriteType">
+ <sequence>
+ <any namespace="##other"/>
+ </sequence>
+ </complexType>
+
+ <complexType name="trIDType">
+ <sequence>
+ <element name="clTRID" type="epp:trIDStringType"
+ minOccurs="0"/>
+ <element name="svTRID" type="epp:trIDStringType"/>
+ </sequence>
+ </complexType>
+
+ <simpleType name="trIDStringType">
+ <restriction base="token">
+ <minLength value="3"/>
+ <maxLength value="64"/>
+ </restriction>
+ </simpleType>
+
+<!--
+Response types.
+-->
+ <complexType name="responseType">
+ <sequence>
+ <element name="result" type="epp:resultType"
+ maxOccurs="unbounded"/>
+ <element name="msgQ" type="epp:msgQType"
+ minOccurs="0"/>
+ <element name="resData" type="epp:extAnyType"
+ minOccurs="0"/>
+ <element name="extension" type="epp:extAnyType"
+ minOccurs="0"/>
+ <element name="trID" type="epp:trIDType"/>
+ </sequence>
+ </complexType>
+
+ <complexType name="resultType">
+ <sequence>
+ <element name="msg" type="epp:msgType"/>
+ <choice minOccurs="0" maxOccurs="unbounded">
+ <element name="value" type="epp:errValueType"/>
+ <element name="extValue" type="epp:extErrValueType"/>
+ </choice>
+ </sequence>
+ <attribute name="code" type="epp:resultCodeType"
+ use="required"/>
+ </complexType>
+
+ <complexType name="errValueType" mixed="true">
+ <sequence>
+ <any namespace="##any" processContents="skip"/>
+ </sequence>
+ <anyAttribute namespace="##any" processContents="skip"/>
+ </complexType>
+
+ <complexType name="extErrValueType">
+ <sequence>
+ <element name="value" type="epp:errValueType"/>
+ <element name="reason" type="epp:msgType"/>
+ </sequence>
+ </complexType>
+
+ <complexType name="msgQType">
+ <sequence>
+ <element name="qDate" type="dateTime"
+ minOccurs="0"/>
+ <element name="msg" type="epp:mixedMsgType"
+ minOccurs="0"/>
+ </sequence>
+ <attribute name="count" type="unsignedLong"
+ use="required"/>
+ <attribute name="id" type="eppcom:minTokenType"
+ use="required"/>
+ </complexType>
+
+ <complexType name="mixedMsgType" mixed="true">
+ <sequence>
+ <any processContents="skip"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="lang" type="language"
+ default="en"/>
+ </complexType>
+
+<!--
+Human-readable text may be expressed in languages other than English.
+-->
+ <complexType name="msgType">
+ <simpleContent>
+ <extension base="normalizedString">
+ <attribute name="lang" type="language"
+ default="en"/>
+ </extension>
+ </simpleContent>
+ </complexType>
+
+<!--
+EPP result codes.
+-->
+ <simpleType name="resultCodeType">
+ <restriction base="unsignedShort">
+ <enumeration value="1000"/>
+ <enumeration value="1001"/>
+ <enumeration value="1300"/>
+ <enumeration value="1301"/>
+ <enumeration value="1500"/>
+ <enumeration value="2000"/>
+ <enumeration value="2001"/>
+ <enumeration value="2002"/>
+ <enumeration value="2003"/>
+ <enumeration value="2004"/>
+ <enumeration value="2005"/>
+ <enumeration value="2100"/>
+ <enumeration value="2101"/>
+ <enumeration value="2102"/>
+ <enumeration value="2103"/>
+ <enumeration value="2104"/>
+ <enumeration value="2105"/>
+ <enumeration value="2106"/>
+ <enumeration value="2200"/>
+ <enumeration value="2201"/>
+ <enumeration value="2202"/>
+ <enumeration value="2300"/>
+ <enumeration value="2301"/>
+ <enumeration value="2302"/>
+ <enumeration value="2303"/>
+ <enumeration value="2304"/>
+ <enumeration value="2305"/>
+ <enumeration value="2306"/>
+ <enumeration value="2307"/>
+ <enumeration value="2308"/>
+ <enumeration value="2400"/>
+ <enumeration value="2500"/>
+ <enumeration value="2501"/>
+ <enumeration value="2502"/>
+ </restriction>
+ </simpleType>
+
+<!--
+End of schema.
+-->
+</schema>
+
+
diff --git a/schemas/eppcom-1.0.xml b/schemas/eppcom-1.0.xml
new file mode 100644
index 0000000..d6ef94b
--- /dev/null
+++ b/schemas/eppcom-1.0.xml
@@ -0,0 +1,105 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<schema targetNamespace="urn:ietf:params:xml:ns:eppcom-1.0"
+ xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
+ xmlns="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified">
+
+ <annotation>
+ <documentation>
+ Extensible Provisioning Protocol v1.0
+ shared structures schema.
+ </documentation>
+ </annotation>
+
+<!--
+Object authorization information types.
+-->
+ <complexType name="pwAuthInfoType">
+ <simpleContent>
+ <extension base="normalizedString">
+ <attribute name="roid" type="eppcom:roidType"/>
+ </extension>
+ </simpleContent>
+ </complexType>
+
+ <complexType name="extAuthInfoType">
+ <sequence>
+ <any namespace="##other"/>
+ </sequence>
+ </complexType>
+
+<!--
+<check> response types.
+-->
+ <complexType name="reasonType">
+ <simpleContent>
+ <extension base="eppcom:reasonBaseType">
+ <attribute name="lang" type="language"/>
+ </extension>
+ </simpleContent>
+ </complexType>
+
+ <simpleType name="reasonBaseType">
+ <restriction base="token">
+ <minLength value="1"/>
+ <maxLength value="32"/>
+ </restriction>
+ </simpleType>
+
+<!--
+Abstract client and object identifier type.
+-->
+ <simpleType name="clIDType">
+ <restriction base="token">
+ <minLength value="3"/>
+ <maxLength value="16"/>
+ </restriction>
+ </simpleType>
+
+<!--
+DNS label type.
+-->
+ <simpleType name="labelType">
+ <restriction base="token">
+ <minLength value="1"/>
+ <maxLength value="255"/>
+ </restriction>
+ </simpleType>
+
+<!--
+Non-empty token type.
+-->
+ <simpleType name="minTokenType">
+ <restriction base="token">
+ <minLength value="1"/>
+ </restriction>
+ </simpleType>
+
+<!--
+Repository Object IDentifier type.
+-->
+ <simpleType name="roidType">
+ <restriction base="token">
+ <pattern value="(\w|_){1,80}-\w{1,8}"/>
+ </restriction>
+ </simpleType>
+
+<!--
+Transfer status identifiers.
+-->
+ <simpleType name="trStatusType">
+ <restriction base="token">
+ <enumeration value="clientApproved"/>
+ <enumeration value="clientCancelled"/>
+ <enumeration value="clientRejected"/>
+ <enumeration value="pending"/>
+ <enumeration value="serverApproved"/>
+ <enumeration value="serverCancelled"/>
+ </restriction>
+ </simpleType>
+
+<!--
+End of schema.
+-->
+</schema> \ No newline at end of file
diff --git a/schemas/ereg1.xml b/schemas/ereg1.xml
new file mode 100644
index 0000000..b01e71b
--- /dev/null
+++ b/schemas/ereg1.xml
@@ -0,0 +1,1199 @@
+<?xml version="1.0"?>
+<schema xmlns="http://www.w3.org/2001/XMLSchema"
+ xmlns:ereg="urn:ietf:params:xml:ns:ereg1"
+ xmlns:iris="urn:ietf:params:xml:ns:iris1"
+ targetNamespace="urn:ietf:params:xml:ns:ereg1"
+ elementFormDefault="qualified" >
+
+ <import namespace="urn:ietf:params:xml:ns:iris1" />
+
+ <annotation>
+ <documentation>
+ ENUM registry schema
+ derived from IRIS schema
+ </documentation>
+ </annotation>
+
+ <!-- ========================================= -->
+ <!-- -->
+ <!-- Query Types -->
+ <!-- -->
+ <!-- ========================================= -->
+
+ <!-- -->
+ <!-- Find ENUMs by E.164 -->
+ <!-- -->
+
+ <complexType
+ name="findEnumsByE164Type">
+ <complexContent>
+ <extension
+ base="iris:queryType">
+ <sequence>
+ <element
+ name="e164Prefix"
+ type="token" />
+ <element
+ name="specificity"
+ minOccurs="0" >
+ <simpleType>
+ <restriction
+ base="string">
+ <enumeration
+ value="less"/>
+ <enumeration
+ value="more"/>
+ </restriction>
+ </simpleType>
+ </element>
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+
+ <element
+ name="findEnumsByE164"
+ type="ereg:findEnumsByE164Type"
+ substitutionGroup="iris:query" />
+
+ <!-- -->
+ <!-- Find ENUMs By Contact -->
+ <!-- -->
+
+ <complexType
+ name="findEnumsByContactType">
+ <complexContent>
+ <extension
+ base="iris:queryType">
+ <sequence>
+ <choice>
+ <group
+ ref="ereg:contactSearchGroup" />
+ <element
+ name="contactHandle"
+ type="ereg:exactMatchParameter" />
+ </choice>
+ <element
+ name="role"
+ minOccurs="0"
+ maxOccurs="1" >
+ <simpleType>
+ <restriction
+ base="string" >
+ <enumeration
+ value="registrant" />
+ <enumeration
+ value="billingContact" />
+ <enumeration
+ value="technicalContact" />
+ <enumeration
+ value="administrativeContact" />
+ <enumeration
+ value="legalContact" />
+ <enumeration
+ value="zoneContact" />
+ <enumeration
+ value="abuseContact" />
+ <enumeration
+ value="securityContact" />
+ <enumeration
+ value="otherContact" />
+ </restriction>
+ </simpleType>
+ </element>
+ <element
+ name="language"
+ type="language"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+
+ <element
+ name="findEnumsByContact"
+ type="ereg:findEnumsByContactType"
+ substitutionGroup="iris:query" />
+
+ <!-- -->
+ <!-- Find Contacts -->
+ <!-- -->
+
+ <complexType
+ name="findContactsType">
+ <complexContent>
+ <extension
+ base="iris:queryType">
+ <sequence>
+ <group
+ ref="ereg:contactSearchGroup" />
+ <element
+ name="language"
+ type="language"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+
+ <element
+ name="findContacts"
+ type="ereg:findContactsType"
+ substitutionGroup="iris:query" />
+
+ <!-- -->
+ <!-- Find ENUMs By Host -->
+ <!-- -->
+
+ <complexType
+ name="findEnumsByHostType">
+ <complexContent>
+ <extension
+ base="iris:queryType">
+ <sequence>
+ <choice>
+ <element
+ name="hostName"
+ type="ereg:exactMatchParameter" />
+ <element
+ name="hostHandle"
+ type="ereg:exactMatchParameter" />
+ <element
+ name="ipV4Address"
+ type="ereg:exactMatchParameter" />
+ <element
+ name="ipV6Address"
+ type="ereg:exactMatchParameter" />
+ </choice>
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+
+ <element
+ name="findEnumsByHost"
+ type="ereg:findEnumsByHostType"
+ substitutionGroup="iris:query" />
+
+ <!-- -->
+ <!-- Contact Search Group -->
+ <!-- -->
+
+ <group
+ name="contactSearchGroup">
+ <choice>
+ <element
+ name="commonName"
+ type="ereg:exactOrPartialMatchParameter" />
+ <element
+ name="organization"
+ type="ereg:exactOrPartialMatchParameter" />
+ <element
+ name="eMail"
+ type="ereg:domainResourceParameter" />
+ <element
+ name="sip"
+ type="ereg:domainResourceParameter" />
+ <element
+ name="city"
+ type="ereg:exactMatchParameter" />
+ <element
+ name="region"
+ type="ereg:exactMatchParameter" />
+ <element
+ name="postalCode"
+ type="ereg:exactMatchParameter" />
+ </choice>
+ </group>
+
+ <complexType
+ name="exactOrPartialMatchParameter">
+ <choice>
+ <group
+ ref="ereg:partialMatchGroup" />
+ <group
+ ref="ereg:exactMatchGroup" />
+ </choice>
+ </complexType>
+
+ <complexType
+ name="exactMatchParameter">
+ <group
+ ref="ereg:exactMatchGroup" />
+ </complexType>
+
+ <complexType
+ name="partialMatchParameter">
+ <sequence>
+ <group
+ ref="ereg:partialMatchGroup" />
+ </sequence>
+ </complexType>
+
+ <complexType
+ name="domainResourceParameter" >
+ <choice>
+ <group
+ ref="ereg:exactMatchGroup" />
+ <element
+ name="inDomain"
+ type="token" />
+ </choice>
+ </complexType>
+
+ <group
+ name="partialMatchGroup">
+ <choice>
+ <sequence>
+ <element
+ name="beginsWith">
+ <simpleType>
+ <restriction
+ base="token">
+ <minLength
+ value="1"/>
+ </restriction>
+ </simpleType>
+ </element>
+ <element
+ minOccurs="0"
+ name="endsWith"
+ type="ereg:endsWithType" />
+ </sequence>
+ <element
+ name="endsWith"
+ type="ereg:endsWithType" />
+ </choice>
+ </group>
+
+ <simpleType
+ name="endsWithType">
+ <restriction
+ base="token">
+ <minLength
+ value="1" />
+ </restriction>
+ </simpleType>
+
+ <group
+ name="exactMatchGroup">
+ <sequence>
+ <element
+ name="exactMatch"
+ type="normalizedString" />
+ </sequence>
+ </group>
+
+ <!-- ========================================= -->
+ <!-- -->
+ <!-- Result Types -->
+ <!-- -->
+ <!-- ========================================= -->
+
+ <!-- -->
+ <!-- ENUM -->
+ <!-- -->
+
+ <complexType
+ name="enumType">
+ <complexContent>
+ <extension
+ base="iris:resultType">
+ <sequence>
+ <element
+ name="e164Number"
+ type="token" />
+ <element
+ name="enumHandle"
+ type="ereg:normalizedStringPrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="nameServer"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ <element
+ name="registrant"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ <group ref="ereg:contactGroup" />
+ <element
+ name="lastContactModificationDateTime"
+ type="ereg:dateTimePrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="lastContactModificationBy"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="status"
+ minOccurs="0"
+ maxOccurs="1">
+ <complexType>
+ <choice
+ minOccurs="1"
+ maxOccurs="unbounded">
+ <element
+ name="reserved"
+ type="ereg:enumStatusType" />
+ <element
+ name="create"
+ type="ereg:enumStatusType" />
+ <element
+ name="active"
+ type="ereg:enumStatusType" />
+ <element
+ name="inactive"
+ type="ereg:enumStatusType" />
+ <element
+ name="dispute"
+ type="ereg:enumStatusType" />
+ <element
+ name="delete"
+ type="ereg:enumStatusType" />
+ <element
+ name="transfer"
+ type="ereg:enumStatusType" />
+ <element
+ name="renew"
+ type="ereg:enumStatusType" />
+ <element
+ name="update"
+ type="ereg:enumStatusType" />
+ <element
+ name="addPeriod"
+ type="ereg:enumStatusType" />
+ <element
+ name="renewPeriod"
+ type="ereg:enumStatusType" />
+ <element
+ name="autoRenewPeriod"
+ type="ereg:enumStatusType" />
+ <element
+ name="transferPeriod"
+ type="ereg:enumStatusType" />
+ <element
+ name="redemptionPeriod"
+ type="ereg:enumStatusType" />
+ <element
+ name="restore"
+ type="ereg:enumStatusType" />
+ <element
+ name="other"
+ type="ereg:enumStatusType" />
+ </choice>
+ </complexType>
+ </element>
+ <element
+ name="registrationReference"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="registry"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="registrar"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="validationEntity"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ <element
+ name="signalCSP"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ <element
+ name="dataCSP"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ <element
+ name="lineCSP"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <element
+ name="voiceCSP"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ <element
+ name="otherCSP"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ <element
+ name="validationEvent"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <element
+ name="initialDelegationDateTime"
+ type="ereg:dateTimePrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="lastRenewalDateTime"
+ type="ereg:dateTimePrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="expirationDateTime"
+ type="ereg:dateTimePrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="lastDelegationModificationDateTime"
+ type="ereg:dateTimePrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="lastDelegationModificationBy"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="lastVerificationDateTime"
+ type="ereg:dateTimePrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ ref="iris:seeAlso"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+
+ <element
+ name="enum"
+ type="ereg:enumType"
+ substitutionGroup="iris:result" />
+
+ <!-- -->
+ <!-- Host -->
+ <!-- -->
+
+ <complexType
+ name="hostType">
+ <complexContent>
+ <extension
+ base="iris:resultType">
+ <sequence>
+ <element
+ name="hostHandle"
+ type="ereg:normalizedStringPrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="hostName"
+ type="normalizedString" />
+ <element
+ name="ipV4Address"
+ type="token"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ <element
+ name="ipV6Address"
+ type="token"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ <element
+ name="hostContact"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ <element
+ name="createdDateTime"
+ type="ereg:dateTimePrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="lastModificationDateTime"
+ type="ereg:dateTimePrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="lastVerificationDateTime"
+ type="ereg:dateTimePrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ ref="iris:seeAlso"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+
+ <element
+ name="host"
+ type="ereg:hostType"
+ substitutionGroup="iris:result" />
+
+ <!-- -->
+ <!-- Contact -->
+ <!-- -->
+
+ <complexType
+ name="contactType">
+ <complexContent>
+ <extension
+ base="iris:resultType">
+ <sequence>
+ <element
+ name="contactHandle"
+ type="ereg:normalizedStringPrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="commonName"
+ type="ereg:normalizedStringPrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="1"/>
+ <element
+ name="language"
+ type="language"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="type"
+ minOccurs="0"
+ maxOccurs="1">
+ <complexType>
+ <choice>
+ <element
+ name="person"
+ type="ereg:contactTypeType" />
+ <element
+ name="organization"
+ type="ereg:contactTypeType" />
+ <element
+ name="role"
+ type="ereg:contactTypeType" />
+ <element
+ name="other"
+ type="ereg:contactTypeType" />
+ </choice>
+ </complexType>
+ </element>
+ <element
+ name="organization"
+ type="ereg:normalizedStringPrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="legalId"
+ type="ereg:tokenPrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ <element
+ name="eMail"
+ type="ereg:stringPrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ <element
+ name="sip"
+ type="ereg:stringPrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ <element
+ name="postalAddress"
+ minOccurs="0"
+ maxOccurs="unbounded" >
+ <complexType>
+ <sequence>
+ <element
+ name="address"
+ type="ereg:stringPrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="city"
+ type="ereg:stringPrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="region"
+ type="ereg:stringPrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="postalCode"
+ type="ereg:normalizedStringPrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="country"
+ type="ereg:tokenPrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="1" />
+ </sequence>
+ </complexType>
+ </element>
+ <element
+ name="phone"
+ type="ereg:normalizedStringPrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ <element
+ name="fax"
+ type="ereg:normalizedStringPrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ <element
+ name="createdDateTime"
+ type="ereg:dateTimePrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="lastModificationDateTime"
+ type="ereg:dateTimePrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="lastVerificationDateTime"
+ type="ereg:dateTimePrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="translatedContact"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ <element
+ ref="iris:seeAlso"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+
+ <element
+ name="contact"
+ type="ereg:contactType"
+ substitutionGroup="iris:result" />
+
+ <!-- -->
+ <!-- Registration Authority -->
+ <!-- -->
+
+ <complexType
+ name="registrationAuthorityType">
+ <complexContent>
+ <extension
+ base="iris:resultType">
+ <sequence>
+ <element
+ name="serviceInstance"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="organizationName"
+ type="string"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="legalId"
+ type="token"
+ minOccurs="0"
+ maxOccurs="1"/>
+ <choice
+ minOccurs="0"
+ maxOccurs="3">
+ <element
+ name="registry">
+ <complexType/>
+ </element>
+ <element
+ name="registrar">
+ <complexType/>
+ </element>
+ <element
+ name="other">
+ <complexType/>
+ </element>
+ </choice>
+ <group ref="ereg:contactGroup" />
+ <element
+ ref="iris:seeAlso"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+ <element
+ name="registrationAuthority"
+ type="ereg:registrationAuthorityType"
+ substitutionGroup="iris:result" />
+
+ <!-- -->
+ <!-- Validation Entity -->
+ <!-- -->
+
+ <complexType
+ name="validationEntityType">
+ <complexContent>
+ <extension
+ base="iris:resultType">
+ <sequence>
+ <element
+ name="serviceInstance"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="organizationName"
+ type="string"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="legalId"
+ type="token"
+ minOccurs="0"
+ maxOccurs="1"/>
+ <group ref="ereg:contactGroup" />
+ <element
+ ref="iris:seeAlso"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+
+ <element
+ name="validationEntity"
+ type="ereg:validationEntityType"
+ substitutionGroup="iris:result" />
+
+ <!-- -->
+ <!-- Communication Service Provider -->
+ <!-- -->
+
+ <complexType
+ name="communicationServiceProviderType">
+ <complexContent>
+ <extension
+ base="iris:resultType">
+ <sequence>
+ <element
+ name="serviceInstance"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="organizationName"
+ type="string"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="legalId"
+ type="token"
+ minOccurs="0"
+ maxOccurs="1"/>
+ <element
+ name="cspId"
+ type="token"
+ minOccurs="0"
+ maxOccurs="1"/>
+ <choice
+ minOccurs="0"
+ maxOccurs="5">
+ <element
+ minOccurs="0"
+ maxOccurs="1"
+ name="line">
+ <complexType/>
+ </element>
+ <element
+ minOccurs="0"
+ maxOccurs="1"
+ name="data">
+ <complexType/>
+ </element>
+ <element
+ minOccurs="0"
+ maxOccurs="1"
+ name="voice">
+ <complexType/>
+ </element>
+ <element
+ minOccurs="0"
+ maxOccurs="1"
+ name="signal">
+ <complexType/>
+ </element>
+ <element
+ minOccurs="0"
+ maxOccurs="1"
+ name="other">
+ <complexType/>
+ </element>
+ </choice>
+ <group ref="ereg:contactGroup" />
+ <element
+ ref="iris:seeAlso"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+
+ <element
+ name="communicationServiceProvider"
+ type="ereg:communicationServiceProviderType"
+ substitutionGroup="iris:result" />
+
+ <!-- -->
+ <!-- Validation Event -->
+ <!-- -->
+
+ <complexType
+ name="validationEventType">
+ <complexContent>
+ <extension
+ base="iris:resultType">
+ <sequence>
+ <element
+ name="serial"
+ type="token"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ <element
+ name="methodId"
+ type="token"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ <element
+ name="validationEntity"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ <element
+ name="registrar"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ <element
+ name="executionDateTime"
+ type="ereg:dateTimePrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="expirationDateTime"
+ type="ereg:dateTimePrivacyType"
+ nillable="true"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ ref="iris:seeAlso"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+
+ <element
+ name="validationEvent"
+ type="ereg:validationEventType"
+ substitutionGroup="iris:result" />
+
+ <!-- -->
+ <!-- Contact Group -->
+ <!-- -->
+
+ <group name="contactGroup">
+ <sequence>
+ <element
+ name="billingContact"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ <element
+ name="technicalContact"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ <element
+ name="administrativeContact"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ <element
+ name="legalContact"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ <element
+ name="zoneContact"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ <element
+ name="abuseContact"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ <element
+ name="securityContact"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ <element
+ name="otherContact"
+ type="iris:entityType"
+ minOccurs="0"
+ maxOccurs="unbounded" />
+ </sequence>
+ </group>
+
+ <!-- -->
+ <!-- Privacy Label Types -->
+ <!-- -->
+
+ <attributeGroup
+ name="privacyLabelAttributeGroup">
+ <attribute
+ name="private"
+ type="boolean" />
+ <attribute
+ name="denied"
+ type="boolean" />
+ <attribute
+ name="doNotRedistribute"
+ type="boolean" />
+ <attribute
+ name="specialAccess"
+ type="boolean" />
+ </attributeGroup>
+
+ <complexType
+ name="dateTimePrivacyType">
+ <simpleContent>
+ <extension
+ base="dateTime">
+ <attributeGroup
+ ref="ereg:privacyLabelAttributeGroup" />
+ </extension>
+ </simpleContent>
+ </complexType>
+
+ <complexType
+ name="stringPrivacyType">
+ <simpleContent>
+ <extension
+ base="string">
+ <attributeGroup
+ ref="ereg:privacyLabelAttributeGroup" />
+ </extension>
+ </simpleContent>
+ </complexType>
+
+ <complexType
+ name="normalizedStringPrivacyType">
+ <simpleContent>
+ <extension
+ base="normalizedString">
+ <attributeGroup
+ ref="ereg:privacyLabelAttributeGroup" />
+ </extension>
+ </simpleContent>
+ </complexType>
+
+ <complexType
+ name="tokenPrivacyType">
+ <simpleContent>
+ <extension
+ base="token">
+ <attributeGroup
+ ref="ereg:privacyLabelAttributeGroup" />
+ </extension>
+ </simpleContent>
+ </complexType>
+
+ <complexType
+ name="enumStatusType">
+ <sequence>
+ <element
+ name="appliedDate"
+ type="dateTime"
+ minOccurs="0"
+ maxOccurs="1" />
+ <element
+ name="description"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <complexType>
+ <simpleContent>
+ <extension
+ base="string">
+ <attribute
+ name="language"
+ type="language"
+ use="required" />
+ </extension>
+ </simpleContent>
+ </complexType>
+ </element>
+ <element
+ name="subStatus"
+ minOccurs="0"
+ maxOccurs="1">
+ <complexType>
+ <simpleContent>
+ <extension
+ base="token">
+ <attribute
+ type="token"
+ use="required"
+ name="authority"/>
+ </extension>
+ </simpleContent>
+ </complexType>
+ </element>
+ </sequence>
+ <attributeGroup
+ ref="ereg:privacyLabelAttributeGroup" />
+ <attribute
+ name="actor">
+ <simpleType>
+ <restriction
+ base="string">
+ <enumeration
+ value="registry"/>
+ <enumeration
+ value="registrar"/>
+ </restriction>
+ </simpleType>
+ </attribute>
+ <attribute
+ name="disposition">
+ <simpleType>
+ <restriction
+ base="string">
+ <enumeration
+ value="prohibited"/>
+ <enumeration
+ value="pending"/>
+ </restriction>
+ </simpleType>
+ </attribute>
+ <attribute
+ name="scope"
+ type="token" />
+ </complexType>
+
+ <complexType
+ name="contactTypeType">
+ <sequence>
+ <element
+ name="description"
+ minOccurs="0"
+ maxOccurs="unbounded">
+ <complexType>
+ <simpleContent>
+ <extension
+ base="string">
+ <attribute
+ name="language"
+ type="language"
+ use="required" />
+ </extension>
+ </simpleContent>
+ </complexType>
+ </element>
+ </sequence>
+ <attributeGroup
+ ref="ereg:privacyLabelAttributeGroup" />
+ </complexType>
+
+ <!-- ========================================= -->
+ <!-- -->
+ <!-- Error Codes -->
+ <!-- -->
+ <!-- ========================================= -->
+
+ <!-- -->
+ <!-- Search Too Wide -->
+ <!-- -->
+
+ <element
+ name="searchTooWide"
+ type="iris:codeType"
+ substitutionGroup="iris:genericCode" />
+
+ <!-- -->
+ <!-- Language Not Supported -->
+ <!-- -->
+
+ <complexType
+ name="languageNotSupportedType">
+ <complexContent>
+ <extension
+ base="iris:codeType">
+ <sequence>
+ <element
+ name="unsupportedLanguage"
+ type="language"
+ minOccurs="1"
+ maxOccurs="unbounded" />
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+
+ <element
+ name="languageNotSupported"
+ type="ereg:languageNotSupportedType"
+ substitutionGroup="iris:genericCode" />
+
+</schema> \ No newline at end of file
diff --git a/schemas/geopriv10.xml b/schemas/geopriv10.xml
new file mode 100644
index 0000000..a4a402e
--- /dev/null
+++ b/schemas/geopriv10.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema
+ targetNamespace="urn:ietf:params:xml:ns:pidf:geopriv10"
+ xmlns:tns="urn:ietf:params:xml:ns:pidf:geopriv10"
+ xmlns:gbp="urn:ietf:params:xml:ns:pidf:geopriv10:basicPolicy"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified" attributeFormDefault="unqualified">
+
+<xs:import namespace=
+ "urn:ietf:params:xml:ns:pidf:geopriv10:basicPolicy" />
+
+ <!-- This import brings in the XML language attribute xml:lang-->
+
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace"
+ schemaLocation="http://www.w3.org/2001/xml.xsd"/>
+
+ <xs:element name="geopriv" type="tns:geopriv"/>
+
+<xs:complexType name="geopriv">
+ <xs:sequence>
+ <xs:element name="location-info" type="tns:locInfoType"
+ minOccurs="1" maxOccurs="1"/>
+ <xs:element name="usage-rules" type="gbp:locPolicyType"
+ minOccurs="1" maxOccurs="1"/>
+ <xs:element name="method" type="tns:locMethod"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="provided-by" type="tns:locProvidedBy"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+</xs:complexType>
+
+<xs:complexType name="locInfoType">
+ <xs:sequence>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+</xs:complexType>
+
+<xs:complexType name="locMethod">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute ref="xml:lang" />
+ </xs:extension>
+ </xs:simpleContent>
+</xs:complexType>
+
+<xs:complexType name="locProvidedBy">
+ <xs:sequence>
+ <xs:any namespace="##other" processContents="skip"
+ minOccurs="1" maxOccurs="unbounded"/>
+ </xs:sequence>
+</xs:complexType>
+
+</xs:schema>
diff --git a/schemas/gruuinfo.xml b/schemas/gruuinfo.xml
new file mode 100644
index 0000000..9586027
--- /dev/null
+++ b/schemas/gruuinfo.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+ <xs:schema targetNamespace="urn:ietf:params:xml:ns:gruuinfo"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ xmlns:tns="urn:ietf:params:xml:ns:gruuinfo">
+ <xs:complexType name="pubGruu">
+ <xs:attribute name="uri" type="xs:anyURI"
+ use="required"/>
+ </xs:complexType>
+ <xs:complexType name="tempGruu">
+ <xs:complexContent>
+ <xs:extension base="tns:pubGruu">
+ <xs:attribute name="first-cseq"
+ type="xs:unsignedLong"
+ use="required"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="pub-gruu" type="tns:pubGruu"/>
+ <xs:element name="temp-gruu" type="tns:tempGruu"/>
+</xs:schema> \ No newline at end of file
diff --git a/schemas/held.xml b/schemas/held.xml
new file mode 100644
index 0000000..fe10512
--- /dev/null
+++ b/schemas/held.xml
@@ -0,0 +1,162 @@
+<?xml version="1.0"?>
+<xs:schema
+ targetNamespace="urn:ietf:params:xml:ns:geopriv:held"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ xmlns:held="urn:ietf:params:xml:ns:geopriv:held"
+ xmlns:xml="http://www.w3.org/XML/1998/namespace"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified">
+
+ <xs:annotation>
+ <xs:documentation>
+ This document (RFC-ietf-geopriv-http-location-delivery-16) defines HELD messages.
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace"/>
+
+ <!-- Return Location -->
+ <xs:complexType name="returnLocationType">
+ <xs:complexContent>
+ <xs:restriction base="xs:anyType">
+ <xs:sequence>
+ <xs:element name="locationURI" type="xs:anyURI"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="expires" type="xs:dateTime"
+ use="required"/>
+ </xs:restriction>
+ </xs:complexContent>
+ </xs:complexType>
+
+ <!-- responseTime Type -->
+ <xs:simpleType name="responseTimeType">
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="emergencyRouting"/>
+ <xs:enumeration value="emergencyDispatch"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="xs:nonNegativeInteger">
+ <xs:minInclusive value="0"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+
+ <!-- Location Type -->
+ <xs:simpleType name="locationTypeBase">
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="any"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="held:locationTypeList">
+ <xs:minLength value="1"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+
+ <xs:simpleType name="locationTypeList">
+ <xs:list>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="civic"/>
+ <xs:enumeration value="geodetic"/>
+ <xs:enumeration value="locationURI"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:list>
+ </xs:simpleType>
+
+ <xs:complexType name="locationTypeType">
+ <xs:simpleContent>
+ <xs:extension base="held:locationTypeBase">
+ <xs:attribute name="exact" type="xs:boolean"
+ use="optional" default="false"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+
+ <!-- Message Definitions -->
+ <xs:complexType name="baseRequestType">
+ <xs:complexContent>
+ <xs:restriction base="xs:anyType">
+ <xs:sequence/>
+ <xs:attribute name="responseTime" type="held:responseTimeType"
+ use="optional"/>
+ <xs:anyAttribute namespace="##any" processContents="lax"/>
+ </xs:restriction>
+ </xs:complexContent>
+ </xs:complexType>
+
+ <xs:complexType name="errorType">
+ <xs:complexContent>
+ <xs:restriction base="xs:anyType">
+ <xs:sequence>
+ <xs:element name="message" type="held:errorMsgType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:any namespace="##other" processContents="lax"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="code" type="xs:token"
+ use="required"/>
+ <xs:anyAttribute namespace="##any" processContents="lax"/>
+ </xs:restriction>
+ </xs:complexContent>
+ </xs:complexType>
+
+ <xs:complexType name="errorMsgType">
+ <xs:simpleContent>
+ <xs:extension base="xs:token">
+ <xs:attribute ref="xml:lang"/>
+ <xs:anyAttribute namespace="##any" processContents="lax"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:element name="error" type="held:errorType"/>
+
+ <!-- Location Response -->
+ <xs:complexType name="locationResponseType">
+ <xs:complexContent>
+ <xs:restriction base="xs:anyType">
+ <xs:sequence>
+ <xs:element name="locationUriSet"
+ type="held:returnLocationType"
+ minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:restriction>
+ </xs:complexContent>
+ </xs:complexType>
+
+ <xs:element name="locationResponse"
+ type="held:locationResponseType"/>
+
+
+ <!-- Location Request -->
+
+ <xs:complexType name="locationRequestType">
+ <xs:complexContent>
+ <xs:extension base="held:baseRequestType">
+ <xs:sequence>
+ <xs:element name="locationType"
+ type="held:locationTypeType"
+ minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+
+ <xs:element name="locationRequest"
+ type="held:locationRequestType"/>
+
+</xs:schema> \ No newline at end of file
diff --git a/schemas/host-1.0.xml b/schemas/host-1.0.xml
new file mode 100644
index 0000000..d4bbc04
--- /dev/null
+++ b/schemas/host-1.0.xml
@@ -0,0 +1,238 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<schema targetNamespace="urn:ietf:params:xml:ns:host-1.0"
+ xmlns:host="urn:ietf:params:xml:ns:host-1.0"
+ xmlns:epp="urn:ietf:params:xml:ns:epp-1.0"
+ xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
+ xmlns="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified">
+<!--
+Import common element types.
+-->
+ <import namespace="urn:ietf:params:xml:ns:eppcom-1.0"/>
+ <import namespace="urn:ietf:params:xml:ns:epp-1.0"/>
+
+ <annotation>
+ <documentation>
+ Extensible Provisioning Protocol v1.0
+ host provisioning schema.
+ </documentation>
+ </annotation>
+
+<!--
+Child elements found in EPP commands.
+-->
+ <element name="check" type="host:mNameType"/>
+ <element name="create" type="host:createType"/>
+ <element name="delete" type="host:sNameType"/>
+ <element name="info" type="host:sNameType"/>
+ <element name="update" type="host:updateType"/>
+
+<!--
+Child elements of the <create> command.
+-->
+ <complexType name="createType">
+ <sequence>
+ <element name="name" type="eppcom:labelType"/>
+ <element name="addr" type="host:addrType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ </complexType>
+
+ <complexType name="addrType">
+ <simpleContent>
+ <extension base="host:addrStringType">
+ <attribute name="ip" type="host:ipType"
+ default="v4"/>
+ </extension>
+ </simpleContent>
+ </complexType>
+
+ <simpleType name="addrStringType">
+ <restriction base="token">
+ <minLength value="3"/>
+ <maxLength value="45"/>
+ </restriction>
+ </simpleType>
+ <simpleType name="ipType">
+ <restriction base="token">
+ <enumeration value="v4"/>
+ <enumeration value="v6"/>
+ </restriction>
+ </simpleType>
+
+<!--
+Child elements of the <delete> and <info> commands.
+-->
+ <complexType name="sNameType">
+ <sequence>
+ <element name="name" type="eppcom:labelType"/>
+ </sequence>
+ </complexType>
+
+<!--
+Child element of commands that accept multiple names.
+-->
+ <complexType name="mNameType">
+ <sequence>
+ <element name="name" type="eppcom:labelType"
+ maxOccurs="unbounded"/>
+ </sequence>
+ </complexType>
+<!--
+Child elements of the <update> command.
+-->
+ <complexType name="updateType">
+ <sequence>
+ <element name="name" type="eppcom:labelType"/>
+ <element name="add" type="host:addRemType"
+ minOccurs="0"/>
+ <element name="rem" type="host:addRemType"
+ minOccurs="0"/>
+ <element name="chg" type="host:chgType"
+ minOccurs="0"/>
+ </sequence>
+ </complexType>
+
+<!--
+Data elements that can be added or removed.
+-->
+ <complexType name="addRemType">
+ <sequence>
+ <element name="addr" type="host:addrType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <element name="status" type="host:statusType"
+ minOccurs="0" maxOccurs="7"/>
+ </sequence>
+ </complexType>
+
+<!--
+Data elements that can be changed.
+-->
+ <complexType name="chgType">
+ <sequence>
+ <element name="name" type="eppcom:labelType"/>
+ </sequence>
+ </complexType>
+
+<!--
+Child response elements.
+-->
+ <element name="chkData" type="host:chkDataType"/>
+ <element name="creData" type="host:creDataType"/>
+ <element name="infData" type="host:infDataType"/>
+ <element name="panData" type="host:panDataType"/>
+
+<!--
+<check> response elements.
+-->
+ <complexType name="chkDataType">
+ <sequence>
+ <element name="cd" type="host:checkType"
+ maxOccurs="unbounded"/>
+ </sequence>
+ </complexType>
+
+ <complexType name="checkType">
+ <sequence>
+ <element name="name" type="host:checkNameType"/>
+ <element name="reason" type="eppcom:reasonType"
+ minOccurs="0"/>
+ </sequence>
+ </complexType>
+
+ <complexType name="checkNameType">
+ <simpleContent>
+ <extension base="eppcom:labelType">
+ <attribute name="avail" type="boolean"
+ use="required"/>
+ </extension>
+ </simpleContent>
+ </complexType>
+
+<!--
+<create> response elements.
+-->
+ <complexType name="creDataType">
+ <sequence>
+ <element name="name" type="eppcom:labelType"/>
+ <element name="crDate" type="dateTime"/>
+ </sequence>
+ </complexType>
+
+<!--
+<info> response elements.
+-->
+ <complexType name="infDataType">
+ <sequence>
+ <element name="name" type="eppcom:labelType"/>
+ <element name="roid" type="eppcom:roidType"/>
+ <element name="status" type="host:statusType"
+ maxOccurs="7"/>
+ <element name="addr" type="host:addrType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <element name="clID" type="eppcom:clIDType"/>
+ <element name="crID" type="eppcom:clIDType"/>
+ <element name="crDate" type="dateTime"/>
+ <element name="upID" type="eppcom:clIDType"
+ minOccurs="0"/>
+ <element name="upDate" type="dateTime"
+ minOccurs="0"/>
+ <element name="trDate" type="dateTime"
+ minOccurs="0"/>
+ </sequence>
+ </complexType>
+
+<!--
+Status is a combination of attributes and an optional human-readable
+message that may be expressed in languages other than English.
+-->
+ <complexType name="statusType">
+ <simpleContent>
+ <extension base="normalizedString">
+ <attribute name="s" type="host:statusValueType"
+ use="required"/>
+ <attribute name="lang" type="language"
+ default="en"/>
+ </extension>
+ </simpleContent>
+ </complexType>
+
+ <simpleType name="statusValueType">
+ <restriction base="token">
+ <enumeration value="clientDeleteProhibited"/>
+ <enumeration value="clientUpdateProhibited"/>
+ <enumeration value="linked"/>
+ <enumeration value="ok"/>
+ <enumeration value="pendingCreate"/>
+ <enumeration value="pendingDelete"/>
+ <enumeration value="pendingTransfer"/>
+ <enumeration value="pendingUpdate"/>
+ <enumeration value="serverDeleteProhibited"/>
+ <enumeration value="serverUpdateProhibited"/>
+ </restriction>
+ </simpleType>
+
+<!--
+Pending action notification response elements.
+-->
+ <complexType name="panDataType">
+ <sequence>
+ <element name="name" type="host:paNameType"/>
+ <element name="paTRID" type="epp:trIDType"/>
+ <element name="paDate" type="dateTime"/>
+ </sequence>
+ </complexType>
+ <complexType name="paNameType">
+ <simpleContent>
+ <extension base="eppcom:labelType">
+ <attribute name="paResult" type="boolean"
+ use="required"/>
+ </extension>
+ </simpleContent>
+ </complexType>
+
+<!--
+End of schema.
+-->
+</schema> \ No newline at end of file
diff --git a/schemas/im-iscomposing.xsd b/schemas/im-iscomposing.xsd
new file mode 100644
index 0000000..639d6ea
--- /dev/null
+++ b/schemas/im-iscomposing.xsd
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+ <xs:schema targetNamespace="urn:ietf:params:xml:ns:im-iscomposing"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ xmlns:tns="urn:ietf:params:xml:ns:im-iscomposing">
+ <xs:element name="isComposing">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="state" type="xs:string"/>
+ <xs:element name="lastactive" type="xs:dateTime"
+ minOccurs="0"/>
+ <xs:element name="contenttype" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="refresh" type="xs:positiveInteger"
+ minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ </xs:schema>
diff --git a/schemas/imdn.xml b/schemas/imdn.xml
new file mode 100644
index 0000000..8d44eb0
--- /dev/null
+++ b/schemas/imdn.xml
@@ -0,0 +1,179 @@
+<?xml version="1.0" encoding="UTF-8"?>
+ <grammar
+ xmlns="http://relaxng.org/ns/structure/1.0"
+ xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
+ datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"
+ ns="urn:ietf:params:xml:ns:imdn">
+
+ <start>
+ <element name="imdn">
+ <element name="message-id">
+ <data type="token"/>
+ </element>
+ <element name="datetime">
+ <data type="string"/>
+ </element>
+ <optional>
+ <element name="recipient-uri">
+ <data type="anyURI"/>
+ </element>
+ <element name="original-recipient-uri">
+ <data type="anyURI"/>
+ </element>
+ <optional>
+ <element name="subject">
+ <data type="string"/>
+ </element>
+ </optional>
+ </optional>
+ <choice>
+ <ref name="deliveryNotification"/>
+ <ref name="displayNotification"/>
+ <ref name="processingNotification"/>
+ <empty/>
+ </choice>
+ <ref name="imdnExtension"/>
+ </element>
+ </start>
+
+ <define name="deliveryNotification">
+ <element name="delivery-notification">
+ <element name="status">
+ <choice>
+ <element name="delivered">
+ <empty/>
+ </element>
+ <element name="failed">
+ <empty/>
+ </element>
+ <ref name="commonDispositionStatus"></ref>
+ </choice>
+ <ref name="deliveryExtension"/>
+ </element>
+ </element>
+ </define>
+
+ <define name="displayNotification">
+ <element name="display-notification">
+ <element name="status">
+ <choice>
+ <element name="displayed">
+ <empty/>
+ </element>
+ <ref name="commonDispositionStatus"></ref>
+ </choice>
+ <ref name="displayExtension"/>
+ </element>
+ </element>
+ </define>
+
+ <define name="processingNotification">
+ <element name="processing-notification">
+ <element name="status">
+ <choice>
+ <element name="processed">
+ <empty/>
+ </element>
+ <element name="stored">
+ <empty/>
+ </element>
+ <ref name="commonDispositionStatus"></ref>
+ </choice>
+ <ref name="processingExtension"/>
+ </element>
+ </element>
+ </define>
+
+ <define name="commonDispositionStatus">
+ <choice>
+ <element name="forbidden">
+ <empty/>
+ </element>
+ <element name="error">
+ <empty/>
+ </element>
+ </choice>
+ </define>
+
+ <!-- <imdn> extension point for the extension schemas to add
+ new definitions with the combine="interleave" pattern.
+ Extension schemas should add proper cardinalities. For example, the
+ <zeroOrMore> cardinality should be used if the extension is to allow
+ multiple elements, and the <optional> cardinality should be used if the
+ extension is to allow a single optional element. -->
+ <define name="imdnExtension">
+ <zeroOrMore>
+ <ref name="anyIMDN"/>
+ </zeroOrMore>
+ </define>
+
+ <!-- delivery-notification <status> extension point -->
+ <define name="deliveryExtension">
+ <zeroOrMore>
+ <ref name="anyIMDN"/>
+ </zeroOrMore>
+ </define>
+
+ <!-- display-notification <status> extension point -->
+ <define name="displayExtension">
+ <zeroOrMore>
+ <ref name="anyIMDN"/>
+ </zeroOrMore>
+ </define>
+
+ <!-- processing-notification <status> extension point -->
+ <define name="processingExtension">
+ <zeroOrMore>
+ <ref name="anyIMDN"/>
+ </zeroOrMore>
+ </define>
+
+ <!-- wildcard definition for complex elements (of mixed type)
+ unqualified or qualified in the imdn namespace.
+ Extension schemas MUST redefine this or the
+ individual previous definitions which use this definition.
+ In other words, the extension schema MUST reduce the
+ allowable content in order to maintain deterministic
+ and unambiquous schemas with the interleave pattern. -->
+ <define name="anyIMDN">
+ <element>
+ <anyName>
+ <except>
+ <nsName ns="urn:ietf:params:xml:ns:imdn"/>
+ <nsName ns=""/>
+ </except>
+ </anyName>
+ <ref name="anyExtension"/>
+ </element>
+ </define>
+
+ <!-- the rest of the "anyIMDN" wildcard definition -->
+ <define name="anyExtension">
+ <zeroOrMore>
+ <choice>
+ <attribute>
+ <anyName/>
+ </attribute>
+ <ref name="any"/>
+ </choice>
+ </zeroOrMore>
+ </define>
+
+ <!-- wildcard type for complex elements (of mixed type)
+ without any namespace or content restrictions -->
+ <define name="any">
+ <element>
+ <anyName/>
+ <zeroOrMore>
+ <choice>
+ <attribute>
+ <anyName/>
+ </attribute>
+ <text/>
+ <ref name="any"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ </grammar> \ No newline at end of file
diff --git a/schemas/iodef-1.0.xml b/schemas/iodef-1.0.xml
new file mode 100644
index 0000000..95b303f
--- /dev/null
+++ b/schemas/iodef-1.0.xml
@@ -0,0 +1,980 @@
+<?xml version="1.0" encoding="UTF-8"?>
+ <xs:schema targetNamespace="urn:ietf:params:xml:ns:iodef-1.0"
+ xmlns="urn:ietf:params:xml:ns:iodef-1.0"
+ xmlns:iodef="urn:ietf:params:xml:ns:iodef-1.0"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified">
+
+ <xs:annotation>
+ <xs:documentation>
+ Incident Object Description Exchange Format v1.00, see RFC XXX
+ </xs:documentation>
+ </xs:annotation>
+
+ <!--
+ ====================================================================
+ == IODEF-Document class ==
+ ====================================================================
+ -->
+ <xs:element name="IODEF-Document">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="iodef:Incident"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="version"
+ type="xs:string" fixed="1.00"/>
+ <xs:attribute name="lang"
+ type="xs:language" use="required"/>
+ <xs:attribute name="formatid"
+ type="xs:string"/>
+ </xs:complexType>
+ </xs:element>
+ <!--
+ ====================================================================
+ === Incident class ===
+ ====================================================================
+ -->
+ <xs:element name="Incident">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="iodef:IncidentID"/>
+ <xs:element ref="iodef:AlternativeID"
+ minOccurs="0"/>
+ <xs:element ref="iodef:RelatedActivity"
+ minOccurs="0"/>
+ <xs:element ref="iodef:DetectTime"
+ minOccurs="0"/>
+ <xs:element ref="iodef:StartTime"
+ minOccurs="0"/>
+ <xs:element ref="iodef:EndTime"
+ minOccurs="0"/>
+ <xs:element ref="iodef:ReportTime"/>
+ <xs:element ref="iodef:Description"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="iodef:Assessment"
+ maxOccurs="unbounded"/>
+ <xs:element ref="iodef:Method"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="iodef:Contact"
+ maxOccurs="unbounded"/>
+ <xs:element ref="iodef:EventData"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="iodef:History"
+ minOccurs="0"/>
+ <xs:element ref="iodef:AdditionalData"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="purpose" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="traceback"/>
+ <xs:enumeration value="mitigation"/>
+ <xs:enumeration value="reporting"/>
+ <xs:enumeration value="other"/>
+ <xs:enumeration value="ext-value"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="ext-purpose"
+ type="xs:string" use="optional"/>
+ <xs:attribute name="lang"
+ type="xs:language"/>
+ <xs:attribute name="restriction"
+ type="iodef:restriction-type" default="private"/>
+ </xs:complexType>
+ </xs:element>
+ <!--
+ ====================================================================
+ == IncidentID class ==
+ ====================================================================
+ -->
+ <xs:element name="IncidentID" type="iodef:IncidentIDType"/>
+ <xs:complexType name="IncidentIDType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="name"
+ type="xs:string" use="required"/>
+ <xs:attribute name="instance"
+ type="xs:string" use="optional"/>
+ <xs:attribute name="restriction"
+ type="iodef:restriction-type" default="public"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <!--
+ ====================================================================
+ == AlternativeID class ==
+ ====================================================================
+ -->
+ <xs:element name="AlternativeID">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="iodef:IncidentID"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="restriction"
+ type="iodef:restriction-type"/>
+ </xs:complexType>
+ </xs:element>
+ <!--
+ ====================================================================
+ == RelatedActivity class ==
+ ====================================================================
+ -->
+ <xs:element name="RelatedActivity">
+ <xs:complexType>
+ <xs:choice>
+ <xs:element ref="iodef:IncidentID"
+ maxOccurs="unbounded"/>
+ <xs:element ref="iodef:URL"
+ maxOccurs="unbounded"/>
+ </xs:choice>
+ <xs:attribute name="restriction"
+ type="iodef:restriction-type"/>
+ </xs:complexType>
+ </xs:element>
+ <!--
+ ====================================================================
+ === AdditionalData class ===
+ ====================================================================
+ -->
+ <xs:element name="AdditionalData" type="iodef:ExtensionType"/>
+ <!--
+ ====================================================================
+ === Contact class ===
+ ====================================================================
+ -->
+ <xs:element name="Contact">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="iodef:ContactName"
+ minOccurs="0"/>
+ <xs:element ref="iodef:Description"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="iodef:RegistryHandle"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="iodef:PostalAddress"
+ minOccurs="0"/>
+ <xs:element ref="iodef:Email"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="iodef:Telephone"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="iodef:Fax"
+ minOccurs="0"/>
+ <xs:element ref="iodef:Timezone"
+ minOccurs="0"/>
+ <xs:element ref="iodef:Contact"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="iodef:AdditionalData"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="role" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="creator"/>
+ <xs:enumeration value="admin"/>
+ <xs:enumeration value="tech"/>
+ <xs:enumeration value="irt"/>
+ <xs:enumeration value="cc"/>
+ <xs:enumeration value="ext-value"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="ext-role"
+ type="xs:string" use="optional"/>
+ <xs:attribute name="type" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="person"/>
+ <xs:enumeration value="organization"/>
+ <xs:enumeration value="ext-value"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="ext-type"
+ type="xs:string" use="optional"/>
+ <xs:attribute name="restriction"
+ type="iodef:restriction-type"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="ContactName"
+ type="iodef:MLStringType"/>
+ <xs:element name="RegistryHandle">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="registry">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="internic"/>
+ <xs:enumeration value="apnic"/>
+ <xs:enumeration value="arin"/>
+ <xs:enumeration value="lacnic"/>
+ <xs:enumeration value="ripe"/>
+ <xs:enumeration value="afrinic"/>
+ <xs:enumeration value="local"/>
+ <xs:enumeration value="ext-value"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="ext-registry"
+ type="xs:string" use="optional"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="PostalAddress">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="iodef:MLStringType">
+ <xs:attribute name="meaning"
+ type="xs:string" use="optional"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Email" type="iodef:ContactMeansType"/>
+ <xs:element name="Telephone" type="iodef:ContactMeansType"/>
+ <xs:element name="Fax" type="iodef:ContactMeansType"/>
+
+ <xs:complexType name="ContactMeansType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="meaning"
+ type="xs:string" use="optional"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+
+ <!--
+ ====================================================================
+ === Time-based classes ===
+ ====================================================================
+ -->
+ <xs:element name="DateTime"
+ type="xs:dateTime"/>
+ <xs:element name="ReportTime"
+ type="xs:dateTime"/>
+ <xs:element name="DetectTime"
+ type="xs:dateTime"/>
+ <xs:element name="StartTime"
+ type="xs:dateTime"/>
+ <xs:element name="EndTime"
+ type="xs:dateTime"/>
+ <xs:element name="Timezone"
+ type="iodef:TimezoneType"/>
+ <xs:simpleType name="TimezoneType">
+ <xs:restriction base="xs:string">
+ <xs:pattern value="Z|[\+\-](0[0-9]|1[0-4]):[0-5][0-9]"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!--
+ ====================================================================
+ === History class ===
+ ====================================================================
+ -->
+ <xs:element name="History">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="iodef:HistoryItem"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="restriction"
+ type="iodef:restriction-type" default="default"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="HistoryItem">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="iodef:DateTime"/>
+ <xs:element ref="iodef:IncidentID"
+ minOccurs="0"/>
+ <xs:element ref="iodef:Contact"
+ minOccurs="0"/>
+ <xs:element ref="iodef:Description"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="iodef:AdditionalData"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="restriction"
+ type="iodef:restriction-type"/>
+ <xs:attribute name="action"
+ type="iodef:action-type" use="required"/>
+ <xs:attribute name="ext-action"
+ type="xs:string" use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <!--
+ ====================================================================
+ === Expectation class ===
+ ====================================================================
+ -->
+ <xs:element name="Expectation">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="iodef:Description"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="iodef:StartTime"
+ minOccurs="0"/>
+ <xs:element ref="iodef:EndTime"
+ minOccurs="0"/>
+ <xs:element ref="iodef:Contact"
+ minOccurs="0"/>
+ </xs:sequence>
+ <xs:attribute name="restriction"
+ type="iodef:restriction-type" default="default"/>
+ <xs:attribute name="severity"
+ type="iodef:severity-type"/>
+ <xs:attribute name="action"
+ type="iodef:action-type" default="other"/>
+ <xs:attribute name="ext-action"
+ type="xs:string" use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <!--
+ ====================================================================
+ === Method class ===
+ ====================================================================
+ -->
+ <xs:element name="Method">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="iodef:Reference"/>
+ <xs:element ref="iodef:Description"/>
+ </xs:choice>
+ <xs:element ref="iodef:AdditionalData"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="restriction"
+ type="iodef:restriction-type"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Reference">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="ReferenceName"
+ type="iodef:MLStringType"/>
+ <xs:element ref="iodef:URL"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="iodef:Description"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <!--
+ ====================================================================
+ === Assessment class ===
+ ====================================================================
+ -->
+ <xs:element name="Assessment">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="iodef:Impact"/>
+ <xs:element ref="iodef:TimeImpact"/>
+ <xs:element ref="iodef:MonetaryImpact"/>
+ </xs:choice>
+ <xs:element ref="iodef:Counter"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="iodef:Confidence" minOccurs="0"/>
+ <xs:element ref="iodef:AdditionalData"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="occurrence">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="actual"/>
+ <xs:enumeration value="potential"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="restriction"
+ type="iodef:restriction-type"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Impact">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="iodef:MLStringType">
+ <xs:attribute name="severity"
+ type="iodef:severity-type"/>
+ <xs:attribute name="completion">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="failed"/>
+ <xs:enumeration value="succeeded"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="type"
+ use="optional" default="unknown">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="admin"/>
+ <xs:enumeration value="dos"/>
+ <xs:enumeration value="extortion"/>
+ <xs:enumeration value="file"/>
+ <xs:enumeration value="info-leak"/>
+ <xs:enumeration value="misconfiguration"/>
+ <xs:enumeration value="recon"/>
+ <xs:enumeration value="policy"/>
+ <xs:enumeration value="social-engineering"/>
+ <xs:enumeration value="user"/>
+ <xs:enumeration value="unknown"/>
+ <xs:enumeration value="ext-value"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="ext-type"
+ type="xs:string" use="optional"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="TimeImpact">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="iodef:PositiveFloatType">
+ <xs:attribute name="severity"
+ type="iodef:severity-type"/>
+ <xs:attribute name="metric"
+ use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="labor"/>
+ <xs:enumeration value="elapsed"/>
+ <xs:enumeration value="downtime"/>
+ <xs:enumeration value="ext-value"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="ext-metric"
+ type="xs:string" use="optional"/>
+ <xs:attribute name="duration"
+ type="iodef:duration-type"/>
+ <xs:attribute name="ext-duration"
+ type="xs:string" use="optional"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="MonetaryImpact">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="iodef:PositiveFloatType">
+ <xs:attribute name="severity"
+ type="iodef:severity-type"/>
+ <xs:attribute name="currency"
+ type="xs:string"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Confidence">
+ <xs:complexType mixed="true">
+ <xs:attribute name="rating" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="low"/>
+ <xs:enumeration value="medium"/>
+ <xs:enumeration value="high"/>
+ <xs:enumeration value="numeric"/>
+ <xs:enumeration value="unknown"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ </xs:element>
+ <!--
+ ====================================================================
+ === EventData class ===
+ ====================================================================
+ -->
+ <xs:element name="EventData">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="iodef:Description"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="iodef:DetectTime"
+ minOccurs="0"/>
+ <xs:element ref="iodef:StartTime"
+ minOccurs="0"/>
+ <xs:element ref="iodef:EndTime"
+ minOccurs="0"/>
+ <xs:element ref="iodef:Contact"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="iodef:Assessment"
+ minOccurs="0"/>
+ <xs:element ref="iodef:Method"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="iodef:Flow"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="iodef:Expectation"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="iodef:Record"
+ minOccurs="0"/>
+ <xs:element ref="iodef:EventData"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="iodef:AdditionalData"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="restriction"
+ type="iodef:restriction-type" default="default"/>
+ </xs:complexType>
+ </xs:element>
+ <!--
+ ====================================================================
+ === Flow class ===
+ ====================================================================
+ -->
+ <xs:element name="Flow">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="iodef:System"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <!--
+ ====================================================================
+ === System class ===
+ ====================================================================
+ -->
+ <xs:element name="System">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="iodef:Node"/>
+ <xs:element ref="iodef:Service"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="iodef:OperatingSystem"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="iodef:Counter"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="iodef:Description"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="iodef:AdditionalData"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="restriction"
+ type="iodef:restriction-type"/>
+ <xs:attribute name="interface"
+ type="xs:string"/>
+ <xs:attribute name="category">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="source"/>
+ <xs:enumeration value="target"/>
+ <xs:enumeration value="intermediate"/>
+ <xs:enumeration value="sensor"/>
+ <xs:enumeration value="infrastructure"/>
+ <xs:enumeration value="ext-value"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="ext-category"
+ type="xs:string" use="optional"/>
+ <xs:attribute name="spoofed"
+ default="unknown">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="unknown"/>
+ <xs:enumeration value="yes"/>
+ <xs:enumeration value="no"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ </xs:element>
+ <!--
+ ====================================================================
+ === Node class ===
+ ====================================================================
+ -->
+ <xs:element name="Node">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element name="NodeName"
+ type="iodef:MLStringType" minOccurs="0"/>
+ <xs:element ref="iodef:Address"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:choice>
+ <xs:element ref="iodef:Location"
+ minOccurs="0"/>
+ <xs:element ref="iodef:DateTime"
+ minOccurs="0"/>
+ <xs:element ref="iodef:NodeRole"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="iodef:Counter"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Address">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="category" default="ipv4-addr">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="asn"/>
+ <xs:enumeration value="atm"/>
+ <xs:enumeration value="e-mail"/>
+ <xs:enumeration value="mac"/>
+ <xs:enumeration value="ipv4-addr"/>
+ <xs:enumeration value="ipv4-net"/>
+ <xs:enumeration value="ipv4-net-mask"/>
+ <xs:enumeration value="ipv6-addr"/>
+ <xs:enumeration value="ipv6-net"/>
+ <xs:enumeration value="ipv6-net-mask"/>
+ <xs:enumeration value="ext-value"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="ext-category"
+ type="xs:string" use="optional"/>
+ <xs:attribute name="vlan-name"
+ type="xs:string"/>
+ <xs:attribute name="vlan-num"
+ type="xs:integer"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Location" type="iodef:MLStringType"/>
+ <xs:element name="NodeRole">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="iodef:MLStringType">
+ <xs:attribute name="category" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="client"/>
+ <xs:enumeration value="server-internal"/>
+ <xs:enumeration value="server-public"/>
+ <xs:enumeration value="www"/>
+ <xs:enumeration value="mail"/>
+ <xs:enumeration value="messaging"/>
+ <xs:enumeration value="streaming"/>
+ <xs:enumeration value="voice"/>
+ <xs:enumeration value="file"/>
+ <xs:enumeration value="ftp"/>
+ <xs:enumeration value="p2p"/>
+ <xs:enumeration value="name"/>
+ <xs:enumeration value="directory"/>
+ <xs:enumeration value="credential"/>
+ <xs:enumeration value="print"/>
+ <xs:enumeration value="application"/>
+ <xs:enumeration value="database"/>
+ <xs:enumeration value="infra"/>
+ <xs:enumeration value="log"/>
+ <xs:enumeration value="ext-value"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="ext-category"
+ type="xs:string" use="optional"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <!--
+ ====================================================================
+ === Service Class ===
+ ====================================================================
+ -->
+ <xs:element name="Service">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:choice minOccurs="0">
+ <xs:element name="Port"
+ type="xs:integer"/>
+ <xs:element name="Portlist"
+ type="iodef:PortlistType"/>
+ </xs:choice>
+ <xs:element name="ProtoType"
+ type="xs:integer" minOccurs="0"/>
+ <xs:element name="ProtoCode"
+ type="xs:integer" minOccurs="0"/>
+ <xs:element name="ProtoField"
+ type="xs:integer" minOccurs="0"/>
+ <xs:element ref="iodef:Application"
+ minOccurs="0"/>
+ </xs:sequence>
+ <xs:attribute name="ip_protocol"
+ type="xs:integer" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:simpleType name="PortlistType">
+ <xs:restriction base="xs:string">
+ <xs:pattern value="\d+(\-\d+)?(,\d+(\-\d+)?)*"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!--
+ ====================================================================
+ === Counter class ===
+ ====================================================================
+ -->
+ <xs:element name="Counter">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:double">
+ <xs:attribute name="type" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="byte"/>
+ <xs:enumeration value="packet"/>
+ <xs:enumeration value="flow"/>
+ <xs:enumeration value="session"/>
+ <xs:enumeration value="event"/>
+ <xs:enumeration value="alert"/>
+ <xs:enumeration value="message"/>
+ <xs:enumeration value="host"/>
+ <xs:enumeration value="site"/>
+ <xs:enumeration value="organization"/>
+ <xs:enumeration value="ext-value"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="ext-type"
+ type="xs:string" use="optional"/>
+ <xs:attribute name="meaning"
+ type="xs:string" use="optional"/>
+ <xs:attribute name="duration"
+ type="iodef:duration-type"/>
+ <xs:attribute name="ext-duration"
+ type="xs:string" use="optional"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <!--
+ ====================================================================
+ === Record class ===
+ ====================================================================
+ -->
+ <xs:element name="Record">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="iodef:RecordData"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="restriction"
+ type="iodef:restriction-type"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="RecordData">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="iodef:DateTime"
+ minOccurs="0"/>
+ <xs:element ref="iodef:Description"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="iodef:Application"
+ minOccurs="0"/>
+ <xs:element ref="iodef:RecordPattern"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="iodef:RecordItem"
+ maxOccurs="unbounded"/>
+ <xs:element ref="iodef:AdditionalData"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="restriction"
+ type="iodef:restriction-type"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="RecordPattern">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="type" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="regex"/>
+ <xs:enumeration value="binary"/>
+ <xs:enumeration value="xpath"/>
+ <xs:enumeration value="ext-value"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="ext-type"
+ type="xs:string" use="optional"/>
+ <xs:attribute name="offset"
+ type="xs:integer" use="optional"/>
+ <xs:attribute name="offsetunit"
+ use="optional" default="line">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="line"/>
+ <xs:enumeration value="byte"/>
+ <xs:enumeration value="ext-value"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="ext-offsetunit"
+ type="xs:string" use="optional"/>
+ <xs:attribute name="instance"
+ type="xs:integer" use="optional"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="RecordItem"
+ type="iodef:ExtensionType"/>
+ <!--
+ ====================================================================
+ === Classes that describe software ===
+ ====================================================================
+ -->
+ <xs:complexType name="SoftwareType">
+ <xs:sequence>
+ <xs:element ref="iodef:URL"
+ minOccurs="0"/>
+ </xs:sequence>
+ <xs:attribute name="swid"
+ type="xs:string" default="0"/>
+ <xs:attribute name="configid"
+ type="xs:string" default="0"/>
+ <xs:attribute name="vendor"
+ type="xs:string"/>
+ <xs:attribute name="family"
+ type="xs:string"/>
+ <xs:attribute name="name"
+ type="xs:string"/>
+ <xs:attribute name="version"
+ type="xs:string"/>
+ <xs:attribute name="patch"
+ type="xs:string"/>
+ </xs:complexType>
+ <xs:element name="Application"
+ type="iodef:SoftwareType"/>
+ <xs:element name="OperatingSystem"
+ type="iodef:SoftwareType"/>
+ <!--
+ ====================================================================
+ === Miscellaneous simple classes ===
+ ====================================================================
+ -->
+ <xs:element name="Description"
+ type="iodef:MLStringType"/>
+ <xs:element name="URL"
+ type="xs:anyURI"/>
+ <!--
+ ====================================================================
+ === Data Types ===
+ ====================================================================
+ -->
+ <xs:simpleType name="PositiveFloatType">
+ <xs:restriction base="xs:float">
+ <xs:minExclusive value="0"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="MLStringType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="lang"
+ type="xs:language" use="optional"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="ExtensionType" mixed="true">
+ <xs:sequence>
+ <xs:any namespace="##any" processContents="lax"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="dtype"
+ type="iodef:dtype-type" use="required"/>
+ <xs:attribute name="ext-dtype"
+ type="xs:string" use="optional"/>
+ <xs:attribute name="meaning"
+ type="xs:string"/>
+ <xs:attribute name="formatid"
+ type="xs:string"/>
+ <xs:attribute name="restriction"
+ type="iodef:restriction-type"/>
+ </xs:complexType>
+ <!--
+ ====================================================================
+ === Global attribute type declarations ===
+ ====================================================================
+ -->
+ <xs:simpleType name="restriction-type">
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="default"/>
+ <xs:enumeration value="public"/>
+ <xs:enumeration value="need-to-know"/>
+ <xs:enumeration value="private"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:simpleType name="severity-type">
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="low"/>
+ <xs:enumeration value="medium"/>
+ <xs:enumeration value="high"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:simpleType name="duration-type">
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="second"/>
+ <xs:enumeration value="minute"/>
+ <xs:enumeration value="hour"/>
+ <xs:enumeration value="day"/>
+ <xs:enumeration value="month"/>
+ <xs:enumeration value="quarter"/>
+ <xs:enumeration value="year"/>
+ <xs:enumeration value="ext-value"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:simpleType name="action-type">
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="nothing"/>
+ <xs:enumeration value="contact-source-site"/>
+ <xs:enumeration value="contact-target-site"/>
+ <xs:enumeration value="contact-sender"/>
+ <xs:enumeration value="investigate"/>
+ <xs:enumeration value="block-host"/>
+ <xs:enumeration value="block-network"/>
+ <xs:enumeration value="block-port"/>
+ <xs:enumeration value="rate-limit-host"/>
+ <xs:enumeration value="rate-limit-network"/>
+ <xs:enumeration value="rate-limit-port"/>
+ <xs:enumeration value="remediate-other"/>
+ <xs:enumeration value="status-triage"/>
+ <xs:enumeration value="status-new-info"/>
+ <xs:enumeration value="other"/>
+ <xs:enumeration value="ext-value"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:simpleType name="dtype-type">
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="boolean"/>
+ <xs:enumeration value="byte"/>
+ <xs:enumeration value="character"/>
+ <xs:enumeration value="date-time"/>
+ <xs:enumeration value="integer"/>
+ <xs:enumeration value="ntpstamp"/>
+ <xs:enumeration value="portlist"/>
+ <xs:enumeration value="real"/>
+ <xs:enumeration value="string"/>
+ <xs:enumeration value="file"/>
+ <xs:enumeration value="path"/>
+ <xs:enumeration value="frame"/>
+ <xs:enumeration value="packet"/>
+ <xs:enumeration value="ipv4-packet"/>
+ <xs:enumeration value="ipv6-packet"/>
+ <xs:enumeration value="url"/>
+ <xs:enumeration value="csv"/>
+ <xs:enumeration value="winreg"/>
+ <xs:enumeration value="xml"/>
+ <xs:enumeration value="ext-value"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:schema>
diff --git a/schemas/ipfix.xml b/schemas/ipfix.xml
new file mode 100644
index 0000000..f03b32b
--- /dev/null
+++ b/schemas/ipfix.xml
@@ -0,0 +1,532 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+ <schema targetNamespace="urn:ietf:params:xml:ns:ipfix-info"
+ xmlns:ipfix="urn:ietf:params:xml:ns:ipfix-info"
+ xmlns="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified">
+
+ <simpleType name="dataType">
+ <restriction base="string">
+ <enumeration value="unsigned8">
+ <annotation>
+ <documentation>The type "unsigned8" represents a
+ non-negative integer value in the range of 0 to 255.
+ </documentation>
+ </annotation>
+ </enumeration>
+
+ <enumeration value="unsigned16">
+ <annotation>
+ <documentation>The type "unsigned16" represents a
+ non-negative integer value in the range of 0 to 65535.
+ </documentation>
+ </annotation>
+ </enumeration>
+
+ <enumeration value="unsigned32">
+ <annotation>
+ <documentation>The type "unsigned32" represents a
+ non-negative integer value in the range of 0 to
+ 4294967295.
+ </documentation>
+ </annotation>
+ </enumeration>
+
+ <enumeration value="unsigned64">
+ <annotation>
+ <documentation>The type "unsigned64" represents a
+ non-negative integer value in the range of 0 to
+ 18446744073709551615.
+ </documentation>
+ </annotation>
+ </enumeration>
+
+ <enumeration value="signed8">
+ <annotation>
+ <documentation>The type "signed8" represents
+ an integer value in the range of -128 to 127.
+ </documentation>
+ </annotation>
+ </enumeration>
+
+ <enumeration value="signed16">
+ <annotation>
+ <documentation>The type "signed16" represents an
+ integer value in the range of -32768 to 32767.
+ </documentation>
+ </annotation>
+ </enumeration>
+
+ <enumeration value="signed32">
+ <annotation>
+ <documentation>The type "signed32" represents an
+ integer value in the range of -2147483648 to
+ 2147483647.
+ </documentation>
+ </annotation>
+ </enumeration>
+
+ <enumeration value="signed64">
+ <annotation>
+ <documentation>The type "signed64" represents an
+ integer value in the range of -9223372036854775808
+ to 9223372036854775807.
+ </documentation>
+ </annotation>
+ </enumeration>
+
+ <enumeration value="float32">
+ <annotation>
+ <documentation>The type "float32" corresponds to an IEEE
+ single-precision 32-bit floating point type as defined
+ in [IEEE.754.1985].
+ </documentation>
+ </annotation>
+ </enumeration>
+
+ <enumeration value="float64">
+ <annotation>
+ <documentation>The type "float64" corresponds to an IEEE
+ double-precision 64-bit floating point type as defined
+ in [IEEE.754.1985].
+ </documentation>
+ </annotation>
+ </enumeration>
+
+ <enumeration value="boolean">
+ <annotation>
+ <documentation>The type "boolean" represents a binary
+ value. The only allowed values are "true" and "false".
+ </documentation>
+ </annotation>
+ </enumeration>
+
+ <enumeration value="macAddress">
+ <annotation>
+ <documentation>The type "macAddress" represents a
+ string of 6 octets.
+ </documentation>
+ </annotation>
+ </enumeration>
+
+ <enumeration value="octetArray">
+ <annotation>
+ <documentation>The type "octetArray" represents a finite
+ length string of octets.
+ </documentation>
+ </annotation>
+ </enumeration>
+
+ <enumeration value="string">
+ <annotation>
+ <documentation>
+ The type "string" represents a finite length string
+ of valid characters from the Unicode character encoding
+ set [ISO.10646-1.1993]. Unicode allows for ASCII
+ [ISO.646.1991] and many other international character
+ sets to be used.
+ </documentation>
+ </annotation>
+ </enumeration>
+
+ <enumeration value="dateTimeSeconds">
+ <annotation>
+ <documentation>
+ The type "dateTimeSeconds" represents a time value
+ in units of seconds normalized to the
+ GMT time zone.
+ </documentation>
+ </annotation>
+ </enumeration>
+
+ <enumeration value="dateTimeMilliseconds">
+ <annotation>
+ <documentation>The type "dateTimeMilliseconds" represents
+ a time value in units of milliseconds
+ normalized to the GMT time zone.
+ </documentation>
+ </annotation>
+ </enumeration>
+
+ <enumeration value="dateTimeMicroseconds">
+ <annotation>
+ <documentation>The type "dateTimeMicroseconds" represents
+ a time value in units of microseconds
+ normalized to the GMT time zone.
+ </documentation>
+ </annotation>
+ </enumeration>
+
+ <enumeration value="dateTimeNanoseconds">
+ <annotation>
+ <documentation>The type "dateTimeNanoseconds" represents
+ a time value in units of nanoseconds
+ normalized to the GMT time zone.
+ </documentation>
+ </annotation>
+ </enumeration>
+
+ <enumeration value="ipv4Address">
+ <annotation>
+ <documentation>The type "ipv4Address" represents a value
+ of an IPv4 address.
+ </documentation>
+ </annotation>
+ </enumeration>
+
+ <enumeration value="ipv6Address">
+ <annotation>
+ <documentation>The type "ipv6Address" represents a value
+ of an IPv6 address.
+ </documentation>
+ </annotation>
+ </enumeration>
+ </restriction>
+ </simpleType>
+
+ <simpleType name="dataTypeSemantics">
+ <restriction base="string">
+ <enumeration value="quantity">
+ <annotation>
+ <documentation>
+ A quantity value represents a discrete
+ measured value pertaining to the record. This is
+ distinguished from counters which represent an ongoing
+ measured value whose "odometer" reading is captured as
+ part of a given record. If no semantic qualifier is
+ given, the Information Elements that have an integral
+ data type should behave as a quantity.
+ </documentation>
+ </annotation>
+ </enumeration>
+
+ <enumeration value="totalCounter">
+ <annotation>
+ <documentation>
+ An integral value reporting the value of a counter.
+ Counters are unsigned and wrap back to zero after
+ reaching the limit of the type. For example, an
+ unsigned64 with counter semantics will continue to
+ increment until reaching the value of 2**64 - 1. At
+ this point the next increment will wrap its value to
+ zero and continue counting from zero. The semantics
+ of a total counter is similar to the semantics of
+ counters used in SNMP, such as Counter32 defined in
+ RFC 2578 [RFC2578]. The only difference between total
+ counters and counters used in SNMP is that the total
+ counters have an initial value of 0. A total counter
+ counts independently of the export of its value.
+ </documentation>
+ </annotation>
+ </enumeration>
+
+ <enumeration value="deltaCounter">
+ <annotation>
+ <documentation>
+ An integral value reporting the value of a counter.
+ Counters are unsigned and wrap back to zero after
+ reaching the limit of the type. For example, an
+ unsigned64 with counter semantics will continue to
+ increment until reaching the value of 2**64 - 1. At
+ this point the next increment will wrap its value to
+ zero and continue counting from zero. The semantics
+ of a delta counter is similar to the semantics of
+ counters used in SNMP, such as Counter32 defined in
+ RFC 2578 [RFC2578]. The only difference between delta
+ counters and counters used in SNMP is that the delta
+ counters have an initial value of 0. A delta counter
+ is reset to 0 each time its value is exported.
+ </documentation>
+ </annotation>
+ </enumeration>
+
+ <enumeration value="identifier">
+ <annotation>
+ <documentation>
+ An integral value which serves as an identifier.
+ Specifically mathematical operations on two
+ identifiers (aside from the equality operation) are
+ meaningless. For example, Autonomous System ID 1 *
+ Autonomous System ID 2 is meaningless.
+ </documentation>
+ </annotation>
+ </enumeration>
+
+ <enumeration value="flags">
+ <annotation>
+ <documentation>
+ An integral value which actually represents a set of
+ bit fields. Logical operations are appropriate on
+ such values, but not other mathematical operations.
+ Flags should always be of an unsigned type.
+ </documentation>
+ </annotation>
+ </enumeration>
+ </restriction>
+ </simpleType>
+
+ <simpleType name="applicability">
+ <restriction base="string">
+ <enumeration value="data">
+ <annotation>
+ <documentation>
+ Used for Information Elements that are applicable to
+ Flow Records only.
+ </documentation>
+ </annotation>
+ </enumeration>
+
+ <enumeration value="option">
+ <annotation>
+ <documentation>
+ Used for Information Elements that are applicable to
+ option records only.
+ </documentation>
+ </annotation>
+ </enumeration>
+
+ <enumeration value="all">
+ <annotation>
+ <documentation>
+ Used for Information Elements that are applicable to
+ Flow Records as well as to option records.
+ </documentation>
+ </annotation>
+ </enumeration>
+ </restriction>
+ </simpleType>
+
+ <simpleType name="status">
+ <restriction base="string">
+ <enumeration value="current">
+ <annotation>
+ <documentation>
+ Indicates that the Information Element definition
+ is that the definition is current and valid.
+ </documentation>
+ </annotation>
+ </enumeration>
+
+ <enumeration value="deprecated">
+ <annotation>
+ <documentation>
+ Indicates that the Information Element definition is
+ obsolete, but it permits new/continued implementation
+ in order to foster interoperability with older/existing
+ implementations.
+ </documentation>
+ </annotation>
+ </enumeration>
+
+ <enumeration value="obsolete">
+ <annotation>
+ <documentation>
+ Indicates that the Information Element definition is
+ obsolete and should not be implemented and/or can be
+ removed if previously implemented.
+ </documentation>
+ </annotation>
+ </enumeration>
+ </restriction>
+ </simpleType>
+
+ <complexType name="text">
+ <choice maxOccurs="unbounded" minOccurs="0">
+ <element name="paragraph">
+ <complexType mixed="true">
+ <sequence>
+ <element maxOccurs="unbounded" minOccurs="0"
+ name="xref">
+ <complexType>
+ <attribute name="target" type="string"
+ use="required"/>
+ </complexType>
+ </element>
+ </sequence>
+ </complexType>
+ </element>
+ <element name="artwork">
+ <simpleType>
+ <restriction base="string"/>
+ </simpleType>
+ </element>
+ </choice>
+ </complexType>
+
+ <simpleType name="range">
+ <restriction base="string"/>
+ </simpleType>
+
+ <element name="fieldDefinitions">
+ <complexType>
+ <sequence>
+ <element maxOccurs="unbounded" minOccurs="1" name="field">
+ <complexType>
+ <sequence>
+ <element maxOccurs="1" minOccurs="1" name="description"
+ type="ipfix:text">
+ <annotation>
+ <documentation>
+ The semantics of this Information Element.
+ Describes how this Information Element is
+ derived from the Flow or other information
+ available to the observer.
+ </documentation>
+ </annotation>
+ </element>
+
+ <element maxOccurs="1" minOccurs="0" name="reference"
+ type="ipfix:text">
+ <annotation>
+ <documentation>
+ Identifies additional specifications which more
+ precisely define this item or provide additional
+ context for its use.
+ </documentation>
+ </annotation>
+ </element>
+
+ <element maxOccurs="1" minOccurs="0" name="units"
+ type="string">
+ <annotation>
+ <documentation>
+ If the Information Element is a measure of some
+ kind, the units identify what the measure is.
+ </documentation>
+ </annotation>
+ </element>
+
+ <element maxOccurs="1" minOccurs="0" name="range"
+ type="ipfix:range">
+ <annotation>
+ <documentation>
+ Some Information Elements may only be able to
+ take on a restricted set of values which can be
+ expressed as a range (e.g. 0 through 511
+ inclusive). If this is the case, the valid
+ inclusive range should be specified.
+ </documentation>
+ </annotation>
+ </element>
+ </sequence>
+
+ <attribute name="name" type="string" use="required">
+ <annotation>
+ <documentation>
+ A unique and meaningful name for the Information
+ Element.
+ </documentation>
+ </annotation>
+ </attribute>
+
+ <attribute name="dataType" type="ipfix:dataType"
+ use="required">
+ <annotation>
+ <documentation>
+ One of the types listed in section 3.1 of this
+ document or in a future extension of the
+ information model. The type space for attributes
+ is constrained to facilitate implementation. The
+ existing type space does however encompass most
+ basic types used in modern programming languages,
+ as well as some derived types (such as ipv4Address)
+ which are common to this domain and useful
+ to distinguish.
+ </documentation>
+ </annotation>
+ </attribute>
+
+ <attribute name="dataTypeSemantics"
+ type="ipfix:dataTypeSemantics" use="optional">
+ <annotation>
+ <documentation>
+ The integral types may be qualified by additional
+ semantic details. Valid values for the data type
+ semantics are specified in section 3.2 of this
+ document or in a future extension of the
+ information model.
+ </documentation>
+ </annotation>
+ </attribute>
+
+ <attribute name="elementId" type="nonNegativeInteger"
+ use="required">
+ <annotation>
+ <documentation>
+ A numeric identifier of the Information Element.
+ If this identifier is used without an enterprise
+ identifier (see [I-D.ietf-ipfix-protocol] and
+ enterpriseId below), then it is globally unique
+ and the list of allowed values is administered by
+ IANA. It is used for compact identification of an
+ Information Element when encoding Templates in the
+ protocol.
+ </documentation>
+ </annotation>
+ </attribute>
+
+ <attribute name="enterpriseId" type="nonNegativeInteger"
+ use="optional">
+ <annotation>
+ <documentation>
+ Enterprises may wish to define Information Elements
+ without registering them with IANA, for example for
+ enterprise-internal purposes. For such Information
+ Elements the Information Element identifier
+ described above is not sufficient when the
+ Information Element is used outside the enterprise.
+ If specifications of enterprise-specific
+ Information Elements are made public and/or if
+ enterprise-specific identifiers are used by the
+ IPFIX protocol outside the enterprise, then the
+ enterprise-specific identifier MUST be made
+ globally unique by combining it with an enterprise
+ identifier. Valid values for the enterpriseId are
+ defined by IANA as SMI network management private
+ enterprise codes. They are defined at
+ http://www.iana.org/assignments/enterprise-numbers.
+ </documentation>
+ </annotation>
+ </attribute>
+
+ <attribute name="applicability"
+ type="ipfix:applicability" use="optional">
+ <annotation>
+ <documentation>This propoerty of an Information
+ Element indicates in which kind of records the
+ Information Element can be used.
+ Allowed values for this property are 'data',
+ 'option', and 'all'.</documentation>
+ </annotation>
+ </attribute>
+
+ <attribute name="status" type="ipfix:status"
+ use="required">
+ <annotation>
+ <documentation>
+ The status of the specification of this
+ Information Element. Allowed values are 'current',
+ 'deprecated', and 'obsolete'.
+ </documentation>
+ </annotation>
+ </attribute>
+
+ <attribute name="group" type="string"
+ use="required">
+ <annotation>
+ <documentation>to be done ...</documentation>
+ </annotation>
+ </attribute>
+
+ </complexType>
+ </element>
+ </sequence>
+ </complexType>
+
+ <unique name="infoElementIdUnique">
+ <selector xpath="field"/>
+
+ <field xpath="elementId"/>
+ </unique>
+ </element>
+ </schema>
diff --git a/schemas/iris1.xml b/schemas/iris1.xml
new file mode 100644
index 0000000..285e55d
--- /dev/null
+++ b/schemas/iris1.xml
@@ -0,0 +1,374 @@
+<?xml version="1.0"?>
+<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:iris="urn:ietf:params:xml:ns:iris1" targetNamespace="urn:ietf:params:xml:ns:iris1" elementFormDefault="qualified">
+ <annotation>
+ <documentation>
+ Internet Registry Information Service (IRIS) Schema v1
+ </documentation>
+ </annotation>
+<!-- ========================================= -->
+<!-- -->
+<!-- The Transactions -->
+<!-- -->
+<!-- ========================================= -->
+ <element name="request">
+ <complexType>
+ <sequence>
+ <element name="control" type="iris:controlType" minOccurs="0" maxOccurs="1"/>
+ <element name="searchSet" type="iris:searchSetType" minOccurs="1" maxOccurs="unbounded"/>
+ </sequence>
+ </complexType>
+ </element>
+ <element name="response">
+ <complexType>
+ <sequence>
+ <element name="reaction" type="iris:reactionType" minOccurs="0" maxOccurs="1"/>
+ <element name="resultSet" type="iris:resultSetType" minOccurs="1" maxOccurs="unbounded"/>
+ <element name="bags" type="iris:bagsType" minOccurs="0" maxOccurs="1"/>
+ </sequence>
+ </complexType>
+ </element>
+<!-- ========================================= -->
+<!-- -->
+<!-- Search Sets and Result Sets -->
+<!-- -->
+<!-- ========================================= -->
+ <complexType name="searchSetType">
+ <sequence>
+ <element name="bag" type="iris:bagType" minOccurs="0" maxOccurs="1"/>
+ <choice>
+ <element name="lookupEntity" type="iris:lookupEntityType"/>
+ <element ref="iris:query"/>
+ </choice>
+ </sequence>
+ </complexType>
+ <complexType name="resultSetType">
+ <sequence>
+ <element name="answer" minOccurs="1" maxOccurs="1">
+ <complexType>
+ <sequence>
+ <element ref="iris:result" minOccurs="0" maxOccurs="unbounded"/>
+ <element ref="iris:entity" minOccurs="0" maxOccurs="unbounded"/>
+ <element ref="iris:searchContinuation" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ </complexType>
+ </element>
+ <element name="additional" minOccurs="0" maxOccurs="1">
+ <complexType>
+ <sequence>
+ <element ref="iris:result" minOccurs="1" maxOccurs="unbounded"/>
+ </sequence>
+ </complexType>
+ </element>
+ <choice minOccurs="0" maxOccurs="1">
+ <element name="insufficientResources" type="iris:codeType"/>
+ <element name="invalidName" type="iris:codeType"/>
+ <element name="invalidSearch" type="iris:codeType"/>
+ <element name="queryNotSupported" type="iris:codeType"/>
+ <element name="limitExceeded" type="iris:codeType"/>
+ <element name="nameNotFound" type="iris:codeType"/>
+ <element name="permissionDenied" type="iris:codeType"/>
+ <element name="bagUnrecognized" type="iris:codeType"/>
+ <element name="bagUnacceptable" type="iris:codeType"/>
+ <element name="bagRefused" type="iris:codeType"/>
+ <element ref="iris:genericCode"/>
+ </choice>
+ </sequence>
+ </complexType>
+<!-- ========================================= -->
+<!-- -->
+<!-- Controls and Reactions -->
+<!-- -->
+<!-- ========================================= -->
+ <complexType name="controlType">
+ <sequence>
+ <any namespace="##any" processContents="skip" minOccurs="1" maxOccurs="1"/>
+ </sequence>
+ </complexType>
+ <complexType name="reactionType">
+ <sequence>
+ <any namespace="##any" processContents="skip" minOccurs="1" maxOccurs="1"/>
+ </sequence>
+ </complexType>
+<!-- ========================================= -->
+<!-- -->
+<!-- Queries and Lookups -->
+<!-- -->
+<!-- ========================================= -->
+ <complexType name="queryType"/>
+ <element name="query" type="iris:queryType" abstract="true"/>
+ <complexType name="lookupEntityType">
+ <attribute name="registryType" type="anyURI" use="required"/>
+ <attribute name="entityClass" type="token" use="required"/>
+ <attribute name="entityName" type="token" use="required"/>
+ </complexType>
+<!-- ========================================= -->
+<!-- -->
+<!-- Results -->
+<!-- -->
+<!-- ========================================= -->
+ <complexType name="resultType">
+ <attribute name="authority" use="required" type="token"/>
+ <attribute name="resolution" type="token"/>
+ <attribute name="registryType" use="required" type="anyURI"/>
+ <attribute name="entityClass" use="required" type="token"/>
+ <attribute name="entityName" use="required" type="token"/>
+ <attribute name="temporaryReference" default="false" type="boolean"/>
+ </complexType>
+ <element name="result" type="iris:resultType" abstract="true"/>
+<!-- ========================================= -->
+<!-- -->
+<!-- Errors -->
+<!-- -->
+<!-- ========================================= -->
+ <complexType name="codeType">
+ <sequence minOccurs="0" maxOccurs="unbounded">
+ <element name="explanation">
+ <complexType>
+ <simpleContent>
+ <extension base="string">
+ <attribute use="required" name="language" type="language"/>
+ </extension>
+ </simpleContent>
+ </complexType>
+ </element>
+ </sequence>
+ </complexType>
+ <element name="genericCode" type="iris:codeType" abstract="true"/>
+<!-- ========================================= -->
+<!-- -->
+<!-- Entity References and -->
+<!-- Search Continuations -->
+<!-- -->
+<!-- ========================================= -->
+ <complexType name="entityType">
+ <sequence>
+ <element name="displayName" minOccurs="0" maxOccurs="unbounded">
+ <complexType>
+ <simpleContent>
+ <extension base="string">
+ <attribute name="language" use="required" type="language"/>
+ </extension>
+ </simpleContent>
+ </complexType>
+ </element>
+ </sequence>
+ <attribute name="authority" use="required" type="token"/>
+ <attribute name="resolution" type="token"/>
+ <attribute name="registryType" use="required" type="anyURI"/>
+ <attribute name="entityClass" use="required" type="token"/>
+ <attribute name="entityName" use="required" type="token"/>
+ <attribute name="referentType" use="required" form="qualified" type="iris:referentTypeType"/>
+ <attribute name="temporaryReference" default="false" type="boolean"/>
+ <attribute name="bagRef" type="IDREF"/>
+ </complexType>
+ <element name="entity" type="iris:entityType"/>
+ <simpleType name="referentTypeType">
+ <union memberTypes="QName iris:anyLiteralType"/>
+ </simpleType>
+ <simpleType name="anyLiteralType">
+ <restriction base="string">
+ <enumeration value="ANY"/>
+ </restriction>
+ </simpleType>
+ <complexType name="searchContinuationType">
+ <sequence>
+ <element ref="iris:query"/>
+ </sequence>
+ <attribute name="bagRef" type="IDREF"/>
+ <attribute name="authority" type="token" use="required"/>
+ <attribute name="resolution" type="token"/>
+ </complexType>
+ <element name="searchContinuation" type="iris:searchContinuationType"/>
+<!-- ========================================= -->
+<!-- -->
+<!-- Bags -->
+<!-- -->
+<!-- ========================================= -->
+ <complexType name="bagsType">
+ <sequence>
+ <element name="bag" minOccurs="1" maxOccurs="unbounded">
+ <complexType>
+ <complexContent>
+ <extension base="iris:bagType">
+ <attribute use="required" name="id" type="ID"/>
+ </extension>
+ </complexContent>
+ </complexType>
+ </element>
+ </sequence>
+ </complexType>
+ <complexType name="bagType">
+ <sequence>
+ <any namespace="##any" processContents="skip" minOccurs="1" maxOccurs="1"/>
+ </sequence>
+ </complexType>
+<!-- ========================================= -->
+<!-- -->
+<!-- Derived Results for use with all -->
+<!-- registry types. -->
+<!-- -->
+<!-- ========================================= -->
+<!-- -->
+<!-- See Also -->
+<!-- -->
+ <element name="seeAlso" type="iris:entityType"/>
+<!-- -->
+<!-- Service Identification -->
+<!-- -->
+ <complexType name="serviceIdentificationType">
+ <complexContent>
+ <extension base="iris:resultType">
+ <sequence>
+ <element name="authorities" minOccurs="1" maxOccurs="1">
+ <complexType>
+ <sequence>
+ <element name="authority" type="token" minOccurs="1" maxOccurs="unbounded"/>
+ </sequence>
+ </complexType>
+ </element>
+ <element name="operatorName" type="string" minOccurs="0" maxOccurs="1"/>
+ <element name="eMail" type="string" minOccurs="0" maxOccurs="unbounded"/>
+ <element name="phone" type="string" minOccurs="0" maxOccurs="unbounded"/>
+ <element ref="iris:seeAlso" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+ <element name="serviceIdentification" type="iris:serviceIdentificationType" substitutionGroup="iris:result"/>
+<!-- -->
+<!-- Limits -->
+<!-- -->
+ <complexType name="limitsType">
+ <complexContent>
+ <extension base="iris:resultType">
+ <sequence>
+ <element name="totalQueries" minOccurs="0" maxOccurs="1">
+ <complexType>
+ <group ref="iris:timeLimitsGroup" minOccurs="1" maxOccurs="4"/>
+ </complexType>
+ </element>
+ <element name="totalResults" minOccurs="0" maxOccurs="1">
+ <complexType>
+ <group ref="iris:timeLimitsGroup" minOccurs="1" maxOccurs="4"/>
+ </complexType>
+ </element>
+ <element name="totalSessions" minOccurs="0" maxOccurs="1">
+ <complexType>
+ <group ref="iris:timeLimitsGroup" minOccurs="1" maxOccurs="4"/>
+ </complexType>
+ </element>
+ <element name="otherRestrictions" minOccurs="0" maxOccurs="1">
+ <complexType>
+ <sequence>
+ <element name="description" minOccurs="0" maxOccurs="unbounded">
+ <complexType>
+ <simpleContent>
+ <extension base="string">
+ <attribute name="language" type="language" use="required"/>
+ </extension>
+ </simpleContent>
+ </complexType>
+ </element>
+ </sequence>
+ </complexType>
+ </element>
+ <element ref="iris:seeAlso" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+ <element name="limits" type="iris:limitsType" substitutionGroup="iris:result"/>
+ <group name="timeLimitsGroup">
+ <choice>
+ <element name="perSecond" type="nonNegativeInteger"/>
+ <element name="perMinute" type="nonNegativeInteger"/>
+ <element name="perHour" type="nonNegativeInteger"/>
+ <element name="perDay" type="nonNegativeInteger"/>
+ </choice>
+ </group>
+<!-- -->
+<!-- Simple Entity -->
+<!-- -->
+ <complexType name="simpleEntityType">
+ <complexContent>
+ <extension base="iris:resultType">
+ <sequence>
+ <element name="property" minOccurs="1" maxOccurs="unbounded">
+ <complexType>
+ <simpleContent>
+ <extension base="string">
+ <attribute name="name" type="string" use="required"/>
+ <attribute name="language" type="language" use="required"/>
+ <attribute name="uri" type="anyURI"/>
+ </extension>
+ </simpleContent>
+ </complexType>
+ </element>
+ </sequence>
+ </extension>
+ </complexContent>
+ </complexType>
+ <element name="simpleEntity" type="iris:simpleEntityType" substitutionGroup="iris:result"/>
+<!-- ========================================= -->
+<!-- -->
+<!-- Derived Controls and Reactions -->
+<!-- -->
+<!-- ========================================= -->
+<!-- -->
+<!-- Only Check Permissions -->
+<!-- -->
+ <element name="onlyCheckPermissions">
+ <complexType/>
+ </element>
+<!-- -->
+<!-- Standard Reaction -->
+<!-- -->
+ <element name="standardReaction">
+ <complexType>
+ <choice>
+ <element name="controlAccepted">
+ <complexType/>
+ </element>
+ <element name="controlDenied">
+ <complexType/>
+ </element>
+ <element name="controlDisabled">
+ <complexType/>
+ </element>
+ <element name="controlUnrecognized">
+ <complexType/>
+ </element>
+ </choice>
+ </complexType>
+ </element>
+<!-- ========================================= -->
+<!-- -->
+<!-- Serialization -->
+<!-- -->
+<!-- ========================================= -->
+ <complexType name="serializedReferralType">
+ <sequence>
+ <element name="source">
+ <complexType>
+ <attribute name="authority" use="required" type="token"/>
+ <attribute name="resolution" type="token"/>
+ <attribute name="registryType" type="anyURI" use="required"/>
+ <attribute name="entityClass" type="token" use="required"/>
+ <attribute name="entityName" type="token" use="required"/>
+ </complexType>
+ </element>
+ <choice>
+ <element ref="iris:searchContinuation"/>
+ <element ref="iris:entity"/>
+ </choice>
+ </sequence>
+ </complexType>
+ <element name="serialization">
+ <complexType>
+ <choice minOccurs="1" maxOccurs="unbounded">
+ <element ref="iris:result"/>
+ <element name="serializedReferral" type="iris:serializedReferralType"/>
+ </choice>
+ </complexType>
+ </element>
+</schema>
diff --git a/schemas/kpml-request.xml b/schemas/kpml-request.xml
new file mode 100644
index 0000000..d159d13
--- /dev/null
+++ b/schemas/kpml-request.xml
@@ -0,0 +1,107 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns="urn:ietf:params:xml:ns:kpml-request" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:ietf:params:xml:ns:kpml-request" elementFormDefault="qualified" attributeFormDefault="unqualified">
+ <xs:element name="kpml-request">
+ <xs:annotation>
+ <xs:documentation>IETF Keypad Markup Language Request
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="stream" minOccurs="0">
+ <xs:complexType>
+ <xs:choice>
+ <xs:element name="reverse" minOccurs="0"/>
+ <xs:any namespace="##other"/>
+ </xs:choice>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="pattern">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="flush" minOccurs="0">
+ <xs:annotation>
+ <xs:documentation>
+ Default is to not flush buffer
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="regex" maxOccurs="unbounded">
+ <xs:annotation>
+ <xs:documentation>
+ Key press notation is a string to allow
+ for future extension of non-16 digit
+ keypads or named keys
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:choice>
+ <xs:element name="pre" minOccurs="0">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:any namespace="##other"/>
+ </xs:choice>
+ <xs:attribute name="tag" type="xs:string" use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ <xs:attribute name="persist" use="optional">
+ <xs:annotation>
+ <xs:documentation>Default is "one-shot"
+ </xs:documentation>
+ </xs:annotation>
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="one-shot"/>
+ <xs:enumeration value="persist"/>
+ <xs:enumeration value="single-notify"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="interdigittimer" type="xs:integer" use="optional">
+ <xs:annotation>
+ <xs:documentation>Default is 4000 (ms)
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="criticaldigittimer" type="xs:integer" use="optional">
+ <xs:annotation>
+ <xs:documentation>Default is 1000 (ms)
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="extradigittimer" type="xs:integer" use="optional">
+ <xs:annotation>
+ <xs:documentation>Default is 500 (ms)
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="long" type="xs:integer" use="optional"/>
+ <xs:attribute name="longrepeat" type="xs:boolean" use="optional"/>
+ <xs:attribute name="nopartial" type="xs:boolean" use="optional">
+ <xs:annotation>
+ <xs:documentation>Default is false
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="enterkey" type="xs:string" use="optional">
+ <xs:annotation>
+ <xs:documentation>No default enterkey
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ <xs:attribute name="version" type="xs:string" use="required"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/schemas/kpml-response.xml b/schemas/kpml-response.xml
new file mode 100644
index 0000000..0dc35d2
--- /dev/null
+++ b/schemas/kpml-response.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="urn:ietf:params:xml:ns:kpml-response" targetNamespace="urn:ietf:params:xml:ns:kpml-response" elementFormDefault="qualified" attributeFormDefault="unqualified">
+ <xs:element name="kpml-response">
+ <xs:annotation>
+ <xs:documentation>IETF Keypad Markup Language Response
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:attribute name="version" type="xs:string" use="required"/>
+ <xs:attribute name="code" type="xs:string" use="required"/>
+ <xs:attribute name="text" type="xs:string" use="required"/>
+ <xs:attribute name="suppressed" type="xs:boolean" use="optional"/>
+ <xs:attribute name="forced_flush" type="xs:string" use="optional">
+ <xs:annotation>
+ <xs:documentation>
+ String for future use for e.g., number of digits lost.
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="digits" type="xs:string" use="optional"/>
+ <xs:attribute name="tag" type="xs:string" use="optional">
+ <xs:annotation>
+ <xs:documentation>Matches tag from regex in request
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/schemas/location-type-registry.xml b/schemas/location-type-registry.xml
new file mode 100644
index 0000000..9b6ffb1
--- /dev/null
+++ b/schemas/location-type-registry.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+ <xs:schema targetNamespace="urn:ietf:params:xml:ns:location-type"
+ xmlns="urn:ietf:params:xml:ns:location-type"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified">
+
+ <xs:complexType name="empty"/>
+
+ <xs:element name="aircraft" type="empty" />
+ <xs:element name="airport" type="empty" />
+ <xs:element name="arena" type="empty" />
+ <xs:element name="automobile" type="empty" />
+ <xs:element name="bank" type="empty" />
+ <xs:element name="bar" type="empty" />
+ <xs:element name="bus" type="empty" />
+ <xs:element name="bicyle" type="empty" />
+ <xs:element name="bus-station" type="empty" />
+ <xs:element name="cafe" type="empty" />
+ <xs:element name="classroom" type="empty" />
+ <xs:element name="club" type="empty" />
+ <xs:element name="construction" type="empty" />
+ <xs:element name="convention-center" type="empty" />
+ <xs:element name="government" type="empty" />
+ <xs:element name="hospital" type="empty" />
+ <xs:element name="hotel" type="empty" />
+ <xs:element name="industrial" type="empty" />
+ <xs:element name="library" type="empty" />
+ <xs:element name="motorcyle" type="empty" />
+ <xs:element name="office" type="empty" />
+ <xs:element name="outdoors" type="empty" />
+ <xs:element name="parking" type="empty" />
+ <xs:element name="place-of-worship" type="empty" />
+ <xs:element name="prison" type="empty" />
+ <xs:element name="public" type="empty" />
+ <xs:element name="public-transport" type="empty" />
+ <xs:element name="residence" type="empty" />
+ <xs:element name="restaurant" type="empty" />
+ <xs:element name="school" type="empty" />
+ <xs:element name="shopping-area" type="empty" />
+ <xs:element name="stadium" type="empty" />
+ <xs:element name="store" type="empty" />
+ <xs:element name="street" type="empty" />
+ <xs:element name="theater" type="empty" />
+ <xs:element name="train" type="empty" />
+ <xs:element name="train-station" type="empty" />
+ <xs:element name="truck" type="empty" />
+ <xs:element name="underway" type="empty" />
+ <xs:element name="unknown" type="empty" />
+ <xs:element name="warehouse" type="empty" />
+ <xs:element name="water" type="empty" />
+ <xs:element name="watercraft" type="empty" />
+ </xs:schema> \ No newline at end of file
diff --git a/schemas/lost1.xsd b/schemas/lost1.xsd
new file mode 100644
index 0000000..353063a
--- /dev/null
+++ b/schemas/lost1.xsd
@@ -0,0 +1,311 @@
+default namespace ns1 = "urn:ietf:params:xml:ns:lost1"
+
+
+##
+## Location-to-Service Translation Protocol (LoST)
+##
+## A LoST XML instance has three request types, each with
+## a cooresponding response type: find service, list services,
+## and get service boundary.
+##
+start =
+ findService
+ | listServices
+ | listServicesByLocation
+ | getServiceBoundary
+ | findServiceResponse
+ | listServicesResponse
+ | listServicesByLocationResponse
+ | getServiceBoundaryResponse
+ | errors
+ | redirect
+
+##
+## The queries.
+##
+div {
+ findService =
+ element findService {
+ requestLocation,
+ commonRequestPattern,
+ attribute validateLocation {
+ xsd:boolean >> a:defaultValue [ "false" ]
+ }?,
+ attribute serviceBoundary {
+ ("reference" | "value") >> a:defaultValue [ "reference" ]
+ }?,
+ attribute recursive { xsd:boolean >> a:defaultValue [ "false" ] }?
+ }
+ listServices = element listServices { commonRequestPattern }
+ listServicesByLocation =
+ element listServicesByLocation {
+ requestLocation,
+ commonRequestPattern,
+ attribute recursive { xsd:boolean >> a:defaultValue [ "true" ] }?
+ }
+ getServiceBoundary =
+ element getServiceBoundary { serviceBoundaryKey, extensionPoint }
+}
+
+##
+## The responses.
+##
+div {
+ findServiceResponse =
+ element findServiceResponse {
+ mapping+, locationValidation?, commonResponsePattern, locationUsed
+ }
+ listServicesResponse =
+ element listServicesResponse { serviceList, commonResponsePattern }
+ listServicesByLocationResponse =
+ element listServicesByLocationResponse {
+ serviceList, commonResponsePattern, locationUsed
+ }
+ getServiceBoundaryResponse =
+ element getServiceBoundaryResponse {
+ serviceBoundary, commonResponsePattern
+ }
+}
+
+##
+## A pattern common to some of the queries.
+##
+div {
+ commonRequestPattern = service, path?, extensionPoint
+}
+
+##
+## A pattern common to responses.
+##
+div {
+ commonResponsePattern = warnings*, path, extensionPoint
+}
+
+##
+## Location in Requests
+##
+div {
+ requestLocation =
+ element location {
+ attribute id { xsd:token },
+ locationInformation
+ }+
+}
+
+##
+## Location Information
+##
+div {
+ locationInformation =
+ extensionPoint+,
+ attribute profile { xsd:NMTOKEN }?
+}
+
+##
+## Service Boundary
+##
+div {
+ serviceBoundary = element serviceBoundary { locationInformation }+
+}
+
+##
+## Service Boundary Reference
+##
+div {
+ serviceBoundaryReference =
+ element serviceBoundaryReference {
+ source, serviceBoundaryKey, extensionPoint
+ }
+ serviceBoundaryKey = attribute key { xsd:token }
+}
+
+##
+## Path -
+## Contains a list of via elements -
+## places through which information flowed
+##
+div {
+ path =
+ element path {
+ element via { source, extensionPoint }+
+ }
+}
+
+##
+## Location Used
+##
+div {
+ locationUsed =
+ element locationUsed {
+ attribute id { xsd:token }
+ }?
+}
+
+##
+## Expires pattern
+##
+div {
+ expires =
+ attribute expires { xsd:dateTime | "NO-CACHE" | "NO-EXPIRATION" }
+}
+
+##
+## A QName list
+##
+div {
+ qnameList = list { xsd:QName* }
+}
+
+##
+## A location-to-service mapping.
+##
+div {
+ mapping =
+ element mapping {
+ element displayName {
+ xsd:string,
+ attribute xml:lang { xsd:language }
+ }*,
+ service,
+ (serviceBoundary | serviceBoundaryReference)?,
+ element uri { xsd:anyURI }*,
+ element serviceNumber {
+ xsd:token { pattern = "[0-9*#]+" }
+ }?,
+ extensionPoint,
+ expires,
+ attribute lastUpdated { xsd:dateTime },
+ source,
+ attribute sourceId { xsd:token },
+ message
+ }
+}
+
+##
+## Location validation
+##
+div {
+ locationValidation =
+ element locationValidation {
+ element valid { qnameList }?,
+ element invalid { qnameList }?,
+ element unchecked { qnameList }?,
+ extensionPoint
+ }
+}
+
+##
+## Errors and Warnings Container.
+##
+div {
+ exceptionContainer =
+ (badRequest?
+ & internalError?
+ & serviceSubstitution?
+ & defaultMappingReturned?
+ & forbidden?
+ & notFound?
+ & loop?
+ & serviceNotImplemented?
+ & serverTimeout?
+ & serverError?
+ & locationInvalid?
+ & locationProfileUnrecognized?),
+ extensionPoint,
+ source
+ errors = element errors { exceptionContainer }
+ warnings = element warnings { exceptionContainer }
+}
+
+##
+## Basic Exceptions
+##
+div {
+
+ ##
+ ## Exception pattern.
+ ##
+ basicException = message, extensionPoint
+ badRequest = element badRequest { basicException }
+ internalError = element internalError { basicException }
+ serviceSubstitution = element serviceSubstitution { basicException }
+ defaultMappingReturned =
+ element defaultMappingReturned { basicException }
+ forbidden = element forbidden { basicException }
+ notFound = element notFound { basicException }
+ loop = element loop { basicException }
+ serviceNotImplemented =
+ element serviceNotImplemented { basicException }
+ serverTimeout = element serverTimeout { basicException }
+ serverError = element serverError { basicException }
+ locationInvalid = element locationInvalid { basicException }
+ locationValidationUnavailable =
+ element locationValidationUnavailable { basicException }
+ locationProfileUnrecognized =
+ element locationProfileUnrecognized {
+ attribute unsupportedProfiles { xsd:NMTOKENS },
+ basicException
+ }
+}
+
+##
+## Redirect.
+##
+div {
+
+ ##
+ ## Redirect pattern
+ ##
+ redirect =
+ element redirect {
+ attribute target { appUniqueString },
+ source,
+ message,
+ extensionPoint
+ }
+}
+
+##
+## Some common patterns.
+##
+div {
+ message =
+ (attribute message { xsd:token },
+ attribute xml:lang { xsd:language })?
+ service = element service { xsd:anyURI }?
+ appUniqueString =
+ xsd:token { pattern = "([a-zA-Z0-9\-]+\.)+[a-zA-Z0-9]+" }
+ source = attribute source { appUniqueString }
+ serviceList =
+ element serviceList {
+ list { xsd:anyURI* }
+ }
+}
+
+##
+## Patterns for inclusion of elements from schemas in
+## other namespaces.
+##
+div {
+
+ ##
+ ## Any element not in the LoST namespace.
+ ##
+ notLost = element * - (ns1:* | ns1:*) { anyElement }
+
+ ##
+ ## A wildcard pattern for including any element
+ ## from any other namespace.
+ ##
+ anyElement =
+ (element * { anyElement }
+ | attribute * { text }
+ | text)*
+
+ ##
+ ## A point where future extensions
+ ## (elements from other namespaces)
+ ## can be added.
+ ##
+ extensionPoint = notLost*
+} \ No newline at end of file
diff --git a/schemas/msml.xml b/schemas/msml.xml
new file mode 100644
index 0000000..a59f577
--- /dev/null
+++ b/schemas/msml.xml
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified">
+ <xs:include schemaLocation="msml-core-datatypes.xsd"/>
+ <xs:include schemaLocation="msml-conf-core-datatypes.xsd"/>
+ <xs:include schemaLocation="msml-dialog-core-datatypes.xsd"/>
+ <xs:include schemaLocation="msml-dialog-base-datatypes.xsd"/>
+ <xs:include schemaLocation="msml-dialog-transform-datatypes.xsd"/>
+ <xs:include schemaLocation="msml-dialog-group-datatypes.xsd"/>
+ <xs:include schemaLocation="msml-dialog-speech-datatypes.xsd"/>
+ <xs:include schemaLocation="msml-dialog-fax-detect-datatypes.xsd"/>
+ <xs:include schemaLocation="msml-dialog-fax-sendrecv-
+ datatypes.xsd"/>
+ <xs:include schemaLocation="msml-audit-core-datatypes.xsd"/>
+ <xs:include schemaLocation="msml-audit-conf-datatypes.xsd"/>
+ <xs:include schemaLocation="msml-audit-conn-datatypes.xsd"/>
+ <xs:include schemaLocation="msml-audit-dialog-datatypes.xsd"/>
+ <xs:include schemaLocation="msml-audit-stream-datatypes.xsd"/>
+ <xs:element name="msml">
+ <xs:complexType>
+ <xs:choice>
+ <xs:group ref="msmlRequestType" maxOccurs="unbounded"/>
+ <xs:element name="event">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:sequence>
+ <xs:element name="name" type="msmlEventNameValue.datatype"/>
+ <xs:element name="value">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:pattern value="[a-zA-Z0-9.]+"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+ </xs:sequence>
+ </xs:choice>
+ <xs:attribute name="name" type="msmlEventName.datatype"
+ use="required"/>
+ <xs:attribute name="id" type="msmlEventSource.datatype"
+ use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="result">
+ <xs:complexType>
+ <xs:choice>
+ <xs:element ref="description" minOccurs="0"/>
+ <xs:sequence>
+ <xs:element ref="msmlResultSimple" minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xs:element ref="msmlResultComplex" minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:choice>
+ <xs:attribute name="response">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:pattern value="\d{3}"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="mark" type="mark.datatype"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:choice>
+ <xs:attribute name="version" type="xs:string" use="required"
+ fixed="1.1"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/schemas/netconf.xml b/schemas/netconf.xml
new file mode 100644
index 0000000..9294c77
--- /dev/null
+++ b/schemas/netconf.xml
@@ -0,0 +1,564 @@
+<?xml version="1.0" encoding="UTF-8"?>
+ <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"
+ targetNamespace="urn:ietf:params:xml:ns:netconf:base:1.0"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ xml:lang="en">
+ <!--
+ import standard XML definitions
+ -->
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace"
+ schemaLocation="http://www.w3.org/2001/xml.xsd">
+ <xs:annotation>
+ <xs:documentation>
+ This import accesses the xml: attribute groups for the
+ xml:lang as declared on the error-message element.
+ </xs:documentation>
+ </xs:annotation>
+ </xs:import>
+ <!--
+ message-id attribute
+ -->
+ <xs:simpleType name="messageIdType">
+ <xs:restriction base="xs:string">
+ <xs:maxLength value="4095"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!--
+ Types used for session-id
+ -->
+ <xs:simpleType name="SessionId">
+ <xs:restriction base="xs:unsignedInt">
+ <xs:minInclusive value="1"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="SessionIdOrZero">
+ <xs:restriction base="xs:unsignedInt"/>
+ </xs:simpleType>
+ <!--
+ <rpc> element
+ -->
+ <xs:complexType name="rpcType">
+ <xs:sequence>
+ <xs:element ref="rpcOperation"/>
+
+ </xs:sequence>
+ <xs:attribute name="message-id" type="messageIdType"
+ use="required"/>
+ <!--
+ Arbitrary attributes can be supplied with <rpc> element.
+ -->
+ <xs:anyAttribute processContents="lax"/>
+ </xs:complexType>
+ <xs:element name="rpc" type="rpcType"/>
+ <!--
+ data types and elements used to construct rpc-errors
+ -->
+ <xs:simpleType name="ErrorType">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="transport"/>
+ <xs:enumeration value="rpc"/>
+ <xs:enumeration value="protocol"/>
+ <xs:enumeration value="application"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="ErrorTag">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="in-use"/>
+ <xs:enumeration value="invalid-value"/>
+ <xs:enumeration value="too-big"/>
+ <xs:enumeration value="missing-attribute"/>
+ <xs:enumeration value="bad-attribute"/>
+ <xs:enumeration value="unknown-attribute"/>
+ <xs:enumeration value="missing-element"/>
+ <xs:enumeration value="bad-element"/>
+ <xs:enumeration value="unknown-element"/>
+ <xs:enumeration value="unknown-namespace"/>
+ <xs:enumeration value="access-denied"/>
+ <xs:enumeration value="lock-denied"/>
+ <xs:enumeration value="resource-denied"/>
+ <xs:enumeration value="rollback-failed"/>
+ <xs:enumeration value="data-exists"/>
+ <xs:enumeration value="data-missing"/>
+ <xs:enumeration value="operation-not-supported"/>
+ <xs:enumeration value="operation-failed"/>
+ <xs:enumeration value="partial-operation"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="ErrorSeverity">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="error"/>
+ <xs:enumeration value="warning"/>
+ </xs:restriction>
+
+ </xs:simpleType>
+ <xs:complexType name="errorInfoType">
+ <xs:sequence>
+ <xs:choice>
+ <xs:element name="session-id" type="SessionIdOrZero"/>
+ <xs:sequence minOccurs="0" maxOccurs="unbounded">
+ <xs:sequence>
+ <xs:element name="bad-attribute" type="xs:QName"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="bad-element" type="xs:QName"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="ok-element" type="xs:QName"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="err-element" type="xs:QName"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="noop-element" type="xs:QName"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="bad-namespace" type="xs:QName"
+ minOccurs="0" maxOccurs="1"/>
+ </xs:sequence>
+ </xs:sequence>
+ </xs:choice>
+ <!-- elements from any other namespace are also allowed
+ to follow the NETCONF elements -->
+ <xs:any namespace="##other"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="rpcErrorType">
+ <xs:sequence>
+ <xs:element name="error-type" type="ErrorType"/>
+ <xs:element name="error-tag" type="ErrorTag"/>
+ <xs:element name="error-severity" type="ErrorSeverity"/>
+ <xs:element name="error-app-tag" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="error-path" type="xs:string" minOccurs="0"/>
+ <xs:element name="error-message" minOccurs="0">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute ref="xml:lang" use="optional"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="error-info" type="errorInfoType"
+ minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <!--
+ <rpc-reply> element
+ -->
+ <xs:complexType name="rpcReplyType">
+ <xs:choice>
+ <xs:element name="ok"/>
+ <xs:group ref="rpcResponse"/>
+ </xs:choice>
+ <xs:attribute name="message-id" type="messageIdType"
+ use="optional"/>
+ <!--
+ Any attributes supplied with <rpc> element must be returned
+ on <rpc-reply>.
+ -->
+ <xs:anyAttribute processContents="lax"/>
+ </xs:complexType>
+ <xs:group name="rpcResponse">
+ <xs:sequence>
+ <xs:element name="rpc-error" type="rpcErrorType"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="data" type="dataInlineType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="rpc-reply" type="rpcReplyType"/>
+ <!--
+ Type for <test-option> parameter to <edit-config>
+ -->
+ <xs:simpleType name="testOptionType">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="test-then-set"/>
+ <xs:enumeration value="set"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!--
+ Type for <error-option> parameter to <edit-config>
+ -->
+ <xs:simpleType name="errorOptionType">
+ <xs:restriction base="xs:string">
+ <xs:annotation>
+ <xs:documentation>
+ Use of the rollback-on-error value requires
+ the :rollback-on-error capability.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:enumeration value="stop-on-error"/>
+ <xs:enumeration value="continue-on-error"/>
+ <xs:enumeration value="rollback-on-error"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!--
+ rpcOperationType: used as a base type for all
+ NETCONF operations
+ -->
+ <xs:complexType name="rpcOperationType"/>
+ <xs:element name="rpcOperation"
+ type="rpcOperationType" abstract="true"/>
+ <!--
+ Type for <config> element
+ -->
+ <xs:complexType name="configInlineType">
+ <xs:complexContent>
+ <xs:extension base="xs:anyType"/>
+ </xs:complexContent>
+ </xs:complexType>
+ <!--
+ Type for <data> element
+ -->
+ <xs:complexType name="dataInlineType">
+ <xs:complexContent>
+ <xs:extension base="xs:anyType"/>
+ </xs:complexContent>
+ </xs:complexType>
+ <!--
+ Type for <filter> element
+ -->
+ <xs:simpleType name="FilterType">
+ <xs:restriction base="xs:string">
+ <xs:annotation>
+ <xs:documentation>
+ Use of the xpath value requires the :xpath capability.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:enumeration value="subtree"/>
+ <xs:enumeration value="xpath"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="filterInlineType">
+ <xs:complexContent>
+ <xs:extension base="xs:anyType">
+ <xs:attribute name="type"
+ type="FilterType" default="subtree"/>
+ <!-- if type="xpath", the xpath expression
+ appears in the select element -->
+ <xs:attribute name="select"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <!--
+ configuration datastore names
+ -->
+ <xs:annotation>
+ <xs:documentation>
+ The startup datastore can be used only if the :startup
+ capability is advertised. The candidate datastore can
+ be used only if the :candidate datastore is advertised.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType name="configNameType"/>
+ <xs:element name="config-name"
+ type="configNameType" abstract="true"/>
+ <xs:element name="startup" type="configNameType"
+ substitutionGroup="config-name"/>
+ <xs:element name="candidate" type="configNameType"
+ substitutionGroup="config-name"/>
+ <xs:element name="running" type="configNameType"
+ substitutionGroup="config-name"/>
+ <!--
+ operation attribute used in <edit-config>
+ -->
+ <xs:simpleType name="editOperationType">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="merge"/>
+ <xs:enumeration value="replace"/>
+ <xs:enumeration value="create"/>
+ <xs:enumeration value="delete"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attribute name="operation"
+ type="editOperationType" default="merge"/>
+ <!--
+ <default-operation> element
+ -->
+ <xs:simpleType name="defaultOperationType">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="merge"/>
+ <xs:enumeration value="replace"/>
+ <xs:enumeration value="none"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!--
+ <url> element
+ -->
+ <xs:complexType name="configURIType">
+ <xs:annotation>
+ <xs:documentation>
+ Use of the url element requires the :url capability.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:simpleContent>
+ <xs:extension base="xs:anyURI"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <!--
+ Type for <source> element (except <get-config>)
+ -->
+ <xs:complexType name="rpcOperationSourceType">
+ <xs:choice>
+ <xs:element name="config" type="configInlineType"/>
+ <xs:element ref="config-name"/>
+ <xs:element name="url" type="configURIType"/>
+ </xs:choice>
+ </xs:complexType>
+ <!--
+ Type for <source> element in <get-config>
+ -->
+ <xs:complexType name="getConfigSourceType">
+ <xs:choice>
+ <xs:element ref="config-name"/>
+ <xs:element name="url" type="configURIType"/>
+ </xs:choice>
+ </xs:complexType>
+ <!--
+ Type for <target> element
+ -->
+ <xs:complexType name="rpcOperationTargetType">
+ <xs:choice>
+ <xs:element ref="config-name"/>
+ <xs:element name="url" type="configURIType"/>
+ </xs:choice>
+ </xs:complexType>
+ <!--
+ <get-config> operation
+ -->
+ <xs:complexType name="getConfigType">
+ <xs:complexContent>
+ <xs:extension base="rpcOperationType">
+ <xs:sequence>
+ <xs:element name="source"
+ type="getConfigSourceType"/>
+ <xs:element name="filter"
+ type="filterInlineType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="get-config" type="getConfigType"
+ substitutionGroup="rpcOperation"/>
+ <!--
+ <edit-config> operation
+ -->
+ <xs:complexType name="editConfigType">
+ <xs:complexContent>
+ <xs:extension base="rpcOperationType">
+ <xs:sequence>
+ <xs:annotation>
+ <xs:documentation>
+ Use of the test-option element requires the
+ :validate capability. Use of the url element
+ requires the :url capability.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:element name="target"
+ type="rpcOperationTargetType"/>
+ <xs:element name="default-operation"
+ type="defaultOperationType"
+ minOccurs="0"/>
+ <xs:element name="test-option"
+ type="testOptionType"
+ minOccurs="0"/>
+ <xs:element name="error-option"
+ type="errorOptionType"
+ minOccurs="0"/>
+ <xs:choice>
+ <xs:element name="config"
+ type="configInlineType"/>
+ <xs:element name="url"
+ type="configURIType"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="edit-config" type="editConfigType"
+ substitutionGroup="rpcOperation"/>
+ <!--
+ <copy-config> operation
+ -->
+ <xs:complexType name="copyConfigType">
+ <xs:complexContent>
+ <xs:extension base="rpcOperationType">
+ <xs:sequence>
+ <xs:element name="target" type="rpcOperationTargetType"/>
+ <xs:element name="source" type="rpcOperationSourceType"/>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="copy-config" type="copyConfigType"
+ substitutionGroup="rpcOperation"/>
+ <!--
+ <delete-config> operation
+ -->
+ <xs:complexType name="deleteConfigType">
+ <xs:complexContent>
+ <xs:extension base="rpcOperationType">
+ <xs:sequence>
+ <xs:element name="target" type="rpcOperationTargetType"/>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="delete-config" type="deleteConfigType"
+ substitutionGroup="rpcOperation"/>
+ <!--
+ <get> operation
+ -->
+ <xs:complexType name="getType">
+ <xs:complexContent>
+ <xs:extension base="rpcOperationType">
+ <xs:sequence>
+ <xs:element name="filter"
+ type="filterInlineType" minOccurs="0"/>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="get" type="getType"
+ substitutionGroup="rpcOperation"/>
+ <!--
+ <lock> operation
+ -->
+ <xs:complexType name="lockType">
+ <xs:complexContent>
+ <xs:extension base="rpcOperationType">
+ <xs:sequence>
+ <xs:element name="target"
+ type="rpcOperationTargetType"/>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="lock" type="lockType"
+ substitutionGroup="rpcOperation"/>
+ <!--
+ <unlock> operation
+ -->
+ <xs:complexType name="unlockType">
+ <xs:complexContent>
+ <xs:extension base="rpcOperationType">
+ <xs:sequence>
+ <xs:element name="target" type="rpcOperationTargetType"/>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="unlock" type="unlockType"
+ substitutionGroup="rpcOperation"/>
+ <!--
+ <validate> operation
+ -->
+ <xs:complexType name="validateType">
+ <xs:annotation>
+ <xs:documentation>
+ The validate operation requires the :validate capability.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexContent>
+ <xs:extension base="rpcOperationType">
+ <xs:sequence>
+ <xs:element name="source" type="rpcOperationSourceType"/>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="validate" type="validateType"
+ substitutionGroup="rpcOperation"/>
+ <!--
+ <commit> operation
+ -->
+ <xs:simpleType name="confirmTimeoutType">
+ <xs:restriction base="xs:unsignedInt">
+ <xs:minInclusive value="1"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="commitType">
+ <xs:annotation>
+ <xs:documentation>
+ The commit operation requires the :candidate capability.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexContent>
+ <xs:extension base="rpcOperationType">
+ <xs:sequence>
+ <xs:annotation>
+ <xs:documentation>
+ Use of the confirmed and confirm-timeout elements
+ requires the :confirmed-commit capability.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:element name="confirmed" minOccurs="0"/>
+ <xs:element name="confirm-timeout"
+ type="confirmTimeoutType"
+ minOccurs="0"/>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="commit" type="commitType"
+ substitutionGroup="rpcOperation"/>
+ <!--
+ <discard-changes> operation
+ -->
+ <xs:complexType name="discardChangesType">
+ <xs:annotation>
+ <xs:documentation>
+ The discard-changes operation requires the
+ :candidate capability.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexContent>
+ <xs:extension base="rpcOperationType"/>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="discard-changes"
+ type="discardChangesType"
+ substitutionGroup="rpcOperation"/>
+ <!--
+ <close-session> operation
+ -->
+ <xs:complexType name="closeSessionType">
+ <xs:complexContent>
+ <xs:extension base="rpcOperationType"/>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="close-session" type="closeSessionType"
+ substitutionGroup="rpcOperation"/>
+ <!--
+ <kill-session> operation
+ -->
+ <xs:complexType name="killSessionType">
+ <xs:complexContent>
+ <xs:extension base="rpcOperationType">
+ <xs:sequence>
+ <xs:element name="session-id"
+ type="SessionId" minOccurs="1"/>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="kill-session" type="killSessionType"
+ substitutionGroup="rpcOperation"/>
+ <!--
+ <hello> element
+ -->
+ <xs:element name="hello">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="capabilities">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="capability" type="xs:anyURI"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="session-id"
+ type="SessionId" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ </xs:schema>
diff --git a/schemas/notification.xml b/schemas/notification.xml
new file mode 100644
index 0000000..11f37ea
--- /dev/null
+++ b/schemas/notification.xml
@@ -0,0 +1,146 @@
+<?xml version="1.0" encoding="UTF-8"?>
+ <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ xmlns="urn:ietf:params:xml:ns:netconf:notification:1.0"
+ xmlns:netconf="urn:ietf:params:xml:ns:netconf:base:1.0"
+ targetNamespace=
+ "urn:ietf:params:xml:ns:netconf:notification:1.0"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ xml:lang="en">
+
+ <!-- import standard XML definitions -->
+
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace"
+ schemaLocation="http://www.w3.org/2001/xml.xsd">
+ <xs:annotation>
+ <xs:documentation>
+ This import accesses the xml: attribute groups for the
+ xml:lang as declared on the error-message element.
+ </xs:documentation>
+ </xs:annotation>
+ </xs:import>
+
+ <!-- import base netconf definitions -->
+ <xs:import namespace="urn:ietf:params:xml:ns:netconf:base:1.0"
+ schemaLocation="netconf.xsd"/>
+
+
+
+<!-- ************** Symmetrical Operations ********************-->
+
+ <!-- <create-subscription> operation -->
+
+
+ <xs:complexType name="createSubscriptionType">
+ <xs:complexContent>
+ <xs:extension base="netconf:rpcOperationType">
+ <xs:sequence>
+ <xs:element name="stream"
+ type="streamNameType" minOccurs="0">
+ <xs:annotation>
+ <xs:documentation>
+ An optional parameter that indicates
+ which stream of events is of interest. If
+ not present, then events in the default
+ NETCONF stream will be sent.
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="filter"
+ type="netconf:filterInlineType"
+ minOccurs="0">
+ <xs:annotation>
+ <xs:documentation>
+ An optional parameter that indicates
+ which subset of all possible events
+ is of interest. The format of this
+ parameter is the same as that of the
+ filter parameter in the NETCONF
+ protocol operations. If not present,
+ all events not precluded by other
+ parameters will be sent.
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="startTime" type="xs:dateTime"
+ minOccurs="0" >
+ <xs:annotation>
+ <xs:documentation>
+ A parameter used to trigger the replay
+ feature indicating that the replay
+ should start at the time specified. If
+ start time is not present, this is not a
+ replay subscription.
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="stopTime" type="xs:dateTime"
+ minOccurs="0" >
+ <xs:annotation>
+ <xs:documentation>
+ An optional parameter used with the
+ optional replay feature to indicate the
+ newest notifications of interest. If
+ stop time is not present, the
+ notifications will continue until the
+ subscription is terminated. Must be used
+ with startTime.
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+
+
+ <xs:simpleType name="streamNameType">
+ <xs:annotation>
+ <xs:documentation>
+ The name of an event stream.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:restriction base="xs:string"/>
+ </xs:simpleType>
+
+
+ <xs:element name="create-subscription"
+ type="createSubscriptionType"
+ substitutionGroup="netconf:rpcOperation">
+ <xs:annotation>
+ <xs:documentation>
+ The command to create a notification subscription. It
+ takes as argument the name of the notification stream
+ and filter. Both of those options
+ limit the content of the subscription. In addition,
+ there are two time-related parameters, startTime and
+ stopTime, which can be used to select the time interval
+ of interest to the notification replay feature.
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+<!-- ************** One-way Operations ******************-->
+
+ <!-- <Notification> operation -->
+ <xs:complexType name="NotificationContentType"/>
+
+ <xs:element name="notificationContent"
+ type="NotificationContentType" abstract="true"/>
+
+ <xs:complexType name="NotificationType">
+ <xs:sequence>
+ <xs:element name="eventTime" type="xs:dateTime">
+ <xs:annotation>
+ <xs:documentation>
+ The time the event was generated by the event source.
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element ref="notificationContent"/>
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:element name="notification" type="NotificationType"/>
+
+ </xs:schema>
diff --git a/schemas/patch-ops-error.xml b/schemas/patch-ops-error.xml
new file mode 100644
index 0000000..e756672
--- /dev/null
+++ b/schemas/patch-ops-error.xml
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema
+ targetNamespace="urn:ietf:params:xml:ns:patch-ops-error"
+ xmlns:tns="urn:ietf:params:xml:ns:patch-ops-error"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified">
+
+ <!-- This import brings in the XML language attribute xml:lang-->
+ <xsd:import namespace="http://www.w3.org/XML/1998/namespace"
+ schemaLocation="http://www.w3.org/2001/xml.xsd"/>
+
+ <!-- ROOT document element for signaling patch-ops errors -->
+ <xsd:element name="patch-ops-error">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:any namespace="##any" processContents="lax"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:anyAttribute processContents="lax"/>
+ </xsd:complexType>
+ </xsd:element>
+
+ <!-- patch-ops error elements:
+ not intended to be used as root documnet elements -->
+ <xsd:element name="invalid-attribute-value"
+ type="tns:patch-error"/>
+ <xsd:element name="invalid-character-set"
+ type="tns:patch-error-simple"/>
+ <xsd:element name="invalid-diff-format"
+ type="tns:patch-error-simple"/>
+ <xsd:element name="invalid-entity-declaration"
+ type="tns:patch-error"/>
+ <xsd:element name="invalid-namespace-prefix"
+ type="tns:patch-error"/>
+ <xsd:element name="invalid-namespace-uri"
+ type="tns:patch-error"/>
+ <xsd:element name="invalid-node-types"
+ type="tns:patch-error"/>
+ <xsd:element name="invalid-patch-directive"
+ type="tns:patch-error"/>
+ <xsd:element name="invalid-root-element-operation"
+ type="tns:patch-error"/>
+ <xsd:element name="invalid-xml-prolog-operation"
+ type="tns:patch-error"/>
+ <xsd:element name="invalid-whitespace-directive"
+ type="tns:patch-error"/>
+ <xsd:element name="unlocated-node"
+ type="tns:patch-error"/>
+ <xsd:element name="unsupported-id-function"
+ type="tns:patch-error"/>
+ <xsd:element name="unsupported-xml-id"
+ type="tns:patch-error"/>
+
+ <!-- simple patch-ops error type -->
+ <xsd:complexType name="patch-error-simple">
+ <xsd:attribute name="phrase" type="xsd:string"/>
+ <xsd:attribute ref="xml:lang"/>
+ <xsd:anyAttribute processContents="lax"/>
+ </xsd:complexType>
+
+ <!-- error type which includes patch operation -->
+ <xsd:complexType name="patch-error">
+ <xsd:sequence>
+ <xsd:any namespace="##any" processContents="lax"/>
+ </xsd:sequence>
+ <xsd:attribute name="phrase" type="xsd:string"/>
+ <xsd:attribute ref="xml:lang"/>
+ <xsd:anyAttribute processContents="lax"/>
+ </xsd:complexType>
+
+</xsd:schema> \ No newline at end of file
diff --git a/schemas/patch-ops.xml b/schemas/patch-ops.xml
new file mode 100644
index 0000000..8360e01
--- /dev/null
+++ b/schemas/patch-ops.xml
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE schema [
+ <!ENTITY ncname "\i\c*">
+ <!ENTITY qname "(&ncname;:)?&ncname;">
+ <!ENTITY aname "@&qname;">
+ <!ENTITY pos "\[\d+\]">
+ <!ENTITY attr "\[&aname;='(.)*'\]|\[&aname;=&quot;(.)*&quot;\]">
+ <!ENTITY valueq "\[(&qname;|\.)=&quot;(.)*&quot;\]">
+ <!ENTITY value "\[(&qname;|\.)='(.)*'\]|&valueq;">
+ <!ENTITY cond "&attr;|&value;|&pos;">
+ <!ENTITY step "(&qname;|\*)(&cond;)*">
+ <!ENTITY piq "processing-instruction\((&quot;&ncname;&quot;)\)">
+ <!ENTITY pi "processing-instruction\(('&ncname;')?\)|&piq;">
+ <!ENTITY id "id\(('&ncname;')?\)|id\((&quot;&ncname;&quot;)?\)">
+ <!ENTITY com "comment\(\)">
+ <!ENTITY text "text\(\)">
+ <!ENTITY nspa "namespace::&ncname;">
+ <!ENTITY cnodes "(&text;(&pos;)?)|(&com;(&pos;)?)|((&pi;)(&pos;)?)">
+ <!ENTITY child "&cnodes;|&step;">
+ <!ENTITY last "(&child;|&aname;|&nspa;)">
+]>
+<xsd:schema
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified">
+
+ <xsd:simpleType name="xpath">
+ <xsd:restriction base="xsd:string">
+ <xsd:pattern
+ value="(/)?((&id;)((/&step;)*(/&last;))?|(&step;/)*(&last;))"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="xpath-add">
+ <xsd:restriction base="xsd:string">
+ <xsd:pattern
+ value="(/)?((&id;)((/&step;)*(/&child;))?|(&step;/)*(&child;))"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="pos">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="before"/>
+ <xsd:enumeration value="after"/>
+ <xsd:enumeration value="prepend"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="type">
+ <xsd:restriction base="xsd:string">
+ <xsd:pattern value="&aname;|&nspa;"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:complexType name="add">
+ <xsd:complexContent mixed="true">
+ <xsd:restriction base="xsd:anyType">
+ <xsd:sequence>
+ <xsd:any processContents="lax" namespace="##any"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="sel" type="xpath-add"
+ use="required"/>
+ <xsd:attribute name="pos" type="pos"/>
+ <xsd:attribute name="type" type="type"/>
+ </xsd:restriction>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="replace">
+ <xsd:complexContent mixed="true">
+ <xsd:restriction base="xsd:anyType">
+ <xsd:sequence>
+ <xsd:any processContents="lax" namespace="##any"
+ minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ <xsd:attribute name="sel" type="xpath" use="required"/>
+ </xsd:restriction>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="ws">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="before"/>
+ <xsd:enumeration value="after"/>
+ <xsd:enumeration value="both"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:complexType name="remove">
+ <xsd:attribute name="sel" type="xpath" use="required"/>
+ <xsd:attribute name="ws" type="ws"/>
+ </xsd:complexType>
+
+</xsd:schema>
diff --git a/schemas/pidf-caps.xsd b/schemas/pidf-caps.xsd
new file mode 100644
index 0000000..81757a9
--- /dev/null
+++ b/schemas/pidf-caps.xsd
@@ -0,0 +1,419 @@
+<?xml version="1.0" encoding="utf-8"?>
+<xs:schema xmlns:tns="urn:ietf:params:xml:ns:pidf:caps"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="urn:ietf:params:xml:ns:pidf:caps"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified">
+
+ <!-- This import brings in the XML language
+ attribute xml:lang-->
+
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace"
+ schemaLocation="http://www.w3.org/2001/xml.xsd"/>
+
+ <!-- ROOT -->
+ <xs:element name="servcaps" type="tns:servcapstype"/>
+ <xs:complexType name="servcapstype">
+ <xs:sequence>
+ <xs:element name="actor" type="tns:actortype"
+ minOccurs="0"/>
+ <xs:element name="application" type="tns:applicationtype"
+ minOccurs="0"/>
+ <xs:element name="audio" type="tns:audiotype" minOccurs="0"/>
+ <xs:element name="automata" type="tns:automatatype"
+ minOccurs="0"/>
+ <xs:element name="class" type="tns:classtype"
+ minOccurs="0"/>
+ <xs:element name="control" type="tns:controltype"
+ minOccurs="0"/>
+ <xs:element name="data" type="tns:datatype"
+ minOccurs="0"/>
+ <xs:element name="description" type="tns:descriptiontype"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="duplex" type="tns:duplextype"
+ minOccurs="0"/>
+ <xs:element name="event-packages" type="tns:event-packagestype"
+ minOccurs="0"/>
+ <xs:element name="extensions" type="tns:extensionstype"
+
+ minOccurs="0"/>
+ <xs:element name="isfocus" type="tns:isfocustype"
+ minOccurs="0"/>
+ <xs:element name="message" type="tns:messagetype"
+ minOccurs="0"/>
+ <xs:element name="methods" type="tns:methodstype"
+ minOccurs="0"/>
+ <xs:element name="languages" type="tns:languagestype"
+ minOccurs="0"/>
+ <xs:element name="priority" type="tns:prioritytype"
+ minOccurs="0"/>
+ <xs:element name="schemes" type="tns:schemestype"
+ minOccurs="0"/>
+ <xs:element name="text" type="tns:texttype"
+ minOccurs="0"/>
+ <xs:element name="type" type="tns:typetype"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="video" type="tns:videotype"
+ minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##any" processContents="lax"/>
+ </xs:complexType>
+
+ <xs:element name="devcaps" type="tns:devcaps"/>
+ <xs:complexType name="devcaps">
+ <xs:sequence>
+ <xs:element name="description" type="tns:descriptiontype"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="mobility" type="tns:mobilitytype"
+ minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute namespace="##any" processContents="lax"/>
+ </xs:complexType>
+
+ <!-- AUDIO -->
+ <xs:simpleType name="audiotype">
+ <xs:restriction base="xs:boolean"/>
+ </xs:simpleType>
+
+ <!-- APPLICATION -->
+ <xs:simpleType name="applicationtype">
+ <xs:restriction base="xs:boolean"/>
+ </xs:simpleType>
+
+
+
+ <!-- DATA -->
+ <xs:simpleType name="datatype">
+ <xs:restriction base="xs:boolean"/>
+ </xs:simpleType>
+
+ <!-- CONTROL -->
+ <xs:simpleType name="controltype">
+ <xs:restriction base="xs:boolean"/>
+ </xs:simpleType>
+
+ <!-- VIDEO -->
+ <xs:simpleType name="videotype">
+ <xs:restriction base="xs:boolean"/>
+ </xs:simpleType>
+
+ <!-- TEXT -->
+ <xs:simpleType name="texttype">
+ <xs:restriction base="xs:boolean"/>
+ </xs:simpleType>
+
+ <!-- MESSAGE -->
+ <xs:simpleType name="messagetype">
+ <xs:restriction base="xs:boolean"/>
+ </xs:simpleType>
+
+ <!-- TYPE -->
+ <xs:simpleType name="typetype">
+ <xs:restriction base="xs:string"/>
+ </xs:simpleType>
+
+ <!-- AUTOMATA -->
+ <xs:simpleType name="automatatype">
+ <xs:restriction base="xs:boolean"/>
+ </xs:simpleType>
+
+ <!-- CLASS -->
+ <xs:complexType name="classtype">
+ <xs:sequence>
+ <xs:element name="supported" type="tns:classtypes"
+ minOccurs="0"/>
+ <xs:element name="notsupported" type="tns:classtypes"
+ minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="classtypes">
+ <xs:sequence>
+ <xs:element name="business" type="xs:string"
+ minOccurs="0"/>
+
+
+ <xs:element name="personal" type="xs:string"
+ minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+
+ <!-- DUPLEX -->
+ <xs:complexType name="duplextype">
+ <xs:sequence>
+ <xs:element name="supported" type="tns:duplextypes"
+ minOccurs="0"/>
+ <xs:element name="notsupported" type="tns:duplextypes"
+ minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="duplextypes">
+ <xs:sequence>
+ <xs:element name="full" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="half" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="receive-only" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="send-only" type="xs:string"
+ minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+
+ <!-- DESCRIPTION -->
+ <xs:complexType name="descriptiontype">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute ref="xml:lang"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+
+ <!-- EVENT-PACKAGES -->
+ <xs:complexType name="event-packagestype">
+ <xs:sequence>
+ <xs:element name="supported" type="tns:eventtypes"
+ minOccurs="0"/>
+ <xs:element name="notsupported" type="tns:eventtypes"
+ minOccurs="0"/>
+
+
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="eventtypes">
+ <xs:sequence>
+ <xs:element name="conference" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="dialog" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="kpml" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="message-summary" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="poc-settings" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="presence" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="reg" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="refer" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="Siemens-RTP-Stats"
+ type="xs:string" minOccurs="0"/>
+ <xs:element name="spirits-INDPs"
+ type="xs:string" minOccurs="0"/>
+ <xs:element name="spirits-user-prof"
+ type="xs:string" minOccurs="0"/>
+ <xs:element name="winfo" type="xs:string"
+ minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+
+ <!-- PRIORITY -->
+ <xs:complexType name="prioritytype">
+ <xs:sequence>
+ <xs:element name="supported" type="tns:prioritytypes"
+ minOccurs="0"/>
+ <xs:element name="notsupported" type="tns:prioritytypes"
+ minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="prioritytypes">
+ <xs:sequence>
+ <xs:element name="equals" type="tns:equalstype"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="higherhan" type="tns:higherthantype"
+ minOccurs="0" maxOccurs="unbounded"/>
+
+
+ <xs:element name="lowerthan" type="tns:lowerthantype"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="range" type="tns:rangetype"
+ minOccurs="0" maxOccurs="unbounded"/>
+ <xs:any namespace="##other" processContents="lax"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="lowerthantype">
+ <xs:attribute name="maxvalue" type="xs:integer"
+ use="required"/>
+ </xs:complexType>
+ <xs:complexType name="higherthantype">
+ <xs:attribute name="minvalue" type="xs:integer"
+ use="required"/>
+ </xs:complexType>
+ <xs:complexType name="equalstype">
+ <xs:attribute name="value" type="xs:integer"
+ use="required"/>
+ </xs:complexType>
+ <xs:complexType name="rangetype">
+ <xs:attribute name="minvalue" type="xs:integer"
+ use="required"/>
+ <xs:attribute name="maxvalue" type="xs:integer"
+ use="required"/>
+ </xs:complexType>
+
+ <!-- METHODS -->
+ <xs:complexType name="methodstype">
+ <xs:sequence>
+ <xs:element name="supported" type="tns:methodtypes"
+ minOccurs="0"/>
+ <xs:element name="notsupported" type="tns:methodtypes"
+ minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="methodtypes">
+ <xs:sequence>
+ <xs:element name="ACK" type="xs:string" minOccurs="0"/>
+ <xs:element name="BYE" type="xs:string" minOccurs="0"/>
+ <xs:element name="CANCEL" type="xs:string" minOccurs="0"/>
+ <xs:element name="INFO" type="xs:string" minOccurs="0"/>
+ <xs:element name="INVITE" type="xs:string" minOccurs="0"/>
+ <xs:element name="MESSAGE" type="xs:string" minOccurs="0"/>
+ <xs:element name="NOTIFY" type="xs:string" minOccurs="0"/>
+ <xs:element name="OPTIONS" type="xs:string" minOccurs="0"/>
+ <xs:element name="PRACK" type="xs:string" minOccurs="0"/>
+ <xs:element name="PUBLISH" type="xs:string" minOccurs="0"/>
+
+
+ <xs:element name="REFER" type="xs:string" minOccurs="0"/>
+ <xs:element name="REGISTER" type="xs:string" minOccurs="0"/>
+ <xs:element name="SUBSCRIBE" type="xs:string" minOccurs="0"/>
+ <xs:element name="UPDATE" type="xs:string" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+
+ <!-- EXTENSIONS -->
+ <xs:complexType name="extensionstype">
+ <xs:sequence>
+ <xs:element name="supported" type="tns:extensiontypes"
+ minOccurs="0"/>
+ <xs:element name="notsupported" type="tns:extensiontypes"
+ minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="extensiontypes">
+ <xs:sequence>
+ <xs:element name="rel100" type="xs:string" minOccurs="0"/>
+ <xs:element name="early-session" type="xs:string" minOccurs="0"/>
+ <xs:element name="eventlist" type="xs:string" minOccurs="0"/>
+ <xs:element name="from-change" type="xs:string" minOccurs="0"/>
+ <xs:element name="gruu" type="xs:string" minOccurs="0"/>
+ <xs:element name="hist-info" type="xs:string" minOccurs="0"/>
+ <xs:element name="join" type="xs:string" minOccurs="0"/>
+ <xs:element name="norefersub" type="xs:string" minOccurs="0"/>
+ <xs:element name="path" type="xs:string" minOccurs="0"/>
+ <xs:element name="precondition" type="xs:string" minOccurs="0"/>
+ <xs:element name="pref" type="xs:string" minOccurs="0"/>
+ <xs:element name="privacy" type="xs:string" minOccurs="0"/>
+ <xs:element name="replaces" type="xs:string" minOccurs="0"/>
+ <xs:element name="resource-priority" type="xs:string" minOccurs="0"/>
+ <xs:element name="sdp-anat" type="xs:string" minOccurs="0"/>
+ <xs:element name="sec-agree" type="xs:string" minOccurs="0"/>
+ <xs:element name="tdialog" type="xs:string" minOccurs="0"/>
+ <xs:element name="timer" type="xs:string" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+
+ <!-- SCHEMES -->
+ <xs:complexType name="schemestype">
+ <xs:sequence>
+ <xs:element name="supported" minOccurs="0">
+ <xs:complexType>
+
+
+ <xs:sequence>
+ <xs:element name="s" type="xs:string" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="notsupported" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="s" type="xs:string" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+
+ <!-- ACTOR -->
+ <xs:complexType name="actortype">
+ <xs:sequence>
+ <xs:element name="supported" type="tns:actortypes"
+ minOccurs="0"/>
+ <xs:element name="notsupported" type="tns:actortypes"
+ minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="actortypes">
+ <xs:sequence>
+ <xs:element name="attendant" type="xs:string" minOccurs="0"/>
+ <xs:element name="information" type="xs:string" minOccurs="0"/>
+ <xs:element name="msg-taker" type="xs:string" minOccurs="0"/>
+ <xs:element name="principal" type="xs:string" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+
+ <!-- ISFOCUS -->
+ <xs:simpleType name="isfocustype">
+ <xs:restriction base="xs:boolean"/>
+ </xs:simpleType>
+
+ <!-- LANGUAGES -->
+ <xs:complexType name="languagestype">
+ <xs:sequence>
+ <xs:element name="supported" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="l" type="xs:string" maxOccurs="unbounded"/>
+ </xs:sequence>
+
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="notsupported" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="l" type="xs:string" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+
+ <!-- MOBILITY -->
+ <xs:complexType name="mobilitytype">
+ <xs:sequence>
+ <xs:element name="supported" type="tns:mobilitytypes"
+ minOccurs="0"/>
+ <xs:element name="notsupported" type="tns:mobilitytypes"
+ minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="mobilitytypes">
+ <xs:sequence>
+ <xs:element name="fixed" type="xs:string"
+ minOccurs="0"/>
+ <xs:element name="mobile" type="xs:string"
+ minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+</xs:schema>
diff --git a/schemas/pidf-diff.xml b/schemas/pidf-diff.xml
new file mode 100644
index 0000000..c12900d
--- /dev/null
+++ b/schemas/pidf-diff.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema
+ targetNamespace="urn:ietf:params:xml:ns:pidf-diff"
+ xmlns:tns="urn:ietf:params:xml:ns:pidf-diff"
+ xmlns:pidf="urn:ietf:params:xml:ns:pidf"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified">
+
+ <!-- include patch-ops type definitions -->
+ <xsd:include
+ schemaLocation="urn:ietf:params:xml:schema:patch-ops"/>
+
+ <!-- import PIDF definitions -->
+ <xsd:import namespace="urn:ietf:params:xml:ns:pidf"
+ schemaLocation="pidf.xsd"/>
+
+ <!-- partial updates -->
+ <xsd:element name="pidf-diff">
+ <xsd:complexType>
+ <xsd:sequence minOccurs="0" maxOccurs="unbounded">
+ <xsd:choice>
+ <xsd:element name="add" type="tns:add"/>
+ <xsd:element name="replace" type="tns:replace"/>
+ <xsd:element name="remove" type="tns:remove"/>
+ </xsd:choice>
+ </xsd:sequence>
+ <xsd:attribute name="version" type="xsd:unsignedInt"/>
+ <xsd:attribute name="entity" type="xsd:anyURI"/>
+ </xsd:complexType>
+ </xsd:element>
+
+ <!-- full PIDF in addition to optional version -->
+ <xsd:element name="pidf-full">
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="pidf:presence">
+ <xsd:attribute name="version" type="xsd:unsignedInt"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+
+</xsd:schema>
diff --git a/schemas/pidf.xsd b/schemas/pidf.xsd
new file mode 100644
index 0000000..6d38339
--- /dev/null
+++ b/schemas/pidf.xsd
@@ -0,0 +1,91 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Extracted from RFC 3863
+http://www.rfc-editor.org/rfc/rfc3863.txt
+-->
+<xs:schema targetNamespace="urn:ietf:params:xml:ns:pidf"
+ xmlns:tns="urn:ietf:params:xml:ns:pidf"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified">
+
+ <!-- This import brings in the XML language attribute xml:lang-->
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace"
+ schemaLocation="http://www.w3.org/2001/xml.xsd"/>
+
+ <xs:element name="presence" type="tns:presence"/>
+
+ <xs:complexType name="presence">
+ <xs:sequence>
+ <xs:element name="tuple" type="tns:tuple" minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xs:element name="note" type="tns:note" minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="entity" type="xs:anyURI" use="required"/>
+ </xs:complexType>
+
+ <xs:complexType name="tuple">
+ <xs:sequence>
+ <xs:element name="status" type="tns:status"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xs:element name="contact" type="tns:contact" minOccurs="0"/>
+ <xs:element name="note" type="tns:note" minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xs:element name="timestamp" type="xs:dateTime" minOccurs="0"/>
+ </xs:sequence>
+ <xs:attribute name="id" type="xs:ID" use="required"/>
+ </xs:complexType>
+
+ <xs:complexType name="status">
+ <xs:sequence>
+ <xs:element name="basic" type="tns:basic" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:simpleType name="basic">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="open"/>
+ <xs:enumeration value="closed"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:complexType name="contact">
+ <xs:simpleContent>
+ <xs:extension base="xs:anyURI">
+ <xs:attribute name="priority" type="tns:qvalue"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+
+ <xs:complexType name="note">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute ref="xml:lang"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+
+ <xs:simpleType name="qvalue">
+ <xs:restriction base="xs:decimal">
+ <xs:pattern value="0(.[0-9]{0,3})?"/>
+ <xs:pattern value="1(.0{0,3})?"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <!-- Global Attributes -->
+ <xs:attribute name="mustUnderstand" type="xs:boolean" default="0">
+ <xs:annotation>
+ <xs:documentation>
+ This attribute may be used on any element within an optional
+ PIDF extension to indicate that the corresponding element must
+ be understood by the PIDF processor if the enclosing optional
+ element is to be handled.
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+</xs:schema> \ No newline at end of file
diff --git a/schemas/poc_listService-v1_0.xsd b/schemas/poc_listService-v1_0.xsd
new file mode 100644
index 0000000..97bcd0b
--- /dev/null
+++ b/schemas/poc_listService-v1_0.xsd
@@ -0,0 +1,144 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ PoC - List Service
+ version - 1.0
+ date - 17 May 2006
+
+ FILE INFORMATION
+
+ OMA Permanent Document
+ File: OMA-SUP-XSD_poc_listService-V1_0-20061025-D
+ Type: Text - Schema Description
+
+ Public Reachable Information
+ Path: http://www.openmobilealliance.org/tech/profiles
+ Name: poc_listService-v1_0.xsd
+
+ NORMATIVE INFORMATION
+
+ Information about this file can be found in the specification
+ OMA-TS-PoC_XDM-V1_0
+ available at http://www.openmobilealliance.org/
+
+ Send comments to technical-comments@mail.openmobilealliance.org
+
+ LEGAL DISCLAIMER
+
+ Use of this document is subject to all of the terms and conditions
+ of the Use Agreement located at
+ http://www.openmobilealliance.org/UseAgreement.html
+
+ You may use this document or any part of the document for internal
+ or educational purposes only, provided you do not modify, edit or
+ take out of context the information in this document in any manner.
+ Information contained in this document may be used, at your sole
+ risk, for any purposes.
+
+ You may not use this document in any other manner without the prior
+ written permission of the Open Mobile Alliance. The Open Mobile
+ Alliance authorizes you to copy this document, provided that you
+ retain all copyright and other proprietary notices contained in the
+ original materials on any copies of the materials and that you
+ comply strictly with these terms. This copyright permission does
+ not constitute an endorsement of the products or services. The
+ Open Mobile Alliance assumes no responsibility for errors or
+ omissions in this document.
+
+ Each Open Mobile Alliance member has agreed to use reasonable
+ endeavors to inform the Open Mobile Alliance in a timely manner of
+ Essential IPR as it becomes aware that the Essential IPR is related
+ to the prepared or published specification. However, the members
+ do not have an obligation to conduct IPR searches. The declared
+ Essential IPR is publicly available to members and non-members of
+ the Open Mobile Alliance and may be found on the "OMA IPR
+ Declarations" list at http://www.openmobilealliance.org/ipr.html.
+ The Open Mobile Alliance has not conducted an independent IPR review
+ of this document and the information contained herein, and makes no
+ representations or warranties regarding third party IPR, including
+ without limitation patents, copyrights or trade secret rights. This
+ document may contain inventions for which you must obtain licenses
+ from third parties before making, using or selling the inventions.
+ Defined terms above are set forth in the schedule to the Open Mobile
+ Alliance Application Form.
+
+ NO REPRESENTATIONS OR WARRANTIES (WHETHER EXPRESS OR IMPLIED) ARE
+ MADE BY THE OPEN MOBILE ALLIANCE OR ANY OPEN MOBILE ALLIANCE MEMBER
+ OR ITS AFFILIATES REGARDING ANY OF THE IPR'S REPRESENTED ON THE "OMA
+ IPR DECLARATIONS" LIST, INCLUDING, BUT NOT LIMITED TO THE ACCURACY,
+ COMPLETENESS, VALIDITY OR RELEVANCE OF THE INFORMATION OR WHETHER OR
+ NOT SUCH RIGHTS ARE ESSENTIAL OR NON-ESSENTIAL.
+
+ THE OPEN MOBILE ALLIANCE IS NOT LIABLE FOR AND HEREBY DISCLAIMS ANY
+ DIRECT, INDIRECT, PUNITIVE, SPECIAL, INCIDENTAL, CONSEQUENTIAL, OR
+ EXEMPLARY DAMAGES ARISING OUT OF OR IN CONNECTION WITH THE USE OF
+ DOCUMENTS AND THE INFORMATION CONTAINED IN THE DOCUMENTS.
+
+ Copyright 2006 Open Mobile Alliance Ltd. All Rights Reserved.
+ Used with the permission of the Open Mobile Alliance Ltd. under the
+ terms set forth above.
+-->
+
+<xs:schema
+ targetNamespace="urn:oma:xml:poc:list-service"
+ xmlns="urn:oma:xml:poc:list-service"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ xmlns:cr="urn:ietf:params:xml:ns:common-policy"
+ xmlns:ocr="urn:oma:xml:xdm:common-policy"
+
+ xmlns:rl="urn:ietf:params:xml:ns:resource-lists"
+ elementFormDefault="qualified" attributeFormDefault="unqualified">
+
+ <!-- This import brings in the IETF common policy -->
+ <xs:import namespace="urn:ietf:params:xml:ns:common-policy"/>
+ <!-- This import brings in the common extensions for authorization rules in [XDMSPEC]-->
+ <xs:import namespace="urn:oma:xml:xdm:common-policy"/>
+ <!-- This import brings in the IETF resource-lists -->
+ <xs:import namespace="urn:ietf:params:xml:ns:resource-lists"/>
+
+
+ <!-- The root "group" element -->
+ <xs:element name="group">
+ <xs:complexType>
+ <xs:sequence maxOccurs="unbounded">
+ <xs:element name="list-service" type="list-service-type"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:complexType name="list-service-type">
+ <xs:sequence>
+ <xs:element name="display-name" type="rl:display-nameType" minOccurs="0"/>
+ <xs:element name="list" type="list-type" minOccurs="0"/>
+ <xs:element name="invite-members" type="xs:boolean" minOccurs="0"/>
+ <xs:element name="max-participant-count" type="xs:nonNegativeInteger" minOccurs="0"/>
+ <xs:element ref="cr:ruleset" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="uri" type="xs:anyURI" use="required"/>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+
+ <xs:complexType name="list-type">
+ <xs:sequence>
+ <xs:element name="entry" type="rl:entryType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="external" type="rl:externalType" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+
+
+ <!-- OMA specific "conditions" child elements -->
+
+ <xs:element name="is-list-member" type="emptyType"/>
+
+ <!--OMA specific "actions" child elements -->
+ <xs:element name="allow-conference-state" type="xs:boolean"/>
+ <xs:element name="allow-invite-users-dynamically" type="xs:boolean"/>
+ <xs:element name="join-handling" type="xs:boolean"/>
+ <xs:element name="allow-initiate-conference" type="xs:boolean"/>
+ <xs:element name="allow-anonymity" type="xs:boolean"/>
+
+ <xs:element name="is-key-participant" type="xs:boolean"/>
+ <xs:complexType name="emptyType"/>
+
+</xs:schema>
diff --git a/schemas/poc_pocRules-v1_0.xsd b/schemas/poc_pocRules-v1_0.xsd
new file mode 100644
index 0000000..1659ffe
--- /dev/null
+++ b/schemas/poc_pocRules-v1_0.xsd
@@ -0,0 +1,107 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ PoC - PoC Rules
+ version - 1.0
+ date - 17 May 2006
+
+ FILE INFORMATION
+
+ OMA Permanent Document
+ File: OMA-SUP-XSD_poc_pocRules-V1_0-20060517-D
+ Type: Text - Schema Description
+
+ Public Reachable Information
+ Path: http://www.openmobilealliance.org/tech/profiles
+ Name: poc_pocRules-v1_0.xsd
+
+ NORMATIVE INFORMATION
+
+ Information about this file can be found in the specification
+ OMA-TS-PoC_XDM-V1_0
+ available at http://www.openmobilealliance.org/
+
+ Send comments to technical-comments@mail.openmobilealliance.org
+
+ LEGAL DISCLAIMER
+
+ Use of this document is subject to all of the terms and conditions
+ of the Use Agreement located at
+ http://www.openmobilealliance.org/UseAgreement.html
+
+ You may use this document or any part of the document for internal
+ or educational purposes only, provided you do not modify, edit or
+ take out of context the information in this document in any manner.
+ Information contained in this document may be used, at your sole
+ risk, for any purposes.
+
+ You may not use this document in any other manner without the prior
+ written permission of the Open Mobile Alliance. The Open Mobile
+ Alliance authorizes you to copy this document, provided that you
+ retain all copyright and other proprietary notices contained in the
+ original materials on any copies of the materials and that you
+ comply strictly with these terms. This copyright permission does
+ not constitute an endorsement of the products or services. The
+ Open Mobile Alliance assumes no responsibility for errors or
+ omissions in this document.
+
+ Each Open Mobile Alliance member has agreed to use reasonable
+ endeavors to inform the Open Mobile Alliance in a timely manner of
+ Essential IPR as it becomes aware that the Essential IPR is related
+ to the prepared or published specification. However, the members
+ do not have an obligation to conduct IPR searches. The declared
+ Essential IPR is publicly available to members and non-members of
+ the Open Mobile Alliance and may be found on the "OMA IPR
+ Declarations" list at http://www.openmobilealliance.org/ipr.html.
+ The Open Mobile Alliance has not conducted an independent IPR review
+ of this document and the information contained herein, and makes no
+ representations or warranties regarding third party IPR, including
+ without limitation patents, copyrights or trade secret rights. This
+ document may contain inventions for which you must obtain licenses
+ from third parties before making, using or selling the inventions.
+ Defined terms above are set forth in the schedule to the Open Mobile
+ Alliance Application Form.
+
+ NO REPRESENTATIONS OR WARRANTIES (WHETHER EXPRESS OR IMPLIED) ARE
+ MADE BY THE OPEN MOBILE ALLIANCE OR ANY OPEN MOBILE ALLIANCE MEMBER
+ OR ITS AFFILIATES REGARDING ANY OF THE IPR'S REPRESENTED ON THE "OMA
+ IPR DECLARATIONS" LIST, INCLUDING, BUT NOT LIMITED TO THE ACCURACY,
+ COMPLETENESS, VALIDITY OR RELEVANCE OF THE INFORMATION OR WHETHER OR
+ NOT SUCH RIGHTS ARE ESSENTIAL OR NON-ESSENTIAL.
+
+ THE OPEN MOBILE ALLIANCE IS NOT LIABLE FOR AND HEREBY DISCLAIMS ANY
+ DIRECT, INDIRECT, PUNITIVE, SPECIAL, INCIDENTAL, CONSEQUENTIAL, OR
+ EXEMPLARY DAMAGES ARISING OUT OF OR IN CONNECTION WITH THE USE OF
+ DOCUMENTS AND THE INFORMATION CONTAINED IN THE DOCUMENTS.
+
+ Copyright 2006 Open Mobile Alliance Ltd. All Rights Reserved.
+ Used with the permission of the Open Mobile Alliance Ltd. under the
+ terms set forth above.
+-->
+
+<xs:schema targetNamespace="urn:oma:xml:poc:poc-rules"
+ xmlns="urn:oma:xml:poc:poc-rules"
+ xmlns:cr="urn:ietf:params:xml:ns:common-policy"
+ xmlns:ocr="urn:oma:xml:xdm:common-policy"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified" attributeFormDefault="unqualified">
+
+
+ <!-- This import brings in the common extensions for authorization rules in [XDMSPEC]-->
+ <xs:import namespace="urn:oma:xml:xdm:common-policy"/>
+
+ <!-- This import brings in the IETF common policy -->
+ <xs:import namespace="urn:ietf:params:xml:ns:common-policy"/>
+
+ <!-- OMA specific "actions" child elements -->
+ <xs:element name="allow-invite">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="reject"/>
+ <xs:enumeration value="pass"/>
+ <xs:enumeration value="accept"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+
+</xs:schema>
diff --git a/schemas/poc_pocusage-v1_0.xsd b/schemas/poc_pocusage-v1_0.xsd
new file mode 100644
index 0000000..a17a6e6
--- /dev/null
+++ b/schemas/poc_pocusage-v1_0.xsd
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ PoC - PoC usage
+ version - 1.0
+ date - 05 Sep 2007
+
+ FILE INFORMATION
+
+ OMA Permanent Document
+ File: OMA-SUP-XSD_poc_pocusage-V1_0_2-20070905-A
+ Type: Text - Schema Description
+
+ Public Reachable Information
+ Path: http://www.openmobilealliance.org/tech/profiles
+ Name: poc_pocusage-v1_0.xsd
+
+ NORMATIVE INFORMATION
+
+ Information about this file can be found in the specification
+ OMA-TS-PoC_XDM-V1_0
+ available at http://www.openmobilealliance.org/
+
+ Send comments to technical-comments@mail.openmobilealliance.org
+
+ LEGAL DISCLAIMER
+
+ Use of this document is subject to all of the terms and conditions
+ of the Use Agreement located at
+ http://www.openmobilealliance.org/UseAgreement.html
+
+ You may use this document or any part of the document for internal
+ or educational purposes only, provided you do not modify, edit or
+ take out of context the information in this document in any manner.
+ Information contained in this document may be used, at your sole
+ risk, for any purposes.
+
+ You may not use this document in any other manner without the prior
+ written permission of the Open Mobile Alliance. The Open Mobile
+ Alliance authorizes you to copy this document, provided that you
+ retain all copyright and other proprietary notices contained in the
+ original materials on any copies of the materials and that you
+ comply strictly with these terms. This copyright permission does
+ not constitute an endorsement of the products or services. The
+ Open Mobile Alliance assumes no responsibility for errors or
+ omissions in this document.
+
+ Each Open Mobile Alliance member has agreed to use reasonable
+ endeavors to inform the Open Mobile Alliance in a timely manner of
+ Essential IPR as it becomes aware that the Essential IPR is related
+ to the prepared or published specification. However, the members
+ do not have an obligation to conduct IPR searches. The declared
+ Essential IPR is publicly available to members and non-members of
+ the Open Mobile Alliance and may be found on the "OMA IPR
+ Declarations" list at http://www.openmobilealliance.org/ipr.html.
+ The Open Mobile Alliance has not conducted an independent IPR review
+ of this document and the information contained herein, and makes no
+ representations or warranties regarding third party IPR, including
+ without limitation patents, copyrights or trade secret rights. This
+ document may contain inventions for which you must obtain licenses
+ from third parties before making, using or selling the inventions.
+ Defined terms above are set forth in the schedule to the Open Mobile
+ Alliance Application Form.
+
+ NO REPRESENTATIONS OR WARRANTIES (WHETHER EXPRESS OR IMPLIED) ARE
+ MADE BY THE OPEN MOBILE ALLIANCE OR ANY OPEN MOBILE ALLIANCE MEMBER
+ OR ITS AFFILIATES REGARDING ANY OF THE IPR'S REPRESENTED ON THE "OMA
+ IPR DECLARATIONS" LIST, INCLUDING, BUT NOT LIMITED TO THE ACCURACY,
+ COMPLETENESS, VALIDITY OR RELEVANCE OF THE INFORMATION OR WHETHER OR
+ NOT SUCH RIGHTS ARE ESSENTIAL OR NON-ESSENTIAL.
+
+ THE OPEN MOBILE ALLIANCE IS NOT LIABLE FOR AND HEREBY DISCLAIMS ANY
+ DIRECT, INDIRECT, PUNITIVE, SPECIAL, INCIDENTAL, CONSEQUENTIAL, OR
+ EXEMPLARY DAMAGES ARISING OUT OF OR IN CONNECTION WITH THE USE OF
+ DOCUMENTS AND THE INFORMATION CONTAINED IN THE DOCUMENTS.
+
+ Copyright 2007 Open Mobile Alliance Ltd. All Rights Reserved.
+ Used with the permission of the Open Mobile Alliance Ltd. under the
+ terms set forth above.
+-->
+
+<xs:schema targetNamespace="urn:oma:xml:poc:oma-pocusage"
+ xmlns:aa="urn:oma:xml:xdm:resource-list:oma-uriusage"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified">
+
+ <!-- OMA specific "pocusage" element -->
+
+ <xs:element name="pocusage" substitutionGroup="aa:uriusage">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="chat"/>
+ <xs:enumeration value="prearranged"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+
+</xs:schema>
diff --git a/schemas/pres-rules.xml b/schemas/pres-rules.xml
new file mode 100644
index 0000000..c836861
--- /dev/null
+++ b/schemas/pres-rules.xml
@@ -0,0 +1,124 @@
+
+ <?xml version="1.0" encoding="UTF-8"?>
+ <xs:schema targetNamespace="urn:ietf:params:xml:ns:pres-rules"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ xmlns:cr="urn:ietf:params:xml:ns:common-policy"
+ xmlns:pr="urn:ietf:params:xml:ns:pres-rules"
+ elementFormDefault="qualified" attributeFormDefault="unqualified">
+ <xs:import namespace="urn:ietf:params:xml:ns:common-policy"/>
+ <xs:simpleType name="booleanPermission">
+ <xs:restriction base="xs:boolean"/>
+ </xs:simpleType>
+ <xs:element name="service-uri-scheme" type="xs:token"/>
+ <xs:element name="class" type="xs:token"/>
+ <xs:element name="occurrence-id" type="xs:token"/>
+ <xs:element name="service-uri" type="xs:anyURI"/>
+ <xs:complexType name="provideServicePermission">
+ <xs:choice>
+ <xs:element name="all-services">
+ <xs:complexType/>
+ </xs:element>
+ <xs:sequence minOccurs="0" maxOccurs="unbounded">
+ <xs:choice>
+ <xs:element ref="pr:service-uri"/>
+ <xs:element ref="pr:service-uri-scheme"/>
+ <xs:element ref="pr:occurrence-id"/>
+ <xs:element ref="pr:class"/>
+ <xs:any namespace="##other" processContents="lax"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:choice>
+ </xs:complexType>
+ <xs:element name="provide-services"
+ type="pr:provideServicePermission"/>
+ <xs:element name="deviceID" type="xs:anyURI"/>
+ <xs:complexType name="provideDevicePermission">
+ <xs:choice>
+ <xs:element name="all-devices">
+ <xs:complexType/>
+ </xs:element>
+ <xs:sequence minOccurs="0" maxOccurs="unbounded">
+ <xs:choice>
+ <xs:element ref="pr:deviceID"/>
+ <xs:element ref="pr:occurrence-id"/>
+ <xs:element ref="pr:class"/>
+ <xs:any namespace="##other" processContents="lax"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:choice>
+ </xs:complexType>
+ <xs:element name="provide-devices"
+ type="pr:provideDevicePermission"/>
+ <xs:complexType name="providePersonPermission">
+ <xs:choice>
+ <xs:element name="all-persons">
+ <xs:complexType/>
+ </xs:element>
+ <xs:sequence minOccurs="0" maxOccurs="unbounded">
+ <xs:choice>
+ <xs:element ref="pr:occurrence-id"/>
+ <xs:element ref="pr:class"/>
+ <xs:any namespace="##other" processContents="lax"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:choice>
+ </xs:complexType>
+ <xs:element name="provide-persons"
+ type="pr:providePersonPermission"/>
+ <xs:element name="provide-activities"
+ type="pr:booleanPermission"/>
+ <xs:element name="provide-class"
+ type="pr:booleanPermission"/>
+ <xs:element name="provide-deviceID"
+ type="pr:booleanPermission"/>
+ <xs:element name="provide-mood"
+ type="pr:booleanPermission"/>
+ <xs:element name="provide-place-is"
+ type="pr:booleanPermission"/>
+ <xs:element name="provide-place-type"
+ type="pr:booleanPermission"/>
+ <xs:element name="provide-privacy"
+ type="pr:booleanPermission"/>
+ <xs:element name="provide-relationship"
+ type="pr:booleanPermission"/>
+ <xs:element name="provide-status-icon"
+ type="pr:booleanPermission"/>
+ <xs:element name="provide-sphere"
+ type="pr:booleanPermission"/>
+ <xs:element name="provide-time-offset"
+ type="pr:booleanPermission"/>
+ <xs:element name="provide-user-input">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="false"/>
+ <xs:enumeration value="bare"/>
+ <xs:enumeration value="thresholds"/>
+ <xs:enumeration value="full"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+ <xs:element name="provide-note" type="pr:booleanPermission"/>
+ <xs:element name="sub-handling">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="block"/>
+ <xs:enumeration value="confirm"/>
+ <xs:enumeration value="polite-block"/>
+ <xs:enumeration value="allow"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+ <xs:complexType name="unknownBooleanPermission">
+ <xs:simpleContent>
+ <xs:extension base="pr:booleanPermission">
+ <xs:attribute name="name" type="xs:string" use="required"/>
+ <xs:attribute name="ns" type="xs:string" use="required"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:element name="provide-unknown-attribute"
+ type="pr:unknownBooleanPermission"/>
+ <xs:element name="provide-all-attributes">
+ <xs:complexType/>
+ </xs:element>
+ </xs:schema> \ No newline at end of file
diff --git a/schemas/prs_pidf_omapres-v1_0.xsd b/schemas/prs_pidf_omapres-v1_0.xsd
new file mode 100644
index 0000000..67f205a
--- /dev/null
+++ b/schemas/prs_pidf_omapres-v1_0.xsd
@@ -0,0 +1,214 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ PIDF OMA Extensions
+ version - 1.0
+ date - 27 Jun 2008
+
+ FILE INFORMATION
+
+ OMA Permanent Document
+ File: OMA-SUP-XSD_prs_pidf_omapres-V1_0_2-20080627-A
+ Type: Text - Schema Description
+
+ Public Reachable Information
+ Path: http://www.openmobilealliance.org/tech/profiles
+ Name: prs_pidf_omapres-v1_0.xsd
+
+ NORMATIVE INFORMATION
+
+ Information about this file can be found in the specification
+ OMA-TS-Presence_SIMPLE_XDM-V1_1
+ available at http://www.openmobilealliance.org/
+
+ Send comments to technical-comments@mail.openmobilealliance.org
+
+ LEGAL DISCLAIMER
+
+ Use of this document is subject to all of the terms and conditions
+ of the Use Agreement located at
+ http://www.openmobilealliance.org/UseAgreement.html
+
+ You may use this document or any part of the document for internal
+ or educational purposes only, provided you do not modify, edit or
+ take out of context the information in this document in any manner.
+ Information contained in this document may be used, at your sole
+ risk, for any purposes.
+
+ You may not use this document in any other manner without the prior
+ written permission of the Open Mobile Alliance. The Open Mobile
+ Alliance authorizes you to copy this document, provided that you
+ retain all copyright and other proprietary notices contained in the
+ original materials on any copies of the materials and that you
+ comply strictly with these terms. This copyright permission does
+ not constitute an endorsement of the products or services. The
+ Open Mobile Alliance assumes no responsibility for errors or
+ omissions in this document.
+
+ Each Open Mobile Alliance member has agreed to use reasonable
+ endeavors to inform the Open Mobile Alliance in a timely manner of
+ Essential IPR as it becomes aware that the Essential IPR is related
+ to the prepared or published specification. However, the members
+ do not have an obligation to conduct IPR searches. The declared
+ Essential IPR is publicly available to members and non-members of
+ the Open Mobile Alliance and may be found on the "OMA IPR
+ Declarations" list at http://www.openmobilealliance.org/ipr.html.
+ The Open Mobile Alliance has not conducted an independent IPR review
+ of this document and the information contained herein, and makes no
+ representations or warranties regarding third party IPR, including
+ without limitation patents, copyrights or trade secret rights. This
+ document may contain inventions for which you must obtain licenses
+ from third parties before making, using or selling the inventions.
+ Defined terms above are set forth in the schedule to the Open Mobile
+ Alliance Application Form.
+
+ NO REPRESENTATIONS OR WARRANTIES (WHETHER EXPRESS OR IMPLIED) ARE
+ MADE BY THE OPEN MOBILE ALLIANCE OR ANY OPEN MOBILE ALLIANCE MEMBER
+ OR ITS AFFILIATES REGARDING ANY OF THE IPR'S REPRESENTED ON THE "OMA
+ IPR DECLARATIONS" LIST, INCLUDING, BUT NOT LIMITED TO THE ACCURACY,
+ COMPLETENESS, VALIDITY OR RELEVANCE OF THE INFORMATION OR WHETHER OR
+ NOT SUCH RIGHTS ARE ESSENTIAL OR NON-ESSENTIAL.
+
+ THE OPEN MOBILE ALLIANCE IS NOT LIABLE FOR AND HEREBY DISCLAIMS ANY
+ DIRECT, INDIRECT, PUNITIVE, SPECIAL, INCIDENTAL, CONSEQUENTIAL, OR
+ EXEMPLARY DAMAGES ARISING OUT OF OR IN CONNECTION WITH THE USE OF
+ DOCUMENTS AND THE INFORMATION CONTAINED IN THE DOCUMENTS.
+
+ Copyright 2008 Open Mobile Alliance Ltd. All Rights Reserved.
+ Used with the permission of the Open Mobile Alliance Ltd. under the
+ terms set forth above.
+-->
+
+<xs:schema targetNamespace="urn:oma:xml:prs:pidf:oma-pres"
+ xmlns="urn:oma:xml:prs:pidf:oma-pres"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified">
+
+ <!-- This import brings in the XML language attribute xml:lang-->
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd"/>
+
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ XML Schema definition for OMA extensions to PIDF and Presence Data Model
+ </xs:documentation>
+ </xs:annotation>
+
+
+ <!-- Global Type definitions -->
+ <xs:simpleType name="basicType">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="open"/>
+ <xs:enumeration value="closed"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:complexType name="emptyType"/>
+
+ <xs:simpleType name="registrationType">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="active"/>
+ <xs:enumeration value="terminated"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:simpleType name="barringType">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="active"/>
+ <xs:enumeration value="terminated"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+
+ <!-- OMA extensions to PIDF tuple element -->
+ <xs:element name="service-description">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="service-id" type="xs:token"/>
+ <xs:element name="version" type="xs:token"/>
+ <xs:element name="description" type="xs:token" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute processContents="lax"/>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="willingness">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="basic" type="basicType" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute processContents="lax"/>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="session-participation">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="basic" type="basicType" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute processContents="lax"/>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="registration-state">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="registrationType">
+ <xs:anyAttribute processContents="lax"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="barring-state">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="barringType">
+ <xs:anyAttribute processContents="lax"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+
+
+ <!-- OMA extensions to PDM person element -->
+ <xs:element name="overriding-willingness">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="basic" type="basicType" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute processContents="lax"/>
+ </xs:complexType>
+ </xs:element>
+
+
+ <!-- OMA extensions to PDM device element -->
+
+ <xs:element name="network-availability">
+ <xs:complexType>
+ <xs:sequence>
+
+ <xs:element name="network" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="active" type="emptyType" minOccurs="0"/>
+ <xs:element name="terminated" type="emptyType" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="id" type="xs:token" use="required"/>
+ <xs:anyAttribute processContents="lax"/>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:anyAttribute processContents="lax"/>
+ </xs:complexType>
+ </xs:element>
+
+</xs:schema>
+
diff --git a/schemas/prs_presRules-v1_0.xsd b/schemas/prs_presRules-v1_0.xsd
new file mode 100644
index 0000000..01d85e0
--- /dev/null
+++ b/schemas/prs_presRules-v1_0.xsd
@@ -0,0 +1,108 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ PRS - Pres rules
+ version - 1.1
+ date - 27 Jun 2008
+
+ FILE INFORMATION
+
+ OMA Permanent Document
+ File: OMA-SUP-XSD_prs_presrules-V1_0_1-20080627-A
+ Type: Text - Schema Description
+
+ Public Reachable Information
+ Path: http://www.openmobilealliance.org/tech/profiles
+ Name: prs_presrules-v1_0.xsd
+
+ NORMATIVE INFORMATION
+
+ Information about this file can be found in the specification
+ OMA-TS-Presence_SIMPLE_XDM-V1_1
+ available at http://www.openmobilealliance.org/
+
+ Send comments to technical-comments@mail.openmobilealliance.org
+
+ LEGAL DISCLAIMER
+
+ Use of this document is subject to all of the terms and conditions
+ of the Use Agreement located at
+ http://www.openmobilealliance.org/UseAgreement.html
+
+ You may use this document or any part of the document for internal
+ or educational purposes only, provided you do not modify, edit or
+ take out of context the information in this document in any manner.
+ Information contained in this document may be used, at your sole
+ risk, for any purposes.
+
+ You may not use this document in any other manner without the prior
+ written permission of the Open Mobile Alliance. The Open Mobile
+ Alliance authorizes you to copy this document, provided that you
+ retain all copyright and other proprietary notices contained in the
+ original materials on any copies of the materials and that you
+ comply strictly with these terms. This copyright permission does
+ not constitute an endorsement of the products or services. The
+ Open Mobile Alliance assumes no responsibility for errors or
+ omissions in this document.
+
+ Each Open Mobile Alliance member has agreed to use reasonable
+ endeavors to inform the Open Mobile Alliance in a timely manner of
+ Essential IPR as it becomes aware that the Essential IPR is related
+ to the prepared or published specification. However, the members
+ do not have an obligation to conduct IPR searches. The declared
+ Essential IPR is publicly available to members and non-members of
+ the Open Mobile Alliance and may be found on the "OMA IPR
+ Declarations" list at http://www.openmobilealliance.org/ipr.html.
+ The Open Mobile Alliance has not conducted an independent IPR review
+ of this document and the information contained herein, and makes no
+ representations or warranties regarding third party IPR, including
+ without limitation patents, copyrights or trade secret rights. This
+ document may contain inventions for which you must obtain licenses
+ from third parties before making, using or selling the inventions.
+ Defined terms above are set forth in the schedule to the Open Mobile
+ Alliance Application Form.
+
+ NO REPRESENTATIONS OR WARRANTIES (WHETHER EXPRESS OR IMPLIED) ARE
+ MADE BY THE OPEN MOBILE ALLIANCE OR ANY OPEN MOBILE ALLIANCE MEMBER
+ OR ITS AFFILIATES REGARDING ANY OF THE IPR'S REPRESENTED ON THE "OMA
+ IPR DECLARATIONS" LIST, INCLUDING, BUT NOT LIMITED TO THE ACCURACY,
+ COMPLETENESS, VALIDITY OR RELEVANCE OF THE INFORMATION OR WHETHER OR
+ NOT SUCH RIGHTS ARE ESSENTIAL OR NON-ESSENTIAL.
+
+ THE OPEN MOBILE ALLIANCE IS NOT LIABLE FOR AND HEREBY DISCLAIMS ANY
+ DIRECT, INDIRECT, PUNITIVE, SPECIAL, INCIDENTAL, CONSEQUENTIAL, OR
+ EXEMPLARY DAMAGES ARISING OUT OF OR IN CONNECTION WITH THE USE OF
+ DOCUMENTS AND THE INFORMATION CONTAINED IN THE DOCUMENTS.
+
+ Copyright 2008 Open Mobile Alliance Ltd. All Rights Reserved.
+ Used with the permission of the Open Mobile Alliance Ltd. under the
+ terms set forth above.
+-->
+
+<xs:schema targetNamespace="urn:oma:xml:prs:pres-rules"
+ xmlns="urn:oma:xml:prs:pres-rules"
+ xmlns:pr="urn:ietf:params:xml:ns:pres-rules"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified" attributeFormDefault="unqualified">
+
+ <!-- This import brings in the IETF presence authorization rules -->
+ <xs:import namespace="urn:ietf:params:xml:ns:pres-rules"/>
+
+ <!-- OMA specific "transformations" child elements -->
+ <xs:element name="provide-willingness" type="pr:booleanPermission" />
+ <xs:element name="provide-network-availability" type="pr:booleanPermission" />
+ <xs:element name="provide-session-participation" type="pr:booleanPermission" />
+ <xs:element name="provide-registration-state" type="pr:booleanPermission"/>
+ <xs:element name="provide-barring-state" type="pr:booleanPermission"/>
+ <xs:element name="provide-geopriv">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="false"/>
+ <xs:enumeration value="full"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+
+ <xs:element name="service-id" type="xs:string"/>
+
+</xs:schema>
diff --git a/schemas/reginfo.xsd b/schemas/reginfo.xsd
new file mode 100644
index 0000000..748d1fe
--- /dev/null
+++ b/schemas/reginfo.xsd
@@ -0,0 +1,107 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema targetNamespace="urn:ietf:params:xml:ns:reginfo"
+xmlns:tns="urn:ietf:params:xml:ns:reginfo"
+xmlns:xs="http://www.w3.org/2001/XMLSchema"
+elementFormDefault="qualified" attributeFormDefault="unqualified">
+ <!-- This import brings in the XML language attribute xml:lang-->
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace"
+schemaLocation="http://www.w3.org/2001/03/xml.xsd"/>
+ <xs:element name="reginfo">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="tns:registration" minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="version" type="xs:nonNegativeInteger"
+ use="required"/>
+ <xs:attribute name="state" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="full"/>
+ <xs:enumeration value="partial"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="registration">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="tns:contact" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="aor" type="xs:anyURI" use="required"/>
+ <xs:attribute name="id" type="xs:string" use="required"/>
+ <xs:attribute name="state" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="init"/>
+ <xs:enumeration value="active"/>
+ <xs:enumeration value="terminated"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="contact">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="uri" type="xs:anyURI"/>
+ <xs:element name="display-name" minOccurs="0">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute ref="xml:lang" use="optional"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="unknown-param" minOccurs="0"
+ maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="name" type="xs:string" use="required"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="state" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="active"/>
+ <xs:enumeration value="terminated"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="event" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="registered"/>
+ <xs:enumeration value="created"/>
+ <xs:enumeration value="refreshed"/>
+ <xs:enumeration value="shortened"/>
+ <xs:enumeration value="expired"/>
+ <xs:enumeration value="deactivated"/>
+ <xs:enumeration value="probation"/>
+ <xs:enumeration value="unregistered"/>
+ <xs:enumeration value="rejected"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="duration-registered" type="xs:unsignedLong"/>
+ <xs:attribute name="expires" type="xs:unsignedLong"/>
+ <xs:attribute name="retry-after" type="xs:unsignedLong"/>
+ <xs:attribute name="id" type="xs:string" use="required"/>
+ <xs:attribute name="q" type="xs:string"/>
+ <xs:attribute name="callid" type="xs:string"/>
+ <xs:attribute name="cseq" type="xs:unsignedLong"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/schemas/resource-lists-diff.xml b/schemas/resource-lists-diff.xml
new file mode 100644
index 0000000..6cd7044
--- /dev/null
+++ b/schemas/resource-lists-diff.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+ <xs:schema
+ targetNamespace="urn:ietf:params:xml:ns:resource-lists"
+ xmlns="urn:ietf:params:xml:ns:resource-lists"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified">
+
+ <!-- include patch-ops type definitions -->
+ <xs:include
+ schemaLocation="urn:ietf:params:xml:schema:patch-ops"/>
+
+ <!-- partial updates -->
+ <xs:element name="resource-lists-diff">
+ <xs:sequence minOccurs="0" maxOccurs="unbounded">
+ <xs:choice>
+ <xs:element name="add">
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="add">
+ <xs:anyAttribute processContents="lax"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="remove">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="remove">
+ <xs:anyAttribute processContents="lax"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="replace">
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="replace">
+ <xs:anyAttribute processContents="lax"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:any namespace="##other" processContents="lax"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:anyAttribute processContents="lax"/>
+ </xs:element>
+ </xs:schema>
diff --git a/schemas/resource-lists.xml b/schemas/resource-lists.xml
new file mode 100644
index 0000000..3442ef6
--- /dev/null
+++ b/schemas/resource-lists.xml
@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns="urn:ietf:params:xml:ns:resource-lists" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:ietf:params:xml:ns:resource-lists" elementFormDefault="qualified" attributeFormDefault="unqualified">
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd"/>
+ <xs:complexType name="listType">
+ <xs:sequence>
+ <xs:element name="display-name" type="display-nameType" minOccurs="0"/>
+ <xs:sequence minOccurs="0" maxOccurs="unbounded">
+ <xs:choice>
+ <xs:element name="list">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="listType"/>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="external" type="externalType"/>
+ <xs:element name="entry" type="entryType"/>
+ <xs:element name="entry-ref" type="entry-refType"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="name" type="xs:string" use="optional"/>
+ <xs:anyAttribute namespace="##other"/>
+ </xs:complexType>
+ <xs:complexType name="entryType">
+ <xs:sequence>
+ <xs:element name="display-name" minOccurs="0">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="display-nameType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="uri" type="xs:anyURI" use="required"/>
+ <xs:anyAttribute namespace="##other"/>
+ </xs:complexType>
+ <xs:complexType name="entry-refType">
+ <xs:sequence>
+ <xs:element name="display-name" type="display-nameType" minOccurs="0"/>
+ <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="ref" type="xs:anyURI" use="required"/>
+ <xs:anyAttribute namespace="##other"/>
+ </xs:complexType>
+ <xs:complexType name="externalType">
+ <xs:sequence>
+ <xs:element name="display-name" type="display-nameType" minOccurs="0"/>
+ <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="anchor" type="xs:anyURI"/>
+ <xs:anyAttribute namespace="##other"/>
+ </xs:complexType>
+ <xs:element name="resource-lists">
+ <xs:complexType>
+ <xs:sequence maxOccurs="unbounded">
+ <xs:element name="list" type="listType"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:complexType name="display-nameType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute ref="xml:lang"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+</xs:schema>
diff --git a/schemas/resource-lists.xsd b/schemas/resource-lists.xsd
new file mode 100644
index 0000000..e7c690f
--- /dev/null
+++ b/schemas/resource-lists.xsd
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Extracted from RFC 4826
+http://www.rfc-editor.org/rfc/rfc4826.txt
+-->
+<xs:schema targetNamespace="urn:ietf:params:xml:ns:resource-lists"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ xmlns="urn:ietf:params:xml:ns:resource-lists"
+ elementFormDefault="qualified" attributeFormDefault="unqualified">
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace"
+ schemaLocation="http://www.w3.org/2001/xml.xsd"/>
+ <xs:complexType name="listType">
+ <xs:sequence>
+ <xs:element name="display-name" type="display-nameType"
+ minOccurs="0"/>
+ <xs:sequence minOccurs="0" maxOccurs="unbounded">
+ <xs:choice>
+ <xs:element name="list">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="listType"/>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="external" type="externalType"/>
+ <xs:element name="entry" type="entryType"/>
+ <xs:element name="entry-ref" type="entry-refType"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="name" type="xs:string" use="optional"/>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+ <xs:complexType name="entryType">
+ <xs:sequence>
+ <xs:element name="display-name" minOccurs="0">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="display-nameType"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="uri" type="xs:anyURI" use="required"/>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+ <xs:complexType name="entry-refType">
+ <xs:sequence>
+ <xs:element name="display-name" type="display-nameType"
+ minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="ref" type="xs:anyURI" use="required"/>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+ <xs:complexType name="externalType">
+ <xs:sequence>
+ <xs:element name="display-name" type="display-nameType"
+ minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="anchor" type="xs:anyURI"/>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+ <xs:element name="resource-lists">
+ <xs:complexType>
+ <xs:sequence minOccurs="0" maxOccurs="unbounded">
+ <xs:element name="list" type="listType"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:complexType name="display-nameType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute ref="xml:lang"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+</xs:schema> \ No newline at end of file
diff --git a/schemas/rgp-1.0.xml b/schemas/rgp-1.0.xml
new file mode 100644
index 0000000..5251666
--- /dev/null
+++ b/schemas/rgp-1.0.xml
@@ -0,0 +1,131 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+ <schema targetNamespace="urn:ietf:params:xml:ns:rgp-1.0"
+ xmlns:rgp="urn:ietf:params:xml:ns:rgp-1.0"
+ xmlns="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified">
+
+ <annotation>
+ <documentation>
+ Extensible Provisioning Protocol v1.0
+ domain name extension schema for registry grace period
+ processing.
+ </documentation>
+ </annotation>
+
+ <!--
+ Child elements found in EPP commands.
+ -->
+ <element name="update" type="rgp:updateType"/>
+
+ <!--
+ Child elements of the <update> command for the
+ redemption grace period.
+ -->
+ <complexType name="updateType">
+ <sequence>
+ <element name="restore" type="rgp:restoreType"/>
+ </sequence>
+ </complexType>
+
+ <complexType name="restoreType">
+ <sequence>
+ <element name="report" type="rgp:reportType"
+ minOccurs="0"/>
+ </sequence>
+ <attribute name="op" type="rgp:rgpOpType" use="required"/>
+ </complexType>
+
+ <!--
+ New redemption grace period operations can be defined
+ by adding to this enumeration.
+ -->
+ <simpleType name="rgpOpType">
+ <restriction base="token">
+ <enumeration value="request"/>
+ <enumeration value="report"/>
+ </restriction>
+ </simpleType>
+
+ <complexType name="reportType">
+ <sequence>
+ <element name="preData" type="rgp:mixedType"/>
+ <element name="postData" type="rgp:mixedType"/>
+ <element name="delTime" type="dateTime"/>
+ <element name="resTime" type="dateTime"/>
+ <element name="resReason" type="rgp:reportTextType"/>
+ <element name="statement" type="rgp:reportTextType"
+ maxOccurs="2"/>
+ <element name="other" type="rgp:mixedType"
+ minOccurs="0"/>
+ </sequence>
+ </complexType>
+
+ <complexType name="mixedType">
+ <complexContent mixed="true">
+ <restriction base="anyType">
+ <sequence>
+ <any processContents="lax"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ </restriction>
+ </complexContent>
+ </complexType>
+
+ <complexType name="reportTextType">
+ <complexContent mixed="true">
+ <restriction base="anyType">
+ <sequence>
+ <any processContents="lax"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="lang" type="language" default="en"/>
+ </restriction>
+ </complexContent>
+ </complexType>
+
+ <!--
+ Child response elements.
+ -->
+ <element name="infData" type="rgp:respDataType"/>
+ <element name="upData" type="rgp:respDataType"/>
+ <!--
+ <Response elements.
+ -->
+ <complexType name="respDataType">
+ <sequence>
+ <element name="rgpStatus" type="rgp:statusType"/>
+ </sequence>
+ </complexType>
+
+ <!--
+ Status is a combination of attributes and an optional
+ human-readable message that may be expressed in languages
+ other than English.
+ -->
+ <complexType name="statusType">
+ <simpleContent>
+ <extension base="normalizedString">
+ <attribute name="s" type="rgp:statusValueType"
+ use="required"/>
+ <attribute name="lang" type="language" default="en"/>
+ </extension>
+ </simpleContent>
+ </complexType>
+
+ <simpleType name="statusValueType">
+ <restriction base="token">
+ <enumeration value="addPeriod"/>
+ <enumeration value="autoRenewPeriod"/>
+ <enumeration value="renewPeriod"/>
+ <enumeration value="transferPeriod"/>
+ <enumeration value="pendingDelete"/>
+ <enumeration value="pendingRestore"/>
+ <enumeration value="redemptionPeriod"/>
+ </restriction>
+ </simpleType>
+
+ <!--
+ End of schema.
+ -->
+ </schema> \ No newline at end of file
diff --git a/schemas/rls-services.xsd b/schemas/rls-services.xsd
new file mode 100644
index 0000000..23bb033
--- /dev/null
+++ b/schemas/rls-services.xsd
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="urn:ietf:params:xml:ns:rls-services" xmlns:rl="urn:ietf:params:xml:ns:resource-lists" targetNamespace="urn:ietf:params:xml:ns:rls-services" elementFormDefault="qualified" attributeFormDefault="unqualified">
+ <xs:element name="rls-services">
+ <xs:complexType>
+ <xs:sequence minOccurs="0" maxOccurs="unbounded">
+ <xs:element name="service" type="serviceType"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:complexType name="serviceType">
+ <xs:sequence>
+ <xs:choice>
+ <xs:element name="resource-list" type="xs:anyURI"/>
+ <xs:element name="list" type="rl:listType"/>
+ </xs:choice>
+ <xs:element name="packages" type="packagesType" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="uri" type="xs:anyURI" use="required"/>
+ <xs:anyAttribute namespace="##other"/>
+ </xs:complexType>
+ <xs:complexType name="packagesType">
+ <xs:sequence minOccurs="0" maxOccurs="unbounded">
+ <xs:element name="package" type="packageType"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:simpleType name="packageType">
+ <xs:restriction base="xs:string"/>
+ </xs:simpleType>
+</xs:schema>
diff --git a/schemas/rpid.xsd b/schemas/rpid.xsd
new file mode 100644
index 0000000..16bcb38
--- /dev/null
+++ b/schemas/rpid.xsd
@@ -0,0 +1,507 @@
+<?xml version="1.0" encoding="UTF-8"?>
+ <xs:schema targetNamespace="urn:ietf:params:xml:ns:pidf:rpid"
+ xmlns="urn:ietf:params:xml:ns:pidf:rpid"
+ xmlns:dm="urn:ietf:params:xml:ns:pidf:data-model"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified">
+
+ <xs:include schemaLocation="common-schema.xsd"/>
+
+ <xs:simpleType name="activeIdle">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="active"/>
+ <xs:enumeration value="idle"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:element name="activities">
+ <xs:annotation>
+ <xs:documentation>
+ Describes what the person is currently doing, expressed as
+ an enumeration of activity-describing elements. A person
+ can be engaged in multiple activities at the same time,
+ e.g., traveling and having a meal.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="note" type="Note_t" minOccurs="0"/>
+ <xs:choice>
+ <xs:element name="unknown" type="empty" minOccurs="0"/>
+ <xs:sequence maxOccurs="unbounded">
+ <xs:choice>
+ <xs:element name="appointment"
+ type="empty" />
+ <xs:element name="away"
+ type="empty" />
+ <xs:element name="breakfast"
+ type="empty" />
+ <xs:element name="busy"
+ type="empty" />
+ <xs:element name="dinner"
+ type="empty" />
+ <xs:element name="holiday"
+ type="empty" />
+ <xs:element name="in-transit"
+ type="empty" />
+ <xs:element name="looking-for-work"
+ type="empty" />
+ <xs:element name="meal"
+ type="empty" />
+ <xs:element name="meeting"
+ type="empty" />
+ <xs:element name="on-the-phone"
+ type="empty" />
+ <xs:element name="performance"
+ type="empty" />
+ <xs:element name="permanent-absence"
+ type="empty" />
+ <xs:element name="playing"
+ type="empty" />
+ <xs:element name="presentation"
+ type="empty" />
+ <xs:element name="shopping"
+ type="empty" />
+ <xs:element name="sleeping"
+ type="empty" />
+ <xs:element name="spectator"
+ type="empty" />
+ <xs:element name="steering"
+ type="empty" />
+ <xs:element name="travel"
+ type="empty" />
+ <xs:element name="tv"
+ type="empty" />
+ <xs:element name="vacation"
+ type="empty" />
+ <xs:element name="working"
+ type="empty" />
+ <xs:element name="worship"
+ type="empty" />
+ <xs:element name="other"
+ type="Note_t" />
+ <xs:any namespace="##other"
+ maxOccurs="unbounded" processContents="lax"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="fromUntil"/>
+ <xs:attribute name="id" type="xs:ID"/>
+ <xs:anyAttribute namespace="##any" processContents="lax"/>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="class" type="xs:token">
+ <xs:annotation>
+ <xs:documentation>
+ Describes the class of the service, device or person.
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element name="mood">
+ <xs:annotation>
+ <xs:documentation>
+ Describes the mood of the presentity.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="note" type="Note_t" minOccurs="0"/>
+ <xs:choice>
+ <xs:element name="unknown" type="empty"/>
+ <xs:sequence maxOccurs="unbounded">
+ <xs:choice>
+ <xs:element name="afraid"
+ type="empty"/>
+ <xs:element name="amazed"
+ type="empty"/>
+ <xs:element name="angry"
+ type="empty"/>
+ <xs:element name="annoyed"
+ type="empty"/>
+ <xs:element name="anxious"
+ type="empty" />
+ <xs:element name="ashamed"
+ type="empty" />
+ <xs:element name="bored"
+ type="empty" />
+ <xs:element name="brave"
+ type="empty" />
+ <xs:element name="calm"
+ type="empty" />
+ <xs:element name="cold"
+ type="empty" />
+ <xs:element name="confused"
+ type="empty" />
+ <xs:element name="contented"
+ type="empty" />
+ <xs:element name="cranky"
+ type="empty" />
+ <xs:element name="curious"
+ type="empty" />
+ <xs:element name="depressed"
+ type="empty" />
+ <xs:element name="disappointed"
+ type="empty" />
+ <xs:element name="disgusted"
+ type="empty" />
+ <xs:element name="distracted"
+ type="empty" />
+ <xs:element name="embarrassed"
+ type="empty" />
+ <xs:element name="excited"
+ type="empty" />
+ <xs:element name="flirtatious"
+ type="empty" />
+ <xs:element name="frustrated"
+ type="empty" />
+ <xs:element name="grumpy"
+ type="empty" />
+ <xs:element name="guilty"
+ type="empty" />
+ <xs:element name="happy"
+ type="empty" />
+ <xs:element name="hot"
+ type="empty" />
+ <xs:element name="humbled"
+ type="empty" />
+ <xs:element name="humiliated"
+ type="empty" />
+ <xs:element name="hungry"
+ type="empty" />
+ <xs:element name="hurt"
+ type="empty" />
+ <xs:element name="impressed"
+ type="empty" />
+ <xs:element name="in_awe"
+ type="empty" />
+ <xs:element name="in_love"
+ type="empty" />
+ <xs:element name="indignant"
+ type="empty" />
+ <xs:element name="interested"
+ type="empty" />
+ <xs:element name="invincible"
+ type="empty" />
+ <xs:element name="jealous"
+ type="empty" />
+ <xs:element name="lonely"
+ type="empty" />
+ <xs:element name="mean"
+ type="empty" />
+ <xs:element name="moody"
+ type="empty" />
+ <xs:element name="nervous"
+ type="empty" />
+ <xs:element name="neutral"
+ type="empty" />
+ <xs:element name="offended"
+ type="empty" />
+ <xs:element name="playful"
+ type="empty" />
+ <xs:element name="proud"
+ type="empty" />
+ <xs:element name="relieved"
+ type="empty" />
+ <xs:element name="remorseful"
+ type="empty" />
+ <xs:element name="restless"
+ type="empty" />
+ <xs:element name="sad"
+ type="empty" />
+ <xs:element name="sarcastic"
+ type="empty" />
+ <xs:element name="serious"
+ type="empty" />
+ <xs:element name="shocked"
+ type="empty" />
+ <xs:element name="shy"
+ type="empty" />
+ <xs:element name="sick"
+ type="empty" />
+ <xs:element name="sleepy"
+ type="empty" />
+ <xs:element name="stressed"
+ type="empty" />
+ <xs:element name="surprised"
+ type="empty" />
+ <xs:element name="thirsty"
+ type="empty" />
+ <xs:element name="worried"
+ type="empty" />
+ <xs:element name="other"
+ type="Note_t" />
+ <xs:any namespace="##other"
+ maxOccurs="unbounded" processContents="lax"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="fromUntil"/>
+ <xs:attribute name="id" type="xs:ID"/>
+ <xs:anyAttribute namespace="##any" processContents="lax"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="place-is">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="note" type="Note_t" minOccurs="0"/>
+ <xs:element name="audio" minOccurs="0">
+ <xs:complexType>
+ <xs:choice>
+ <xs:element name="noisy" type="empty" />
+ <xs:element name="ok" type="empty" />
+ <xs:element name="quiet" type="empty" />
+ <xs:element name="unknown" type="empty" />
+ </xs:choice>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="video" minOccurs="0">
+ <xs:complexType>
+ <xs:choice>
+ <xs:element name="toobright" type="empty" />
+ <xs:element name="ok" type="empty" />
+ <xs:element name="dark" type="empty" />
+ <xs:element name="unknown" type="empty" />
+ </xs:choice>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="text" minOccurs="0">
+ <xs:complexType>
+ <xs:choice>
+ <xs:element name="uncomfortable" type="empty" />
+ <xs:element name="inappropriate" type="empty" />
+ <xs:element name="ok" type="empty" />
+ <xs:element name="unknown" type="empty" />
+ </xs:choice>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ <xs:attributeGroup ref="fromUntil"/>
+ <xs:attribute name="id" type="xs:ID"/>
+ <xs:anyAttribute namespace="##any" processContents="lax"/>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="place-type">
+ <xs:annotation>
+ <xs:documentation>
+ Describes the type of place the person is currently at.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="note" type="Note_t" minOccurs="0"/>
+ <xs:choice>
+ <xs:element name="aircraft" type="empty" />
+ <xs:element name="airport" type="empty" />
+ <xs:element name="arena" type="empty" />
+ <xs:element name="automobile" type="empty" />
+ <xs:element name="bank" type="empty" />
+ <xs:element name="bar" type="empty" />
+ <xs:element name="bus" type="empty" />
+ <xs:element name="bus-station" type="empty" />
+ <xs:element name="cafe" type="empty" />
+ <xs:element name="classroom" type="empty" />
+ <xs:element name="club" type="empty" />
+ <xs:element name="construction" type="empty" />
+ <xs:element name="convention-center" type="empty" />
+ <xs:element name="cycle" type="empty" />
+ <xs:element name="government" type="empty" />
+ <xs:element name="hospital" type="empty" />
+ <xs:element name="hotel" type="empty" />
+ <xs:element name="industrial" type="empty" />
+ <xs:element name="library" type="empty" />
+ <xs:element name="office" type="empty" />
+ <xs:element name="outdoors" type="empty" />
+ <xs:element name="parking" type="empty" />
+ <xs:element name="place-of-worship" type="empty" />
+ <xs:element name="prison" type="empty" />
+ <xs:element name="public" type="empty" />
+ <xs:element name="public-transport" type="empty" />
+ <xs:element name="residence" type="empty" />
+ <xs:element name="restaurant" type="empty" />
+ <xs:element name="school" type="empty" />
+ <xs:element name="shopping-area" type="empty" />
+ <xs:element name="stadium" type="empty" />
+ <xs:element name="store" type="empty" />
+ <xs:element name="street" type="empty" />
+ <xs:element name="theater" type="empty" />
+ <xs:element name="train" type="empty" />
+ <xs:element name="train-station" type="empty" />
+ <xs:element name="truck" type="empty" />
+ <xs:element name="underway" type="empty" />
+ <xs:element name="unknown" type="empty" />
+ <xs:element name="warehouse" type="empty" />
+ <xs:element name="water" type="empty" />
+ <xs:element name="watercraft" type="empty" />
+ <xs:element name="other" type="Note_t"/>
+ <xs:any namespace="##other" maxOccurs="unbounded"
+ processContents="lax"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="fromUntil"/>
+ <xs:attribute name="id" type="xs:ID"/>
+ <xs:anyAttribute namespace="##any" processContents="lax"/>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="privacy">
+ <xs:annotation>
+ <xs:documentation>
+ Indicates which type of communication third parties in the
+ vicinity of the presentity are unlikely to be able to
+ intercept accidentally or intentionally.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="note" type="Note_t" minOccurs="0"/>
+ <xs:choice>
+ <xs:element name="unknown" type="empty"/>
+ <xs:sequence minOccurs="1">
+ <xs:element name="audio" type="empty" minOccurs="0"/>
+ <xs:element name="text" type="empty" minOccurs="0"/>
+ <xs:element name="video" type="empty" minOccurs="0"/>
+ <xs:any namespace="##other" minOccurs="0"
+ maxOccurs="unbounded" processContents="lax"/>
+ </xs:sequence>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="fromUntil"/>
+ <xs:attribute name="id" type="xs:ID"/>
+ <xs:anyAttribute namespace="##any" processContents="lax"/>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="relationship">
+ <xs:annotation>
+ <xs:documentation>
+ Designates the type of relationship an alternate contact
+ has with the presentity.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="note" type="Note_t" minOccurs="0"/>
+ <xs:choice>
+ <xs:element name="assistant" type="empty" />
+ <xs:element name="associate" type="empty" />
+ <xs:element name="family" type="empty" />
+ <xs:element name="friend" type="empty" />
+ <xs:element name="other" type="Note_t" minOccurs="0" />
+ <xs:element name="self" type="empty" />
+ <xs:element name="supervisor" type="empty" />
+ <xs:element name="unknown" type="empty" />
+ <xs:any namespace="##other" maxOccurs="unbounded"
+ processContents="lax"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="service-class">
+ <xs:annotation>
+ <xs:documentation>
+ Designates the type of service offered.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="note" type="Note_t" minOccurs="0"/>
+ <xs:choice>
+ <xs:element name="courier" type="empty" />
+ <xs:element name="electronic" type="empty" />
+ <xs:element name="freight" type="empty" />
+ <xs:element name="in-person" type="empty" />
+ <xs:element name="postal" type="empty" />
+ <xs:element name="unknown" type="empty" />
+ <xs:any namespace="##other" maxOccurs="unbounded"
+ processContents="lax"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="sphere">
+ <xs:annotation>
+ <xs:documentation>
+ Designates the current state and role that the person plays.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0">
+ <xs:element name="home" type="empty" />
+ <xs:element name="work" type="empty" />
+ <xs:element name="unknown" type="empty" />
+ <xs:any namespace="##other" maxOccurs="unbounded"
+ processContents="lax"/>
+ </xs:choice>
+ <xs:attributeGroup ref="fromUntil"/>
+ <xs:attribute name="id" type="xs:ID"/>
+ <xs:anyAttribute namespace="##any" processContents="lax"/>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="status-icon">
+ <xs:annotation>
+ <xs:documentation>
+ A URI pointing to an image (icon) representing the current
+ status of the person or service.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:anyURI">
+ <xs:attributeGroup ref="fromUntil"/>
+ <xs:attribute name="id" type="xs:ID"/>
+ <xs:anyAttribute namespace="##any" processContents="lax"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="time-offset">
+ <xs:annotation>
+ <xs:documentation>
+ Describes the number of minutes of offset from UTC at the
+ user's current location.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:integer">
+ <xs:attributeGroup ref="fromUntil"/>
+ <xs:attribute name="description"
+ type="xs:string"/>
+ <xs:attribute name="id" type="xs:ID"/>
+ <xs:anyAttribute namespace="##any" processContents="lax"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="user-input">
+ <xs:annotation>
+ <xs:documentation>
+ Records the user-input or usage state of the service or
+ device.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="activeIdle">
+ <xs:attribute name="idle-threshold"
+ type="xs:positiveInteger"/>
+ <xs:attribute name="last-input" type="xs:dateTime"/>
+ <xs:attribute name="id" type="xs:ID"/>
+ <xs:anyAttribute namespace="##any"
+ processContents="lax"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ </xs:schema>
diff --git a/schemas/secDNS-1.0.xml b/schemas/secDNS-1.0.xml
new file mode 100644
index 0000000..dc423e7
--- /dev/null
+++ b/schemas/secDNS-1.0.xml
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+ <schema targetNamespace="urn:ietf:params:xml:ns:secDNS-1.0"
+ xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.0"
+ xmlns="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified">
+
+ <annotation>
+ <documentation>
+ Extensible Provisioning Protocol v1.0
+ domain name extension schema for provisioning
+ DNS security (DNSSEC) extensions.
+ </documentation>
+ </annotation>
+
+ <!--
+ Child elements found in EPP commands.
+ -->
+ <element name="create" type="secDNS:dsType"/>
+ <element name="update" type="secDNS:updateType"/>
+
+ <!--
+ Child elements of the <create> command.
+ -->
+ <complexType name="dsType">
+ <sequence>
+ <element name="dsData" type="secDNS:dsDataType"
+ maxOccurs="unbounded"/>
+ </sequence>
+ </complexType>
+
+ <complexType name="dsDataType">
+ <sequence>
+ <element name="keyTag" type="unsignedShort"/>
+ <element name="alg" type="unsignedByte"/>
+ <element name="digestType" type="unsignedByte"/>
+ <element name="digest" type="hexBinary"/>
+ <element name="maxSigLife" type="secDNS:maxSigLifeType"
+ minOccurs="0"/>
+ <element name="keyData" type="secDNS:keyDataType"
+ minOccurs="0"/>
+ </sequence>
+ </complexType>
+
+ <simpleType name="maxSigLifeType">
+ <restriction base="int">
+ <minInclusive value="1"/>
+ </restriction>
+ </simpleType>
+
+ <complexType name="keyDataType">
+ <sequence>
+ <element name="flags" type="unsignedShort"/>
+ <element name="protocol" type="unsignedByte"/>
+ <element name="alg" type="unsignedByte"/>
+ <element name="pubKey" type="secDNS:keyType"/>
+ </sequence>
+ </complexType>
+
+ <simpleType name="keyType">
+ <restriction base="base64Binary">
+ <minLength value="1"/>
+ </restriction>
+ </simpleType>
+
+ <!--
+ Child elements of the <update> command.
+ -->
+ <complexType name="updateType">
+ <choice>
+ <element name="add" type="secDNS:dsType"/>
+ <element name="chg" type="secDNS:dsType"/>
+ <element name="rem" type="secDNS:remType"/>
+ </choice>
+ <attribute name="urgent" type="boolean" default="false"/>
+ </complexType>
+
+ <complexType name="remType">
+ <sequence>
+ <element name="keyTag" type="unsignedShort"
+ maxOccurs="unbounded"/>
+ </sequence>
+ </complexType>
+
+ <!--
+ Child response elements.
+ -->
+ <element name="infData" type="secDNS:dsType"/>
+
+ <!--
+ End of schema.
+ -->
+ </schema>
+
diff --git a/schemas/simple-filter.xml b/schemas/simple-filter.xml
new file mode 100644
index 0000000..6083be4
--- /dev/null
+++ b/schemas/simple-filter.xml
@@ -0,0 +1,86 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns="urn:ietf:params:xml:ns:simple-filter" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:ietf:params:xml:ns:simple-filter" elementFormDefault="qualified">
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd"/>
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ XML Schema Definition for Filter Criteria.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:element name="filter-set" type="FilterSetType"/>
+ <xs:complexType name="FilterSetType">
+ <xs:sequence>
+ <xs:element name="ns-bindings" type="NSBindings" minOccurs="0" maxOccurs="1"/>
+ <xs:element name="filter" type="FilterType" minOccurs="1" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="package" type="xs:string" use="optional"/>
+ </xs:complexType>
+ <xs:complexType name="NSBindings">
+ <xs:sequence>
+ <xs:element name="ns-binding" type="NSBinding" minOccurs="1" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="NSBinding">
+ <xs:attribute name="prefix" type="xs:string" use="required"/>
+ <xs:attribute name="urn" type="xs:anyURI" use="required"/>
+ </xs:complexType>
+ <xs:complexType name="FilterType">
+ <xs:sequence>
+ <xs:element name="what" type="WhatType" minOccurs="0" maxOccurs="1"/>
+ <xs:element name="trigger" type="TriggerType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="id" type="xs:string" use="required"/>
+ <xs:attribute name="uri" type="xs:anyURI" use="optional"/>
+ <xs:attribute name="domain" type="xs:string" use="optional"/>
+ <xs:attribute name="remove" type="xs:boolean" use="optional" default="false"/>
+ <xs:attribute name="enabled" type="xs:boolean" use="optional" default="true"/>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:complexType>
+ <xs:complexType name="WhatType">
+ <xs:sequence>
+ <xs:element name="include" type="InclType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="exclude" type="ExclType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="InclType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="type" type="TypeType" default="xpath" use="optional"/>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="ExclType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="type" type="TypeType" default="xpath" use="optional"/>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:simpleType name="TypeType">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="xpath"/>
+ <xs:enumeration value="namespace"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="TriggerType">
+ <xs:sequence>
+ <xs:element name="changed" type="ChangedType" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="added" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="removed" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="ChangedType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="from" type="xs:anySimpleType" use="optional"/>
+ <xs:attribute name="to" type="xs:anySimpleType" use="optional"/>
+ <xs:attribute name="by" type="xs:decimal" use="optional"/>
+ <xs:anyAttribute namespace="##other" processContents="lax"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+</xs:schema>
diff --git a/schemas/spirits-1.0.xml b/schemas/spirits-1.0.xml
new file mode 100644
index 0000000..58cecdc
--- /dev/null
+++ b/schemas/spirits-1.0.xml
@@ -0,0 +1,108 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema targetNamespace="urn:ietf:params:xml:ns:spirits-1.0"
+ xmlns:tns="urn:ietf:params:xml:ns:spirits-1.0"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified">
+
+ <!-- This import brings in the XML language attribute xml:lang-->
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace"
+ schemaLocation="http://www.w3.org/2001/xml.xsd"/>
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+ Describes SPIRITS events.
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:element name="spirits-event" type="tns:SpiritsEventType"/>
+
+ <xs:complexType name="SpiritsEventType">
+ <xs:sequence>
+ <xs:element name="Event" type="tns:EventType" minOccurs="1"
+ maxOccurs="unbounded"/>
+ <xs:any namespace="##other" processContents="lax"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:complexType name="EventType">
+ <xs:sequence>
+ <xs:element name="CalledPartyNumber" type="xs:token"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="CallingPartyNumber" type="xs:token"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="DialledDigits" type="xs:token"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="Cell-ID" type="xs:token"
+ minOccurs="0" maxOccurs="1"/>
+ <xs:element name="Cause" type="tns:CauseType"
+ minOccurs="0" maxOccurs="1"/>
+ </xs:sequence>
+ <xs:attribute name="type" type="tns:PayloadType"
+ use="required"/>
+ <xs:attribute name="name" type="tns:EventNameType"
+ use="required"/>
+ <xs:attribute name="mode" type="tns:ModeType"
+ use="optional" default="N"/>
+ </xs:complexType>
+
+ <xs:simpleType name="PayloadType">
+ <!-- The <spirits-event> will contain either a list of -->
+ <!-- INDPs events or a list of userprof events -->
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="INDPs"/>
+ <xs:enumeration value="userprof"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:simpleType name="EventNameType">
+ <xs:restriction base="xs:string">
+ <!-- These are the call related events (DPs). If the -->
+ <!-- PaylaodType is "INDPs", then the value of the "name" -->
+ <!-- attribute is one of these; example -->
+ <!-- <spirits-event type="INDPs" name="OCI"> -->
+ <xs:enumeration value="OAA"/>
+ <xs:enumeration value="OCI"/>
+ <xs:enumeration value="OAI"/>
+ <xs:enumeration value="OA"/>
+ <xs:enumeration value="OTS"/>
+ <xs:enumeration value="ONA"/>
+ <xs:enumeration value="OCPB"/>
+ <xs:enumeration value="ORSF"/>
+ <xs:enumeration value="OMC"/>
+ <xs:enumeration value="OAB"/>
+ <xs:enumeration value="OD"/>
+ <xs:enumeration value="TA"/>
+ <xs:enumeration value="TMC"/>
+ <xs:enumeration value="TAB"/>
+ <xs:enumeration value="TD"/>
+ <xs:enumeration value="TAA"/>
+ <xs:enumeration value="TFSA"/>
+ <xs:enumeration value="TB"/>
+ <!-- These are the non-call related events. If the -->
+ <!-- PayloadType is "user-prof", then the value of the -->
+ <!-- "name" attribute is one of these; example -->
+ <!-- <spirits-event type="userprof" name="LUDV"> -->
+ <xs:enumeration value="LUSV"/>
+ <xs:enumeration value="LUDV"/>
+ <xs:enumeration value="REG"/>
+ <xs:enumeration value="UNREGMS"/>
+ <xs:enumeration value="UNREGNTWK"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:simpleType name="ModeType">
+ <!-- One of two values: "N"otification or "R"equest -->
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="N"/>
+ <xs:enumeration value="R"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:simpleType name="CauseType">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="Busy"/>
+ <xs:enumeration value="Unreachable"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:schema> \ No newline at end of file
diff --git a/schemas/timed-status.xml b/schemas/timed-status.xml
new file mode 100644
index 0000000..293dc7f
--- /dev/null
+++ b/schemas/timed-status.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:ts="urn:ietf:params:xml:ns:pidf:timed-status" xmlns:pidf="urn:ietf:params:xml:ns:pidf" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:ietf:params:xml:ns:pidf:timed-status" elementFormDefault="qualified" attributeFormDefault="unqualified">
+ <xs:import namespace="urn:ietf:params:xml:ns:pidf" schemaLocation="pidf.xsd"/>
+ <xs:annotation>
+ <xs:documentation>
+ Describes timed-status tuple extensions for PIDF.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:element name="timed-status" type="ts:timed-status"/>
+ <xs:complexType name="timed-status">
+ <xs:sequence>
+ <xs:element name="basic" type="pidf:basic" minOccurs="0"/>
+ <xs:element name="note" type="pidf:note" minOccurs="0"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="from" type="xs:dateTime" use="required"/>
+ <xs:attribute name="until" type="xs:dateTime"/>
+ </xs:complexType>
+</xs:schema>
diff --git a/schemas/traceroute-1.0.xml b/schemas/traceroute-1.0.xml
new file mode 100644
index 0000000..5994e2c
--- /dev/null
+++ b/schemas/traceroute-1.0.xml
@@ -0,0 +1,659 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema elementFormDefault="qualified"
+ targetNamespace="urn:ietf:params:xml:ns:traceroute-1.0"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ xmlns:tr="urn:ietf:params:xml:ns:traceroute-1.0">
+ <xs:simpleType name="string255">
+ <xs:annotation>
+ <xs:documentation>String restricted to 255
+ characters.</xs:documentation>
+ </xs:annotation>
+
+ <xs:restriction base="xs:string">
+ <xs:maxLength value="255"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:simpleType name="u8nonzero">
+ <xs:annotation>
+ <xs:documentation>unsignedByte with non zero
+ value.</xs:documentation>
+ </xs:annotation>
+
+ <xs:restriction base="xs:unsignedByte">
+ <xs:minInclusive value="1"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:complexType name="_roundTripTime">
+ <xs:choice>
+ <xs:element name="roundTripTime">
+ <xs:simpleType>
+ <xs:restriction base="xs:unsignedInt"/>
+ </xs:simpleType>
+ </xs:element>
+
+ <xs:element name="roundTripTimeNotAvailable">
+ <xs:complexType/>
+ </xs:element>
+ </xs:choice>
+ </xs:complexType>
+
+ <xs:complexType name="_inetAddressUnknown"/>
+
+ <xs:simpleType name="_inetAddressIpv4">
+ <xs:restriction base="xs:string">
+ <xs:pattern value="(([1-9]?[0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5
+]).){3}([1-9]?[0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:simpleType name="_inetAddressIpv6">
+ <xs:restriction base="xs:string">
+ <xs:pattern value="(([\dA-Fa-f]{1,4}:){7}[\dA-Fa-f]{1,4})(:([\d
+]{1,3}.){3}[\d]{1,3})?"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:simpleType name="_inetAddressDns">
+ <xs:restriction base="xs:string">
+ <xs:maxLength value="256"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:complexType name="_inetAddressASNumber">
+ <xs:annotation>
+ <xs:documentation>Specifies the AS number of a hop in the
+ traceroute path as a 32-bit number and indicates how the
+ mapping from IP address to AS number was
+ performed.</xs:documentation>
+ </xs:annotation>
+
+ <xs:sequence>
+ <xs:element name="asNumber" type="xs:unsignedInt"/>
+
+ <xs:element name="ipASNumberMappingType">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="bgptables"/>
+
+ <xs:enumeration value="routingregistries"/>
+
+ <xs:enumeration value="nslookup"/>
+
+ <xs:enumeration value="others"/>
+
+ <xs:enumeration value="unknown"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:complexType name="inetAddress">
+ <xs:choice>
+ <xs:element name="inetAddressUnknown"
+ type="tr:_inetAddressUnknown"/>
+
+ <xs:element name="inetAddressIpv4" type="tr:_inetAddressIpv4"/>
+
+ <xs:element name="inetAddressIpv6" type="tr:_inetAddressIpv6"/>
+
+ <xs:element name="inetAddressASNumber"
+ type="tr:_inetAddressASNumber"/>
+
+ <xs:element minOccurs="0" name="inetAddressDns"
+ type="tr:_inetAddressDns"/>
+ </xs:choice>
+ </xs:complexType>
+
+ <xs:complexType name="inetAddressWithoutDns">
+ <xs:sequence>
+ <xs:choice>
+ <xs:element name="inetAddressUnknown"
+ type="tr:_inetAddressUnknown"/>
+
+ <xs:element name="inetAddressIpv4"
+ type="tr:_inetAddressIpv4"/>
+
+ <xs:element name="inetAddressIpv6"
+ type="tr:_inetAddressIpv6"/>
+
+ <xs:element name="inetAddressASNumber"
+ type="tr:_inetAddressASNumber"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:simpleType name="operationResponseStatus">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="responseReceived"/>
+
+ <xs:enumeration value="unknown"/>
+
+ <xs:enumeration value="internalError"/>
+
+ <xs:enumeration value="requestTimedOut"/>
+
+ <xs:enumeration value="unknownDestinationAddress"/>
+
+ <xs:enumeration value="noRouteToTarget"/>
+
+ <xs:enumeration value="interfaceInactiveToTarget"/>
+
+ <xs:enumeration value="arpFailure"/>
+
+ <xs:enumeration value="maxConcurrentLimitReached"/>
+
+ <xs:enumeration value="unableToResolveDnsName"/>
+
+ <xs:enumeration value="invalidHostAddress"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:complexType name="_CtlType">
+ <xs:choice>
+ <xs:element name="TCP">
+ <xs:complexType/>
+ </xs:element>
+
+ <xs:element name="UDP">
+ <xs:complexType/>
+ </xs:element>
+
+ <xs:element name="ICMP">
+ <xs:complexType/>
+ </xs:element>
+
+ <xs:any namespace="##other"/>
+ </xs:choice>
+ </xs:complexType>
+
+ <xs:complexType name="_ProbeResults">
+ <xs:sequence>
+ <xs:element maxOccurs="255" name="hop">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="10" name="probe">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="HopAddr"
+ type="tr:inetAddressWithoutDns">
+ <xs:annotation>
+ <xs:documentation>Specifies the address of a
+ hop in the traceroute measurement path. This
+ object is not allowed to be a DNS name. The
+ address type can be determined by examining the
+ "inetAddress" type name and the corresponding
+ element value.</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element minOccurs="0" name="HopName"
+ type="tr:_inetAddressDns">
+ <xs:annotation>
+ <xs:documentation>Specifies the DNS name of
+ the "HopAddr" if it is available. If it is
+ not available, the element is
+ omitted.</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element maxOccurs="255" minOccurs="0"
+ name="MPLSLabelStackEntry">
+ <xs:annotation>
+ <xs:documentation>Specifies entries of the
+ MPLS label stack of a probe observed when the
+ probe arrived at the hop that replied to the
+ probe. This object contains one MPLS label stack
+ entry as a 32-bit value as it is observed on the
+ MPLS label stack. Contained in this single
+ number are the MPLS label, the Exp field, the S
+ flag, and the MPLS TTL value as specified in
+ [RFC3032]. If more than one MPLS label stack
+ entry is reported, then multiple instances of
+ elements of this type are used. They must be
+ ordered in the same order as on the label stack
+ with the top label stack entry being reported
+ first.</xs:documentation>
+ </xs:annotation>
+
+ <xs:simpleType>
+ <xs:restriction base="xs:unsignedInt">
+ <xs:maxInclusive value="4294967295"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+
+ <xs:element name="ProbeRoundTripTime"
+ type="tr:_roundTripTime">
+ <xs:annotation>
+ <xs:documentation>If this element contains the
+ element "roundTripTime", this specifies the
+ amount of time measured in milliseconds from
+ when a probe was sent to when its response was
+ received or when it timed out. The value of
+ this element is reported as the truncation of
+ the number reported by the traceroute tool (the
+ output "&lt; 1 ms" is therefore encoded as 0 ms).
+ If it contains the element
+ "roundTripTimeNotAvailable", it means either
+ the probe was lost because of a timeout or it
+ was not possible to transmit a probe.
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element name="ResponseStatus"
+ type="tr:operationResponseStatus">
+ <xs:annotation>
+ <xs:documentation>Specifies the result of a
+ traceroute measurement made by the host for a
+ particular probe.</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element name="Time" type="xs:dateTime">
+ <xs:annotation>
+ <xs:documentation>Specifies the timestamp for
+ the time the response to the probe was
+ received at the interface.</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element minOccurs="0" name="HopRawOutputData"
+ type="tr:string255">
+ <xs:annotation>
+ <xs:documentation>Specifies the raw output data
+ returned by the traceroute measurement for a
+ certain hop in a traceroute measurement path. It is
+ an implementation-dependent, printable string,
+ expected to be useful for a human interpreting the
+ traceroute results.</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:complexType name="_Metadata">
+ <xs:annotation>
+ <xs:documentation>Specifies the metadata for a traceroute
+ operation -- the parameters requested if used in
+ "RequestMetadata" or the actual parameters used if used in
+ "MeasurementMetadata".</xs:documentation>
+ </xs:annotation>
+
+ <xs:sequence>
+ <xs:element name="TestName" type="tr:string255">
+ <xs:annotation>
+ <xs:documentation>Specifies the name of a traceroute
+ measurement. This is not necessarily unique within any
+ well-defined scope (e.g., a specific host, initiator of
+ the traceroute measurement).</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element default="" name="OSName" type="tr:string255">
+ <xs:annotation>
+ <xs:documentation>Specifies the name of the operating
+ system on which the traceroute measurement was launched.
+ This element is ignored if used in the
+ "RequestMetadata".</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element default="" name="OSVersion" type="tr:string255">
+ <xs:annotation>
+ <xs:documentation>Specifies the OS version on which the
+ traceroute measurement was launched. This element is
+ ignored if used in the
+ "RequestMetadata".</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element default="" name="ToolVersion" type="tr:string255">
+ <xs:annotation>
+ <xs:documentation>Specifies the version of the traceroute
+ tool (requested to be used if in the "RequestMetadata"
+ element, actually used if in the "MeasurementMetadata"
+ element).</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element default="" name="ToolName" type="tr:string255">
+ <xs:annotation>
+ <xs:documentation>Specifies the name of the traceroute
+ tool (requested to be used if in the "RequestMetadata"
+ element, actually used if in the "MeasurementMetadata"
+ element).</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element name="CtlTargetAddress" type="tr:inetAddress">
+ <xs:annotation>
+ <xs:documentation>In the "RequestMetadata" element, it
+ specifies the host address requested to be used in the
+ traceroute measurement. In the "MeasurementMetadata"
+ element, it specifies the host address used in the
+ traceroute measurement. The host address type can be
+ determined by examining the "inetAddress" type name and
+ the corresponding element value.</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element default="false" name="CtlBypassRouteTable"
+ type="xs:boolean">
+ <xs:annotation>
+ <xs:documentation>In the "RequestMetadata" element
+ specifies if the optional bypassing of the route
+ table was enabled or not. In the "MeasurementMetadata"
+ element, specifies if the optional bypassing of the route
+ table was enabled or not. If enabled, the normal routing
+ tables will be bypassed and the probes will be sent
+ directly to a host on an attached network. If the host is
+ not on a directly attached network, an error is returned.
+ This option can be used to perform the traceroute
+ measurement to a local host through an interface that has
+ no route defined. This object can be used when the
+ setsockopt SOL_SOCKET SO_DONTROUTE option is supported and
+ set (see the POSIX standard IEEE.1003-1G.1997).
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element default="0" name="CtlProbeDataSize">
+ <xs:annotation>
+ <xs:documentation>Specifies the size of the probes of a
+ traceroute measurement in octets (requested if in the
+ "RequestMetadata" element, actually used if in the
+ "MeasurementMetadata" element). If UDP datagrams are used
+ as probes, then the value contained in this object is
+ exact. If another protocol is used to transmit probes
+ (i.e., TCP or ICMP) for which the specified size is not
+ appropriate, then the implementation can use whatever
+ size (appropriate to the method) is closest to the
+ specified size. The maximum value for this object is
+ computed by subtracting the smallest possible IP header
+ size of 20 octets (IPv4 header with no options) and the
+ UDP header size of 8 octets from the maximum IP packet
+ size. An IP packet has a maximum size of 65535 octets
+ (excluding IPv6 jumbograms).</xs:documentation>
+ </xs:annotation>
+
+ <xs:simpleType>
+ <xs:restriction base="xs:unsignedShort">
+ <xs:maxInclusive value="65507"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+
+ <xs:element default="3" name="CtlTimeOut">
+ <xs:annotation>
+ <xs:documentation>Specifies the timeout value, in
+ seconds, for each probe of a traceroute measurement
+ (requested if in the "RequestMetadata" element, actually
+ used if in the "MeasurementMetadata"
+ element).</xs:documentation>
+ </xs:annotation>
+
+ <xs:simpleType>
+ <xs:restriction base="xs:unsignedByte">
+ <xs:minInclusive value="1"/>
+
+ <xs:maxInclusive value="60"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+
+ <xs:element default="3" name="CtlProbesPerHop">
+ <xs:annotation>
+ <xs:documentation>Specifies the number of probes with the
+ same time-to-live (TTL) value that are sent for each host
+ (requested if in the "RequestMetadata" element, actually
+ used if in the "MeasurementMetadata"
+ element).</xs:documentation>
+ </xs:annotation>
+
+ <xs:simpleType>
+ <xs:restriction base="xs:unsignedByte">
+ <xs:minInclusive value="1"/>
+
+ <xs:maxInclusive value="10"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+ <xs:element default="33434" name="CtlPort">
+ <xs:annotation>
+ <xs:documentation>Specifies the base port used by the
+ traceroute measurement (requested if in the
+ "RequestMetadata" element, actually used if in the
+ "MeasurementMetadata" element).</xs:documentation>
+ </xs:annotation>
+
+ <xs:simpleType>
+ <xs:restriction base="xs:unsignedShort">
+ <xs:minInclusive value="1"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+
+ <xs:element default="30" name="CtlMaxTtl" type="tr:u8nonzero">
+ <xs:annotation>
+ <xs:documentation>Specifies the maximum TTL value for the
+ traceroute measurement (requested if in the
+ "RequestMetadata" element, actually used if in the
+ "MeasurementMetadata" element).</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element default="0" name="CtlDSField"
+ type="xs:unsignedByte">
+ <xs:annotation>
+ <xs:documentation>Specifies the value that was requested
+ to be stored in the Differentiated Services (DS) field in
+ the traceroute probe (if in the "RequestMetadata"
+ element). Specifies the value that was stored in the
+ Differentiated Services (DS) field in the traceroute
+ probe (if in the "MeasurementMetadata" element). The DS
+ field is defined as the Type of Service (TOS) octet in an
+ IPv4 header or as the Traffic Class octet in an IPv6
+ header (see Section 7 of [RFC2460]). The value of this
+ object must be a decimal integer in the range from 0 to
+ 255. This option can be used to determine what effect an
+ explicit DS field setting has on a traceroute measurement
+ and its probes. Not all values are legal or meaningful.
+ Useful TOS octet values are probably 16 (low delay) and
+ 8 (high throughput). Further references can be found in
+ [RFC2474] for the definition of the Differentiated
+ Services (DS) field and in [RFC1812] Section 5.3.2 for
+ Type of Service (TOS).</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="CtlSourceAddress"
+ type="tr:inetAddressWithoutDns">
+ <xs:annotation>
+ <xs:documentation>Specifies the IP address (which has to
+ be given as an IP number, not a hostname) as the source
+ address in traceroute probes (requested if in the
+ "RequestMetadata" element, actually used if in the
+ "MeasurementMetadata" element). On hosts with more than
+ one IP address, this option can be used in the
+ "RequestMetadata" element to force the source address to
+ be something other than the primary IP address of the
+ interface the probe is sent on; the value "unknown" means
+ the default address will be used. The address type can be
+ determined by examining the "inetAddress" type name and the
+ corresponding element value.</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element default="0" name="CtlIfIndex"
+ type="xs:unsignedInt">
+ <xs:annotation>
+ <xs:documentation>Specifies the interface index as
+ defined in [RFC2863] that is requested to be used in the
+ traceroute measurement for sending the traceroute probes
+ (if in the "RequestMetadata" element). A value of 0
+ indicates that no specific interface is requested.
+ Specifies the interface index actually used (if in the
+ "MeasurementMetadata" element).</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element minOccurs="0" name="CtlMiscOptions"
+ type="tr:string255">
+ <xs:annotation>
+ <xs:documentation>Specifies implementation-dependent
+ options (requested if in the "RequestMetadata" element,
+ actually used if in the "MeasurementMetadata"
+ element).</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element default="5" name="CtlMaxFailures"
+ type="xs:unsignedByte">
+ <xs:annotation>
+ <xs:documentation>Specifies the maximum number of
+ consecutive timeouts allowed before terminating a
+ traceroute measurement (requested if in the
+ "RequestMetadata" element, actually used if in the
+ "MeasurementMetadata" element). A value of either 255
+ (maximum hop count/possible TTL value) or 0 indicates
+ that the function of terminating a remote traceroute
+ measurement when a specific number of consecutive
+ timeouts are detected was disabled. This element is
+ included to give full compatibility with [RFC4560]. No
+ known implementation of traceroute currently supports
+ it.</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element default="false" name="CtlDontFragment"
+ type="xs:boolean">
+ <xs:annotation>
+ <xs:documentation>Specifies if the don't fragment (DF)
+ flag in the IP header for a probe was enabled or not (if
+ in the "MeasurementMetadata" element). If in the
+ "RequestMetadata", it specifies if the flag was requested
+ to be enabled or not. Setting the DF flag can be used for
+ performing a manual PATH MTU test.</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element default="1" name="CtlInitialTtl"
+ type="tr:u8nonzero">
+ <xs:annotation>
+ <xs:documentation>Specifies the initial TTL value for a
+ traceroute measurement (requested if in the
+ "RequestMetadata" element, actually used if in the
+ "MeasurementMetadata" element). Such TTL setting is
+ intended to bypass the initial (often well-known) portion
+ of a path.</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element maxOccurs="1" minOccurs="0" name="CtlDescr"
+ type="tr:string255">
+ <xs:annotation>
+ <xs:documentation>Provides a description of the traceroute
+ measurement.</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element name="CtlType" type="tr:_CtlType">
+ <xs:annotation>
+ <xs:documentation>Specifies the implementation method
+ used for the traceroute measurement (requested if in the
+ "RequestMetadata" element, actually used if in the
+ "MeasurementMetadata" element). It specifies if the
+ traceroute is using TCP, UDP, ICMP, or other types of
+ probes. It is possible to specify other types of probes
+ by using an element specified in another schema with a
+ different namespace.</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:complexType name="_Measurement">
+ <xs:annotation>
+ <xs:documentation>Contains the actual traceroute measurement
+ results.</xs:documentation>
+ </xs:annotation>
+
+ <xs:sequence>
+ <xs:element name="TestName" type="tr:string255">
+ <xs:annotation>
+ <xs:documentation>Specifies the name of a traceroute
+ measurement. This is not necessarily unique within any
+ well-defined scope (e.g., a specific host, initiator of
+ the traceroute measurement).</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element name="ResultsStartDateAndTime" type="xs:dateTime">
+ <xs:annotation>
+ <xs:documentation>Specifies the date and start time of
+ the traceroute measurement. This is the time when the
+ first probe was seen at the sending
+ interface.</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element name="ResultsIpTgtAddr"
+ type="tr:inetAddressWithoutDns">
+ <xs:annotation>
+ <xs:documentation>Specifies the IP address associated
+ with a "CtlTargetAddress" value when the destination
+ address is specified as a DNS name. The value of this
+ object should be "unknown" if a DNS name is not specified
+ or if a specified DNS name fails to resolve. The
+ address type can be determined by examining the "inetAddress"
+ type name and the corresponding element
+ value.</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="ProbeResults" type="tr:_ProbeResults"/>
+
+ <xs:element name="ResultsEndDateAndTime" type="xs:dateTime">
+ <xs:annotation>
+ <xs:documentation>Specifies the date and end time of the
+ traceroute measurement. It is either the time when the
+ response to the last probe of the traceroute measurement
+ was received or the time when the last probe of the
+ traceroute measurement was sent plus the relative timeout
+ (in case of a missing response).</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:element name="traceRoute">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" name="RequestMetadata"
+ type="tr:_Metadata"/>
+
+ <xs:element maxOccurs="2147483647" minOccurs="0"
+ name="Measurement">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" name="MeasurementMetadata"
+ type="tr:_Metadata"/>
+
+ <xs:element maxOccurs="2147483647" minOccurs="0"
+ name="MeasurementResult"
+ type="tr:_Measurement"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+</xs:schema> \ No newline at end of file
diff --git a/schemas/vts-lang.xml b/schemas/vts-lang.xml
new file mode 100644
index 0000000..f12f408
--- /dev/null
+++ b/schemas/vts-lang.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<schema xmlns:gvl="urn:ietf:params:xml:ns:vts-lang" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:ietf:params:xml:ns:vts-lang" elementFormDefault="qualified"><element name="Voucher" type="gvl:VoucherType"/><complexType name="VoucherType"><sequence><element ref="gvl:Title"/><element ref="gvl:Description" minOccurs="0"/><element ref="gvl:Provider"/><element ref="gvl:Issuer" minOccurs="0"/><element ref="gvl:Holder" minOccurs="0"/><element ref="gvl:Collector" minOccurs="0"/><element ref="gvl:Value"/><element ref="gvl:Merchandise" minOccurs="0"/><element ref="gvl:ValidPeriod" minOccurs="0"/><element ref="gvl:Conditions" minOccurs="0"/></sequence></complexType><element name="Title" type="string"/>
+
+ <element name="Description" type="string"/><element name="Provider" type="gvl:RoleType"/><element name="Issuer" type="gvl:RoleType"/><element name="Holder" type="gvl:RoleType"/><element name="Collector" type="gvl:RoleType"/><complexType name="RoleType" mixed="true"><sequence><any namespace="##any" minOccurs="0" maxOccurs="unbounded"/></sequence><attribute name="name" type="string"/></complexType><element name="Value" type="gvl:ValueType"/><complexType name="ValueType"><sequence minOccurs="0"><choice><element name="Ratio" type="gvl:RatioValueType"/><element name="Fixed" type="gvl:FixedValueType"/></choice></sequence><attribute name="type" type="gvl:ValueProcessType" use="required"/><attribute name="spend" type="nonNegativeInteger" default="1"/></complexType><simpleType name="ValueProcessType"><restriction base="string"><enumeration value="exchange"/><enumeration value="discount"/><enumeration value="monetary"/></restriction></simpleType><complexType name="RatioValueType"><attribute name="percentage" use="required"><simpleType><restriction base="float"><maxInclusive value="100"/></restriction></simpleType></attribute></complexType><complexType name="FixedValueType"><attribute name="currency" type="string" use="required"/><attribute name="amount" type="float" use="required"/><attribute name="decimalPower" type="short" default="0"/></complexType>
+
+ <element name="Merchandise" type="gvl:MerchandiseType"/><complexType name="MerchandiseType" mixed="true"><sequence><any namespace="##any" minOccurs="0" maxOccurs="unbounded"/></sequence></complexType><element name="ValidPeriod" type="gvl:ValidPeriodType"/><complexType name="ValidPeriodType"><attribute name="start" type="dateTime"/><attribute name="end" type="dateTime"/></complexType><element name="Conditions" type="string"/></schema>
diff --git a/schemas/watcherinfo.xsd b/schemas/watcherinfo.xsd
new file mode 100644
index 0000000..8bd3741
--- /dev/null
+++ b/schemas/watcherinfo.xsd
@@ -0,0 +1,78 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="urn:ietf:params:xml:ns:watcherinfo"
+ xmlns:tns="urn:ietf:params:xml:ns:watcherinfo" >
+ <!-- This import brings in the XML language attribute xml:lang-->
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace"
+ schemaLocation="http://www.w3.org/2001/03/xml.xsd" />
+ <xs:element name="watcherinfo">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="tns:watcher-list" minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="version" type="xs:nonNegativeInteger"
+ use="required"/>
+ <xs:attribute name="state" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="full"/>
+ <xs:enumeration value="partial"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="watcher-list">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="tns:watcher" minOccurs="0" maxOccurs=
+ "unbounded"/>
+ <xs:any namespace="##other" processContents="lax"
+ minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="resource" type="xs:anyURI" use="required"/>
+ <xs:attribute name="package" type="xs:string" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="watcher">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:anyURI">
+ <xs:attribute name="display-name" type="xs:string"/>
+ <xs:attribute name="status" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="pending"/>
+ <xs:enumeration value="active"/>
+ <xs:enumeration value="waiting"/>
+ <xs:enumeration value="terminated"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="event" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="subscribe"/>
+ <xs:enumeration value="approved"/>
+ <xs:enumeration value="deactivated"/>
+ <xs:enumeration value="probation"/>
+ <xs:enumeration value="rejected"/>
+ <xs:enumeration value="timeout"/>
+ <xs:enumeration value="giveup"/>
+ <xs:enumeration value="noresource"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="expiration" type="xs:unsignedLong"/>
+ <xs:attribute name="id" type="xs:string" use="required"/>
+ <xs:attribute name="duration-subscribed"
+ type="xs:unsignedLong"/>
+ <xs:attribute ref="xml:lang"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+</xs:schema> \ No newline at end of file
diff --git a/schemas/xcap-caps.xsd b/schemas/xcap-caps.xsd
new file mode 100644
index 0000000..b5ea89a
--- /dev/null
+++ b/schemas/xcap-caps.xsd
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="urn:ietf:params:xml:ns:xcap-caps" targetNamespace="urn:ietf:params:xml:ns:xcap-caps" elementFormDefault="qualified" attributeFormDefault="unqualified">
+ <xs:element name="xcap-caps">
+ <xs:annotation>
+ <xs:documentation>Root element for xcap-caps</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="auids">
+ <xs:annotation>
+ <xs:documentation>List of supported AUID.</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence minOccurs="0" maxOccurs="unbounded">
+ <xs:element name="auid" type="auidType"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="extensions">
+ <xs:annotation>
+ <xs:documentation>List of supported extensions.</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence minOccurs="0" maxOccurs="unbounded">
+ <xs:element name="extension" type="extensionType"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="namespaces">
+ <xs:annotation>
+ <xs:documentation>List of supported namespaces.</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence minOccurs="0" maxOccurs="unbounded">
+ <xs:element name="namespace" type="namespaceType"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:simpleType name="auidType">
+ <xs:annotation>
+ <xs:documentation>AUID Type</xs:documentation>
+ </xs:annotation>
+ <xs:restriction base="xs:string"/>
+ </xs:simpleType>
+ <xs:simpleType name="extensionType">
+ <xs:annotation>
+ <xs:documentation>Extension Type</xs:documentation>
+ </xs:annotation>
+ <xs:restriction base="xs:string"/>
+ </xs:simpleType>
+ <xs:simpleType name="namespaceType">
+ <xs:annotation>
+ <xs:documentation>Namespace type</xs:documentation>
+ </xs:annotation>
+ <xs:restriction base="xs:anyURI"/>
+ </xs:simpleType>
+</xs:schema>
diff --git a/schemas/xcap-error.xsd b/schemas/xcap-error.xsd
new file mode 100644
index 0000000..bc45215
--- /dev/null
+++ b/schemas/xcap-error.xsd
@@ -0,0 +1,141 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns="urn:ietf:params:xml:ns:xcap-error" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:ietf:params:xml:ns:xcap-error" elementFormDefault="qualified" attributeFormDefault="unqualified">
+ <xs:element name="error-element" abstract="true"/>
+ <xs:element name="xcap-error">
+ <xs:annotation>
+ <xs:documentation>Indicates the reason for the error.</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="error-element"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="schema-validation-error" substitutionGroup="error-element">
+ <xs:annotation>
+ <xs:documentation>This element indicates
+ that the document was not compliant to the schema after the requested
+ operation was performed.</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:attribute name="phrase" type="xs:string" use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="not-xml-frag" substitutionGroup="error-element">
+ <xs:annotation>
+ <xs:documentation>This indicates that the request was supposed to
+ contain a valid XML fragment body, but did not.</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:attribute name="phrase" type="xs:string" use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="no-parent" substitutionGroup="error-element">
+ <xs:annotation>
+ <xs:documentation>This indicates that an attempt to insert
+ an element, attribute or document failed because the document or
+ element into which the insertion was
+ supposed to occur does not exist</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="ancestor" type="xs:anyURI" minOccurs="0">
+ <xs:annotation>
+ <xs:documentation>Contains an HTTP URI that points to the
+ element which is the closest ancestor that does exist.</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ </xs:sequence>
+ <xs:attribute name="phrase" type="xs:string" use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="cannot-insert" substitutionGroup="error-element">
+ <xs:annotation>
+ <xs:documentation>This indicates that the requested
+ PUT operation could not be performed because a GET of that resource
+ after the PUT would not yield the content of the PUT request.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:attribute name="phrase" type="xs:string" use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="not-xml-att-value" substitutionGroup="error-element">
+ <xs:annotation>
+ <xs:documentation>This indicates that the
+ request was supposed to contain a valid XML attribute value, but did
+ not.</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:attribute name="phrase" type="xs:string" use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="uniqueness-failure" substitutionGroup="error-element">
+ <xs:annotation>
+ <xs:documentation>This indicates that the
+ requested operation would result in a document that did not meet a
+ uniqueness constraint defined by the application usage.</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="exists" maxOccurs="unbounded">
+ <xs:annotation>
+ <xs:documentation>For each URI,
+ element or attribute specified by the client which is not unique,
+ one of these is present.</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence minOccurs="0">
+ <xs:element name="alt-value" type="xs:string" maxOccurs="unbounded">
+ <xs:annotation>
+ <xs:documentation>An optional set of alternate values can be
+ provided.</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ </xs:sequence>
+ <xs:attribute name="field" type="xs:string" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ <xs:attribute name="phrase" type="xs:string" use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="not-well-formed" substitutionGroup="error-element">
+ <xs:annotation>
+ <xs:documentation>This indicates that the body of the request was
+ not a well-formed document.</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:attribute name="phrase" type="xs:string" use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="constraint-failure" substitutionGroup="error-element">
+ <xs:annotation>
+ <xs:documentation>This indicates that the
+ requested operation would result in a document that failed a data
+ constraint defined by the application usage, but not enforced by the
+ schema or a uniqueness constraint.</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:attribute name="phrase" type="xs:string" use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="cannot-delete" substitutionGroup="error-element">
+ <xs:annotation>
+ <xs:documentation>This indicates that the requested DELETE
+ operation could not be performed because it would not be
+ idempotent.</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:attribute name="phrase" type="xs:string" use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="not-utf-8" substitutionGroup="error-element">
+ <xs:annotation>
+ <xs:documentation>This indicates that request could not be completed because it would have produced a document not encoded in UTF-8.</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:attribute name="phrase" type="xs:string" use="optional"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/schemas/xcon-conference-info-diff.xml b/schemas/xcon-conference-info-diff.xml
new file mode 100644
index 0000000..289ea84
--- /dev/null
+++ b/schemas/xcon-conference-info-diff.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema
+ targetNamespace="urn:ietf:params:xml:ns:xcon-conference-info"
+ xmlns="urn:ietf:params:xml:ns:xcon-conference-info"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified">
+
+ <!-- include patch-ops type definitions -->
+ <xs:include
+ schemaLocation="urn:ietf:params:xml:schema:patch-ops"/>
+
+ <!-- partial updates -->
+ <xs:element name="conference-info-diff">
+ <xs:complexType>
+ <xs:sequence minOccurs="0" maxOccurs="unbounded">
+ <xs:choice>
+ <!-- add some content -->
+ <xs:element name="add">
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="add">
+ <xs:anyAttribute processContents="lax"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <!-- remove some content -->
+ <xs:element name="remove">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="remove">
+ <xs:anyAttribute processContents="lax"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <!-- replace some content -->
+ <xs:element name="replace">
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="replace">
+ <xs:anyAttribute processContents="lax"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <!-- allow extension elements from other namespaces -->
+ <xs:any namespace="##other" processContents="lax"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attribute name="entity" type="xs:anyURI" use="required"/>
+ <xs:anyAttribute processContents="lax"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/schemas/xdm_commonPolicy-v1_0.xsd b/schemas/xdm_commonPolicy-v1_0.xsd
new file mode 100644
index 0000000..9135369
--- /dev/null
+++ b/schemas/xdm_commonPolicy-v1_0.xsd
@@ -0,0 +1,107 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ XDM - Common Policy
+ version - 1.0
+ date - 27 Jun 2008
+
+ FILE INFORMATION
+
+ OMA Permanent Document
+ File: OMA-SUP-XSD_xdm_commonPolicy-V1_0_2-20080627-A
+ Type: Text - Schema Description
+
+ Public Reachable Information
+ Path: http://www.openmobilealliance.org/tech/profiles
+ Name: xdm_commonPolicy-v1_0.xsd
+
+ NORMATIVE INFORMATION
+
+ Information about this file can be found in the specification
+ OMA-TS-XDM_Core-V1_1
+ available at http://www.openmobilealliance.org/
+
+ Send comments to technical-comments@mail.openmobilealliance.org
+
+ LEGAL DISCLAIMER
+
+ Use of this document is subject to all of the terms and conditions
+ of the Use Agreement located at
+ http://www.openmobilealliance.org/UseAgreement.html
+
+ You may use this document or any part of the document for internal
+ or educational purposes only, provided you do not modify, edit or
+ take out of context the information in this document in any manner.
+ Information contained in this document may be used, at your sole
+ risk, for any purposes.
+
+ You may not use this document in any other manner without the prior
+ written permission of the Open Mobile Alliance. The Open Mobile
+ Alliance authorizes you to copy this document, provided that you
+ retain all copyright and other proprietary notices contained in the
+ original materials on any copies of the materials and that you
+ comply strictly with these terms. This copyright permission does
+ not constitute an endorsement of the products or services. The
+ Open Mobile Alliance assumes no responsibility for errors or
+ omissions in this document.
+
+ Each Open Mobile Alliance member has agreed to use reasonable
+ endeavors to inform the Open Mobile Alliance in a timely manner of
+ Essential IPR as it becomes aware that the Essential IPR is related
+ to the prepared or published specification. However, the members
+ do not have an obligation to conduct IPR searches. The declared
+ Essential IPR is publicly available to members and non-members of
+ the Open Mobile Alliance and may be found on the "OMA IPR
+ Declarations" list at http://www.openmobilealliance.org/ipr.html.
+ The Open Mobile Alliance has not conducted an independent IPR review
+ of this document and the information contained herein, and makes no
+ representations or warranties regarding third party IPR, including
+ without limitation patents, copyrights or trade secret rights. This
+ document may contain inventions for which you must obtain licenses
+ from third parties before making, using or selling the inventions.
+ Defined terms above are set forth in the schedule to the Open Mobile
+ Alliance Application Form.
+
+ NO REPRESENTATIONS OR WARRANTIES (WHETHER EXPRESS OR IMPLIED) ARE
+ MADE BY THE OPEN MOBILE ALLIANCE OR ANY OPEN MOBILE ALLIANCE MEMBER
+ OR ITS AFFILIATES REGARDING ANY OF THE IPR'S REPRESENTED ON THE "OMA
+ IPR DECLARATIONS" LIST, INCLUDING, BUT NOT LIMITED TO THE ACCURACY,
+ COMPLETENESS, VALIDITY OR RELEVANCE OF THE INFORMATION OR WHETHER OR
+ NOT SUCH RIGHTS ARE ESSENTIAL OR NON-ESSENTIAL.
+
+ THE OPEN MOBILE ALLIANCE IS NOT LIABLE FOR AND HEREBY DISCLAIMS ANY
+ DIRECT, INDIRECT, PUNITIVE, SPECIAL, INCIDENTAL, CONSEQUENTIAL, OR
+ EXEMPLARY DAMAGES ARISING OUT OF OR IN CONNECTION WITH THE USE OF
+ DOCUMENTS AND THE INFORMATION CONTAINED IN THE DOCUMENTS.
+
+ Copyright 2008 Open Mobile Alliance Ltd. All Rights Reserved.
+ Used with the permission of the Open Mobile Alliance Ltd. under the
+ terms set forth above.
+-->
+
+<xs:schema targetNamespace="urn:oma:xml:xdm:common-policy"
+ xmlns="urn:oma:xml:xdm:common-policy"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified" attributeFormDefault="unqualified">
+
+<!-- OMA specific "conditions" child elements -->
+<xs:element name="other-identity" type="emptyType"/>
+
+ <xs:element name="external-list">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="entry" type="anchorType" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="anonymous-request" type="emptyType"/>
+
+ <xs:complexType name="anchorType">
+ <xs:attribute name="anc" type="xs:anyURI"/>
+ <xs:anyAttribute processContents="lax"/>
+ </xs:complexType>
+
+<xs:complexType name="emptyType"/>
+
+</xs:schema>
diff --git a/schemas/xdm_rsrclst_appusage-v1_0.xsd b/schemas/xdm_rsrclst_appusage-v1_0.xsd
new file mode 100644
index 0000000..eefa197
--- /dev/null
+++ b/schemas/xdm_rsrclst_appusage-v1_0.xsd
@@ -0,0 +1,108 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ XDM Resource List Elements - appusage
+ version - 1.0
+ date - 27 Jun 2008
+
+ FILE INFORMATION
+
+ OMA Permanent Document
+ File: OMA-SUP-XSD_xdm_rsrclst_appusage-V1_0_1-20080627-A
+ Type: Text - Schema Description
+
+ Public Reachable Information
+ Path: http://www.openmobilealliance.org/tech/profiles
+ Name: xdm_rsrclst_appusage-v1_0.xsd
+
+ NORMATIVE INFORMATION
+
+ Information about this file can be found in the specification
+ OMA-TS-XDM_Shared-V1_1
+ available at http://www.openmobilealliance.org/
+
+ Send comments to technical-comments@mail.openmobilealliance.org
+
+ LEGAL DISCLAIMER
+
+ Use of this document is subject to all of the terms and conditions
+ of the Use Agreement located at
+ http://www.openmobilealliance.org/UseAgreement.html
+
+ You may use this document or any part of the document for internal
+ or educational purposes only, provided you do not modify, edit or
+ take out of context the information in this document in any manner.
+ Information contained in this document may be used, at your sole
+ risk, for any purposes.
+
+ You may not use this document in any other manner without the prior
+ written permission of the Open Mobile Alliance. The Open Mobile
+ Alliance authorizes you to copy this document, provided that you
+ retain all copyright and other proprietary notices contained in the
+ original materials on any copies of the materials and that you
+ comply strictly with these terms. This copyright permission does
+ not constitute an endorsement of the products or services. The
+ Open Mobile Alliance assumes no responsibility for errors or
+ omissions in this document.
+
+ Each Open Mobile Alliance member has agreed to use reasonable
+ endeavors to inform the Open Mobile Alliance in a timely manner of
+ Essential IPR as it becomes aware that the Essential IPR is related
+ to the prepared or published specification. However, the members
+ do not have an obligation to conduct IPR searches. The declared
+ Essential IPR is publicly available to members and non-members of
+ the Open Mobile Alliance and may be found on the "OMA IPR
+ Declarations" list at http://www.openmobilealliance.org/ipr.html.
+ The Open Mobile Alliance has not conducted an independent IPR review
+ of this document and the information contained herein, and makes no
+ representations or warranties regarding third party IPR, including
+ without limitation patents, copyrights or trade secret rights. This
+ document may contain inventions for which you must obtain licenses
+ from third parties before making, using or selling the inventions.
+ Defined terms above are set forth in the schedule to the Open Mobile
+ Alliance Application Form.
+
+ NO REPRESENTATIONS OR WARRANTIES (WHETHER EXPRESS OR IMPLIED) ARE
+ MADE BY THE OPEN MOBILE ALLIANCE OR ANY OPEN MOBILE ALLIANCE MEMBER
+ OR ITS AFFILIATES REGARDING ANY OF THE IPR'S REPRESENTED ON THE "OMA
+ IPR DECLARATIONS" LIST, INCLUDING, BUT NOT LIMITED TO THE ACCURACY,
+ COMPLETENESS, VALIDITY OR RELEVANCE OF THE INFORMATION OR WHETHER OR
+ NOT SUCH RIGHTS ARE ESSENTIAL OR NON-ESSENTIAL.
+
+ THE OPEN MOBILE ALLIANCE IS NOT LIABLE FOR AND HEREBY DISCLAIMS ANY
+ DIRECT, INDIRECT, PUNITIVE, SPECIAL, INCIDENTAL, CONSEQUENTIAL, OR
+ EXEMPLARY DAMAGES ARISING OUT OF OR IN CONNECTION WITH THE USE OF
+ DOCUMENTS AND THE INFORMATION CONTAINED IN THE DOCUMENTS.
+
+ Copyright 2008 Open Mobile Alliance Ltd. All Rights Reserved.
+ Used with the permission of the Open Mobile Alliance Ltd. under the
+ terms set forth above.
+-->
+
+ <xs:schema targetNamespace="urn:oma:xml:xdm:resource-list:oma-appusage"
+ xmlns="urn:oma:xml:xdm:resource-list:oma-appusage"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified">
+
+<!-- OMA specific extension: "appusage" child element to the complex type 'listType' in IETF resource-lists namespace -->
+ <xs:element name="appusages">
+ <xs:complexType>
+ <xs:sequence minOccurs="0" maxOccurs="unbounded">
+ <xs:element name="nodeuri" >
+ <xs:complexType>
+ <xs:attribute name="uri" type="xs:anyURI" use="required"/>
+ <xs:attribute name="auid" type="xs:string" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
+
+
+
+
+
+
+
+
diff --git a/schemas/xdm_rsrclst_uriusage-v1_0.xsd b/schemas/xdm_rsrclst_uriusage-v1_0.xsd
new file mode 100644
index 0000000..bae31f0
--- /dev/null
+++ b/schemas/xdm_rsrclst_uriusage-v1_0.xsd
@@ -0,0 +1,96 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ XDM Resource List Elements - uriusage
+ version - 1.0
+ date - 27 Jun 2008
+
+ FILE INFORMATION
+
+ OMA Permanent Document
+ File: OMA-SUP-XSD_xdm_rsrclst_uriusage-V1_0_1-20080627-A
+ Type: Text - Schema Description
+
+ Public Reachable Information
+ Path: http://www.openmobilealliance.org/tech/profiles
+ Name: xdm_rsrclst_uriusage-v1_0.xsd
+
+ NORMATIVE INFORMATION
+
+ Information about this file can be found in the specification
+ OMA-TS-XDM_Shared-V1_1
+ available at http://www.openmobilealliance.org/
+
+ Send comments to technical-comments@mail.openmobilealliance.org
+
+ LEGAL DISCLAIMER
+
+ Use of this document is subject to all of the terms and conditions
+ of the Use Agreement located at
+ http://www.openmobilealliance.org/UseAgreement.html
+
+ You may use this document or any part of the document for internal
+ or educational purposes only, provided you do not modify, edit or
+ take out of context the information in this document in any manner.
+ Information contained in this document may be used, at your sole
+ risk, for any purposes.
+
+ You may not use this document in any other manner without the prior
+ written permission of the Open Mobile Alliance. The Open Mobile
+ Alliance authorizes you to copy this document, provided that you
+ retain all copyright and other proprietary notices contained in the
+ original materials on any copies of the materials and that you
+ comply strictly with these terms. This copyright permission does
+ not constitute an endorsement of the products or services. The
+ Open Mobile Alliance assumes no responsibility for errors or
+ omissions in this document.
+
+ Each Open Mobile Alliance member has agreed to use reasonable
+ endeavors to inform the Open Mobile Alliance in a timely manner of
+ Essential IPR as it becomes aware that the Essential IPR is related
+ to the prepared or published specification. However, the members
+ do not have an obligation to conduct IPR searches. The declared
+ Essential IPR is publicly available to members and non-members of
+ the Open Mobile Alliance and may be found on the "OMA IPR
+ Declarations" list at http://www.openmobilealliance.org/ipr.html.
+ The Open Mobile Alliance has not conducted an independent IPR review
+ of this document and the information contained herein, and makes no
+ representations or warranties regarding third party IPR, including
+ without limitation patents, copyrights or trade secret rights. This
+ document may contain inventions for which you must obtain licenses
+ from third parties before making, using or selling the inventions.
+ Defined terms above are set forth in the schedule to the Open Mobile
+ Alliance Application Form.
+
+ NO REPRESENTATIONS OR WARRANTIES (WHETHER EXPRESS OR IMPLIED) ARE
+ MADE BY THE OPEN MOBILE ALLIANCE OR ANY OPEN MOBILE ALLIANCE MEMBER
+ OR ITS AFFILIATES REGARDING ANY OF THE IPR'S REPRESENTED ON THE "OMA
+ IPR DECLARATIONS" LIST, INCLUDING, BUT NOT LIMITED TO THE ACCURACY,
+ COMPLETENESS, VALIDITY OR RELEVANCE OF THE INFORMATION OR WHETHER OR
+ NOT SUCH RIGHTS ARE ESSENTIAL OR NON-ESSENTIAL.
+
+ THE OPEN MOBILE ALLIANCE IS NOT LIABLE FOR AND HEREBY DISCLAIMS ANY
+ DIRECT, INDIRECT, PUNITIVE, SPECIAL, INCIDENTAL, CONSEQUENTIAL, OR
+ EXEMPLARY DAMAGES ARISING OUT OF OR IN CONNECTION WITH THE USE OF
+ DOCUMENTS AND THE INFORMATION CONTAINED IN THE DOCUMENTS.
+
+ Copyright 2008 Open Mobile Alliance Ltd. All Rights Reserved.
+ Used with the permission of the Open Mobile Alliance Ltd. under the
+ terms set forth above.
+-->
+
+ <xs:schema targetNamespace="urn:oma:xml:xdm:resource-list:oma-uriusage"
+ xmlns="urn:oma:xml:xdm:resource-list:oma-uriusage"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified">
+
+<!-- OMA specific extension: "uriusage" child elements -->
+ <xs:element name="uriusages">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="uriusage" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="uriusage" abstract="true"/>
+</xs:schema>
diff --git a/schemas/xdm_xcapDirectory-v1_0.xsd b/schemas/xdm_xcapDirectory-v1_0.xsd
new file mode 100644
index 0000000..5e4f016
--- /dev/null
+++ b/schemas/xdm_xcapDirectory-v1_0.xsd
@@ -0,0 +1,115 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ XDM - XCAP Directory
+ version - 1.0
+ date - 27 Jun 2008
+
+ FILE INFORMATION
+
+ OMA Permanent Document
+ File: OMA-SUP-XSD_xdm_xcapDirectory-V1_0_2-20080627-A
+ Type: Text - Schema Description
+
+ Public Reachable Information
+ Path: http://www.openmobilealliance.org/tech/profiles
+ Name: xdm_xcapDirectory-v1_0.xsd
+
+ NORMATIVE INFORMATION
+
+ Information about this file can be found in the specification
+ OMA-TS-XDM_Core-V1_1
+ available at http://www.openmobilealliance.org/
+
+ Send comments to technical-comments@mail.openmobilealliance.org
+
+ LEGAL DISCLAIMER
+
+ Use of this document is subject to all of the terms and conditions
+ of the Use Agreement located at
+ http://www.openmobilealliance.org/UseAgreement.html
+
+ You may use this document or any part of the document for internal
+ or educational purposes only, provided you do not modify, edit or
+ take out of context the information in this document in any manner.
+ Information contained in this document may be used, at your sole
+ risk, for any purposes.
+
+ You may not use this document in any other manner without the prior
+ written permission of the Open Mobile Alliance. The Open Mobile
+ Alliance authorizes you to copy this document, provided that you
+ retain all copyright and other proprietary notices contained in the
+ original materials on any copies of the materials and that you
+ comply strictly with these terms. This copyright permission does
+ not constitute an endorsement of the products or services. The
+ Open Mobile Alliance assumes no responsibility for errors or
+ omissions in this document.
+
+ Each Open Mobile Alliance member has agreed to use reasonable
+ endeavors to inform the Open Mobile Alliance in a timely manner of
+ Essential IPR as it becomes aware that the Essential IPR is related
+ to the prepared or published specification. However, the members
+ do not have an obligation to conduct IPR searches. The declared
+ Essential IPR is publicly available to members and non-members of
+ the Open Mobile Alliance and may be found on the "OMA IPR
+ Declarations" list at http://www.openmobilealliance.org/ipr.html.
+ The Open Mobile Alliance has not conducted an independent IPR review
+ of this document and the information contained herein, and makes no
+ representations or warranties regarding third party IPR, including
+ without limitation patents, copyrights or trade secret rights. This
+ document may contain inventions for which you must obtain licenses
+ from third parties before making, using or selling the inventions.
+ Defined terms above are set forth in the schedule to the Open Mobile
+ Alliance Application Form.
+
+ NO REPRESENTATIONS OR WARRANTIES (WHETHER EXPRESS OR IMPLIED) ARE
+ MADE BY THE OPEN MOBILE ALLIANCE OR ANY OPEN MOBILE ALLIANCE MEMBER
+ OR ITS AFFILIATES REGARDING ANY OF THE IPR'S REPRESENTED ON THE "OMA
+ IPR DECLARATIONS" LIST, INCLUDING, BUT NOT LIMITED TO THE ACCURACY,
+ COMPLETENESS, VALIDITY OR RELEVANCE OF THE INFORMATION OR WHETHER OR
+ NOT SUCH RIGHTS ARE ESSENTIAL OR NON-ESSENTIAL.
+
+ THE OPEN MOBILE ALLIANCE IS NOT LIABLE FOR AND HEREBY DISCLAIMS ANY
+ DIRECT, INDIRECT, PUNITIVE, SPECIAL, INCIDENTAL, CONSEQUENTIAL, OR
+ EXEMPLARY DAMAGES ARISING OUT OF OR IN CONNECTION WITH THE USE OF
+ DOCUMENTS AND THE INFORMATION CONTAINED IN THE DOCUMENTS.
+
+ Copyright 2008 Open Mobile Alliance Ltd. All Rights Reserved.
+ Used with the permission of the Open Mobile Alliance Ltd. under the
+ terms set forth above.
+-->
+
+<xs:schema targetNamespace="urn:oma:xml:xdm:xcap-directory"
+ xmlns="urn:oma:xml:xdm:xcap-directory"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified" attributeFormDefault="unqualified">
+
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace"
+ schemaLocation="http://www.w3.org/2001/xml.xsd"/>
+
+<xs:element name="xcap-directory">
+ <xs:complexType>
+ <xs:sequence minOccurs="0" maxOccurs="unbounded">
+ <xs:element name="folder">
+ <xs:complexType>
+ <xs:choice>
+ <xs:sequence minOccurs="0" maxOccurs="unbounded">
+ <xs:element name="entry">
+ <xs:complexType>
+ <xs:attribute name="uri" type="xs:anyURI" use="required"/>
+ <xs:attribute name="etag" type="xs:string" use="required"/>
+ <xs:attribute name="last-modified" type="xs:dateTime"/>
+ <xs:attribute name="size" type="xs:nonNegativeInteger"/>
+ <xs:anyAttribute processContents="lax"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ <xs:element name="error-code" type="xs:string"/>
+ </xs:choice>
+ <xs:attribute name="auid" type="xs:string" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/schemas/xdm_xcapError-v1_0.xsd b/schemas/xdm_xcapError-v1_0.xsd
new file mode 100644
index 0000000..0866e4e
--- /dev/null
+++ b/schemas/xdm_xcapError-v1_0.xsd
@@ -0,0 +1,129 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ XDM - XCAP Error
+ version - 1.0
+ date - 27 Jun 2008
+
+ FILE INFORMATION
+
+ OMA Permanent Document
+ File: OMA-SUP-XSD_xdm_xcapError-V1_0_1-20080627-A
+ Type: Text - Schema Description
+
+ Public Reachable Information
+ Path: http://www.openmobilealliance.org/tech/profiles
+ Name: xdm_xcapError-v1_0.xsd
+
+ NORMATIVE INFORMATION
+
+ Information about this file can be found in the specification
+ OMA-TS-XDM_Core-V1_1
+ available at http://www.openmobilealliance.org/
+
+ Send comments to technical-comments@mail.openmobilealliance.org
+
+ LEGAL DISCLAIMER
+
+ Use of this document is subject to all of the terms and conditions
+ of the Use Agreement located at
+ http://www.openmobilealliance.org/UseAgreement.html
+
+ You may use this document or any part of the document for internal
+ or educational purposes only, provided you do not modify, edit or
+ take out of context the information in this document in any manner.
+ Information contained in this document may be used, at your sole
+ risk, for any purposes.
+
+ You may not use this document in any other manner without the prior
+ written permission of the Open Mobile Alliance. The Open Mobile
+ Alliance authorizes you to copy this document, provided that you
+ retain all copyright and other proprietary notices contained in the
+ original materials on any copies of the materials and that you
+ comply strictly with these terms. This copyright permission does
+ not constitute an endorsement of the products or services. The
+ Open Mobile Alliance assumes no responsibility for errors or
+ omissions in this document.
+
+ Each Open Mobile Alliance member has agreed to use reasonable
+ endeavors to inform the Open Mobile Alliance in a timely manner of
+ Essential IPR as it becomes aware that the Essential IPR is related
+ to the prepared or published specification. However, the members
+ do not have an obligation to conduct IPR searches. The declared
+ Essential IPR is publicly available to members and non-members of
+ the Open Mobile Alliance and may be found on the "OMA IPR
+ Declarations" list at http://www.openmobilealliance.org/ipr.html.
+ The Open Mobile Alliance has not conducted an independent IPR review
+ of this document and the information contained herein, and makes no
+ representations or warranties regarding third party IPR, including
+ without limitation patents, copyrights or trade secret rights. This
+ document may contain inventions for which you must obtain licenses
+ from third parties before making, using or selling the inventions.
+ Defined terms above are set forth in the schedule to the Open Mobile
+ Alliance Application Form.
+
+ NO REPRESENTATIONS OR WARRANTIES (WHETHER EXPRESS OR IMPLIED) ARE
+ MADE BY THE OPEN MOBILE ALLIANCE OR ANY OPEN MOBILE ALLIANCE MEMBER
+ OR ITS AFFILIATES REGARDING ANY OF THE IPR'S REPRESENTED ON THE "OMA
+ IPR DECLARATIONS" LIST, INCLUDING, BUT NOT LIMITED TO THE ACCURACY,
+ COMPLETENESS, VALIDITY OR RELEVANCE OF THE INFORMATION OR WHETHER OR
+ NOT SUCH RIGHTS ARE ESSENTIAL OR NON-ESSENTIAL.
+
+ THE OPEN MOBILE ALLIANCE IS NOT LIABLE FOR AND HEREBY DISCLAIMS ANY
+ DIRECT, INDIRECT, PUNITIVE, SPECIAL, INCIDENTAL, CONSEQUENTIAL, OR
+ EXEMPLARY DAMAGES ARISING OUT OF OR IN CONNECTION WITH THE USE OF
+ DOCUMENTS AND THE INFORMATION CONTAINED IN THE DOCUMENTS.
+
+ Copyright 2008 Open Mobile Alliance Ltd. All Rights Reserved.
+ Used with the permission of the Open Mobile Alliance Ltd. under the
+ terms set forth above.
+-->
+
+<xs:schema targetNamespace="urn:oma:xml:xdm:xcap-error"
+ xmlns="urn:oma:xml:xdm:xcap-error"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified" attributeFormDefault="unqualified">
+
+ <!-- OMA specific "xcap-error" <extension> child element -->
+ <xs:element name="local-constraint-failure">
+ <xs:annotation>
+ <xs:documentation>This indicates that the requested operation would result in a
+ document that failed a data constraint defined by the local policy, but not
+ enforced by the schema, application usage or a uniqueness
+ constraint.</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence minOccurs="0">
+ <xs:element name="alt-value" minOccurs="0" maxOccurs="unbounded">
+ <xs:annotation>
+ <xs:documentation>An optional (set of) alternate value(s) can be
+ provided, proposing alternate value(s) for the indicated xcap-node.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="field" type="xs:string" use="required"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="description" minOccurs="0" maxOccurs="unbounded">
+ <xs:annotation>
+ <xs:documentation>An optional (set of) description(s) can be provided,
+ documenting the local constraint failure.</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute ref="xml:lang"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ <xs:attribute name="phrase" type="xs:string"/>
+ </xs:complexType>
+ </xs:element>
+
+</xs:schema>
OpenPOWER on IntegriCloud