private void ParseSUDS()
{
Util.Log("SdlParser.ParseSUDS");
// Remember the current depth
int curDepth = _XMLReader.Depth;
// Parse the target namespace first
URTNamespace parsingNamespace = ParseNamespace();
// Parse schema elements
while(_XMLReader.Depth > curDepth)
{
String elementName = _XMLReader.LocalName;
if(MatchingNamespace(s_sudsNamespaceString))
{
if(MatchingStrings(elementName, s_interfaceString))
ParseInterface(parsingNamespace);
else if(MatchingStrings(elementName, s_serviceString))
ParseClass(parsingNamespace);
else if(MatchingStrings(elementName, s_importString))
ParseImport();
else
goto SkipXMLNode;
continue;
}
else if(MatchingNamespace(s_schemaNamespaceString) &&
MatchingStrings(elementName, s_schemaString))
{
ParseSchema();
continue;
}
SkipXMLNode:
// Ignore others elements such as annotations
SkipXmlElement();
}
return;
}