Anne van Kesteren

We want it.

Markup languages are nice to work with. But when you finished your project and you know XHTML, you want more, eventually. You would like to create a markup language of you own and give it to the W3C as a 'gift'. These projects take a lot of time I think, if you look at XHTML2.0 for example, but eventually it is a recommendation and it could be used by others.

The only thing I don't know is if you actually can donate a markup language to the W3C, or do you need to be a member (there are probably more things I haven't thought about)? If all is possible I would like to create CodeML together with other interested people. This markup language could easily be embedded within a XHTML document just like MathML and there could be a server-side transformation to 'real' XHTML elements for browsers that don't support modularization.

The language should have its own DTD and an XML Schema (more important formats?). So it can already be used with the modularization of XHTML and is forward compatible with the modularization of XHTML in XML Schema. If such a markup language is being developed and nice tools are made for it, we can show the world the advantages of XML (as in XHTML). Maybe it's not ready for client-side deployment (although not in every browser), but such a markup language could have it uses. Only think of all the .phps files or script highlighter projects. They could now have a language to support and are not stuck with using useless elements (like spans).

I searched Google for CodeML and I found two projects related to that matter, but they don't seem to updated frequently:

XPL is not what I was looking for I think, but the CodeML project has done some things already, like creating examples of use and application files. I don't know how to start a thing like this (I should have read more Sam Ruby and Mark Pilgrim I presume), so I'm asking you (its ok if you point me to the fact that I shouldn't do this ;)). What I do know, that if XHTML files are more of common use and embedding external specifications is becoming normal; the question for a semantic web will be bigger (and we will be hapier).

Of course I could question myself if you start such things at a normal weblog, or that you should start a thread at the mailing lists of the W3C. I do thing that the latter is busy enough with writing specifications for the web community from which we all benefit and making test cases (of course!). So weblogs are maybe the way to promote new standards and possibilities.


  1. What exactly would you like to describe in this markup language? A 'program' (or script) written in any programming language?

    If you would do something like this, I think you'll have to restrict yourself to describing 'programs' in one parcticular programming language.

    Every language has is own syntax rules. Something like this has been done for the language of Maths (MathML). Indeed, you could do the same for Python, or for PHP, but not for both at the same time.

    Maybe you could generalise language characteristics a bit, but you won't come much further with that than combining for example C, Java, and PHP programs in one markup language.

    Actually, for a lot of languages, I think you could derive a markup language for describing programs automatically (if a formal grammar definition for the language is available, and for a lot of serious programming languages there is one).

    Posted by Martijn at

  2. Good points. I actually thought of describing all the markup languages at once. At some points languages have parts that are the same and the markup could be used again.

    If more people want to do such a project there should be more discussion about what languages to describe. But if that's the point the name should be changed (CodeML is not so specific).

    Another idea is to make a language that describes them, but not in great detail so it will apply to a lot of languages.

    Posted by Anne at

  3. Could you develop a bit further and describe the semantics of two or three elements you would like to have in codeML?

    Posted by Karl Dubost at