private void Initialize(IDtdParserAdapter readerAdapter)
{
Debug.Assert(readerAdapter != null);
_readerAdapter = readerAdapter;
#if !SILVERLIGHT
_readerAdapterWithValidation = readerAdapter as IDtdParserAdapterWithValidation;
#endif
_nameTable = readerAdapter.NameTable;
#if !SILVERLIGHT
IDtdParserAdapterWithValidation raWithValidation = readerAdapter as IDtdParserAdapterWithValidation;
if (raWithValidation != null)
{
_validate = raWithValidation.DtdValidation;
}
IDtdParserAdapterV1 raV1 = readerAdapter as IDtdParserAdapterV1;
if (raV1 != null)
{
_v1Compat = raV1.V1CompatibilityMode;
_normalize = raV1.Normalization;
_supportNamespaces = raV1.Namespaces;
}
#endif
_schemaInfo = new SchemaInfo();
#if !SILVERLIGHT
_schemaInfo.SchemaType = SchemaType.DTD;
#endif
_stringBuilder = new StringBuilder();
Uri baseUri = readerAdapter.BaseUri;
if (baseUri != null)
{
_documentBaseUri = baseUri.ToString();
}
_freeFloatingDtd = false;
}