You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ibatis.apache.org by gb...@apache.org on 2005/03/24 22:28:23 UTC
svn commit: r158949 [3/3] -
incubator/ibatis/trunk/cs/mapper/IBatisNet.Common/Utilities
incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess/Configuration
incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper
incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test
incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration
incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/ResultMapping
incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Configuration/Statements
incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements
incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Scope
Modified: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/MappedStatement.cs
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/MappedStatement.cs?view=diff&r1=158948&r2=158949
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/MappedStatement.cs (original)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/MappedStatements/MappedStatement.cs Thu Mar 24 13:28:19 2005
@@ -1027,7 +1027,7 @@
{
string selectStatement = mapping.Select;
- if (selectStatement.Length == 0 && mapping.ResultMap == null)
+ if (selectStatement.Length == 0 && mapping.NestedResultMap == null)
{
// If the property is not a 'select' ResultProperty
// or a 'resultMap' ResultProperty
@@ -1068,12 +1068,12 @@
}
#endregion
}
- else if (mapping.ResultMap != null) // 'resultMap' ResultProperty
+ else if (mapping.NestedResultMap != null) // 'resultMap' ResultProperty
{
object obj = null;
- obj = mapping.ResultMap.CreateInstanceOfResult();
- FillObjectWithReaderAndResultMap(request, reader, mapping.ResultMap, obj);
+ obj = mapping.NestedResultMap.CreateInstanceOfResult();
+ FillObjectWithReaderAndResultMap(request, reader, mapping.NestedResultMap, obj);
MappedStatement.SetValueOfProperty( ref target, mapping, obj );
}
else //'select' ResultProperty
Added: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Scope/ConfigurationScope.cs
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Scope/ConfigurationScope.cs?view=auto&rev=158949
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Scope/ConfigurationScope.cs (added)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Scope/ConfigurationScope.cs Thu Mar 24 13:28:19 2005
@@ -0,0 +1,285 @@
+
+#region Apache Notice
+/*****************************************************************************
+ * $Header: $
+ * $Revision: $
+ * $Date: $
+ *
+ * iBATIS.NET Data Mapper
+ * Copyright (C) 2004 - Gilles Bayon
+ *
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ ********************************************************************************/
+#endregion
+
+#region Using
+using System;
+using System.Data;
+using System.Collections;
+using System.Collections.Specialized;
+using System.Xml;
+
+using IBatisNet.DataMapper;
+using IBatisNet.Common;
+
+#endregion
+
+namespace IBatisNet.DataMapper.Scope
+{
+ /// <summary>
+ /// The ConfigurationScope maintains the state of the build process.
+ /// </summary>
+ public class ConfigurationScope
+ {
+ #region Fields
+
+ private ErrorContext _errorContext = null;
+ private HybridDictionary _providers = new HybridDictionary();
+ private NameValueCollection _properties = new NameValueCollection();
+
+ private XmlDocument _sqlMapConfigDocument = null;
+ private XmlDocument _sqlMapDocument = null;
+ private XmlNode _nodeContext = null;
+
+ private bool _useConfigFileWatcher = false;
+ private bool _useStatementNamespaces = false;
+ private bool _isCacheModelsEnabled = false;
+ private bool _isCallFromDao = false;
+
+ private SqlMapper _sqlMapper = null;
+ private string _sqlMapNamespace = null;
+ private DataSource _dataSource = null;
+ private bool _isXmlValid = true;
+
+ #endregion
+
+ #region Constructors
+
+ /// <summary>
+ /// Default constructor
+ /// </summary>
+ public ConfigurationScope()
+ {
+ _errorContext = new ErrorContext();
+
+ _providers.Clear();
+ }
+ #endregion
+
+ #region Properties
+
+ /// <summary>
+ /// Tells us if the xml configuration file validate the schema
+ /// </summary>
+ public bool IsXmlValid
+ {
+ set
+ {
+ _isXmlValid = value;
+ }
+ get
+ {
+ return _isXmlValid;
+ }
+ }
+
+
+ /// <summary>
+ /// A SqlMap namespace.
+ /// </summary>
+ public string SqlMapNamespace
+ {
+ set
+ {
+ _sqlMapNamespace = value;
+ }
+ get
+ {
+ return _sqlMapNamespace;
+ }
+ }
+
+ /// <summary>
+ /// The SqlMapper we are building.
+ /// </summary>
+ public SqlMapper SqlMapper
+ {
+ set
+ {
+ _sqlMapper = value;
+ }
+ get
+ {
+ return _sqlMapper;
+ }
+ }
+
+ /// <summary>
+ /// Tell us if we are in a DataAccess context.
+ /// </summary>
+ public bool IsCallFromDao
+ {
+ set
+ {
+ _isCallFromDao = value;
+ }
+ get
+ {
+ return _isCallFromDao;
+ }
+ }
+
+ /// <summary>
+ /// Tell us if we cache model is enabled.
+ /// </summary>
+ public bool IsCacheModelsEnabled
+ {
+ set
+ {
+ _isCacheModelsEnabled = value;
+ }
+ get
+ {
+ return _isCacheModelsEnabled;
+ }
+ }
+
+
+ /// <summary>
+ /// External data source
+ /// </summary>
+ public DataSource DataSource
+ {
+ set
+ {
+ _dataSource = value;
+ }
+ get
+ {
+ return _dataSource;
+ }
+ }
+
+ /// <summary>
+ /// The current context node we are analizing
+ /// </summary>
+ public XmlNode NodeContext
+ {
+ set
+ {
+ _nodeContext = value;
+ }
+ get
+ {
+ return _nodeContext;
+ }
+ }
+
+ /// <summary>
+ /// The XML SqlMap config file
+ /// </summary>
+ public XmlDocument SqlMapConfigDocument
+ {
+ set
+ {
+ _sqlMapConfigDocument = value;
+ }
+ get
+ {
+ return _sqlMapConfigDocument;
+ }
+ }
+
+ /// <summary>
+ /// A XML SqlMap file
+ /// </summary>
+ public XmlDocument SqlMapDocument
+ {
+ set
+ {
+ _sqlMapDocument = value;
+ }
+ get
+ {
+ return _sqlMapDocument;
+ }
+ }
+
+ /// <summary>
+ /// Tell us if we use Configuration File Watcher
+ /// </summary>
+ public bool UseConfigFileWatcher
+ {
+ set
+ {
+ _useConfigFileWatcher = value;
+ }
+ get
+ {
+ return _useConfigFileWatcher;
+ }
+ }
+
+ /// <summary>
+ /// Tell us if we use statements namespaces
+ /// </summary>
+ public bool UseStatementNamespaces
+ {
+ set
+ {
+ _useStatementNamespaces = value;
+ }
+ get
+ {
+ return _useStatementNamespaces;
+ }
+ }
+
+ /// <summary>
+ /// Get the request's error context
+ /// </summary>
+ public ErrorContext ErrorContext
+ {
+ get
+ {
+ return _errorContext;
+ }
+ }
+
+ /// <summary>
+ /// List of providers
+ /// </summary>
+ public HybridDictionary Providers
+ {
+ get
+ {
+ return _providers;
+ }
+ }
+
+ /// <summary>
+ /// List of global properties
+ /// </summary>
+ public NameValueCollection Properties
+ {
+ get
+ {
+ return _properties;
+ }
+ }
+
+ #endregion
+ }
+}
Modified: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Scope/ErrorContext.cs
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Scope/ErrorContext.cs?view=diff&r1=158948&r2=158949
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Scope/ErrorContext.cs (original)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Scope/ErrorContext.cs Thu Mar 24 13:28:19 2005
@@ -44,7 +44,6 @@
private string _activity;
private string _objectId;
private string _moreInfo;
- private Exception _cause;
#endregion
#region Properties
@@ -85,19 +84,8 @@
set { _moreInfo = value; }
}
- /// <summary>
- /// The cause of the error
- /// </summary>
- public Exception Cause
- {
- get { return _cause; }
- set { _cause = value; }
- }
-
#endregion
-
-
/// <summary>
/// Clear the error context
/// </summary>
@@ -107,7 +95,6 @@
_activity = string.Empty;;
_objectId = string.Empty;;
_moreInfo = string.Empty;;
- _cause = null;
}
/// <summary>
@@ -118,43 +105,43 @@
{
StringBuilder message = new StringBuilder();
- // resource
- if (_resource != null)
- {
- message.Append(" \n--- The error occurred in ");
- message.Append(_resource);
- message.Append(".");
- }
-
// activity
if (_activity != null)
{
- message.Append(" \n--- The error occurred while ");
+ message.Append("\n- The error occurred while ");
message.Append(_activity);
message.Append(".");
- }
-
- // object
- if (_objectId != null)
- {
- message.Append(" \n--- Check the ");
- message.Append(_objectId);
- message.Append(".");
- }
+ }
// more info
if (_moreInfo != null)
{
- message.Append(" \n--- ");
+ message.Append("\n- ");
message.Append(_moreInfo);
}
+
+ // resource
+ if (_resource != null)
+ {
+ message.Append("\n- The error occurred in ");
+ message.Append(_resource);
+ message.Append(".");
+ }
- // cause
- if (_cause != null)
+ // object
+ if (_objectId != null)
{
- message.Append(" \n--- Cause: ");
- message.Append(_cause.ToString());
+ message.Append(" \n- Check the ");
+ message.Append(_objectId);
+ message.Append(".");
}
+
+// // cause
+// if (_cause != null)
+// {
+// message.Append("\n- Cause: ");
+// message.Append(_cause.ToString());
+// }
return message.ToString();
}
Modified: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Scope/RequestScope.cs
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Scope/RequestScope.cs?view=diff&r1=158948&r2=158949
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Scope/RequestScope.cs (original)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/Scope/RequestScope.cs Thu Mar 24 13:28:19 2005
@@ -63,8 +63,6 @@
}
#endregion
-
-
#region Properties
/// <summary>
@@ -141,7 +139,5 @@
_resultMap = _initialResultMap;
}
#endregion
-
-
}
}
Added: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/SqlMap.xsd
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/SqlMap.xsd?view=auto&rev=158949
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/SqlMap.xsd (added)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/SqlMap.xsd Thu Mar 24 13:28:19 2005
@@ -0,0 +1,713 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
+targetNamespace="http://tempuri.org/SqlMap.xsd" >
+ <xs:element name="alias">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="typeAlias" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="cacheModel">
+ <xs:complexType>
+ <xs:sequence maxOccurs="unbounded">
+ <xs:element ref="flushInterval" minOccurs="0"/>
+ <xs:element ref="flushOnExecute" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="property" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="id" type="xs:string" use="required"/>
+ <xs:attribute name="implementation" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="LRU"/>
+ <xs:enumeration value="MEMORY"/>
+ <xs:enumeration value="FIFO"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="cacheModels">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="cacheModel" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="procedure">
+ <xs:complexType mixed="true">
+ <xs:attribute name="id" type="xs:string" use="required"/>
+ <xs:attribute name="parameterMap" type="xs:string" use="required"/>
+ <xs:attribute name="resultMap" type="xs:string"/>
+ <xs:attribute name="resultClass" type="xs:string"/>
+ <xs:attribute name="cacheModel" type="xs:string"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="delete">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="generate"/>
+ <xs:element ref="isEmpty"/>
+ <xs:element ref="isEqual"/>
+ <xs:element ref="isGreaterEqual"/>
+ <xs:element ref="isGreaterThan"/>
+ <xs:element ref="isLessThan"/>
+ <xs:element ref="isLessEqual"/>
+ <xs:element ref="isNotEmpty"/>
+ <xs:element ref="isNotEqual"/>
+ <xs:element ref="isNotNull"/>
+ <xs:element ref="isNotParameterPresent"/>
+ <xs:element ref="isNotPropertyAvailable"/>
+ <xs:element ref="isNull"/>
+ <xs:element ref="isParameterPresent"/>
+ <xs:element ref="isPropertyAvailable"/>
+ <xs:element ref="iterate"/>
+ </xs:choice>
+ <xs:attribute name="id" use="required"/>
+ <xs:attribute name="parameterMap" type="xs:string"/>
+ <xs:attribute name="parameterClass" type="xs:string"/>
+ <xs:attribute name="extends" type="xs:string"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="dynamic">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="isEmpty"/>
+ <xs:element ref="isEqual"/>
+ <xs:element ref="isGreaterEqual"/>
+ <xs:element ref="isGreaterThan"/>
+ <xs:element ref="isLessThan"/>
+ <xs:element ref="isLessEqual"/>
+ <xs:element ref="isNotEmpty"/>
+ <xs:element ref="isNotEqual"/>
+ <xs:element ref="isNotNull"/>
+ <xs:element ref="isNotParameterPresent"/>
+ <xs:element ref="isNotPropertyAvailable"/>
+ <xs:element ref="isNull"/>
+ <xs:element ref="isParameterPresent"/>
+ <xs:element ref="isPropertyAvailable"/>
+ <xs:element ref="iterate"/>
+ </xs:choice>
+ <xs:attribute name="prepend" type="xs:string"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="flushInterval">
+ <xs:complexType>
+ <xs:attribute name="milliseconds" type="xs:byte"/>
+ <xs:attribute name="seconds" type="xs:byte"/>
+ <xs:attribute name="minutes" type="xs:byte"/>
+ <xs:attribute name="hours" type="xs:byte"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="flushOnExecute">
+ <xs:complexType>
+ <xs:attribute name="statement" type="xs:string" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="generate">
+ <xs:complexType>
+ <xs:attribute name="table" type="xs:string" use="required"/>
+ <xs:attribute name="by" type="xs:string"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="insert">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="selectKey"/>
+ <xs:element ref="generate"/>
+ <xs:element ref="dynamic"/>
+ <xs:element ref="isEmpty"/>
+ <xs:element ref="isEqual"/>
+ <xs:element ref="isGreaterEqual"/>
+ <xs:element ref="isGreaterThan"/>
+ <xs:element ref="isLessThan"/>
+ <xs:element ref="isLessEqual"/>
+ <xs:element ref="isNotEmpty"/>
+ <xs:element ref="isNotEqual"/>
+ <xs:element ref="isNotNull"/>
+ <xs:element ref="isNotParameterPresent"/>
+ <xs:element ref="isNotPropertyAvailable"/>
+ <xs:element ref="isNull"/>
+ <xs:element ref="isParameterPresent"/>
+ <xs:element ref="isPropertyAvailable"/>
+ <xs:element ref="iterate"/>
+ </xs:choice>
+ <xs:attribute name="id" type="xs:string" use="required"/>
+ <xs:attribute name="parameterClass" type="xs:string"/>
+ <xs:attribute name="parameterMap" type="xs:string"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="isNotParameterPresent">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="isEmpty"/>
+ <xs:element ref="isEqual"/>
+ <xs:element ref="isGreaterEqual"/>
+ <xs:element ref="isGreaterThan"/>
+ <xs:element ref="isLessThan"/>
+ <xs:element ref="isLessEqual"/>
+ <xs:element ref="isNotEmpty"/>
+ <xs:element ref="isNotEqual"/>
+ <xs:element ref="isNotNull"/>
+ <xs:element ref="isNotParameterPresent"/>
+ <xs:element ref="isNotPropertyAvailable"/>
+ <xs:element ref="isNull"/>
+ <xs:element ref="isParameterPresent"/>
+ <xs:element ref="isPropertyAvailable"/>
+ <xs:element ref="iterate"/>
+ </xs:choice>
+ <xs:attribute name="prepend" type="xs:string"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="isNotPropertyAvailable">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="isEmpty"/>
+ <xs:element ref="isEqual"/>
+ <xs:element ref="isGreaterEqual"/>
+ <xs:element ref="isGreaterThan"/>
+ <xs:element ref="isLessThan"/>
+ <xs:element ref="isLessEqual"/>
+ <xs:element ref="isNotEmpty"/>
+ <xs:element ref="isNotEqual"/>
+ <xs:element ref="isNotNull"/>
+ <xs:element ref="isNotParameterPresent"/>
+ <xs:element ref="isNotPropertyAvailable"/>
+ <xs:element ref="isNull"/>
+ <xs:element ref="isParameterPresent"/>
+ <xs:element ref="isPropertyAvailable"/>
+ <xs:element ref="iterate"/>
+ </xs:choice>
+ <xs:attribute name="prepend" type="xs:string"/>
+ <xs:attribute name="property" type="xs:string" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="isEmpty">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="isEmpty"/>
+ <xs:element ref="isEqual"/>
+ <xs:element ref="isGreaterEqual"/>
+ <xs:element ref="isGreaterThan"/>
+ <xs:element ref="isLessThan"/>
+ <xs:element ref="isLessEqual"/>
+ <xs:element ref="isNotEmpty"/>
+ <xs:element ref="isNotEqual"/>
+ <xs:element ref="isNotNull"/>
+ <xs:element ref="isNotParameterPresent"/>
+ <xs:element ref="isNotPropertyAvailable"/>
+ <xs:element ref="isNull"/>
+ <xs:element ref="isParameterPresent"/>
+ <xs:element ref="isPropertyAvailable"/>
+ <xs:element ref="iterate"/>
+ </xs:choice>
+ <xs:attribute name="prepend" type="xs:string"/>
+ <xs:attribute name="property" type="xs:string"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="isEqual">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="isEmpty"/>
+ <xs:element ref="isEqual"/>
+ <xs:element ref="isGreaterEqual"/>
+ <xs:element ref="isGreaterThan"/>
+ <xs:element ref="isLessThan"/>
+ <xs:element ref="isLessEqual"/>
+ <xs:element ref="isNotEmpty"/>
+ <xs:element ref="isNotEqual"/>
+ <xs:element ref="isNotNull"/>
+ <xs:element ref="isNotParameterPresent"/>
+ <xs:element ref="isNotPropertyAvailable"/>
+ <xs:element ref="isNull"/>
+ <xs:element ref="isParameterPresent"/>
+ <xs:element ref="isPropertyAvailable"/>
+ <xs:element ref="iterate"/>
+ </xs:choice>
+ <xs:attribute name="prepend" type="xs:string"/>
+ <xs:attribute name="property" type="xs:string"/>
+ <xs:attribute name="compareProperty" type="xs:string"/>
+ <xs:attribute name="compareValue" type="xs:string"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="isNull">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="isEmpty"/>
+ <xs:element ref="isEqual"/>
+ <xs:element ref="isGreaterEqual"/>
+ <xs:element ref="isGreaterThan"/>
+ <xs:element ref="isLessThan"/>
+ <xs:element ref="isLessEqual"/>
+ <xs:element ref="isNotEmpty"/>
+ <xs:element ref="isNotEqual"/>
+ <xs:element ref="isNotNull"/>
+ <xs:element ref="isNotParameterPresent"/>
+ <xs:element ref="isNotPropertyAvailable"/>
+ <xs:element ref="isNull"/>
+ <xs:element ref="isParameterPresent"/>
+ <xs:element ref="isPropertyAvailable"/>
+ <xs:element ref="iterate"/>
+ </xs:choice>
+ <xs:attribute name="prepend" type="xs:string"/>
+ <xs:attribute name="property" type="xs:string"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="isGreaterEqual">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="isEmpty"/>
+ <xs:element ref="isEqual"/>
+ <xs:element ref="isGreaterEqual"/>
+ <xs:element ref="isGreaterThan"/>
+ <xs:element ref="isLessThan"/>
+ <xs:element ref="isLessEqual"/>
+ <xs:element ref="isNotEmpty"/>
+ <xs:element ref="isNotEqual"/>
+ <xs:element ref="isNotNull"/>
+ <xs:element ref="isNotParameterPresent"/>
+ <xs:element ref="isNotPropertyAvailable"/>
+ <xs:element ref="isNull"/>
+ <xs:element ref="isParameterPresent"/>
+ <xs:element ref="isPropertyAvailable"/>
+ <xs:element ref="iterate"/>
+ </xs:choice>
+ <xs:attribute name="prepend" type="xs:string"/>
+ <xs:attribute name="property" type="xs:string"/>
+ <xs:attribute name="compareProperty" type="xs:string"/>
+ <xs:attribute name="compareValue" type="xs:string"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="isGreaterThan">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="isEmpty"/>
+ <xs:element ref="isEqual"/>
+ <xs:element ref="isGreaterEqual"/>
+ <xs:element ref="isGreaterThan"/>
+ <xs:element ref="isLessThan"/>
+ <xs:element ref="isLessEqual"/>
+ <xs:element ref="isNotEmpty"/>
+ <xs:element ref="isNotEqual"/>
+ <xs:element ref="isNotNull"/>
+ <xs:element ref="isNotParameterPresent"/>
+ <xs:element ref="isNotPropertyAvailable"/>
+ <xs:element ref="isNull"/>
+ <xs:element ref="isParameterPresent"/>
+ <xs:element ref="isPropertyAvailable"/>
+ <xs:element ref="iterate"/>
+ </xs:choice>
+ <xs:attribute name="prepend" type="xs:string"/>
+ <xs:attribute name="property" type="xs:string"/>
+ <xs:attribute name="compareProperty" type="xs:string"/>
+ <xs:attribute name="compareValue" type="xs:string"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="isLessEqual">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="isEmpty"/>
+ <xs:element ref="isEqual"/>
+ <xs:element ref="isGreaterEqual"/>
+ <xs:element ref="isGreaterThan"/>
+ <xs:element ref="isLessThan"/>
+ <xs:element ref="isLessEqual"/>
+ <xs:element ref="isNotEmpty"/>
+ <xs:element ref="isNotEqual"/>
+ <xs:element ref="isNotNull"/>
+ <xs:element ref="isNotParameterPresent"/>
+ <xs:element ref="isNotPropertyAvailable"/>
+ <xs:element ref="isNull"/>
+ <xs:element ref="isParameterPresent"/>
+ <xs:element ref="isPropertyAvailable"/>
+ <xs:element ref="iterate"/>
+ </xs:choice>
+ <xs:attribute name="prepend" type="xs:string"/>
+ <xs:attribute name="property" type="xs:string"/>
+ <xs:attribute name="compareProperty" type="xs:string"/>
+ <xs:attribute name="compareValue" type="xs:string"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="isLessThan">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="isEmpty"/>
+ <xs:element ref="isEqual"/>
+ <xs:element ref="isGreaterEqual"/>
+ <xs:element ref="isGreaterThan"/>
+ <xs:element ref="isLessThan"/>
+ <xs:element ref="isLessEqual"/>
+ <xs:element ref="isNotEmpty"/>
+ <xs:element ref="isNotEqual"/>
+ <xs:element ref="isNotNull"/>
+ <xs:element ref="isNotParameterPresent"/>
+ <xs:element ref="isNotPropertyAvailable"/>
+ <xs:element ref="isNull"/>
+ <xs:element ref="isParameterPresent"/>
+ <xs:element ref="isPropertyAvailable"/>
+ <xs:element ref="iterate"/>
+ </xs:choice>
+ <xs:attribute name="prepend" type="xs:string"/>
+ <xs:attribute name="property" type="xs:string"/>
+ <xs:attribute name="compareProperty" type="xs:string"/>
+ <xs:attribute name="compareValue" type="xs:string"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="isNotEmpty">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="isEmpty"/>
+ <xs:element ref="isEqual"/>
+ <xs:element ref="isGreaterEqual"/>
+ <xs:element ref="isGreaterThan"/>
+ <xs:element ref="isLessThan"/>
+ <xs:element ref="isLessEqual"/>
+ <xs:element ref="isNotEmpty"/>
+ <xs:element ref="isNotEqual"/>
+ <xs:element ref="isNotNull"/>
+ <xs:element ref="isNotParameterPresent"/>
+ <xs:element ref="isNotPropertyAvailable"/>
+ <xs:element ref="isNull"/>
+ <xs:element ref="isParameterPresent"/>
+ <xs:element ref="isPropertyAvailable"/>
+ <xs:element ref="iterate"/>
+ </xs:choice>
+ <xs:attribute name="prepend" type="xs:string"/>
+ <xs:attribute name="property" type="xs:string"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="isNotEqual">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="isEmpty"/>
+ <xs:element ref="isEqual"/>
+ <xs:element ref="isGreaterEqual"/>
+ <xs:element ref="isGreaterThan"/>
+ <xs:element ref="isLessThan"/>
+ <xs:element ref="isLessEqual"/>
+ <xs:element ref="isNotEmpty"/>
+ <xs:element ref="isNotEqual"/>
+ <xs:element ref="isNotNull"/>
+ <xs:element ref="isNotParameterPresent"/>
+ <xs:element ref="isNotPropertyAvailable"/>
+ <xs:element ref="isNull"/>
+ <xs:element ref="isParameterPresent"/>
+ <xs:element ref="isPropertyAvailable"/>
+ <xs:element ref="iterate"/>
+ </xs:choice>
+ <xs:attribute name="prepend" type="xs:string"/>
+ <xs:attribute name="property" type="xs:string"/>
+ <xs:attribute name="compareProperty" type="xs:string"/>
+ <xs:attribute name="compareValue" type="xs:string"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="isNotNull">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="isEmpty"/>
+ <xs:element ref="isEqual"/>
+ <xs:element ref="isGreaterEqual"/>
+ <xs:element ref="isGreaterThan"/>
+ <xs:element ref="isLessThan"/>
+ <xs:element ref="isLessEqual"/>
+ <xs:element ref="isNotEmpty"/>
+ <xs:element ref="isNotEqual"/>
+ <xs:element ref="isNotNull"/>
+ <xs:element ref="isNotParameterPresent"/>
+ <xs:element ref="isNotPropertyAvailable"/>
+ <xs:element ref="isNull"/>
+ <xs:element ref="isParameterPresent"/>
+ <xs:element ref="isPropertyAvailable"/>
+ <xs:element ref="iterate"/>
+ </xs:choice>
+ <xs:attribute name="prepend" type="xs:string"/>
+ <xs:attribute name="property" type="xs:string"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="isParameterPresent">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="isEmpty"/>
+ <xs:element ref="isEqual"/>
+ <xs:element ref="isGreaterEqual"/>
+ <xs:element ref="isGreaterThan"/>
+ <xs:element ref="isLessThan"/>
+ <xs:element ref="isLessEqual"/>
+ <xs:element ref="isNotEmpty"/>
+ <xs:element ref="isNotEqual"/>
+ <xs:element ref="isNotNull"/>
+ <xs:element ref="isNotParameterPresent"/>
+ <xs:element ref="isNotPropertyAvailable"/>
+ <xs:element ref="isNull"/>
+ <xs:element ref="isParameterPresent"/>
+ <xs:element ref="isPropertyAvailable"/>
+ <xs:element ref="iterate"/>
+ </xs:choice>
+ <xs:attribute name="prepend" type="xs:string"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="isPropertyAvailable">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="isEmpty"/>
+ <xs:element ref="isEqual"/>
+ <xs:element ref="isGreaterEqual"/>
+ <xs:element ref="isGreaterThan"/>
+ <xs:element ref="isLessThan"/>
+ <xs:element ref="isLessEqual"/>
+ <xs:element ref="isNotEmpty"/>
+ <xs:element ref="isNotEqual"/>
+ <xs:element ref="isNotNull"/>
+ <xs:element ref="isNotParameterPresent"/>
+ <xs:element ref="isNotPropertyAvailable"/>
+ <xs:element ref="isNull"/>
+ <xs:element ref="isParameterPresent"/>
+ <xs:element ref="isPropertyAvailable"/>
+ <xs:element ref="iterate"/>
+ </xs:choice>
+ <xs:attribute name="prepend" type="xs:string"/>
+ <xs:attribute name="property" type="xs:string" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="iterate">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="isEmpty"/>
+ <xs:element ref="isEqual"/>
+ <xs:element ref="isGreaterEqual"/>
+ <xs:element ref="isGreaterThan"/>
+ <xs:element ref="isLessThan"/>
+ <xs:element ref="isLessEqual"/>
+ <xs:element ref="isNotEmpty"/>
+ <xs:element ref="isNotEqual"/>
+ <xs:element ref="isNotNull"/>
+ <xs:element ref="isNotParameterPresent"/>
+ <xs:element ref="isNotPropertyAvailable"/>
+ <xs:element ref="isNull"/>
+ <xs:element ref="isParameterPresent"/>
+ <xs:element ref="isPropertyAvailable"/>
+ <xs:element ref="iterate"/>
+ </xs:choice>
+ <xs:attribute name="open" type="xs:string" use="required"/>
+ <xs:attribute name="close" type="xs:string" use="required"/>
+ <xs:attribute name="conjunction" type="xs:string" use="required"/>
+ <xs:attribute name="property" type="xs:string"/>
+ <xs:attribute name="prepend" type="xs:string"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="parameter">
+ <xs:complexType>
+ <xs:attribute name="property" type="xs:string" use="required"/>
+ <xs:attribute name="column" type="xs:string"/>
+ <xs:attribute name="nullValue" type="xs:string"/>
+ <xs:attribute name="type" type="xs:string"/>
+ <xs:attribute name="dbType" type="xs:string"/>
+ <xs:attribute name="size" type="xs:string"/>
+ <xs:attribute name="scale" type="xs:string"/>
+ <xs:attribute name="precision" type="xs:string"/>
+ <xs:attribute name="direction">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="Input"/>
+ <xs:enumeration value="Output"/>
+ <xs:enumeration value="InputOutput"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="parameterMap">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="parameter" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="id" type="xs:string" use="required"/>
+ <xs:attribute name="class" type="xs:string"/>
+ <xs:attribute name="extends" type="xs:string"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="parameterMaps">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="parameterMap" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="property">
+ <xs:complexType>
+ <xs:attribute name="name" type="xs:string" use="required"/>
+ <xs:attribute name="value" type="xs:string" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="result">
+ <xs:complexType>
+ <xs:attribute name="property" type="xs:string" use="required"/>
+ <xs:attribute name="column" type="xs:string"/>
+ <xs:attribute name="lazyLoad">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="false"/>
+ <xs:enumeration value="true"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="select" type="xs:string"/>
+ <xs:attribute name="nullValue" type="xs:string"/>
+ <xs:attribute name="type" type="xs:string"/>
+ <xs:attribute name="dbType" type="xs:string"/>
+ <xs:attribute name="columnIndex" type="xs:string"/>
+ <xs:attribute name="resultMapping" type="xs:string"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="resultMap">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="result" maxOccurs="unbounded"/>
+ </xs:sequence>
+ <xs:attribute name="id" type="xs:string" use="required"/>
+ <xs:attribute name="class" type="xs:string" use="required"/>
+ <xs:attribute name="extends" type="xs:string"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="resultMaps">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="resultMap" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="select">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="dynamic"/>
+ <xs:element ref="isEmpty"/>
+ <xs:element ref="isEqual"/>
+ <xs:element ref="isGreaterEqual"/>
+ <xs:element ref="isGreaterThan"/>
+ <xs:element ref="isLessThan"/>
+ <xs:element ref="isLessEqual"/>
+ <xs:element ref="isNotEmpty"/>
+ <xs:element ref="isNotEqual"/>
+ <xs:element ref="isNotNull"/>
+ <xs:element ref="isNotParameterPresent"/>
+ <xs:element ref="isNotPropertyAvailable"/>
+ <xs:element ref="isNull"/>
+ <xs:element ref="isParameterPresent"/>
+ <xs:element ref="isPropertyAvailable"/>
+ <xs:element ref="iterate"/>
+ <xs:element ref="generate"/>
+ </xs:choice>
+ <xs:attribute name="id" type="xs:string" use="required"/>
+ <xs:attribute name="parameterClass" type="xs:string"/>
+ <xs:attribute name="resultMap" type="xs:string"/>
+ <xs:attribute name="resultClass" type="xs:string"/>
+ <xs:attribute name="parameterMap" type="xs:string"/>
+ <xs:attribute name="cacheModel" type="xs:string"/>
+ <xs:attribute name="extends" type="xs:string"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="selectKey">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="property" type="xs:string" use="required"/>
+ <xs:attribute name="type" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="post"/>
+ <xs:enumeration value="pre"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="resultClass" type="xs:string" use="required"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="sqlMap">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="alias" minOccurs="0"/>
+ <xs:element ref="cacheModels" minOccurs="0"/>
+ <xs:element ref="resultMaps" minOccurs="0"/>
+ <xs:element ref="statements"/>
+ <xs:element ref="parameterMaps" minOccurs="0"/>
+ </xs:sequence>
+ <xs:attribute name="namespace" type="xs:string" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="statement">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="dynamic"/>
+ <xs:element ref="isEmpty"/>
+ <xs:element ref="isEqual"/>
+ <xs:element ref="isGreaterEqual"/>
+ <xs:element ref="isGreaterThan"/>
+ <xs:element ref="isLessThan"/>
+ <xs:element ref="isLessEqual"/>
+ <xs:element ref="isNotEmpty"/>
+ <xs:element ref="isNotEqual"/>
+ <xs:element ref="isNotNull"/>
+ <xs:element ref="isNotParameterPresent"/>
+ <xs:element ref="isNotPropertyAvailable"/>
+ <xs:element ref="isNull"/>
+ <xs:element ref="isParameterPresent"/>
+ <xs:element ref="isPropertyAvailable"/>
+ <xs:element ref="iterate"/>
+ </xs:choice>
+ <xs:attribute name="id" type="xs:string" use="required"/>
+ <xs:attribute name="parameterClass" type="xs:string"/>
+ <xs:attribute name="resultMap" type="xs:string"/>
+ <xs:attribute name="resultClass" type="xs:string"/>
+ <xs:attribute name="parameterMap" type="xs:string"/>
+ <xs:attribute name="listClass" type="xs:string"/>
+ <xs:attribute name="cacheModel" type="xs:string"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="statements">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="statement"/>
+ <xs:element ref="insert"/>
+ <xs:element ref="update"/>
+ <xs:element ref="delete"/>
+ <xs:element ref="select"/>
+ <xs:element ref="procedure"/>
+ </xs:choice>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="typeAlias">
+ <xs:complexType>
+ <xs:attribute name="alias" type="xs:string" use="required"/>
+ <xs:attribute name="type" type="xs:string" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="update">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="generate"/>
+ <xs:element ref="dynamic"/>
+ <xs:element ref="isEmpty"/>
+ <xs:element ref="isEqual"/>
+ <xs:element ref="isGreaterEqual"/>
+ <xs:element ref="isGreaterThan"/>
+ <xs:element ref="isLessThan"/>
+ <xs:element ref="isLessEqual"/>
+ <xs:element ref="isNotEmpty"/>
+ <xs:element ref="isNotEqual"/>
+ <xs:element ref="isNotNull"/>
+ <xs:element ref="isNotParameterPresent"/>
+ <xs:element ref="isNotPropertyAvailable"/>
+ <xs:element ref="isNull"/>
+ <xs:element ref="isParameterPresent"/>
+ <xs:element ref="isPropertyAvailable"/>
+ <xs:element ref="iterate"/>
+ </xs:choice>
+ <xs:attribute name="id" type="xs:string" use="required"/>
+ <xs:attribute name="parameterMap" type="xs:string"/>
+ <xs:attribute name="parameterClass" type="xs:string"/>
+ <xs:attribute name="extends" type="xs:string"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
Added: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/SqlMapConfig.xsd
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/SqlMapConfig.xsd?view=auto&rev=158949
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/SqlMapConfig.xsd (added)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/SqlMapConfig.xsd Thu Mar 24 13:28:19 2005
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
+targetNamespace="http://tempuri.org/SqlMap.xsd" >
+ <xs:element name="alias">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="typeAlias"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="dataSource">
+ <xs:complexType>
+ <xs:attribute name="name" type="xs:string" use="required"/>
+ <xs:attribute name="connectionString" type="xs:string" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="database">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="provider"/>
+ <xs:element ref="dataSource"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="properties">
+ <xs:complexType>
+ <xs:attribute name="resource" type="xs:string"/>
+ <xs:attribute name="url" type="xs:string"/>
+ <xs:attribute name="embeded" type="xs:string"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="provider">
+ <xs:complexType>
+ <xs:attribute name="name" type="xs:string" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="setting">
+ <xs:complexType>
+ <xs:attribute name="useStatementNamespaces" type="xs:boolean"/>
+ <xs:attribute name="cacheModelsEnabled" type="xs:boolean"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="settings">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="setting" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="sqlMap">
+ <xs:complexType>
+ <xs:attribute name="resource" type="xs:string"/>
+ <xs:attribute name="url" type="xs:string"/>
+ <xs:attribute name="embeded" type="xs:string"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="sqlMapConfig">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="settings" minOccurs="0" maxOccurs="1"/>
+ <xs:element ref="properties" minOccurs="0" maxOccurs="1"/>
+ <xs:element ref="database" minOccurs="0" maxOccurs="1"/>
+ <xs:element ref="alias" minOccurs="0" maxOccurs="1"/>
+ <xs:element ref="sqlMaps" minOccurs="0" maxOccurs="1"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="sqlMaps">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="sqlMap" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="typeAlias">
+ <xs:complexType>
+ <xs:attribute name="alias" type="xs:string" use="required"/>
+ <xs:attribute name="type" type="xs:string" use="required"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
Modified: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/SqlMapper.cs
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/SqlMapper.cs?view=diff&r1=158948&r2=158949
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/SqlMapper.cs (original)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper/SqlMapper.cs Thu Mar 24 13:28:19 2005
@@ -1110,7 +1110,7 @@
/// <summary>
- /// Get the DataSource
+ /// The DataSource
/// </summary>
public DataSource DataSource
{