static ILRootNode ParseXaml(Stream stream, TypeReference typeReference) { ILRootNode rootnode = null; using (var reader = XmlReader.Create(stream)) { while (reader.Read()) { //Skip until element if (reader.NodeType == XmlNodeType.Whitespace) continue; if (reader.NodeType != XmlNodeType.Element) { Debug.WriteLine("Unhandled node {0} {1} {2}", reader.NodeType, reader.Name, reader.Value); continue; } XamlParser.ParseXaml( rootnode = new ILRootNode(new XmlType(reader.NamespaceURI, reader.Name, null), typeReference), reader); break; } } return rootnode; }