You might enjoy working on XML::Validator::Schema. It has a few nice properties as a learning project:
It was coded originally using test-driven development, so there's lots of good tests and a decent harness for adding more. If you break it, you'll know.
It's meant to implement a published, stable spec. You won't need any creativity to find more stuff to do and you'll have a great source of test cases.
People are begging for more features and will shower you with praise when you deliver them.
You'll get to put some buzz-words on your resume - hot ones like XML, XML Schema, SAX, etc.