Most Likely Cause and Fix
Your markup contains an uppercase
<P> … </P>
in a XHTML document.
XTML documents must contain only lowercase element names.
What This Error Means
This error is stating that your markup contains a
<>) and that such
an element is not defined.
HTML consists of a predefined set of elements. You can't validly use an element that does not exist.
How To Fix It
For uppercase element names
You have a XHTML document which recognises only lowercase element names as being valid and have in your markup a element in uppercase.
If you've not inadvertently used an uppercase element in place of the correct lowercase element, you have very likely used an element that does not exist in the version of HTML you are using.
Check the document type declaration used in your markup. Fix this if not correct.
If you're still running into 'element "p" undefined' errors, you're simply using an invalid, undefined element. Don't.