Silverlight 5 WinRT

public sealed class CollectionDataContractAttribute public sealed class CollectionDataContractAttribute
: Attribute, _Attribute : Attribute, _Attribute
public Boolean IsReference { get; set; } public Boolean IsReference { get; set; }
public String ItemName { get; set; } public String ItemName { get; set; }
public String KeyName { get; set; } public String KeyName { get; set; }
public String Name { get; set; } public String Name { get; set; }
public String Namespace { get; set; } public String Namespace { get; set; }
public String ValueName { get; set; } public String ValueName { get; set; }

public sealed class ContractNamespaceAttribute public sealed class ContractNamespaceAttribute
: Attribute, _Attribute : Attribute, _Attribute
public String ClrNamespace { get; set; } public String ClrNamespace { get; set; }
public String ContractNamespace { get; } public String ContractNamespace { get; }

public sealed class DataContractAttribute public sealed class DataContractAttribute
: Attribute, _Attribute : Attribute, _Attribute
public Boolean IsReference { get; set; } public Boolean IsReference { get; set; }
public String Name { get; set; } public String Name { get; set; }
public String Namespace { get; set; } public String Namespace { get; set; }

  class DataContract
 
  public XmlDictionaryString Namespace { get; set; }
  static public DataContract GetBuiltInDataContract(Type type);
  static public DataContract GetBuiltInDataContract(String name, String ns);
  static public DataContract GetBuiltInDataContract(String typeName);
  static public Boolean TryCreateBuiltInDataContract(Type type, out DataContract& dataContract);
  static public Boolean TryCreateBuiltInDataContract(String name, String ns, out DataContract& dataContract);

  public abstract class DataContractResolver
 
  public abstract virtual Type ResolveName(String typeName, String typeNamespace, Type declaredType, DataContractResolver knownTypeResolver);
  public abstract virtual Boolean TryResolveType(Type type, Type declaredType, DataContractResolver knownTypeResolver, out XmlDictionaryString& typeName, out XmlDictionaryString& typeNamespace);

public sealed class DataContractSerializer public sealed class DataContractSerializer
: XmlObjectSerializer : XmlObjectSerializer
  public DataContractResolver DataContractResolver { get; }
  public IDataContractSurrogate DataContractSurrogate { get; }
public Boolean IgnoreExtensionDataObject { get; } public Boolean IgnoreExtensionDataObject { get; }
public ReadOnlyCollection`1<Type> KnownTypes { get; } public ReadOnlyCollection`1<Type> KnownTypes { get; }
public Int32 MaxItemsInObjectGraph { get; } public Int32 MaxItemsInObjectGraph { get; }
public Boolean PreserveObjectReferences { get; } public Boolean PreserveObjectReferences { get; }
  public Boolean SerializeReadOnlyTypes { get; }
public virtual Boolean IsStartObject(XmlReader reader); public virtual Boolean IsStartObject(XmlReader reader);
public virtual Boolean IsStartObject(XmlDictionaryReader reader); public virtual Boolean IsStartObject(XmlDictionaryReader reader);
public virtual Object ReadObject(XmlReader reader); public virtual Object ReadObject(XmlReader reader);
public virtual Object ReadObject(XmlReader reader, Boolean verifyObjectName); public virtual Object ReadObject(XmlReader reader, Boolean verifyObjectName);
public virtual Object ReadObject(XmlDictionaryReader reader, Boolean verifyObjectName); public virtual Object ReadObject(XmlDictionaryReader reader, Boolean verifyObjectName);
  public Object ReadObject(XmlDictionaryReader reader, Boolean verifyObjectName, DataContractResolver dataContractResolver);
public virtual void WriteEndObject(XmlWriter writer); public virtual void WriteEndObject(XmlWriter writer);
public virtual void WriteEndObject(XmlDictionaryWriter writer); public virtual void WriteEndObject(XmlDictionaryWriter writer);
public virtual void WriteObject(XmlWriter writer, Object graph); public virtual void WriteObject(XmlWriter writer, Object graph);
  public void WriteObject(XmlDictionaryWriter writer, Object graph, DataContractResolver dataContractResolver);
public virtual void WriteObjectContent(XmlWriter writer, Object graph); public virtual void WriteObjectContent(XmlWriter writer, Object graph);
public virtual void WriteObjectContent(XmlDictionaryWriter writer, Object graph); public virtual void WriteObjectContent(XmlDictionaryWriter writer, Object graph);
public virtual void WriteStartObject(XmlWriter writer, Object graph); public virtual void WriteStartObject(XmlWriter writer, Object graph);
public virtual void WriteStartObject(XmlDictionaryWriter writer, Object graph); public virtual void WriteStartObject(XmlDictionaryWriter writer, Object graph);

  public class DataContractSerializerSettings
 
  public DataContractResolver DataContractResolver { get; set; }
  public IDataContractSurrogate DataContractSurrogate { get; set; }
  public Boolean IgnoreExtensionDataObject { get; set; }
  public IEnumerable`1<Type> KnownTypes { get; set; }
  public Int32 MaxItemsInObjectGraph { get; set; }
  public Boolean PreserveObjectReferences { get; set; }
  public XmlDictionaryString RootName { get; set; }
  public XmlDictionaryString RootNamespace { get; set; }
  public Boolean SerializeReadOnlyTypes { get; set; }

public sealed class DataMemberAttribute public sealed class DataMemberAttribute
: Attribute, _Attribute : Attribute, _Attribute
public Boolean EmitDefaultValue { get; set; } public Boolean EmitDefaultValue { get; set; }
public Boolean IsRequired { get; set; } public Boolean IsRequired { get; set; }
public String Name { get; set; } public String Name { get; set; }
public Int32 Order { get; set; } public Int32 Order { get; set; }

  public class DateTimeFormat
 
  public DateTimeStyles DateTimeStyles { get; set; }
  public IFormatProvider FormatProvider { get; }
  public String FormatString { get; }

class CollectionDataContract+DictionaryEnumerator  
: IEnumerator`1<KeyValue`2<Object, Object>>, IDisposable, IEnumerator  
public virtual KeyValue`2<Object, Object> Current { get; }  
public virtual void Dispose();  
public virtual Boolean MoveNext();  
public virtual void Reset();  

  class CollectionDataContract
  : IEnumerator`1<KeyValue`2<Object, Object>>, IDisposable, IEnumerator
  public virtual KeyValue`2<Object, Object> Current { get; }
  public virtual void Dispose();
  public virtual Boolean MoveNext();
  public virtual void Reset();

  public sealed enum EmitTypeInformation
  : IComparable, IFormattable, IConvertible
  { AsNeeded, Always, Never }

public sealed class EnumMemberAttribute public sealed class EnumMemberAttribute
: Attribute, _Attribute : Attribute, _Attribute
public String Value { get; set; } public String Value { get; set; }

  public class ExportOptions
 
  public IDataContractSurrogate DataContractSurrogate { get; set; }
  public Collection`1<Type> KnownTypes { get; }

  public sealed class ExtensionDataObject
 

  public abstract class Formatter
  : IFormatter
  public abstract virtual SerializationBinder Binder { get; set; }
  public abstract virtual StreamingContext Context { get; set; }
  public abstract virtual ISurrogateSelector SurrogateSelector { get; set; }
  public abstract virtual Object Deserialize(Stream serializationStream);
  protected virtual Object GetNext(out Int64& objID);
  protected virtual Int64 Schedule(Object obj);
  public abstract virtual void Serialize(Stream serializationStream, Object graph);
  protected abstract virtual void WriteArray(Object obj, String name, Type memberType);
  protected abstract virtual void WriteBoolean(Boolean val, String name);
  protected abstract virtual void WriteByte(Byte val, String name);
  protected abstract virtual void WriteChar(Char val, String name);
  protected abstract virtual void WriteDateTime(DateTime val, String name);
  protected abstract virtual void WriteDecimal(Decimal val, String name);
  protected abstract virtual void WriteDouble(Double val, String name);
  protected abstract virtual void WriteInt16(Int16 val, String name);
  protected abstract virtual void WriteInt32(Int32 val, String name);
  protected abstract virtual void WriteInt64(Int64 val, String name);
  protected virtual void WriteMember(String memberName, Object data);
  protected abstract virtual void WriteObjectRef(Object obj, String name, Type memberType);
  protected abstract virtual void WriteSByte(SByte val, String name);
  protected abstract virtual void WriteSingle(Single val, String name);
  protected abstract virtual void WriteTimeSpan(TimeSpan val, String name);
  protected abstract virtual void WriteUInt16(UInt16 val, String name);
  protected abstract virtual void WriteUInt32(UInt32 val, String name);
  protected abstract virtual void WriteUInt64(UInt64 val, String name);
  protected abstract virtual void WriteValueType(Object obj, String name, Type memberType);

  public class FormatterConverter
  : IFormatterConverter
  public virtual Object Convert(Object value, Type type);
  public virtual Object Convert(Object value, TypeCode typeCode);
  public virtual Boolean ToBoolean(Object value);
  public virtual Byte ToByte(Object value);
  public virtual Char ToChar(Object value);
  public virtual DateTime ToDateTime(Object value);
  public virtual Decimal ToDecimal(Object value);
  public virtual Double ToDouble(Object value);
  public virtual Int16 ToInt16(Object value);
  public virtual Int32 ToInt32(Object value);
  public virtual Int64 ToInt64(Object value);
  public virtual SByte ToSByte(Object value);
  public virtual Single ToSingle(Object value);
  public virtual String ToString(Object value);
  public virtual UInt16 ToUInt16(Object value);
  public virtual UInt32 ToUInt32(Object value);
  public virtual UInt64 ToUInt64(Object value);

  public sealed class FormatterServices
 
  static public void CheckTypeSecurity(Type t, TypeFilterLevel securityLevel);
  static public Object GetObjectData(Object obj, MemberInfo[] members);
  static public Object GetSafeUninitializedObject(Type type);
  static public MemberInfo GetSerializableMembers(Type type);
  static public MemberInfo GetSerializableMembers(Type type, StreamingContext context);
  static public ISerializationSurrogate GetSurrogateForCyclicalReference(ISerializationSurrogate innerSurrogate);
  static public Type GetTypeFromAssembly(Assembly assem, String name);
  static public Object GetUninitializedObject(Type type);
  static public Object PopulateObjectMembers(Object obj, MemberInfo members, Object[] data);

class CollectionDataContract+GenericDictionaryEnumerator`2<K, V>  
: IEnumerator`1<KeyValue`2<K, V>>, IDisposable, IEnumerator  
public virtual KeyValue`2<K, V> Current { get; }  
public virtual void Dispose();  
public virtual Boolean MoveNext();  
public virtual void Reset();  

  class CollectionDataContract<K, V>
  : IEnumerator`1<KeyValue`2<K, V>>, IDisposable, IEnumerator
  public virtual KeyValue`2<K, V> Current { get; }
  public virtual void Dispose();
  public virtual Boolean MoveNext();
  public virtual void Reset();

  public abstract interface IDataContractSurrogate
 
  public abstract virtual Object GetCustomDataToExport(MemberInfo memberInfo, Type dataContractType);
  public abstract virtual Object GetCustomDataToExport(Type clrType, Type dataContractType);
  public abstract virtual Type GetDataContractType(Type type);
  public abstract virtual Object GetDeserializedObject(Object obj, Type targetType);
  public abstract virtual void GetKnownCustomDataTypes(Collection`1<Type> customDataTypes);
  public abstract virtual Object GetObjectToSerialize(Object obj, Type targetType);
  public abstract virtual Type GetReferencedTypeOnImport(String typeName, String typeNamespace, Object customData);
  public abstract virtual CodeTypeDeclaration ProcessImportedType(CodeTypeDeclaration typeDeclaration, CodeCompileUnit compileUnit);

  public abstract interface IDeserializationCallback
 
  public abstract virtual void OnDeserialization(Object sender);

  public abstract interface IExtensibleDataObject
 
  public abstract virtual ExtensionDataObject ExtensionData { get; set; }

  public abstract interface IFormatter
 
  public abstract virtual SerializationBinder Binder { get; set; }
  public abstract virtual StreamingContext Context { get; set; }
  public abstract virtual ISurrogateSelector SurrogateSelector { get; set; }
  public abstract virtual Object Deserialize(Stream serializationStream);
  public abstract virtual void Serialize(Stream serializationStream, Object graph);

  public abstract interface IFormatterConverter
 
  public abstract virtual Object Convert(Object value, Type type);
  public abstract virtual Object Convert(Object value, TypeCode typeCode);
  public abstract virtual Boolean ToBoolean(Object value);
  public abstract virtual Byte ToByte(Object value);
  public abstract virtual Char ToChar(Object value);
  public abstract virtual DateTime ToDateTime(Object value);
  public abstract virtual Decimal ToDecimal(Object value);
  public abstract virtual Double ToDouble(Object value);
  public abstract virtual Int16 ToInt16(Object value);
  public abstract virtual Int32 ToInt32(Object value);
  public abstract virtual Int64 ToInt64(Object value);
  public abstract virtual SByte ToSByte(Object value);
  public abstract virtual Single ToSingle(Object value);
  public abstract virtual String ToString(Object value);
  public abstract virtual UInt16 ToUInt16(Object value);
  public abstract virtual UInt32 ToUInt32(Object value);
  public abstract virtual UInt64 ToUInt64(Object value);

public sealed class IgnoreDataMemberAttribute public sealed class IgnoreDataMemberAttribute
: Attribute, _Attribute : Attribute, _Attribute

  public class ImportOptions
 
  public CodeDomProvider CodeProvider { get; set; }
  public IDataContractSurrogate DataContractSurrogate { get; set; }
  public Boolean EnableDataBinding { get; set; }
  public Boolean GenerateInternal { get; set; }
  public Boolean GenerateSerializable { get; set; }
  public Boolean ImportXmlType { get; set; }
  public IDictionary`2<String, String> Namespaces { get; }
  public ICollection`1<Type> ReferencedCollectionTypes { get; }
  public ICollection`1<Type> ReferencedTypes { get; }

public class InvalidDataContractException public class InvalidDataContractException
: Exception, _Exception : Exception, ISerializable, _Exception

  public abstract interface IObjectReference
 
  public abstract virtual Object GetRealObject(StreamingContext context);

  public abstract interface ISafeSerializationData
 
  public abstract virtual void CompleteDeserialization(Object deserialized);

  public abstract interface ISerializable
 
  public abstract virtual void GetObjectData(SerializationInfo info, StreamingContext context);

  public abstract interface ISerializationSurrogate
 
  public abstract virtual void GetObjectData(Object obj, SerializationInfo info, StreamingContext context);
  public abstract virtual Object SetObjectData(Object obj, SerializationInfo info, StreamingContext context, ISurrogateSelector selector);

  public abstract interface ISurrogateSelector
 
  public abstract virtual void ChainSelector(ISurrogateSelector selector);
  public abstract virtual ISurrogateSelector GetNextSelector();
  public abstract virtual ISerializationSurrogate GetSurrogate(Type type, StreamingContext context, out ISurrogateSelector& selector);

public sealed class KnownTypeAttribute public sealed class KnownTypeAttribute
: Attribute, _Attribute : Attribute, _Attribute
public String MethodName { get; } public String MethodName { get; }
public Type Type { get; } public Type Type { get; }

  public sealed class NetDataContractSerializer
  : XmlObjectSerializer, IFormatter
  public FormatterAssemblyStyle AssemblyFormat { get; set; }
  public virtual SerializationBinder Binder { get; set; }
  public virtual StreamingContext Context { get; set; }
  public Boolean IgnoreExtensionDataObject { get; }
  public Int32 MaxItemsInObjectGraph { get; }
  public virtual ISurrogateSelector SurrogateSelector { get; set; }
  public virtual Object Deserialize(Stream stream);
  public virtual Boolean IsStartObject(XmlReader reader);
  public virtual Boolean IsStartObject(XmlDictionaryReader reader);
  public virtual Object ReadObject(XmlReader reader);
  public virtual Object ReadObject(XmlReader reader, Boolean verifyObjectName);
  public virtual Object ReadObject(XmlDictionaryReader reader, Boolean verifyObjectName);
  public virtual void Serialize(Stream stream, Object graph);
  public virtual void WriteEndObject(XmlWriter writer);
  public virtual void WriteEndObject(XmlDictionaryWriter writer);
  public virtual void WriteObject(XmlWriter writer, Object graph);
  public virtual void WriteObjectContent(XmlWriter writer, Object graph);
  public virtual void WriteObjectContent(XmlDictionaryWriter writer, Object graph);
  public virtual void WriteStartObject(XmlWriter writer, Object graph);
  public virtual void WriteStartObject(XmlDictionaryWriter writer, Object graph);

  public class ObjectIDGenerator
 
  public virtual Int64 GetId(Object obj, out Boolean& firstTime);
  public virtual Int64 HasId(Object obj, out Boolean& firstTime);

  public class ObjectManager
 
  public virtual void DoFixups();
  public virtual Object GetObject(Int64 objectID);
  public virtual void RaiseDeserializationEvent();
  public void RaiseOnDeserializingEvent(Object obj);
  public virtual void RecordArrayElementFixup(Int64 arrayToBeFixed, Int32 indices, Int64 objectRequired);
  public virtual void RecordArrayElementFixup(Int64 arrayToBeFixed, Int32 index, Int64 objectRequired);
  public virtual void RecordDelayedFixup(Int64 objectToBeFixed, String memberName, Int64 objectRequired);
  public virtual void RecordFixup(Int64 objectToBeFixed, MemberInfo member, Int64 objectRequired);
  public virtual void RegisterObject(Object obj, Int64 objectID);
  public void RegisterObject(Object obj, Int64 objectID, SerializationInfo info);
  public void RegisterObject(Object obj, Int64 objectID, SerializationInfo info, Int64 idOfContainingObj, MemberInfo member);
  public void RegisterObject(Object obj, Int64 objectID, SerializationInfo info, Int64 idOfContainingObj, MemberInfo member, Int32 arrayIndex);

public sealed class OnDeserializedAttribute public sealed class OnDeserializedAttribute
: Attribute, _Attribute : Attribute, _Attribute

public sealed class OnDeserializingAttribute public sealed class OnDeserializingAttribute
: Attribute, _Attribute : Attribute, _Attribute

public sealed class OnSerializedAttribute public sealed class OnSerializedAttribute
: Attribute, _Attribute : Attribute, _Attribute

public sealed class OnSerializingAttribute public sealed class OnSerializingAttribute
: Attribute, _Attribute : Attribute, _Attribute

  public sealed class OptionalFieldAttribute
  : Attribute, _Attribute
  public Int32 VersionAdded { get; set; }

  public sealed class SafeSerializationEventArgs
  : EventArgs
  public StreamingContext StreamingContext { get; }
  public void AddSerializedState(ISafeSerializationData serializedState);

  public abstract class SerializationBinder
 
  public virtual void BindToName(Type serializedType, out String& assemblyName, out String& typeName);
  public abstract virtual Type BindToType(String assemblyName, String typeName);

  public sealed struct SerializationEntry
  : ValueType
  public String Name { get; }
  public Type ObjectType { get; }
  public Object Value { get; }

public class SerializationException public class SerializationException
: SystemException, _Exception : SystemException, ISerializable, _Exception

  public sealed class SerializationInfo
 
  public String AssemblyName { get; set; }
  public String FullTypeName { get; set; }
  public Boolean IsAssemblyNameSetExplicit { get; }
  public Boolean IsFullTypeNameSetExplicit { get; }
  public Int32 MemberCount { get; }
  public Type ObjectType { get; }
  public void AddValue(String name, Object value, Type type);
  public void AddValue(String name, Object value);
  public void AddValue(String name, Boolean value);
  public void AddValue(String name, Char value);
  public void AddValue(String name, SByte value);
  public void AddValue(String name, Byte value);
  public void AddValue(String name, Int16 value);
  public void AddValue(String name, UInt16 value);
  public void AddValue(String name, Int32 value);
  public void AddValue(String name, UInt32 value);
  public void AddValue(String name, Int64 value);
  public void AddValue(String name, UInt64 value);
  public void AddValue(String name, Single value);
  public void AddValue(String name, Double value);
  public void AddValue(String name, Decimal value);
  public void AddValue(String name, DateTime value);
  public Boolean GetBoolean(String name);
  public Byte GetByte(String name);
  public Char GetChar(String name);
  public DateTime GetDateTime(String name);
  public Decimal GetDecimal(String name);
  public Double GetDouble(String name);
  public SerializationInfoEnumerator GetEnumerator();
  public Int16 GetInt16(String name);
  public Int32 GetInt32(String name);
  public Int64 GetInt64(String name);
  public SByte GetSByte(String name);
  public Single GetSingle(String name);
  public String GetString(String name);
  public UInt16 GetUInt16(String name);
  public UInt32 GetUInt32(String name);
  public UInt64 GetUInt64(String name);
  public Object GetValue(String name, Type type);
  public void SetType(Type type);

  public sealed class SerializationInfoEnumerator
  : IEnumerator
  public SerializationEntry Current { get; }
  public String Name { get; }
  public Type ObjectType { get; }
  public Object Value { get; }
  public virtual Boolean MoveNext();
  public virtual void Reset();

  public sealed class SerializationObjectManager
 
  public void RaiseOnSerializedEvent();
  public void RegisterObject(Object obj);

public sealed struct StreamingContext public sealed struct StreamingContext
: ValueType : ValueType
public Object Context { get; } public Object Context { get; }
public StreamingContextStates State { get; } public StreamingContextStates State { get; }
public virtual Boolean Equals(Object obj); public virtual Boolean Equals(Object obj);
public virtual Int32 GetHashCode(); public virtual Int32 GetHashCode();

public sealed enum StreamingContextStates public sealed enum StreamingContextStates
: IComparable, IFormattable, IConvertible : IComparable, IFormattable, IConvertible
{ CrossProcess, CrossMachine, File, Persistence, Remoting, Other, Clone, CrossAppDomain, All } { CrossProcess, CrossMachine, File, Persistence, Remoting, Other, Clone, CrossAppDomain, All }

  public class SurrogateSelector
  : ISurrogateSelector
  public virtual void AddSurrogate(Type type, StreamingContext context, ISerializationSurrogate surrogate);
  public virtual void ChainSelector(ISurrogateSelector selector);
  public virtual ISurrogateSelector GetNextSelector();
  public virtual ISerializationSurrogate GetSurrogate(Type type, StreamingContext context, out ISurrogateSelector& selector);
  public virtual void RemoveSurrogate(Type type, StreamingContext context);

public abstract class XmlObjectSerializer public abstract class XmlObjectSerializer
public virtual Boolean IsStartObject(XmlReader reader); public virtual Boolean IsStartObject(XmlReader reader);
public abstract virtual Boolean IsStartObject(XmlDictionaryReader reader); public abstract virtual Boolean IsStartObject(XmlDictionaryReader reader);
public virtual Object ReadObject(Stream stream); public virtual Object ReadObject(Stream stream);
public virtual Object ReadObject(XmlReader reader); public virtual Object ReadObject(XmlReader reader);
public virtual Object ReadObject(XmlDictionaryReader reader); public virtual Object ReadObject(XmlDictionaryReader reader);
public virtual Object ReadObject(XmlReader reader, Boolean verifyObjectName); public virtual Object ReadObject(XmlReader reader, Boolean verifyObjectName);
public abstract virtual Object ReadObject(XmlDictionaryReader reader, Boolean verifyObjectName); public abstract virtual Object ReadObject(XmlDictionaryReader reader, Boolean verifyObjectName);
public abstract virtual void WriteEndObject(XmlDictionaryWriter writer); public abstract virtual void WriteEndObject(XmlDictionaryWriter writer);
public virtual void WriteEndObject(XmlWriter writer); public virtual void WriteEndObject(XmlWriter writer);
public virtual void WriteObject(Stream stream, Object graph); public virtual void WriteObject(Stream stream, Object graph);
public virtual void WriteObject(XmlWriter writer, Object graph); public virtual void WriteObject(XmlWriter writer, Object graph);
public virtual void WriteObject(XmlDictionaryWriter writer, Object graph); public virtual void WriteObject(XmlDictionaryWriter writer, Object graph);
public abstract virtual void WriteObjectContent(XmlDictionaryWriter writer, Object graph); public abstract virtual void WriteObjectContent(XmlDictionaryWriter writer, Object graph);
public virtual void WriteObjectContent(XmlWriter writer, Object graph); public virtual void WriteObjectContent(XmlWriter writer, Object graph);
public abstract virtual void WriteStartObject(XmlDictionaryWriter writer, Object graph); public abstract virtual void WriteStartObject(XmlDictionaryWriter writer, Object graph);
public virtual void WriteStartObject(XmlWriter writer, Object graph); public virtual void WriteStartObject(XmlWriter writer, Object graph);

  public abstract sealed class XmlSerializableServices
 
  static public void AddDefaultSchema(XmlSchemaSet schemas, XmlQualifiedName typeQName);
  static public XmlNode ReadNodes(XmlReader xmlReader);
  static public void WriteNodes(XmlWriter xmlWriter, XmlNode nodes);

  public abstract sealed class XPathQueryGenerator
 
  static public String CreateFromDataContractSerializer(Type type, MemberInfo pathToMember, out XmlNamespaceManager& namespaces);
  static public String CreateFromDataContractSerializer(Type type, MemberInfo pathToMember, StringBuilder rootElementXpath, out XmlNamespaceManager& namespaces);

  public class XsdDataContractExporter
 
  public ExportOptions Options { get; set; }
  public XmlSchemaSet Schemas { get; }
  public Boolean CanExport(ICollection`1<Assembly> assemblies);
  public Boolean CanExport(ICollection`1<Type> types);
  public Boolean CanExport(Type type);
  public void Export(ICollection`1<Assembly> assemblies);
  public void Export(ICollection`1<Type> types);
  public void Export(Type type);
  public XmlQualifiedName GetRootElementName(Type type);
  public XmlSchemaType GetSchemaType(Type type);
  public XmlQualifiedName GetSchemaTypeName(Type type);

  public class XsdDataContractImporter
 
  public CodeCompileUnit CodeCompileUnit { get; }
  public ImportOptions Options { get; set; }
  public Boolean CanImport(XmlSchemaSet schemas);
  public Boolean CanImport(XmlSchemaSet schemas, ICollection`1<XmlQualifiedName> typeNames);
  public Boolean CanImport(XmlSchemaSet schemas, XmlQualifiedName typeName);
  public Boolean CanImport(XmlSchemaSet schemas, XmlSchemaElement element);
  public CodeTypeReference GetCodeTypeReference(XmlQualifiedName typeName);
  public CodeTypeReference GetCodeTypeReference(XmlQualifiedName typeName, XmlSchemaElement element);
  public ICollection`1<CodeTypeReference> GetKnownTypeReferences(XmlQualifiedName typeName);
  public void Import(XmlSchemaSet schemas);
  public void Import(XmlSchemaSet schemas, ICollection`1<XmlQualifiedName> typeNames);
  public void Import(XmlSchemaSet schemas, XmlQualifiedName typeName);
  public XmlQualifiedName Import(XmlSchemaSet schemas, XmlSchemaElement element);