Teknisk informasjon om Infoweb
Åpen og gratis kildekode
I den senere tid har konseptet med åpen kildekode for alvor blitt et kjent fenomen. Dette skyldes kanskje mest medieoppmerksomheten rundt operativsystemet Linux, men Linux er bare toppen av isfjellet. Vi skal ikke gå noe særlig inn på dette her, det finnes gode framstillinger av fenomenet åpen kildekode andre steder, men for å poengtere at åpen kildekode-konseptet har noe for seg er det greit å vite som at flesteparten av webserverne på internett bruker åpen kildekode, og Kina skal ha Linux og andre åpne prosjekter som grunnlag for all it-virksomhet i offentlig sektor.
Infoweb er bygget på åpen og gratis kildekode. (Nedenfor finner du en liste over hvilke teknologier og programmer vi har brukt.) I samme ånd som dette er Infoweb selv basert på åpen kildekode. Vi arbeider med å finne en ordentlig måte å distribuere et arkiv som installerer en generell utgave av Infoweb, men er ikke helt i mål enda. Den eneste måten å få tak i Infoweb på er for tiden med anonym CVS-tilgang. Ta kontakt med utviklerne av Infoweb for informasjon om dette.
Teknologier i bruk
PHP / Apache
PHP og Webtjeneren Apache er i utgangspunktet to adskilte prosjekter. Likevel utfyller de hverandre på en måte som gjør dem meget populære sammen.
Python
Python er et objektorientert skriptspråk av relativt ny dato som har blitt raskt populært. En karakteristisk egenskap til Python er at at det er strenge krav til formateringen av kildekoden.
Alle kommandolinje-verktøy i Infoweb er skrevet i Python, det samme er programmene som gjør at du kan sende inn og redigere artikler via e-post.
XML
XML er lansert som det som skal gjøre internett brukervennlig, i det man med XML har muligheten til å skille innhold og presentasjon. Dette gjør det mulig å legge mer intelligens inn i programmer som skal behandle data, siden de får servert data i et standard format, og ikke trenger å bli forstyrret av unødvendig formatering av det.
Det har blitt definert en egen DTD for Infoweb-artikler, som alle artikler blir sjekket opp mot [infoweb.dtd].
For web-innhold bruker vi PHPs interne XML- og DOMXML-funksjoner. For validering av XML-dokumenter bruker vi xmlproc (Python), og RXP.
XSLT
XSLT er en del av XML-standarden, og gjør det mulig å omgjøre XML-dokumenter til andre XML-dokumenter, HTML eller ren tekst på bakgrunn av regler.
Vi bruker XSLT til å omforme artiklene fra XML til HTML. Vi bruker en XSLT-prosessor som heter "Sablotron" og som utvikles av Gingerall, samt PHPs XSLT-grensesnitt.
MySQL
MySQL er en rask og effektiv RDBMS-database, utviklet av svenske TcX AB.
Infoweb-artiklene ligger lagret i en MySQL-database, og hentes ut gjennom PHPs MySQL-funksjoner og MySQL-Python i Python.
Annet
Utviklings- og produksjonsmaskinene våre kjører SUSE GNU/Linux. Programmeringen blir hovedsaklig gjort i Emacs, hvor vi har major-modi for PHP, python, XML, XSLT og DTD, samt en egenutviklet major-mode for Infoweb. For å holde styr på revisjonene våre bruker vi CVS og ViewCVS.
| Languages: | Comments: | 0 | Aid: | 18 | User rating: |
|
|
| Last updated: | 2006-07-13 | Author: | arnemart | Read: | 10900 times |