Dansk Content Management med XML og PHP

Firmaet NTV Communications producerer Content Management-systemer, som bygger på PHP og XML-skabeloner med XSLT-teknologien. Det er både med Apache og Unix, men også med NT og Internet Information Server.

PHP på NT

Firmaet NTV Communications A/S, som holder til på Jarmers Plads i København, er blandt de mange danske firmaer som producerer Content Management-systemer (CMS). Flagskibet hedder edIMag, og kunderne er blandt andre Carl Bro, Motorola og EU-kommissionens danske kontor. Carl Bro benytter produktet til sine egne websites, samt til intranet-brug med specialudviklede moduler til eksempelvis dokumenthåndtering.

En ting, som adskiller NTV Communications fra konkurrenterne, er at firmaet bygger på XSLT, XML-skabeloner, med scripting-sproget PHP. Men det er ikke bare Linux og Apache, som er platformen. Firmaets kunder anvender også NT og Internet Information Server (IIS) som serverplatform, og det er ikke så almindeligt i forbindelse med PHP.

Det hele begyndte ellers med udgangspunkt i Microsofts ASP-teknologi, men utilfredshed med den måde, ASP håndterer sessioner på, fik firmaets udviklere til at skifte til PHP. Ofte betyder det også et skift fra NT og IIS til Apache på Unix eller Linux, men flere af NTV Communications kunder benytter PHP under IIS på NT-servere, da det er platforme, som kunderne føler sig trygge ved. Ved NTV Communications mellemkomst kan kunderne også benytte sig af webhoteller, som tilbyder PHP under NT og IIS.

Der er ikke noget specielt hjemmeudviklet ved de PHP-komponenter, som NTV Communications anvender. På NT-platformen er det de samme kompilerede biblioteker, som alle kan hente på PHP's hjemmeside. Nogle af kunderne benytter CGI som grænseflade til webserveren, men enkelte benytter også den mere kritiske, men bedre ydende ISAPI-grænseflade under IIS. Og det fungerer stabilt og upåklageligt, siger udvikler Jesper Hess Nielsen (billedet) fra NTV Communications.

XML-skabeloner

NTV Communications indfaldsvinkel til CMS var ellers ganske traditionel, og byggede på skabelon-teknikker med PHP-klassen FastTemplate, men et lille XML-kursus via vennekredsen overbeviste øjeblikkeligt udviklerne om de indlysende muligheder i XML til informationshåndtering. Den grundlæggende pointe er separering af indhold og præsentation.

På overfladen ligner edIMag de fleste portal- og CMS-løsninger, men det er heller ikke her, at systemet adskiller sig væsentligt fra konkurrenterne. Systemet benytter som andre CMS-systemer en bagvedliggende relationsdatabase, som for eksempel MySQL og Microsoft SQL Server. Systemet er udviklet på basis af en kerne, som benytter en række moduler til at generere siderne. De forskellige informationsklumper bliver stykket sammen til et XML-dokument, som så processeres med en XSLT-skabelon. Skabelonen genererer den færdige XHTML-kode, der sendes til browseren.


Den færdige side som XML, umiddelbart før data videresendes til XSLT-processoren.

Enkelte dele af inddata er blot gammeldags HTML i XHTML-udformning, men enkelte moduler, som et diskussionsforum, NTV Communications har udviklet til Carl Bros intranet, gemmer data som XML.

Mere XML i fremtiden

Et af problemerne ved at bruge XML som format til de bagvedliggende data i større omfang er PHP's mangelfulde understøttelse af DOM, som er en standardiseret programmeringsflade til XML-dokumenter. Her er Microsofts scripting-miljø og Java-miljøet (med den kommende JDK 1.4) længere fremme. Jesper Hess Nielsen er hyppig gæst i PHP's udviklingsfora på nettet, og han kan fortælle, at den kommende version 4.2 af PHP skulle byde på meget mere på XML-fronten.

Selve skabelonerne i XSLT kodes af en HTML-udvikler, på baggrund af grafiske forlæg. HTML-udvikleren er ikke programmør, men har kunnet varetage opgaven efter et lille XSLT-kursus. Rollefordelingen er altså, som den plejer at være. Men HTML-udvikleren er nu ikke afhængig af en programmør for at ændre i sidernes opbygning og udformning.

Mulighederne for at anvende XML til informationshåndtering stopper dog ikke her. På længere sigt vil en større del af datamængden blive repræsenteret som XML i backend-delen, og NTV Communications har også kig på Software AG's XML-databaser.

Annonce

Netcompany A/S

Erfaren Linux Operations Engineer

Københavnsområdet

HusCompagniet A/S

Senior data engineer

Københavnsområdet

Capgemini Danmark A/S

Client Partner

Midtjylland

Annonceindlæg fra Deloitte

Agentic AI er et paradoksalt undervurderet, men fuldmodent teknologiområde

Hvorfor er der ikke flere, der lykkes med Agentic AI? Fordi de mangler at håndtere mellemregningerne fra POC til storskalaløsning.

Navnenyt fra it-Danmark

Systematic A/S har pr. 1. august 2026 ansat Casper Voldstedlund, 52 år,  som Director, Products. Han skal især beskæftige sig med drive produktudvikling inden for national sikkerhed og kritisk infrastruktur (NSI). Han kommer fra en stilling som Senior Director hos Stibo Systems A/S. Nyt job

Casper Voldstedlund

Systematic A/S

Dansk AM Hub har pr. 1. november 2026 ansat Rasmus Pedersen som Chief Digital Officer. Rasmus skal især beskæftige sig med fokusudviddelse fra additive manufacturing til produktinnovation gennem AI, automatisering og andre nye teknologier. Rasmus er uddannet maskiningeniør med speciale i produktudvikling og med ph.d. i udvikling af modulære produktplatforme. Rasmus har tidligere beskæftiget sig med transformation og digitalisering i værdikæden fra produktudvikling til produktion. Nyt job

Rasmus Pedersen

Dansk AM Hub

Softwarevirksomheden Idura, som udvikler løsninger til digital identifikation og autentifikation, har pr. 1. august 2026 ansat Maria Binger, 44 år,  som CFO. Hun skal især beskæftige sig med den finansielle styring i takt med Iduras vækst i Danmark og internationalt med fokus på blandt andet forecasting. Hun kommer fra en stilling som Director Business Finance hos Danelec. Hun er uddannet cand.merc.aud. fra Copenhagen Business School. Hun har tidligere beskæftiget sig med finance hos Agillic, Cobham SATCOM og Saxo Bank. Nyt job

Maria Binger

Softwarevirksomheden Idura, som udvikler løsninger til digital identifikation og autentifikation,