code: private void skipPE()
          throws XMLStreamException
      {
          skipDTDName();
          /* Should now get semicolon... let's try to find and skip it; but
           * if none found, let's not throw an exception -- we are just skipping
           * internal subset here.
           */
          char c = (mInputPtr < mInputEnd) ?
              mInputBuffer[mInputPtr++] : dtdNextFromCurr();
          if (c != ';') {
              --mInputPtr;
          }
      }
docs: /*
  ////////////////////////////////////////////////
  Internal methods, skipping:
  ////////////////////////////////////////////////