private string ReadPubidLiteral()
{
Expect ("PUBLIC");
if (!SkipWhitespace ())
throw NotWFError ("Whitespace is required after 'PUBLIC'.");
int quoteChar = ReadChar ();
int c = 0;
ClearValueBuffer ();
while(c != quoteChar)
{
c = ReadChar ();
if(c < 0) throw NotWFError ("Unexpected end of stream in ExternalID.");
if(c != quoteChar && !XmlChar.IsPubidChar (c))
throw NotWFError (String.Format ("character '{0}' not allowed for PUBLIC ID", (char) c));
if (c != quoteChar)
AppendValueChar (c);
}
return CreateValueString (); //currentTag.ToString (startPos, currentTag.Length - 1 - startPos);
}