2006-12-01 Atsushi Enomoto <atsushi@ximian.com>
authorAtsushi Eno <atsushieno@gmail.com>
Fri, 1 Dec 2006 10:21:15 +0000 (10:21 -0000)
committerAtsushi Eno <atsushieno@gmail.com>
Fri, 1 Dec 2006 10:21:15 +0000 (10:21 -0000)
* Makefile : added wsdl-1.1-soap.xsd to the build and distfiles.

* wsdl-1.1-soap.xsd : new file. WSDL 1.1 SOAP binding schema.
* SoapBinding.cs: implement Schema property.

svn path=/branches/atsushi/mcs/; revision=68822

mcs/class/System.Web.Services/ChangeLog
mcs/class/System.Web.Services/Makefile
mcs/class/System.Web.Services/System.Web.Services.Description/ChangeLog
mcs/class/System.Web.Services/System.Web.Services.Description/SoapBinding.cs
mcs/class/System.Web.Services/System.Web.Services.Description/wsdl-1.1-soap.xsd [new file with mode: 0644]

index 509cb3820ad2388b340c9adcadc0d315add7af2b..f174b514013bbb88205104790a6c28e392dee370 100644 (file)
@@ -1,3 +1,7 @@
+2006-12-01  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * Makefile : added wsdl-1.1-soap.xsd to the build and distfiles.
+
 2006-11-30  Atsushi Enomoto  <atsushi@ximian.com>
 
        * System.Web.Services.dll.sources :
index a97bfdad2c3cbf399c701f645bdb061d5af1e83c..48f6dede31332fb48089173dee36ad73026dcee2 100644 (file)
@@ -15,6 +15,7 @@ ifeq (net_2_0, $(PROFILE))
 LIB_MCS_FLAGS += \
        -r:System.Configuration.dll \
        -resource:System.Web.Services.Description/wsdl-1.1.xsd,wsdl-1.1.xsd \
+       -resource:System.Web.Services.Description/wsdl-1.1-soap.xsd,wsdl-1.1-soap.xsd \
        -resource:System.Web.Services.Description/web-reference.xsd,web-reference.xsd
 endif
 
@@ -23,6 +24,7 @@ TEST_MCS_FLAGS = $(LIB_MCS_FLAGS) -nowarn:618
 EXTRA_DISTFILES = \
        System.Web.Services.Description/web-reference.xsd       \
        System.Web.Services.Description/wsdl-1.1.xsd            \
+       System.Web.Services.Description/wsdl-1.1-soap.xsd       \
        System.Web.Services.Description/wsdl.genxs              \
        Test/System.Web.Services.Description/test.wsdl
 
index c707405fc4fee31b72881b396adcaf59eacdaedb..849d05feaf50c357e888eb8c8d3fa766dcf9f83b 100644 (file)
@@ -1,3 +1,8 @@
+2006-12-01  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * wsdl-1.1-soap.xsd : new file. WSDL 1.1 SOAP binding schema.
+       * SoapBinding.cs: implement Schema property.
+
 2006-12-01  Atsushi Enomoto  <atsushi@ximian.com>
 
        * ExtensionManager.cs : WebServicesSection.Instance -> .Current.
index e04d0ee527094f25089656287fb04b7253567ba3..55aded32114cd787c528113cc0acdaeda2a37da8 100644 (file)
@@ -30,6 +30,7 @@
 
 using System.ComponentModel;
 using System.Web.Services.Configuration;
+using System.Xml.Schema;
 using System.Xml.Serialization;
 
 namespace System.Web.Services.Description {
@@ -46,6 +47,10 @@ namespace System.Web.Services.Description {
                SoapBindingStyle style;
                string transport;
 
+#if NET_2_0
+               static XmlSchema schema;
+#endif
+
                #endregion // Fields
 
                #region Constructors
@@ -60,6 +65,17 @@ namespace System.Web.Services.Description {
 
                #region Properties
 
+#if NET_2_0
+               public static XmlSchema Schema {
+                       get {
+                               if (schema == null) {
+                                       schema = XmlSchema.Read (typeof (SoapBinding).Assembly.GetManifestResourceStream ("wsdl-1.1-soap.xsd"), null);
+                               }
+                               return schema;
+                       }
+               }
+#endif
+
                // LAMESPEC: .NET says that the default value is SoapBindingStyle.Document but
                // reflection shows this attribute is SoapBindingStyle.Default
 
diff --git a/mcs/class/System.Web.Services/System.Web.Services.Description/wsdl-1.1-soap.xsd b/mcs/class/System.Web.Services/System.Web.Services.Description/wsdl-1.1-soap.xsd
new file mode 100644 (file)
index 0000000..05e50bb
--- /dev/null
@@ -0,0 +1,149 @@
+<?xml version="1.0" encoding="UTF-8" ?> \r
+<!-- \r
\r
+Copyright 2001 - 2005, International Business Machines Corporation and Microsoft Corporation\r
+All Rights Reserved\r
+\r
+License for WSDL Schema Files\r
+\r
+The Authors grant permission to copy and distribute the WSDL Schema \r
+Files in any medium without fee or royalty as long as this notice and \r
+license are distributed with them.  The originals of these files can \r
+be located at:\r
+\r
+http://schemas.xmlsoap.org/wsdl/soap/2003-02-11.xsd\r
+\r
+THESE SCHEMA FILES ARE PROVIDED "AS IS," AND THE AUTHORS MAKE NO REPRESENTATIONS \r
+OR WARRANTIES, EXPRESS OR IMPLIED, REGARDING THESE FILES, INCLUDING, BUT NOT \r
+LIMITED TO, WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, \r
+NON-INFRINGEMENT OR TITLE.  THE AUTHORS WILL NOT BE LIABLE FOR ANY DIRECT, \r
+INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF OR \r
+RELATING TO ANY USE OR DISTRIBUTION OF THESE FILES.\r
+\r
+The name and trademarks of the Authors may NOT be used in any manner, \r
+including advertising or publicity pertaining to these files or any program \r
+or service that uses these files, written prior permission.  Title to copyright \r
+in these files will at all times remain with the Authors.\r
+\r
+No other rights are granted by implication, estoppel or otherwise.\r
+\r
+\r
+--> \r
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"\r
+           xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"\r
+           xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"\r
+           targetNamespace="http://schemas.xmlsoap.org/wsdl/soap/" >\r
+\r
+  <xs:import namespace = "http://schemas.xmlsoap.org/wsdl/" />\r
+\r
+  <xs:simpleType name="encodingStyle" >\r
+    <xs:annotation>\r
+      <xs:documentation>\r
+      "encodingStyle" indicates any canonicalization conventions followed in the contents of the containing element.  For example, the value "http://schemas.xmlsoap.org/soap/encoding/" indicates the pattern described in SOAP specification\r
+      </xs:documentation>\r
+    </xs:annotation>\r
+    <xs:list itemType="xs:anyURI" />\r
+  </xs:simpleType>\r
+\r
+  <xs:element name="binding" type="soap:tBinding" />\r
+  <xs:complexType name="tBinding" >\r
+    <xs:complexContent>\r
+      <xs:extension base="wsdl:tExtensibilityElement" >\r
+        <xs:attribute name="transport" type="xs:anyURI" use="required" />\r
+        <xs:attribute name="style" type="soap:tStyleChoice" use="optional" />\r
+      </xs:extension>\r
+    </xs:complexContent>\r
+  </xs:complexType>\r
+\r
+  <xs:simpleType name="tStyleChoice" >\r
+    <xs:restriction base="xs:string" >\r
+      <xs:enumeration value="rpc" />\r
+      <xs:enumeration value="document" />\r
+    </xs:restriction>\r
+  </xs:simpleType>\r
+\r
+  <xs:element name="operation" type="soap:tOperation" />\r
+  <xs:complexType name="tOperation" >\r
+    <xs:complexContent>\r
+      <xs:extension base="wsdl:tExtensibilityElement" >\r
+        <xs:attribute name="soapAction" type="xs:anyURI" use="optional" />\r
+        <xs:attribute name="style" type="soap:tStyleChoice" use="optional" />\r
+      </xs:extension>\r
+    </xs:complexContent>\r
+  </xs:complexType>\r
+\r
+  <xs:element name="body" type="soap:tBody" />\r
+  <xs:attributeGroup name="tBodyAttributes" >\r
+    <xs:attribute name="encodingStyle" type="soap:encodingStyle" use="optional" />        \r
+    <xs:attribute name="use" type="soap:useChoice" use="optional" />\r
+    <xs:attribute name="namespace" type="xs:anyURI" use="optional" />\r
+  </xs:attributeGroup>\r
+  <xs:complexType name="tBody" >\r
+    <xs:complexContent>\r
+      <xs:extension base="wsdl:tExtensibilityElement" >\r
+        <xs:attribute name="parts" type="xs:NMTOKENS" use="optional" />\r
+        <xs:attributeGroup ref = "soap:tBodyAttributes" />\r
+      </xs:extension>\r
+    </xs:complexContent>\r
+  </xs:complexType>\r
+  \r
+  <xs:simpleType name="useChoice" >\r
+    <xs:restriction base="xs:string" >\r
+      <xs:enumeration value="literal" />\r
+      <xs:enumeration value="encoded" />\r
+    </xs:restriction>\r
+  </xs:simpleType>\r
+\r
+  <xs:element name="fault" type="soap:tFault" />\r
+  <xs:complexType name="tFaultRes" abstract="true" >\r
+    <xs:complexContent>\r
+      <xs:restriction base="soap:tBody" >\r
+           <xs:attribute ref="wsdl:required" use="optional" /> \r
+        <xs:attribute name="parts" type="xs:NMTOKENS" use="prohibited" />\r
+               <xs:attributeGroup ref="soap:tBodyAttributes" />\r
+      </xs:restriction>\r
+    </xs:complexContent>       \r
+  </xs:complexType>\r
+  <xs:complexType name="tFault" >\r
+    <xs:complexContent>\r
+      <xs:extension base="soap:tFaultRes">\r
+        <xs:attribute name="name" type="xs:NCName" use="required" />\r
+      </xs:extension>\r
+    </xs:complexContent>\r
+  </xs:complexType>\r
+\r
+\r
+  <xs:element name="header" type="soap:tHeader" />\r
+  <xs:attributeGroup name="tHeaderAttributes" >\r
+    <xs:attribute name="message" type="xs:QName" use="required" />\r
+    <xs:attribute name="part" type="xs:NMTOKEN" use="required" />\r
+    <xs:attribute name="use" type="soap:useChoice" use="required" />\r
+    <xs:attribute name="encodingStyle" type="soap:encodingStyle" use="optional" />\r
+    <xs:attribute name="namespace" type="xs:anyURI" use="optional" />      \r
+  </xs:attributeGroup>\r
+  <xs:complexType name="tHeader" >\r
+    <xs:complexContent>\r
+      <xs:extension base="wsdl:tExtensibilityElement" >\r
+        <xs:sequence>\r
+          <xs:element ref="soap:headerfault" minOccurs="0" maxOccurs="unbounded" />\r
+        </xs:sequence>\r
+               <xs:attributeGroup ref="soap:tHeaderAttributes" />\r
+      </xs:extension>\r
+    </xs:complexContent>\r
+  </xs:complexType>\r
+\r
+  <xs:element name="headerfault" type="soap:tHeaderFault" />\r
+  <xs:complexType name="tHeaderFault" >\r
+       <xs:attributeGroup ref="soap:tHeaderAttributes" />\r
+  </xs:complexType>\r
+\r
+  <xs:element name="address" type="soap:tAddress" />\r
+  <xs:complexType name="tAddress" >\r
+    <xs:complexContent>\r
+      <xs:extension base="wsdl:tExtensibilityElement" >\r
+        <xs:attribute name="location" type="xs:anyURI" use="required" />\r
+      </xs:extension>\r
+    </xs:complexContent>\r
+  </xs:complexType>\r
+\r
+</xs:schema>
\ No newline at end of file