<Type Name="RelaxngDatatypeProvider" FullName="Commons.Xml.Relaxng.RelaxngDatatypeProvider">
  <TypeSignature Language="C#" Value="public abstract class RelaxngDatatypeProvider" Maintainer="auto" />
  <AssemblyInfo>
    <AssemblyName>Commons.Xml.Relaxng</AssemblyName>
    <AssemblyPublicKey>[00 24 00 00 04 80 00 00 94 00 00 00 06 02 00 00 00 24 00 00 52 53 41 31 00 04 00 00 01 00 01 00 79 15 99 77 D2 D0 3A 8E 6B EA 7A 2E 74 E8 D1 AF CC 93 E8 85 19 74 95 2B B4 80 A1 2C 91 34 47 4D 04 06 24 47 C3 7E 0E 68 C0 80 53 6F CF 3C 3F BE 2F F9 C9 79 CE 99 84 75 E5 06 E8 CE 82 DD 5B 0F 35 0D C1 0E 93 BF 2E EE CF 87 4B 24 77 0C 50 81 DB EA 74 47 FD DA FA 27 7B 22 DE 47 D6 FF EA 44 96 74 A4 F9 FC CF 84 D1 50 69 08 93 80 28 4D BD D3 5F 46 CD FF 12 A1 BD 78 E4 EF 00 65 D0 16 DF]</AssemblyPublicKey>
    <AssemblyVersion>1.0.5000.0</AssemblyVersion>
  </AssemblyInfo>
  <ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the <link location="node:gtk-sharp/programming/threads">Gtk# Thread Programming</link> for details.</ThreadSafetyStatement>
  <Docs>
    <summary>
      <para>This class functions as a provider for data type support for "data" and "value" patterns. Usually, RELAX NG recognizes each datatype by its "datatypeLibrary" and the type (local) name, but this class is designed to just return datatypes by the type's qualified name.
	</para>
      <para>
	Each data type is represented as a <see cref="T:Commons.Xml.Relaxng.RelaxngDatatype" /> instance. The datatype class abstract and can be used to support custom datatypes.
	</para>
      <remarks>
        <para>By default, <see cref="P:Commons.Xml.Relaxng.RelaxngMergedProvider.DefaultProvider" /> is used to support RELAX NG "string" and "token" datatypes, plus XML Schema primitive datatypes indentified by the following URL: http://www.w3.org/2001/XMLSchema-datatypes .
	</para>
      </remarks>
    </summary>
    <remarks>To be added.</remarks>
  </Docs>
  <Base>
    <BaseTypeName>System.Object</BaseTypeName>
  </Base>
  <Interfaces />
  <Members>
    <Member MemberName="GetDatatype">
      <MemberSignature Language="C#" Value="public abstract Commons.Xml.Relaxng.RelaxngDatatype GetDatatype (string name, string ns, Commons.Xml.Relaxng.RelaxngParamList parameters);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>Commons.Xml.Relaxng.RelaxngDatatype</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="name" Type="System.String" />
        <Parameter Name="ns" Type="System.String" />
        <Parameter Name="parameters" Type="Commons.Xml.Relaxng.RelaxngParamList" />
      </Parameters>
      <Docs>
        <summary>Returns each datatype idenfitied by its local name and datatype library namespace. Derived classes should return null if the target type is not supported by the provider itself.</summary>
        <param name="name">a <see cref="T:System.String" /> that represents the local name of the datatype.</param>
        <param name="ns">a URI <see cref="T:System.String" /> that represents the datatype library namespace.</param>
        <param name="parameters">a <see cref="T:Commons.Xml.Relaxng.RelaxngParamList" />; list of datatype parameters.</param>
        <returns>a <see cref="T:Commons.Xml.Relaxng.RelaxngDatatype" /> identified by the name and datatype library, customized by the parameters.</returns>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="protected RelaxngDatatypeProvider ();" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters />
      <Docs>
        <summary>Creates an instance of this type.</summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
  </Members>
</Type>
