Validating with the Operations Schema

"Hare, Michael" <Michael.Hare@us.fujitsu.com> Fri, 02 June 2006 14:46 UTC

Received: from [10.91.34.44] (helo=ietf-mx.ietf.org) by megatron.ietf.org with esmtp (Exim 4.43) id 1FmAvA-0006sg-Or for netconf-archive@lists.ietf.org; Fri, 02 Jun 2006 10:46:40 -0400
Received: from psg.com ([147.28.0.62]) by ietf-mx.ietf.org with esmtp (Exim 4.43) id 1FmAv9-0005fB-34 for netconf-archive@lists.ietf.org; Fri, 02 Jun 2006 10:46:40 -0400
Received: from majordom by psg.com with local (Exim 4.60 (FreeBSD)) (envelope-from <owner-netconf@ops.ietf.org>) id 1FmAqX-000B8P-I9 for netconf-data@psg.com; Fri, 02 Jun 2006 14:41:53 +0000
X-Spam-Checker-Version: SpamAssassin 3.1.1 (2006-03-10) on psg.com
X-Spam-Level:
X-Spam-Status: No, score=-2.5 required=5.0 tests=BAYES_00,FORGED_RCVD_HELO, HTML_MESSAGE autolearn=ham version=3.1.1
Received: from [168.127.0.57] (helo=fncnmp04.fnc.fujitsu.com) by psg.com with esmtp (Exim 4.60 (FreeBSD)) (envelope-from <Michael.Hare@us.fujitsu.com>) id 1FmAqS-000B88-3D for netconf@ops.ietf.org; Fri, 02 Jun 2006 14:41:48 +0000
Received: from rchemx01.fnc.net.local ([167.254.101.101]) by fncnmp04.fnc.fujitsu.com with ESMTP; 02 Jun 2006 09:41:47 -0500
X-IronPort-AV: i="4.05,204,1146459600"; d="scan'208,217"; a="26002593:sNHT28102952"
X-MimeOLE: Produced By Microsoft Exchange V6.5.7226.0
Content-class: urn:content-classes:message
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="----_=_NextPart_001_01C68652.AC92D897"
Subject: Validating with the Operations Schema
Date: Fri, 02 Jun 2006 09:41:46 -0500
Message-ID: <50B73C8966FCF840BABA099651DBE060011AB335@rchemx01.fnc.net.local>
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Thread-Topic: Validating with the Operations Schema
Thread-Index: AcaGUqy6ogQLhoHEQQ636nQCMMSDBQ==
From: "Hare, Michael" <Michael.Hare@us.fujitsu.com>
To: "Netconf Mailing List (E-mail)" <netconf@ops.ietf.org>
Sender: owner-netconf@ops.ietf.org
Precedence: bulk
X-Spam-Score: 0.1 (/)
X-Scan-Signature: 4fc59e88b356924367ae169e6a06365d

Working through draft-ietf-netconf-prot-12 I find that the example XML provided does not validate using the XSD provided in the same document.
The main problem I have run into is the schema does not allow any content within the <config>, <filter> or <data> nodes; the schema defines these to be an empty set.
I have made a few changes to the XSD to allow validation:

For <config> the original XSD definition is:

	<xs:complexType name="configInlineType">
		<xs:complexContent>
			<xs:restriction base="xs:anyType"/>
		</xs:complexContent>
	</xs:complexType>

By definition http://www.w3.org/TR/xmlschema-1/#key-efm, this resolves to an empty set.

By changing this to:

	<xs:complexType name="configInlineType">
		<xs:sequence>
			<xs:any namespace="##other" processContents="lax"/>
		</xs:sequence>
	</xs:complexType>

I am able to add elements from my namespace as a payload for <config> which I believe is the desired results.

The other changes are along the same lines.

For the <data> type definition:

	<xs:complexType name="dataInlineType">
		<xs:complexContent>
			<xs:restriction base="xs:anyType"/>
		</xs:complexContent>
	</xs:complexType>

Also resolved to an empty set.
I changed this to:

	<xs:complexType name="dataInlineType">
		<xs:sequence>
			<xs:any namespace="##other" processContents="lax"/>
		</xs:sequence>
	</xs:complexType>

and finally, the <filter> definition:

	<xs:complexType name="filterInlineType">
		<xs:complexContent>
			<xs:restriction base="xs:anyType">
				<xs:attribute name="type" type="FilterType" default="subtree"/>
			</xs:restriction>
		</xs:complexContent>
	</xs:complexType>

Is also resolved to an empty set.
I changed this to:

	<xs:complexType name="filterInlineType" mixed="true">
		<xs:sequence>
			<xs:any namespace="##other" processContents="lax" minOccurs="0"/>
		</xs:sequence>
		<xs:attribute name="type" type="FilterType" default="subtree"/>
	</xs:complexType>

with the added attribute: mixed="true" to allow including XPath expression when the 'type' attribute is set to 'xpath'

Are these valid changes to the Base XSD, or am I missing something?

Thanks,
---------------------------------
Michael Hare
NMI Engineering
Fujitsu Network Communications

GnuPG Key fingerprint = 1AD4 726D E359 A31D 05BF  ACE5 CA93 7AD5 D8E3 A876