Mikael Bæk Jensen

Originally I am from Middelfart on the island of Funen.
I studied Computer Science on the University of Copenhagen for some years, I did however not get my Bachelors degree yet. And seriously...I doubt I will ever get there...I am just too busy. :)
Throughout my studies I spent a lot of time as an assistant at the faculty of Humanities, Copenhagen University. My stay at the Faculty of Humanities soon became full time employment. Among other things I did technical support jobs, programming and managed the local Debian Server I found while merging the departments of Latin, Greek, History, Archaeology and Ethnology. Oddjobs showing teachers how to program and maintain their webpages on the local webserver was a part of my job as well.

May 2006 I started working as a technical consultant for XPonCard in the Telecom section making Sim Cards for Mobile equipment.

XPonCard was bought and merged with Oberthur Card Systems May 2008, so they became the second largest supplier of Smart Cards in the world at the time. I became the Local Technical Consultant for the German and north eastern Europe customers.

May 2010 I joined the largest leading smartCard supplier in the world; Gemalto as Technical Account Manager. I have managed NFC projects in Scandinavia, 2G, 3G, LTE/4G projects in northern and southern Europe as well as Israel.
As I came on the team in May I joined the Telia, ASSA, Venyon (TSM) NFC Pilot that ended up running in Clarion hotels in Stockholm.

In my career so far I have become an experienced consultant in all matters MNO and MVNO catering to many aspects of the Telecom business.
I am able to assist Mobile Operators in their projects involving many different business parties, and as an experienced SIMCard Technician I am also able to assist in areas of business intelligence and optimization.

I live in Frederiksberg With My Family; My wife Grethe and our three daughters Cæcilie at 9, Kamille: 16 and Rebecca at 19.

My areas of interest:

  1. Customer consultancy solving customer problems
  2. IT-Security
  3. Relational databases and Online database systems
  4. PHP,ASP,XML,HTML,CSS,XSLT,Perl,python,CGI,Java,SML.
References and endorsements from former employers have been scanned and exported to PDF.
Endorsements not included in the list below have been gathered from LinkedIN and can be found here.
  1. Test Card department XPonCard A/S  ca. 216KB
  2. SAXO-Institutte Copenhagen University   ca. 664KB
  3. Thomas P. Hejles Ungdomshus   ca. 283KB
  4. Skovhuset (A job project for the aggressive physically and mentally diabled)   ca. 211KB
  5. SIG træthed (Online Database driven Questionaire.)   ca. 211KB


My Résumé is currently available in english and a danish version.

The construction of the rèsumè in XML was inspired by the "xmlresume project".


I have to admit I enjoy working with XML, I love the simplicity, structure and the versatile power.

I have used XML in many a project over the last 8 years; Automation potential, scalability and maturity of supporting clients is immense. Get started now if you haven't already.

In case you want pointers in getting started I will post some examples. In case you find any of this useful, you may use it at your own risk, I'm not going to bother you for issues on License or references to the source. If we ever meet you can buy me a beer instead. Oh and by the way. I like Belgian beer the most. Blue Chimay please. Enjoy :-D

My samples are made and tested locally in several browsers. Sadly the presentation that I have chosen thus far is pure XML, which means I have not used any Server side XML parsing. So when I want to jump from one transformation to another I will copy the original xml file and just change the header reference to the stylesheet to use for the transformation.
I am aware that this does not show you the real versatility and power of XML. I will make up for this later, once I've found out how to solve this. I might add some commandline packages as well
The commandline tools and parsers are well described in a lot of internet pages, but here are a few pointers:

  • Windows: Microsoft has the nice little wrapper MSXSL.exe that provides you the command line utility to parse an XML file and use a named XSL file for the transformation, it will also allow you to save the output to a file if you need.
    Once downloaded you'll need to 'cd' to your working dir and run: msxsl.exe ep.xml description.xsl -o SIMProfile.html The SIMProfile.html will be the same HTML file you see depicted when opening the ep.xml from the samples menu.
  • Linux: Most Linux distributions will allow you to download and install a wide variety of tools for your work with XML, two such fine tools could be Xalan and xsltproc. My version of Xalan only supports XSLT 1.0, so if you use 2.0 you might get an error from Xalan. So try XSLTproc instead
    In case you'd like to run xsltproc, you'd just need to type: xsltproc ep.xml and use the manual pages to use the alternate flags for parsing.

Most of these command line tools have fine help menus to view for details on command line parameters.

Feel free to jump directly to the samples page and load the samples directly.

[XML samples]

As I've worked alot with SIM Cards ove rthe past years I'll reuse the specifics of the SIM Card File Structure and file system. The Files, ID's naming, coding and layout has been Standardised in great detail by the ETSI and 3GPP organizations, among others ;-)
If you have no clue what I'm talking about, no problem. The SIM filesystem is pretty simple, and chosen specifically because the simplicity of this serves the Sample purpose here. Mind you! In case you do know what I am referring to, please note that the SIM Card file structure is one I have simplified for this purpose...and is by no means a representation of SPML [SIM Profile Markup Language].

  1. Presenting the XML tree in a nice readable manner:

    The initial example: ep.xml shows you a very brief incomplete SIM file structure. The XML file structure implements the "description.xsl" Transformation stylesheet. The transformation of ep.xml to HTML shows you a simple electrical profile description of a 2G SIMCard.

    The Profile description reads out the ep.xml data directly and even interprets some of the data (access conditions) into readable HTML. Since XML is comparable to a file based RDBMS you are able to search, extract and use data from external XML files as well.
    So the Standard files in ep.xml have a matched File ID in the GSM.xml. GSM.xml shows the standard file descriptions taken from the 3GPP 51.11 standard specification. The XSL Transformation reads the ID from ep.xml and looks up the ID in GSM.xml and presents the specification description text for each file where possible.
    A word of warning about browsers and XML Transformations, I have used Firefox to test the Transformation...and Chromium should work as well, but Chromium has a security "feature" that does not allow you to include an XSL Stylesheet when working locally.

  2. Creating Commands from the XML tree:

    Let's say for arguments sake that you have a customer, or a system that delivers XML for everyday input or output. It could be a report from a productionsystem, a webservice log or something like this. Let's say that ep.xml from the previous example is exactly the everyday output, log or whatever.
    The layout of the data probably stays the same every day, but the values of the nodes differ every day or hour.

    The nature of Input and/or output is to be further processed, and sometimes you need to do this in several steps, one process after the other. Sometimes intermediate formats of the original data is needed to feed this into the rest of the data processing. If you stick to XML and the XSL Transformations you could save yourself some time and efforts.
    Let's regard the ep.xml file as a log or a report of a filesystem that is inserted into a system of some kind. This System is then able to show the report from the first example. But this system also would need to further process the report somehow. Let's say for arguments sake that the System would need to make a sanity check of the file system pertaining to the report in ep.xml.
    Our System would then be able to generate the commands to carry out this sanity check. The system doesn't need to make any changes to the original report, it would only need to implement another stylesheet.
    So with the original ep.xml intact, I will present the new stylesheet: xml2apdu.xsl. And I've made it easier for you by making a copy of the original ep.xml and changed the stylesheet name: ep_apdu.xml.
    The resulting text file that shows in the browser window in this example is a set of commands to select the SIM files and read them.

    The power of XML is at it's best here. And as long as the layout of the XML stays the same it doesn't matter how many nodes you have in your original report: ep.xml. The resulting transformation will just parse the extra nodes and represent them in your transformed result for as long as the layout of the data stays the same.

Please note that these pages could contain experimental HTML5 code that your browser may not support.

To know for sure what HTML5 features your client supports you could visit:

click to remove this notice

No Copyrights.

Valid XHTML 1.0 Strict