Onderzoek native XML databases

Maat: px
Weergave met pagina beginnen:

Download "Onderzoek native XML databases"

Transcriptie

1 Onderzoek native XML databases Vincent Fleur Dennis Heij

2 Voorwoord Dit onderzoeksrapport is geschreven door Dennis Heij en Vincent Fleur. Beide zijn laatstejaars student van de opleiding kort Bedrijfskundige Informatica aan het instituut I&I van de Saxion Hogeschool IJselland te Deventer. Dit document is het resultaat van een afstudeerperiode van februari 2002 tot juli 2002 bij Thales Nederland B.V. te Hengelo. We willen een aantal mensen danken, welke hebben bijgedragen aan het tot stand komen van dit document. Allereerst danken we Jan Swets, onze begeleider bij Thales. Jan heeft ons veel nuttige adviezen gegeven en ons bij ons onderzoek begelied. Speciale dank gaat uit naar Gerrit te Vaarwerk die met een positieve kijk op de situatie ons wist te motiveren en te stimuleren. Hij kwam regelmatig op onze kamer een kopje koffie drinken en bracht af en toe zijn eigen werk mee. Gerrit heeft ons geholpen bij het vormgeven van dit document en daarvoor zijn we hem uiterst dankbaar. Als laatste danken we u als lezer, omdat u interesse toont in ons werk. Vincent Fleur Juni 2002 Dennis Heij

3 Samenvatting Dit document is het resultaat van een onderzoek naar de functionaliteit, mogelijkheden en toepassingsgebieden van native XML-databases ten opzichte van de functionaliteit van traditionele databases. Native XML databases zijn speciaal ontwikkeld voor de opslag van XML documenten. Evenals andere databases ondersteunen ze de meest gangbare functies. Het verschilt per systeem welke functies er ondersteund worden. Het grote verschil met traditionele databases is, dat het interne model is gebaseerd op XML en niet op bijvoorbeeld een relationeel model. Dit brengt grote voordelen met zich mee die zich voornamelijk uiten in snelheid en mogelijkheden. Ook zijn er voor native XML databases specifieke query talen, die beter inspringen op de structuur van een XML document. De keuze voor een native XML database of voor een traditionele database, hangt af van de situatie. Als men veel met data-centric XML documenten werkt, is het verstandiger om voor een traditionele database te kiezen. Wordt er meer met document-centric documenten gewerkt, dan kan er beter voor een native XML database gekozen worden. We hebben twee Content Management Systems in de praktijk getest en onderzocht. Tamino XML Server, van Software AG en X-Hive, van X-Hive. Het bleek dat deze twee CMS's meer hadden te bieden dan anderen en waren daarom een nader onderzoek waard. Tamino wordt geïnstalleerd met een aantal applicaties van waaruit de mogelijkheden die het programma biedt zijn te gebruiken. Bij X-Hive wordt er maar een applicatie geinstalleerd, van waaruit een beperkt aantal mogelijkheden te gebruiken zijn. De overige mogelijkheden van X-Hive worden toegepast door middel van Java Classes. Creatie van content is mogelijk vanuit de applicatie die bij X-Hive geïnstalleerd wordt, maar is zeer beperkt. Bij Tamino is er geen mogelijkheid om content te creëren. Via WebDAV is integratie mogelijk met XML editors als Xmetal en XML-Spy. In X-Hive kan elk soort document in elke Library van de database worden opgeslagen. Als men valid XML documenten in X-Hive wil opslaan, dan moet er in het document zelf een verwijzing naar het DTD staan. Tamino maakt voor het opslaan van documenten geen gebruik van Libraries, maar van Collections. Bij Tamino is het mogelijk om d.m.v. de Scheme Editor, schema's van een DTD toe te wijzen aan zo'n Collection, valid XML documenten die conform dat schema gemaakt zijn, kunnen in die Collection worden opgeslagen. Well-formed en non-xml documenten, worden door Tamino respectievelijk in de Collections ino:etc en ino:nonxml opgeslagen. Beide CMS's beschouwen SGML data als non-xml. Indexing moet bij Tamino worden aangegeven in het schema dat bij een Collection hoort. Bij X-Hive gebeurt indexing door Java Classes. Bij beide de CMS's zijn verschillende niveaus waarop kan worden geindexeerd. Indexing bevordert het gemak en de snelheid waarmee queries op de database worden uitgevoerd. Het is dus aan de gebruiker om goed na te denken wat van belang is om geindexeerd te worden. X-Hive ondersteunt locking op library level, XLink en Branching. Tamino doet dit niet.

4 Tamino kent wel een mogelijkheid waarmee grote hoeveelheden data tegelijk opgeslagen kunnen worden. De Pass-thru servlet, is een onderdeel van Tamino, waarmee verschillende publishing varianten mogelijk zijn. Bij X-Hive gebeurt dit door middel van Java Classes.

5

6 Inhoudsopgave Voorwoord 2 Samenvatting 3 Lijst van afkortingen Inleiding Thales Nederland B.V Doelstelling van de opdracht Vooronderzoek Taken en activiteiten Resultaten vooronderzoek XML testbestanden Inventarisatie Over Content Management Systems in het algemeen Authoring Workflow en Storage Publishing Omvang van een Content Management Systeem XML en databases Data versus Documenten Opslaan en opvragen van data Opslaan en opvragen van documenten Native XML databases Wat is een native XML database Native XML database architecturen De features van native XML databases Normalisatie, referentiële integriteit en scalability Native XML database versus traditionele databases WebDAV De WebDAV standaard De voordelen van WebDAV Tamino XML Server Inleiding Algemene Informatie Aan de slag met Tamino Authoring Integratie van Tamino met XML editors Workflow & Storage Publishing Tamino WebDAV Server Tamino WebDAV Server Aan de slag met de Tamino WebDAV Server X-Hive/DB Inleiding Algemene Informatie Aan de slag met X-Hive Authoring Workflow & Storage X-Hive Publishing Tamino versus X-Hive 72 6

7 Installatie Interface Authoring Workflow & Storage Publishing XML publicatiestraat Authoring Workflow & Storage Publishing Toepassingsgebieden van XML en databases Vliegtuigmaatschappij Handleiding Conclusie Content Management Systems XML en databases WebDAV Tamino versus X-Hive XML publicatiestraat Aanbevelingen Bronnen Productomschrijvingen Informatieve naslagwerken Internet bronnen...88 Bijlage 1, Plan van Aanpak Bijlage 2, Inventarisatie XML Content Management tools 7

8 Lijst van afkortingen API Application Programming Interface ASP Active Server Pages BLOB Binary Large OBject CDATA Character Data CMS Content Management SYstem CSS Cascading Stylesheet CVS Concurrent Versioning System DOM Document Object Model DTD Data Type Definition FTP FIle Transfer Protocol HTML Hyper Text Markup Languiage HTTP Hyper Text Transfer Protocol IETF Internet Engeneering TaskForce IIS Internet Information Server JDBC Java DataBase Connectivity JRE Java Runtime Environment JSDK Java Servlet Development Kit JSP Java Server Pages JVM Java Virtual Machine ODBC 8

9 Open DataBase Connectivity OLE DB Object Linking and Embediing for DataBases PCDATA Parsed Character Data PDF Portable Document Format PHP Hypertext Pre Processor RADAR Radio Detection and Ranging RDBMS Relational Database Management System SGML STandard Generalized Markup Language SMH System Management Hub (Administratie applicatie van Tamino) SQL Structured Query Language URL Unified Resource Locater WAP Wireless Acces Protocol WebDAV Webbased Distribution Auhtoring and Versioning WML Wireless Markup Language Xlink XML Link XML EXtensible Markup Language XSL Xml Stylesheet Language XSLT XML Stylesheet Language Transformation XSQL XML Structured Query Language XQL XML Query Language 9

10 1 - Inleiding Thales Nederland B.V. Thales Nederland B.V. is in 1922 begonnen onder de naam "NV Hazemeijers Fabriek van Signaalapparaten". Deze fabriek produceerde wapenbesturingssystemen. In 1947 werd de naam veranderd in "Hollandse Signaalapparaten N.V." In samenwerking met Philips werd begonnen aan het ontwikkelen van digitale RADAR systemen. Signaal integreerde zijn radar systemen met de wapenbesturingssystemen en was daarmee de concurrentie een stap voor. De kerntaken van Signaal verschoven van het mechanische deel, naar het elektrotechnische gebied. In 1992 is Signaal overgenomen door het Franse Thompson-CSF. In 2000 werd de naam veranderd in "Thales Nederland B.V." Thales Nederland is een grote speler op de wereldmarkt, zeker als het gaat om zogenaamde Naval Combat Systems. Voornamelijk overheden zijn klant bij Thales. Zo heeft de Nederlandse Marine veel van haar fregatten voorzien van apparatuur van Thales. In totaal heeft Thales sinds 1970 ongeveer 200 schepen van apparatuur voorzien. Naast de levering van producten voorziet het programma van Thales ook in uitgebreide service en onderhoud. Ook is er een trainingscentrum waar klanten worden opgeleid om met het Thales product te werken en dit te onderhouden. Thales wereldwijd heeft ongeveer medewerkers daarvan werken bij Thales Nederland B.V. waarvan de hoofdvestiging zich in Hengelo (OV) bevindt. Naast deze vestiging is er een kleine vestiging in Delft, waar men zich voornamelijk bezighoudt met optische systemen Doelstelling van de opdracht Kern van de opdracht is het uitvoeren van een onderzoek naar de functionaliteit, mogelijkheden en toepassingsgebieden van native XML-databases ten opzichte van de functionaliteit van traditionele databases. Om deze doelstelling te bereiken hebben we een aantal onderzoeksvragen opgesteld, welke in ons Plan van Aanpak zijn na te lezen. Dit plan hebben we als bijlage bijgevoegd. We hebben een vooronderzoek gedaan om meer inzicht te krijgen in het onderwerp. De resultaten hiervan komen in het volgende hoofdstuk aan de orde. 10

11 2 - Vooronderzoek Wat moet er nu daadwerkelijk onderzocht worden? Waarop moeten we de pakketten testen, welke pakketten moeten we eigenlijk onderzoeken en hoe testen we een pakket? Om op die vragen een antwoord te vinden, voeren we eerst een vooronderzoek uit Taken en activiteiten Hieronder volgt een lijst van activiteiten die in dit vooronderzoek aan de orde komen. Opstellen criteria waaraan een content manager moet voldoen Opstellen criteria waaraan een native XML-database moet voldoen Opstellen testomgeving, welke moet bestaan uit: XML bestanden DTD's en/of schema's XSL stylesheets Inventariseren native XML-databases die we gaan onderzoeken Inventariseren hard- en softwarematige eisen van geselecteerde native XML-databases Opstellen onderzoeksplanning Resultaten vooronderzoek Uit het vooronderzoek zijn de volgende resultaten gekomen Onderzoeksvragen Algemene Vragen Welke van de onderdelen (authoring, workflow, storage, publishing) biedt het CMS aan? Wat zijn de eisen van het pakket aan de infrastructuur? Voor welke toepassing is het CMS volgens de fabrikant ontworpen? Welke content formaten kan het CMS importeren/ exporteren? Welke documentatie wordt bij het CMS geleverd? Vragen die betrekking hebben op het onderdeel Authoring Hoe is de aansluiting van de content creatie omgeving op de overige onderdelen van het CMS en wat merken auteurs daarvan? Hoe strikt is de scheiding tussen content en publicatie? Hoe is multi-user authoring geregeld? Welke eisen stelt het CMS aan content? Hoe gaat het CMS om met XML, XSLT, DTD's en XML namespaces? Hoe wordt metadata vastgelegd, gebeurt dit bijvoorbeeld door indexes? Hoe wordt omgegaan met links en wat merken auteurs daarvan? Welke kennis hebben auteurs nodig om met het systeem te werken? Welke inspanning is nodig voor het creëren van content? 11

12 Welke inspanning is vereist voor het importeren van SGML content? Vragen die betrekking hebben op het onderdeel Workflow en Storage Op welke wijze wordt content door het CMS opgeslagen, is dat in een relationele database, een traditionele database of als XML-files? Hoe wordt door het CMS omgegaan met version control? Hoe is de beveiliging van het CMS? Kan het CMS samenwerken met andere applicaties? Tot in welke mate verzorgt het CMS administratieve rapporten? Welke query language gebruikt het CMS, XPath, XQL, XQuery of XSQL? Vragen die betrekking hebben op het onderdeel Publishing Hoe flexibel kan het CMS omgaan met stylesheets? Op welke wijze worden stylesheets toegepast? Naar welke formaten kan het CMS content publiceren en zijn die volgens een standaard gedefinieerd? XML testbestanden We hebben met de tool XMetal van Softquad een aantal XML bestanden gemaakt. XMetal is een tool, waarvan de user interface naar wens aanpasbaar is. Zo kunnen er eigen menu's en toolbars gedefinieerd worden en kan er vanuit de ResourceManager (onderdeel van XMetal) repeterende elementen in een document worden ge-dragged and dropped. De opzet is zodanig, dat een programmeur de tool en omgeving configureert, zodat een auteur er als in MS Word mee kan werken. Onze testdocumenten zijn conform het Journalist DTD, welke een subset van de DocBook DTD is. We hebben voor de Journalist DTD gekozen, omdat XMetal belangrijke elementen als stylesheets en macro's bevat die voor deze DTD gemaakt zijn. Het kost ons te veel tijd om XMetal zodanig te configureren, dat het met DocBook uit de voeten kan. Het zal voor ons onderzoek weinig verschil uitmaken, of we nu met de DocBook zelf of een subset daarvan werken. Voor onze testset, hebben wij gebruik gemaakt van: XML bestanden conform het Journalist DTD, XSL bestanden en van een DTD Inventarisatie De inventarisatie bestaat uit het globaal onderzoeken wat de mogelijkheden zijn die het product volgens de fabrikant biedt. Dit heeft een document opgeleverd waarin onze bevindingen staan. Dit document is als bijlage toegevoegd aan ons verslag. Na de inventarisatie hebben we ervoor gekozen, om drie producten nader te onderzoeken. Helaas zijn wij er niet aan toegekomen om er daadwerkelijk drie te testen. Dit vanwege tijdgebrek. Uiteindelijk hebben we twee systemen nader onderzocht. Dit zijn geworden Tamino XML Server en X-Hive. Voor die keuze hebben we de volgende motivatie: Uitgebreide documentatie en specificatie Er was over beide producten veel informatie te vinden op het internet. Hierdoor kregen we al snel een globale eerste indruk van de mogelijkheden van beide producten. 12

13 Gebruik van native XML database Gebruik van WebDAV WebDAV is een uitbreiding van het HTTP protocol, hierdoor kunnen gebruikers gezamenlijk bestanden bewerken en opslaan op een webserver. Verdere uitleg over WebDAV volgt verderop in het verslag. Naamsbekendheid / aanbeveling van Jan Swets Uit verschillende essays op het internet, waarin kleine vergelijkingen naar voren kwamen, werden Tamino en X-Hive aanbevolen. Ook onze stagebegeleider van Thales Nederland BV, was zeer geïnteresseerd in de mogelijkheden van deze twee producten. 13

14 3 - Over Content Management Systems in het algemeen Content Management bestaat globaal uit vier onderdelen: Authoring Workflow Storage Publishing In dit verslag proberen we continu onderscheid te maken tussen bovenstaande vier onderdelen. Workflow en storage hangen nauw met elkaar samen, daarom bespreken we deze ware het een onderdeel Authoring Onder authoring wordt in het algemeen verstaan het creëren van content. Om als gebruiker/auteur zelf content te creëren, moet deze de beschikking hebben over een DTD en over een content creatie tool, waarmee uitgebreide editting opties mogelijk zijn. Door het document conform een DTD te maken, wordt het document een valid XML-document. Het is niet verplicht een document conform een DTD te maken, in dit geval wordt gesproken van een well formed XML-document Workflow en Storage Met workflow bedoelen we de automatisering van de levenscyclus van een content element. Het gaat hier dan om het managen van taken tussen het creëren van content en het opslaan van content. Voorbeelden van dit soort taken zijn: link checking, validatie aan DTD, zorgdragen van goedkeuring van content door een bovengeschikte en indexing. Indexing houdt in dat een Content Management Systeem een index van de elementen van een XML document maakt en deze vastlegt in een apart bestand. Als er vervolgens bijvoorbeeld een query op het document uitgevoerd wordt, wordt er in de index gezocht i.p.v. dat het hele document doorzocht wordt. Dit scheelt aanzienlijk in tijd. Wij bedoelen met storage niet het daadwerkelijke schrijf proces, maar het proces dat zorg draagt voor de opslag van documenten. Opslag vindt plaats als record in een database of als XML file. Het is dus niet zo dat het daadwerkelijke schrijven een onderdeel van een CMS is. Bij storage hoort ook versioning van content, zodat meerdere individuen tegelijkertijd aan hetzelfde document kunnen werken en dat oudere versies van een doocument hersteld kunnen worden Publishing Publishing is een algemene term die wij gebruiken voor het publiceren van content. Onder de content vallen de XML documenten die opgeslagen zijn in de database. Een belangrijke vraag die hierbij een rol speelt is naar welke formaten er gepubliceerd kan worden. Voorbeelden van die formaten zijn: HTML en PDF. 14

15 3.4 - Omvang van een Content Management Systeem De onderdelen die een CMS minimaal moet bevatten zijn workflow en storage. Eventuele andere onderdelen die een CMS kan aanbieden zijn: user management Dit zijn taken m.b.t. gebruikersbeheer zoals het toewijzen van rechten. user interfaces Een applicatie voor administratie van het CMS en de content. data sources De locatie waar content wordt opgeslagen. Dit kan zijn een relationele database of XML files. Hier vindt het daadwerkelijke schrijfproces plaats. applications Deze applicaties integreren de content met bestaande data en voeren softwarematige manipulaties uit op content om de consistentie te waarborgen. Een dergelijke applicatie is meestal een formulier waarmee de publicatie van content centraal geregeld wordt. Voorbeelden hiervan zij indexing en searching, maar ook middleware dat er zorg voor draagt dat database records gebruikt kunnen worden in dynamische web-pagina's. Voorbeelden van die middleware zijn: ODBC, JDBC, ASP, Perl en PHP. 15

16 4 - XML en databases In dit hoofdstuk wordt ingegaan op de relatie tussen XML en databases. We zullen duidelijk maken wat het verschil is tussen traditionele databases en native XML-databases Data versus Documenten XML kan op verschillende manieren gebruikt worden. Zo kan XML dienen als data-transport tussen een database en een (non-xml) applicatie. Of XML kan integraal gebruikt worden zoals bijvoorbeeld met DocBook documenten of XHTML. Hoewel er vele overeenkomsten zijn tussen twee soorten XML documenten, wordt er toch onderscheid gemaakt tussen data-centric documents en document-centric documents omdat de verschillen van belang zijn voor de wijze van opslag in een database Data-centric XML documenten Data-centric XML documenten zijn documenten die XML gebruiken als data transport. Ze zijn bedoeld om door een computer verwerkt te worden. Het maakt voor een applicatie niet uit dat de data voor een bepaalde tijd in een database is opgeslagen. Voorbeelden van data-centric documenten zijn verkooporders, vluchtschema's, wetenschappelijke data en beurskoersen. Kenmerkend voor data-centric XML documenten zijn de regelmatige structuur en de weinige of geen gemengde content. Onder gemengde content verstaan we elementen die meerdere soorten inhoud bevatten, bijvoorbeeld een element dat een ander element en tekst bevat. De volgorde waarin elementen staan is vaak niet belangrijk tenzij het document gevalideerd wordt. Data-centric documenten kunnen m.b.v. een XSL stylesheet worden getransformeerd tot een voor publiek leesbaar document. Elke website die momenteel gebruik maakt van dynamisch gegenereerde HTML pagina's (templates die gevuld worden met database data) kan waarschijnlijk worden vervangen door een serie van data-centric XML documenten en één of meer XSL Stylesheets. Het onderstaande sales order document is data-centric: 16

17 <SalesOrder SONumber="1234"> <Customer CustNumber="543"> <CustName>Grolsch breweries</custname> </Customer> <OrderDate>170502</OrderDate> <Item ItemNumber="1"> <Part PartNumber="123"> <Price>9,95</Price> </Part> <Quantity>12</Quantity> </Item> </SalesOrder> Document-centric XML documenten Document-centric XML documenten zijn het meest geschikt als communicatiemiddel. Voorbeelden zijn boeken, s, advertenties en eigenlijk elk hand geschreven XHTML document. Kenmerkend zijn de onregelmatige structuur en de diversiteit van de betreffende content. De volgorde van de elementen is meestal erg belangrijk. Onderstaande product omschrijving is document-centric: 17

18 <Product> <Name>Notebook</Name> <Developer>Asus</Developer> <Description> <Para>Notebook with finger-print security on BIOS and Windows. You are the only one with access to your pc. The notebook comes with a P MHz processor and 512 MB RAM. With the 15 inch TFT screen and DVD player you can watch movies anywhere you like</para> <Para>You can:</para> <List> <Item><Link URL="order.html">Order this notebook</link></item> <Item><Link URL="specs.html.">Read the technical specifications</link></item> <Item><Link URL="search.html">Search for another notebook</link></item> </List> </Descriotion> </Product> Data, documenten en databases Het onderscheid tussen data-centric en document-centric XML documenten is niet altijd even duidelijk aan te geven. Ondanks dat is er toch een soort algemene regel wat betreft het type document en de bijbehorende database. Deze regel is afgeleid uit de tendens op de markt. Data-centric XML documenten worden opgeslagen in traditionele databases, zoals relationele, object-georienteerde of hierarchische databases. Document-centric XML documenten worden opgeslagen in een native XML database (een database speciaal ontworpen voor het opslaan van XML). Uiteraard is deze regel niet een wet van Meden en Perzen, want data kan opgeslagen worden in een native XML database en documenten in een traditionele database. Tevens beginnen de grenzen tussen traditionele databases en native XML databases te vervagen, beide nemen toepassingsmogelijkheden van elkaar over Opslaan en opvragen van data Elk type database slaat data op een bepaalde manier op. XML data wordt aangeboden aan de database. Een bepaald stuk software is hiervoor verantwoordelijk. Die software moet een XML document naar de database vervoeren en vice versa. Deze software kan deel uitmaken van het database systeem, in dat geval spreken we van een XML-enabled database. 18

19 Data transport Bij transport van een data-centric XML document naar een database is het vaak acceptabel om informatie over het document, zoals de naam en het DTD weg te gooien. Het gaat tenslotte om de data en de overige zaken zijn van ondergeschikt belang. De fysieke structuur zoals entiteiten definities en gebruik, de wijze waarop binary data wordt opgeslagen, CDATA secties en encoding informatie kan weggegooid worden. Het is zelfs acceptabel om de logische structuur, bepaalde processing instructies en de volgorde van elementen en attributen te vergeten. Bij transport van data uit een database naar een XML document is het wenselijk dat het document geen CDATA en entiteit gebruik bevat (afgezien van standaard entiteiten als lt, gt, amp, apos en quot). Een CDATA sectie is een sectie waarin het gebruik van markup genegeerd wordt. In het geval van een data-centric XML document zijn CDATA secties nutteloos. Het bevat namelijk geen data die ook echt als data behandeld wordt. Entiteiten dienen gedeclareerd te worden, dit kan in een DTD of direct in een XML document. De standaard entiteiten behoeven geen aparte declaratie. Als er stukkken data uit een data-centric XML document gehaald worden en deze stukken bevatten andere dan standaard entiteiten, dan moet er altijd een entiteit declaratie aan het stuk informatie toegeveogd worden. Dit maakt het werken met entiteiten onhandig en is dus niet gewenst. Het is gewenst dat de hiërarchische strucuur van de XML en de positie van elementen in die structuur dezelfde is als de volgorde van de elementen zoals die in de database zit. Er is dan geen tussenstap vereist die de data in gewenste volgorde in het XML document plaatst. Ook het model daarvoor is dan overbodig. Om bovenstaande beweringen toe te lichten geven we een voorbeeld waarin XML data gebruikt wordt om data te transporteren tussen twee databases. We nemen het geval van de sales order. Het maakt niet uit of het sales order number is opgeslagen in een CDATA sectie, een externe entiteit, een attribuut of direct als PCDATA. Het gaat erom dat de data van de ene database wordt getransporteerd naar de andere. De data transport software moet zich bezig houden met de hierarchische structuur (zodat informatie over een bepaalde sales order wordt gegroepeerd) en verder weinig andere zaken. Het nadeel van het weglaten van informatie over een document is dat wanneer het document weer wordt opgevraagd uit de database het resultaat een ander document is. Het bevat de juiste data, maar daar is alles mee gezegd. In sommige gevallen is dit geen probleem, dit is afhankelijk van de behoefte Mapping van documenten op de database Software die data tussen XML documenten en een database transporteren zijn gebaseerd op mapping tussen het document en de database. Bijvoorbeeld het <SalesOrder> element naar de SalesOrders tabel en het <OrderDate> element op de kolom SalesOrders.OrderDate. Dergelijke mappings zijn te verdelen in vier catagorieen: model-driven template-driven 19

20 table-based object-relational Model-driven mapping Hierbij wordt XML data aan de hand van een voorgedefinieerd model gemapt op de database. Omdat het model vooraf gedefinieerd is, is dit systeem minder flexibel dan Template-diven mapping. Figuur 4-1: Model-driven mapping Vaak wordt gebruik gemaakt van XSLT, omdat XML documenten mogelijk niet aan het model voldoen. Hiermee wordt iets van de flexibiliteit van Template-driven mapping teruggevonden. 20

21 Template-driven mapping In plaats van voorgedefinieerde mapping worden product specifieke commando's in een template aangeleverd. Deze worden door de data transmissie software verwerkt. Bijvoorbeeld een SELECT statement wordt opgenomen tussen <SelectStm> tags. Bij het verwerken van het aangeboden XML document wordt het SELECT statement vervangen door het resultaat van de query. Het volgende voorbeeld is een template die een SELECT statement heeft opgenomen in een <SelectStm> element: <?xml version="1.0"?> <FlightInfo> <Introduction>The following fligths have available seats: </Introduction> <SelectStm>SELECT Airline, FltNumber, Depart, Arrive FROM Fligths</SelectStm> <Conclusion>We hope one of these meets your needs</conclusion> </FlightInfo> Wanneer bovenstaand document wordt verwerkt door de data-transport software, wordt het SELECT statement vervangen door de resultaten en levert bijvoorbeeld onderstaand document op: 21

22 <?xml version="1.0"?> <FlightInfo> <Introduction>The following fligths have available seats: </Introduction> <Flights> <Row> <Airline>ACME</Airline> <FltNumber>123</FltNumber> <Depart>Dec 12, :43</Depart> <Arrive>Dec 13, :21</Depart> </Flights> <Conclusion>We hope one of these meets your needs</conclusion> </FlightInfo> Template-driven mapping wordt bijna altijd toegepast om data van relationele databases uit te voeren in XML documenten. Table-based mapping Hierbij wordt een XML document als een tabel of set van tabellen gemodelleerd. Table-based mapping wordt meestal gebruikt om relationele data uit te wisselen. Het kan niet worden gebruikt voor XML documenten die niet aan het tabel-model voldoen. Het tabel-model ziet er uit als: <Database> <Table> <Row> <column1>... </column1> <column2>... </column2> </Row> <Row> <column1>... </column1> <column2>... </column2> </Row> </Table> </Database> 22

23 Object-relational mapping Hierbij wordt de data in een XML document als objecten gemodelleerd. In dit model worden element types met atributen, element inhoud weergegeven als classes. Element typen met puur PCDATA, attributen en PCDATA worden weergegeven als scalar properties. Het model wordt dan gemapt op een database waarbij classes worden gemapt op tabellen, scalar properties op kolommen en object-value properties op primary keys en/of foreign keys Opslaan van data in een native XML database Data in XML documenten kan ook worden opgeslagen in een native XML database. Voor die keuze zijn een aantal argumenten. Semi-gestructureerde data resulteert in een groot aantal kolommen met NULL waardes of tabellen in een relationele database Native XML databases zijn over het algemeen sneller met het verkrijgen van data dan relationele databases Native XML databases hebben XML specifieke mogelijkheden Als de data semi-gestructureerd is, d.w.z. een regelmatige structuur, maar genoeg afwijkingen zodat opslag in een relationele database een groot aantal kolommen met NULL waardes of veel tabellen oplevert. Ondanks dat semi-gestructureerde data opgeslagen kan worden in object-georienteerde en hierarchische databases is het ook mogelijk om die data op te slaan in een native XML database in de vorm van een XML document. De retrieval snelheid is de tijd die nodig is om data uit de database te halen. Afhankelijk van hoe een native XML database data fysiek opslaat, kan er een flinke snelheidswinst geboekt worden in vergelijking met een relationele database. De reden hiervoor is dat een native XML database fysiek gezien complete documenten opslaat of fysieke pointers tussen delen van documenten gebruikt. Dit heeft als resultaat dat documenten kunnen worden opgevraagd zonder joins of met fysieke joins, wat beide sneller is dan logische joins die door relationele databases gebruikt worden. 23

Sparse columns in SQL server 2008

Sparse columns in SQL server 2008 Sparse columns in SQL server 2008 Object persistentie eenvoudig gemaakt Bert Dingemans, e-mail : info@dla-os.nl www : http:// 1 Content SPARSE COLUMNS IN SQL SERVER 2008... 1 OBJECT PERSISTENTIE EENVOUDIG

Nadere informatie

Zelftest XML Concepten

Zelftest XML Concepten Zelftest XML Concepten Document: n1035test.fm 18/02/2010 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INLEIDING Om een idee te hebben van wat we verwachten als voorkennis

Nadere informatie

Technisch Ontwerp W e b s i t e W O S I

Technisch Ontwerp W e b s i t e W O S I Technisch Ontwerp W e b s i t e W O S I WOSI Ruud Jungbacker en Michael de Vries - Technisch ontwerp Website Document historie Versie(s) Versie Datum Status Omschrijving / wijzigingen 0.1 20 nov 2008 Concept

Nadere informatie

Powerpoint presentatie College 5 Gilbert van Lierop & Farshad Salamat

Powerpoint presentatie College 5 Gilbert van Lierop & Farshad Salamat Powerpoint presentatie College 5 Gilbert van Lierop & Farshad Salamat Wat is een database? Een verzameling van georganiseerde data Een database bestaat uit applicaties, SQL en het DBMS Watis eendbms? EenDBMS

Nadere informatie

open standaard hypertext markup language internetprotocol transmission control protocol internet relay chat office open xml

open standaard hypertext markup language internetprotocol transmission control protocol internet relay chat office open xml DOWNLOAD OR READ : OPEN STANDAARD HYPERTEXT MARKUP LANGUAGE INTERNETPROTOCOL TRANSMISSION CONTROL PROTOCOL INTERNET RELAY CHAT OFFICE OPEN XML PDF EBOOK EPUB MOBI Page 1 Page 2 relay chat office open xml

Nadere informatie

Databases - Inleiding

Databases - Inleiding Databases Databases - Inleiding Een database is een verzameling van een aantal gegevens over een bepaald onderwerp: een ledenbestand van een vereniging, een forum, login gegevens. In een database worden

Nadere informatie

Koppeling met een database

Koppeling met een database PHP en MySQL Koppeling met een database 11.1 Inleiding In PHP is het eenvoudig om een koppeling te maken met een database. Een database kan diverse gegevens bewaren die met PHP aangeroepen en/of bewerkt

Nadere informatie

NHibernate als ORM oplossing

NHibernate als ORM oplossing NHibernate als ORM oplossing Weg met de SQL Queries Wat is ORM? ORM staat in dit geval voor Object Relational Mapping, niet te verwarren met Object Role Modeling. ORM vertaalt een objectmodel naar een

Nadere informatie

XML Introductie.

XML Introductie. XML Introductie joost.vennekens@denayer.wenk.be http://telescript.denayer.wenk.be/~jve extenstible Markup Language Aanbrengen van extra informatie in tekst Betekenis van de tekst beschrijven Uitbreidbaar:

Nadere informatie

Les 2 Eenvoudige queries

Les 2 Eenvoudige queries Les 2 Eenvoudige queries XAMP Apache server ( http ) mysql server PHP myadmin IAM SQL oefeningen Database phpmyadmin Import : sql_producten.sql, sql_winkel.sql, sql_festival.sql SAMS SQL in 10 minuten

Nadere informatie

icafe Project Joeri Verdeyen Stefaan De Spiegeleer Ben Naim Tanfous

icafe Project Joeri Verdeyen Stefaan De Spiegeleer Ben Naim Tanfous icafe Project Joeri Verdeyen Stefaan De Spiegeleer Ben Naim Tanfous 2006-2007 Inhoudsopgave 1 2 1.1 Programmeertaal PHP5..................... 2 1.2 MySQL database......................... 3 1.3 Adobe Flash...........................

Nadere informatie

Gimme Five! Op weg naar TYPO3 5.0 'Phoenix'

Gimme Five! Op weg naar TYPO3 5.0 'Phoenix' Gimme Five! Op weg naar TYPO3 5.0 'Phoenix' Waarom TYPO3 5.0? Waarom TYPO3 5.0? Enkele redenen: Waarom TYPO3 5.0? Enkele redenen: Complexiteit De TYPO3 Core architectuur heeft zijn limiet bereikt en is

Nadere informatie

DBMS. DataBase Management System. Op dit moment gebruiken bijna alle DBMS'en het relationele model. Deze worden RDBMS'en genoemd.

DBMS. DataBase Management System. Op dit moment gebruiken bijna alle DBMS'en het relationele model. Deze worden RDBMS'en genoemd. SQL Inleiding relationele databases DBMS DataBase Management System!hiërarchische databases.!netwerk databases.!relationele databases.!semantische databases.!object oriënted databases. Relationele databases

Nadere informatie

ETIM UP Handleiding Ketenstandaard Bouw en Installatie Versie:

ETIM UP Handleiding Ketenstandaard Bouw en Installatie Versie: ETIM UP Handleiding Ketenstandaard Bouw en Installatie Versie: 25-07-17 Handleiding ETIM UP 1 Inhoudsopgave Over ETIM UP...3 1 Algemeen...4 1.1 Website...4 1.2 Toegang...4 1.3 Bestandsformaten...4 2 Dashboard...5

Nadere informatie

Datamodelleren en databases 2011

Datamodelleren en databases 2011 Datamodelleren en databases 21 Capita selecta 1 In dit college Modelleren Normaliseren Functionele afhankelijkheid 1-3N M:N-relaties, associatieve entiteittypes, ternaire relaties Weak entiteittypes Multivalued

Nadere informatie

Informatie & Databases

Informatie & Databases Informatie Wat is informatie en waaruit het bestaat? Stel op een kaart staat het getal 37 geschreven. Wat kun je dan zeggen van het cijfer 37? Niets bijzonders, toch? Alleen dat het een getal is. Gaat

Nadere informatie

We moeten de accommodaties selecteren die 3 sterren hebben, en in land met ID 10 zitten.

We moeten de accommodaties selecteren die 3 sterren hebben, en in land met ID 10 zitten. MySQL talk Trage website? Het optimaliseren van een bestaande website die een MySQL database heeft is niet altijd even makkelijk. Het probleem kan namelijk op veel verschillende plekken zitten: de database

Nadere informatie

Oracle Application Server Portal Oracle Gebruikersgroep Holland Oktober 2003

Oracle Application Server Portal Oracle Gebruikersgroep Holland Oktober 2003 Oracle Application Server Portal Oracle Gebruikersgroep Holland Oktober 2003 Page 1 1 Kees Vianen Senior Sales Consultant Technology Solutions Oracle Nederland Agenda Geschiedenis van Oracle Portal Portal

Nadere informatie

Flexibiliteit en Duurzaamheid: Teksttechnologie en Museumdocumentatie

Flexibiliteit en Duurzaamheid: Teksttechnologie en Museumdocumentatie Flexibiliteit en Duurzaamheid: Teksttechnologie en Museumdocumentatie Spectrum in een nieuw jasje Edward Vanhoutte & Ron Van den Branden Centrum voor Teksteditie en Bronnenstudie Koninklijke Academie voor

Nadere informatie

Kennissessie INSPIRE. Algemene vereisten & architectuur Metadata View Services Download Services Ondersteuning vanuit Geonovum.

Kennissessie INSPIRE. Algemene vereisten & architectuur Metadata View Services Download Services Ondersteuning vanuit Geonovum. Kennissessie Algemene vereisten & architectuur Metadata View Services Download Services Ondersteuning vanuit Geonovum Thijs Brentjens Inhoud Download Services Pre-defined datasets via Atom feeds Pre-defined

Nadere informatie

Thinking of development

Thinking of development Thinking of development Databases Arjan Scherpenisse HKU / Miraclethings Agenda voor vandaag Opdracht tussenstand State diagram / Observer pattern Bret Victor Databases 2/42 Opdracht tussenstand Slides

Nadere informatie

Technische nota AbiFire Rapporten maken via ODBC

Technische nota AbiFire Rapporten maken via ODBC Technische nota AbiFire Rapporten maken via ODBC Laatste revisie: 23 januari 2018 Inhoudsopgave 1 Inleiding... 2 2 Systeeminstellingen in AbiFire... 3 2.1 Aanmaken extern profiel... 3 2.2 Toewijzing extern

Nadere informatie

Correspondentie inzake overnemen of reproductie kunt u richten aan:

Correspondentie inzake overnemen of reproductie kunt u richten aan: Vrijwel alle namen van software- en hardwareproducten die in deze cursus worden genoemd, zijn tegelijkertijd ook handelsmerken en dienen dienovereenkomstig te worden behandeld. Alle rechten voorbehouden.

Nadere informatie

Standard Parts Installatie Solid Edge ST3

Standard Parts Installatie Solid Edge ST3 Hamersveldseweg 65-1b 3833 GL LEUSDEN 033-457 33 22 033-457 33 25 info@caap.nl www.caap.nl Bank (Rabo): 10.54.52.173 KvK Utrecht: 32075127 BTW: 8081.46.543.B.01 Standard Parts Installatie Solid Edge ST3

Nadere informatie

APEX en JasperReports

APEX en JasperReports APEX en JasperReports een Dream Team! Spreker(s) : Datum : E-mail : Vincent Deelen 28 mei 2013 vincent.deelen@transfer-solutions.com WWW.TRANSFER-SOLUTIONS.COM Outline APEX en rapporten Oracle BI publisher

Nadere informatie

Technische nota AbiFire5 Rapporten maken via ODBC

Technische nota AbiFire5 Rapporten maken via ODBC Technische nota AbiFire5 Rapporten maken via ODBC Laatste revisie: 29 juli 2009 Inhoudsopgave Inleiding... 2 1 Installatie ODBC driver... 2 2 Systeeminstellingen in AbiFire5... 3 2.1 Aanmaken extern profiel...

Nadere informatie

ContentQueryWebpart en custom XSLT. Alles wat je moet weten over het CQW

ContentQueryWebpart en custom XSLT. Alles wat je moet weten over het CQW ContentQueryWebpart en custom XSLT Alles wat je moet weten over het CQW 1 Contents Voorkennis... 3 Het CQW volgens Microsoft... 3 Algemene werking van het CQW... 3 Het werken met slots... 4 DataMappings...

Nadere informatie

DataFlex 19.0 SQL Server

DataFlex 19.0 SQL Server Connections to SQL Server 1 Agenda Connecties Aanpassingen in applicaties 2 Connecties Kort overzicht 3 SQL manier Connectie maken met een server (login) Connectie stelt je in staat om tabellen in een

Nadere informatie

Elastic Search wat heb je aan data als je er niets mee doet.. Oscar Buse 11 juli 2017 Linux User Group Nijmegen

Elastic Search wat heb je aan data als je er niets mee doet.. Oscar Buse 11 juli 2017 Linux User Group Nijmegen Elastic Search wat heb je aan data als je er niets mee doet.. Oscar Buse 11 juli 2017 Linux User Group Nijmegen Inleiding Dit praatje gaat over Elasticsearch. De onderwerpen die aan bod komen: Wat is Elasticsearch?

Nadere informatie

Zonnepanelen Hoe krijg je de data op je website?

Zonnepanelen Hoe krijg je de data op je website? Zonnepanelen Hoe krijg je de data op je website? Beste website-bezoeker, Omdat ik al heel wat vragen kreeg over het gedeelte zonne-energie op mijn website, heb ik besloten om de werkwijze die ik gevolgd

Nadere informatie

Functionele beschrijving: scannen naar Exact Globe.

Functionele beschrijving: scannen naar Exact Globe. Functionele beschrijving: scannen naar Exact Globe. Algemeen Met de KYOCERA scannen naar Exact Globe beschikt u over een efficiënte oplossing om uw documenten te scannen naar Exact Globe. Met deze oplossing

Nadere informatie

Zelftest Informatica-terminologie

Zelftest Informatica-terminologie Zelftest Informatica-terminologie Document: n0947test.fm 01/07/2015 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTIE Deze test is een zelf-test, waarmee u

Nadere informatie

SQL & Datamodelleren

SQL & Datamodelleren SQL & Datamodelleren HVA-CMD-V1-datamodelleren Algemene handleiding bij het lesprogramma 2012-2013 Inhoud Inhoud... 2 Inleiding... 3 Leerdoelen:... 3 Plaats in het leerplan:... 3 Werkwijze:... 3 Lesstof:...

Nadere informatie

Gebruikers handleiding. Lizard Configuration Manager ToolTip. Installatie. Instellen. Initieel instellen

Gebruikers handleiding. Lizard Configuration Manager ToolTip. Installatie. Instellen. Initieel instellen Gebruikers handleiding Lizard Configuration Manager ToolTip Installatie Installeer eerst het volgende: Installeer python 2.5.2; zie de map Breda\Tooltip\lcm\install\python-2.5.2.msi Ga naar dos (run/uitvoeren

Nadere informatie

Business Workflow innovaties in SAP S/4 HANA

Business Workflow innovaties in SAP S/4 HANA Business Workflow innovaties in SAP S/4 HANA Op dit moment vindt er wereldwijd een technologie gebaseerde bedrijfsrevolutie plaats die op het eerste gezicht geen grenzen kent. Met zeer grote snelheid worden

Nadere informatie

Elastic Search wat heb je aan data als je er niets mee doet.. Oscar Buse 17 maart 2018 Nederlandse Linux Gebruikers Groep

Elastic Search wat heb je aan data als je er niets mee doet.. Oscar Buse 17 maart 2018 Nederlandse Linux Gebruikers Groep Elastic Search wat heb je aan data als je er niets mee doet.. Oscar Buse 17 maart 2018 Nederlandse Linux Gebruikers Groep Inleiding Dit praatje gaat over Elasticsearch. De onderwerpen die aan bod komen:

Nadere informatie

De mogelijkheden van XML voor de langdurige bewaring van digitale documenten. DAVID studiedag 30 nov 2000

De mogelijkheden van XML voor de langdurige bewaring van digitale documenten. DAVID studiedag 30 nov 2000 De mogelijkheden van XML voor de langdurige bewaring van digitale documenten DAVID studiedag 30 nov 2000 Prof. Jan Engelen, Steven Depuydt K.U.Leuven - ESAT Onderzoeksgroep Document Architecturen Waarom

Nadere informatie

MA!N Rapportages en Analyses

MA!N Rapportages en Analyses MA!N Rapportages en Analyses Auteur Versie CE-iT 1.2 Inhoud 1 Inleiding... 3 2 Microsoft Excel Pivot analyses... 4 2.1 Verbinding met database... 4 2.2 Data analyseren... 5 2.3 Analyses verversen... 6

Nadere informatie

1. * Database worden vaak gebruikt in Client-Server architectuur.

1. * Database worden vaak gebruikt in Client-Server architectuur. Naam Studentnummer Klas Herkansing [ ] ja, nee [ ], zoja uit welk jaar? kernbegrippen relationele database Minimaal drie van de vijf vragen goed beantwoorden. 1. * Database worden vaak gebruikt in Client-Server

Nadere informatie

Acht stappen voor JSF

Acht stappen voor JSF Acht stappen voor JSF Inleiding In deze tutorial zullen we JSF (Java server faces) installeren. Wat we niet beschrijven is hoe te werken met JSF, over dit onderwerp zijn er genoeg boeken en internetsites

Nadere informatie

Multi user Setup. Firebird database op een windows (server)

Multi user Setup. Firebird database op een windows (server) Multi user Setup Firebird database op een windows (server) Inhoudsopgave osfinancials multi user setup...3 Installeeren van de firebird database...3 Testing van de connectie met FlameRobin...5 Instellen

Nadere informatie

XML Introductie. joost.vennekens@kuleuven.be http://www.cs.kuleuven.be/~joost

XML Introductie. joost.vennekens@kuleuven.be http://www.cs.kuleuven.be/~joost XML Introductie joost.vennekens@kuleuven.be http://www.cs.kuleuven.be/~joost extensible Markup Language Aanbrengen van extra informatie in tekst Betekenis van de tekst beschrijven Uitbreidbaar: afhankelijk

Nadere informatie

De voordelen van Drupal

De voordelen van Drupal Drupal is een open source Content Management System (CMS). Daarnaast kun je Drupal zien als een framework, dit betekent dat je modules (oftewel mini-applicaties) kunt implementeren in je installatie van

Nadere informatie

Van Big Data tot waardevolle informatie op maat van de (interne)gebruiker en de burger

Van Big Data tot waardevolle informatie op maat van de (interne)gebruiker en de burger Van Big Data tot waardevolle informatie op maat van de (interne)gebruiker en de burger Tijdens deze sessie krijgt u een inzicht in een specifieke visie over hoe men op basis van grote hoeveelheden ongestructureerde

Nadere informatie

Functionele beschrijving: scannen naar van Brug software.

Functionele beschrijving: scannen naar van Brug software. Functionele beschrijving: scannen naar van Brug software. Algemeen Met de KYOCERA scannen naar van Brug Software beschikt u over een efficiënte oplossing om uw documenten te scannen naar het Notarieel

Nadere informatie

Technisch Rapport. BAG Extract in i-bridge2.0. Versie 1.0. Datum 9 December 2010

Technisch Rapport. BAG Extract in i-bridge2.0. Versie 1.0. Datum 9 December 2010 Technisch Rapport BAG Extract in i-bridge2.0 Versie 1.0 Datum 9 December 2010 Status Final Colofon IVENT A&A CDC Madame Curielaan 4-6 Postbus 20703 2289 CA Rijswijk Contactpersoon Patrick Brooijmans Teamleider

Nadere informatie

ADVANCED DATABASES Syllabus versie 2.0

ADVANCED DATABASES Syllabus versie 2.0 ECDL-MODULE ADVANCED DATABASES Syllabus versie 2.0 Doel Dit document bevat de syllabus van de module Advanced Databases. In de syllabus worden aan de hand van leeruitkomsten de kennis en vaardigheden uiteengezet

Nadere informatie

Workshop 3x. Normaliseren. Normaliseren. Hiëarchische database ODBMS. Relationele database. Workshop 14 oktober 2010. A. Snippe ICT Lyceum 1

Workshop 3x. Normaliseren. Normaliseren. Hiëarchische database ODBMS. Relationele database. Workshop 14 oktober 2010. A. Snippe ICT Lyceum 1 Workshop 3x Analytisch vermogen Huiswerk Lestijden 10:00 12:30 Pauze 10:15 10:30 Deze les: Hiëarchische database Relationele database ODBMS Normaliseer stappen Hiëarchische database Elk record in een database

Nadere informatie

Databank - Basis 1. Inhoud. Computervaardigheden en Programmatie. Hoofdstuk 4 Databank - Basis. Terminologie. Navigeren door een Venster

Databank - Basis 1. Inhoud. Computervaardigheden en Programmatie. Hoofdstuk 4 Databank - Basis. Terminologie. Navigeren door een Venster 4. 4. Inhoud rste BAC Toegepaste Biologische Wetenschappen Hoofdstuk 4 Databank Terminologie, Navigeren, Importeren Tabellen Records/Velden manipuleren Queries (Vragen) [Ook in SQL] sorteren filter volgens

Nadere informatie

ASRemote WebService. Via deze webservice kunt u:

ASRemote WebService. Via deze webservice kunt u: ASRemote WebService De ASRemote WebService is een SOAP Webservice die softwarematige communicatie met Exact Globe mogelijk maakt vanaf een willekeurige locatie op het internet. Via deze webservice kunt

Nadere informatie

Zo kan je linken maken tussen je verschillende groepen van gegevens.

Zo kan je linken maken tussen je verschillende groepen van gegevens. 1 1. Entity Reference Entity Reference zal ook een onderdeel zijn van Drupal 8. Het is een module van het type veld. Het is een heel krachtige module die toelaat om referenties te maken tussen verschillende

Nadere informatie

EUROPEES COMPUTER RIJBEWIJS / INTERNATIONAAL COMPUTER RIJBEWIJS ADVANCED DATABASE

EUROPEES COMPUTER RIJBEWIJS / INTERNATIONAAL COMPUTER RIJBEWIJS ADVANCED DATABASE EUROPEES COMPUTER RIJBEWIJS / INTERNATIONAAL COMPUTER RIJBEWIJS ADVANCED DATABASE The European Computer Driving Licence Foundation Ltd. Portview House Thorncastle Street Dublin 4 Ierland Tel: + 353 1 630

Nadere informatie

Een website maken met databasetoegang.

Een website maken met databasetoegang. Hoofdstuk 5 Een website maken met databasetoegang. In dit hoofdstuk gaan we het weblog dat je in hoofdstuk 4 hebt gemaakt verder uitbreiden. Een belangrijk onderdeel wordt toegevoegd aan de applicatie,

Nadere informatie

De plug-in is heel eenvoudig te installeren met een setup-programma. Waarna je een aantal menu opties in het tools menu er bij krijgt.

De plug-in is heel eenvoudig te installeren met een setup-programma. Waarna je een aantal menu opties in het tools menu er bij krijgt. Plsqldoc Genereer je documentatie Beeklaan 444 2562 BK Den Haag www.darwin-it.nl info@darwin-it.nl KvK 27283780 ING 65.35.40.663 Technical Architect Net als (vrijwel) elke ontwikkelaar vind ik het documenteren

Nadere informatie

WWW.EMINENT-ONLINE.COM

WWW.EMINENT-ONLINE.COM WWW.EMINENT-OINE.COM HNDLEIDING USERS MNUL EM1016 HNDLEIDING EM1016 USB NR SERIEEL CONVERTER INHOUDSOPGVE: PGIN 1.0 Introductie.... 2 1.1 Functies en kenmerken.... 2 1.2 Inhoud van de verpakking.... 2

Nadere informatie

Functionele beschrijving: scannen naar UNIT4 DocumentManager

Functionele beschrijving: scannen naar UNIT4 DocumentManager Functionele beschrijving: scannen naar UNIT4 DocumentManager Algemeen Met de KYOCERA Scannen naar UNIT4 DocumentManager beschikt u over een efficiënte oplossing om uw documenten te scannen naar UNIT4 DocumentManager

Nadere informatie

DB architectuur. joost.vennekens@denayer.wenk.be

DB architectuur. joost.vennekens@denayer.wenk.be DB architectuur joost.vennekens@denayer.wenk.be DB - logisch perspectief - DB - fysisch perspectief - DBMS Fysische details van databank beheren Zodat gebruiker zich enkel om logische perspectief moet

Nadere informatie

Zelftest Java EE Architectuur

Zelftest Java EE Architectuur Zelftest Java EE Architectuur Document: n1218test.fm 22/03/2012 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INLEIDING BIJ DE ZELFTEST JAVA EE ARCHITECTUUR Nota:

Nadere informatie

XML. Alle tekortkomingen op een rijtje! (en een paar pluspunten...) Marc de Graauw http://www.marcdegraauw.com/

XML. Alle tekortkomingen op een rijtje! (en een paar pluspunten...) Marc de Graauw http://www.marcdegraauw.com/ XML Alle tekortkomingen op een rijtje! (en een paar pluspunten...) De geschiedenis van XML SGML Standard Generalized Markup Language IBM: back to the sixties... Markup: structuur, niet processing HTML:

Nadere informatie

WFS 3.0 De geo-api van de toekomst. Linda van den Brink, Geonovum 13 februari #DataToBuildOn

WFS 3.0 De geo-api van de toekomst. Linda van den Brink, Geonovum 13 februari #DataToBuildOn WFS 3.0 De geo-api van de toekomst Linda van den Brink, Geonovum 13 februari 2019 @brinkwoman #DataToBuildOn Eerste versie uit 2002 https://nl.wikipedia.org/wiki/web_feature_service Web Feature Service

Nadere informatie

Documenten in en uit Apex

Documenten in en uit Apex Documenten in en uit Apex Hoe om te gaan met documenten en Oracle Apex Dick Dral, Detora Even voorstellen Oracle sinds 1988 (Ministerie van LNV) HTML sinds 1995 Oracle Webtoolkit sinds 1998 Apex sinds

Nadere informatie

ICARUS Illumina E653BK on Windows 8 (upgraded) how to install USB drivers

ICARUS Illumina E653BK on Windows 8 (upgraded) how to install USB drivers ICARUS Illumina E653BK on Windows 8 (upgraded) how to install USB drivers English Instructions Windows 8 out-of-the-box supports the ICARUS Illumina (E653) e-reader. However, when users upgrade their Windows

Nadere informatie

Kennis na het volgen van de training. Na het volgen van deze training bent u in staat:

Kennis na het volgen van de training. Na het volgen van deze training bent u in staat: Training Trainingscode Duur Gepubliceerd Taal Type Leermethode Kosten SF2015V8 4 dagen 02/02/2015 Nederlands & Engels Developer, basis Invidueel & klassikaal Op aanvraag Deze training richt zich op het

Nadere informatie

Organiseer uw verschillende SOAP services in één scenario

Organiseer uw verschillende SOAP services in één scenario 1 Organiseer uw verschillende SOAP services in één scenario Wouter Luijten wouterluijten@creetion.com 2 Introductie Tijdens de implementatie van een proces heeft u vaak te maken met een veelvoud aan services.

Nadere informatie

ChainWise server randvoorwaarden

ChainWise server randvoorwaarden ChainWise server randvoorwaarden Product ChainWise Bedrijfssoftware Datum 8-6-2018 Alle rechten voorbehouden aan ChainWise Niets in deze uitgave mag worden gebruikt in welke vorm dan ook zonder schriftelijke

Nadere informatie

Relationele Databases 2002/2003

Relationele Databases 2002/2003 1 Relationele Databases 2002/2003 Hoorcollege 3 24 april 2003 Jaap Kamps & Maarten de Rijke April Juli 2003 Plan voor Vandaag Praktische dingen 2.1, 2.3, 2.6 (alleen voor 2.2 en 2.3), 2.9, 2.10, 2.11,

Nadere informatie

Application interface. service. Application function / interaction

Application interface. service. Application function / interaction Les 5 Het belangrijkste structurele concept in de applicatielaag is de applicatiecomponent. Dit concept wordt gebruikt om elke structurele entiteit in de applicatielaag te modelleren: softwarecomponenten

Nadere informatie

DBMS SQL. Relationele databases. Sleutels. DataBase Management System. Inleiding relationele databases. bestaan uit tabellen.

DBMS SQL. Relationele databases. Sleutels. DataBase Management System. Inleiding relationele databases. bestaan uit tabellen. SQL Inleiding relationele databases DBMS DataBase Management System!hiërarchische databases.!netwerk databases.!relationele databases.!semantische databases.!object oriënted databases. Op dit moment gebruiken

Nadere informatie

Installatie SQL Server 2014

Installatie SQL Server 2014 Installatie SQL Server 2014 Download de SQL Server Express net advanced Services van de website: https://www.microsoft.com/en-us/download/details.aspx?id=42299 klik op Download. Als u een 64 bit variant

Nadere informatie

Y.S. Lubbers en W. Witvoet

Y.S. Lubbers en W. Witvoet WEBDESIGN Eigen Site Evaluatie door: Y.S. Lubbers en W. Witvoet 1 Summary Summary Prefix 1. Content en structuur gescheiden houden 2. Grammaticaal correcte en beschrijvende markup 3. Kopregels 4. Client-

Nadere informatie

Temperatuur logger synchronisatie

Temperatuur logger synchronisatie Temperatuur logger synchronisatie Juni 10, 2010 1 / 7 Temperatuur logger synchronisatie Introductie Twee of meerdere ontvangers van het Multilogger systeem kunnen met de temperature logger synchronisatie

Nadere informatie

ContentSearch. Deep dive

ContentSearch. Deep dive ContentSearch Deep dive 2 Waarvoor in te zetten? Alternatief voor database queries Waar performance een issue kan zijn Daadwerkelijk frontend Site Search Mogelijk niet de beste optie maar wel goedkoop

Nadere informatie

SQL is opgebouwd rond een basisinstructie waaraan één of meerdere componenten worden toegevoegd.

SQL is opgebouwd rond een basisinstructie waaraan één of meerdere componenten worden toegevoegd. BASISINSTRUCTIES SQL SQL : Structured Query Language is een taal gericht op het ondervragen van een relationele database en die aan veel klassieke databasemanagementsystemen kan worden gekoppeld. SQL is

Nadere informatie

Service Pack notes CRM SPE SP1

Service Pack notes CRM SPE SP1 Service Pack notes CRM SPE SP1 Versie 1.1 INHOUD 1. Stylesheet... 3 2. Bewerken documenten... 4 2.1 Inrichting... 4 3. Opgeloste meldingen en wensen... 5 UNIT4 Software B.V. Disclaimer zoals vermeld op

Nadere informatie

i ll take off to the cloud

i ll take off to the cloud i ll take off to the cloud Webbased applicaties gebouwd door ILE programmeurs Gepresenteerd door: Drs. Martijn van Breden Lead software architect Pantheon Automatisering 26-4-2017 1 Historie Pantheon Ontstaan

Nadere informatie

Functionele beschrijving: Scannen naar AFAS Profit.

Functionele beschrijving: Scannen naar AFAS Profit. Functionele beschrijving: Scannen naar AFAS Profit. Algemeen Met de Kyocera Scannen naar AFAS Profit beschikt u over een efficiënte oplossing om uw documenten te scannen naar AFAS Profit. Met deze oplossing

Nadere informatie

Enterprise Connectivity. Marnix van Bo. TU Delft Elek Software Architect 20 jaar ervarin ontwikkeling

Enterprise Connectivity. Marnix van Bo. TU Delft Elek Software Architect 20 jaar ervarin ontwikkeling Fir rst Base Enterprise Connectivity Marnix van Bo chove First Base: opgericht in 2001 TU Delft Elek ktrotechniek - 1998 Software Architect 20 jaar ervarin g met software ontwikkeling Presentatie Ideeën

Nadere informatie

INFITT01 - Internettechnologie WEEK 8

INFITT01 - Internettechnologie WEEK 8 INFITT01 - Internettechnologie WEEK 8 Programma Databases (JDBC, JNDI, ORM, JPA) MVC & Spring/Struts EJB Databases Veel web applicaties moeten informatie over langere tijd op kunnen slaan. Een voor de

Nadere informatie

Installatiehandleiding. Installatiehandleiding voor de ODBC-driver

Installatiehandleiding. Installatiehandleiding voor de ODBC-driver Installatiehandleiding Installatiehandleiding voor de ODBC-driver van UNIT4 Multivers (Accounting) Online 8.1 Copyright 2013 UNIT4 Software B.V., Sliedrecht, The Netherlands Alle rechten voorbehouden.

Nadere informatie

Object Oriented Programming

Object Oriented Programming Object Oriented Programming voor webapplicaties Door Edwin Vlieg Waarom OOP? Basis uitleg over OOP Design Patterns ActiveRecord Model View Controller Extra informatie Vragen OOP Object Oriented Programming

Nadere informatie

DATAMODEL SQL. Middelbare School. Versie 1.0 Datum 30 oktober 2010 Auteur Mark Nuyens, studentnummer: 500625333 Groep TDI 1

DATAMODEL SQL. Middelbare School. Versie 1.0 Datum 30 oktober 2010 Auteur Mark Nuyens, studentnummer: 500625333 Groep TDI 1 DATAMODEL SQL Middelbare School Versie 1.0 Datum 30 oktober 2010 Auteur Mark Nuyens, studentnummer: 500625333 Groep TDI 1 INHOUDSOPGAVE 1. Informatiedomein 3 1.1 Informatiedomein 3 1.2 Toepassingen 3 2.

Nadere informatie

2019 SUNEXCHANGE USER GUIDE LAST UPDATED

2019 SUNEXCHANGE USER GUIDE LAST UPDATED 2019 SUNEXCHANGE USER GUIDE LAST UPDATED 0 - -19 1 WELCOME TO SUNEX DISTRIBUTOR PORTAL This user manual will cover all the screens and functions of our site. MAIN SCREEN: Welcome message. 2 LOGIN SCREEN:

Nadere informatie

Functionele beschrijving: scannen naar UNIT4 Cura Documentmanagement.

Functionele beschrijving: scannen naar UNIT4 Cura Documentmanagement. Functionele beschrijving: scannen naar UNIT4 Cura Documentmanagement. Algemeen Met KYOCERA scannen naar UNIT4 Cura Documentmanagement beschikt u over een efficiënte oplossing om uw documenten te scannen

Nadere informatie

Research & development

Research & development Research & development Publishing on demand Workflow ondersteuning Typesetting Documentproductie Gespecialiseerd document ontwerp Web ontwerp en onderhoud Conversie Database publishing Advies Organisatie

Nadere informatie

1. Inleiding... 2 1.1. Inleiding SQL... 3 1.1.1. Inleiding... 3 1.1.2. Database, databaseserver en databasetaal... 4 1.1.3. Het relationele model...

1. Inleiding... 2 1.1. Inleiding SQL... 3 1.1.1. Inleiding... 3 1.1.2. Database, databaseserver en databasetaal... 4 1.1.3. Het relationele model... 1. Inleiding... 2 1.1. Inleiding SQL... 3 1.1.1. Inleiding... 3 1.1.2. Database, databaseserver en databasetaal... 4 1.1.3. Het relationele model... 4 1.1.4. Wat is SQL?... 6 1.1.5. Verschillende categorieên

Nadere informatie

DB architectuur.

DB architectuur. DB architectuur joost.vennekens@kuleuven.be DB - logisch perspectief - DB - fysisch perspectief - DBMS Fysische details van databank beheren Zodat gebruiker zich enkel om logische perspectief moet bekommeren

Nadere informatie

Lekker snel XML met SQL (.nl)

Lekker snel XML met SQL (.nl) Lekker snel met SQL (.nl In steeds meer opdrachten kom je als requirement tegen. Omdat het lekker makkelijk is of omdat de interface die je moet aanspreken het vereist. Dit is zeker het geval wanneer je

Nadere informatie

APEX Templates. OGH APEX dag 30 maart. Art Melssen. 31 maart 2010

APEX Templates. OGH APEX dag 30 maart. Art Melssen. 31 maart 2010 APEX Templates OGH APEX dag 30 maart Art Melssen Introductie Over de spreker 4 jaar APEX ervaring / 7 jaar Oracle 10 jaar web technologie ervaring APEX trajecten o.a. bij Centraal Boekhuis en eboekhuis

Nadere informatie

Frontend ontwikkeling

Frontend ontwikkeling Frontend ontwikkeling Mark Jansen Edwin Vlieg PHPFreakz ledendag 10 november 2007 Frontend ontwikkeling De interface is je product richting de eindgebruiker Goede PHP code met een slechte interface geeft

Nadere informatie

Gebruikers Handleiding

Gebruikers Handleiding Gebruikers Handleiding (De SQL module) Versie 2.14 Pagina 2 van 14 Versie 2.14 Inhoudsopgave NGP SQL...5 Het Menu... 6 De instellingen... 7 De database informatie... 9 Het Script... 10 Pagina 3 van 14

Nadere informatie

Activant Prophet 21. Prophet 21 Version 12.0 Upgrade Information

Activant Prophet 21. Prophet 21 Version 12.0 Upgrade Information Activant Prophet 21 Prophet 21 Version 12.0 Upgrade Information This class is designed for Customers interested in upgrading to version 12.0 IT staff responsible for the managing of the Prophet 21 system

Nadere informatie

Uitgebreid voorstel Masterproef Informatica

Uitgebreid voorstel Masterproef Informatica HoGent Uitgebreid voorstel Masterproef Informatica Titel van het project: Optimalisatie & ontwikkeling van een gegevenstransfertool voor Business Intelligence-gebruikers Datum : 01/11/2012 Naam student

Nadere informatie

SQL manipulatietaal. We kunnen er data mee toevoegen, wijzigen en verwijderen uit een database.

SQL manipulatietaal. We kunnen er data mee toevoegen, wijzigen en verwijderen uit een database. SQL manipulatietaal We kunnen er data mee toevoegen, wijzigen en verwijderen uit een database. Basiscommando's: INSERT : toevoegen van gegevens DELETE : verwijderen van gegevens UPDATE : wijzigen van gegevens

Nadere informatie

Windchill Document Management. - Digitaliseren van documenten en processen -

Windchill Document Management. - Digitaliseren van documenten en processen - Windchill Document Management - Digitaliseren van documenten en processen - Bas Verbunt 20 November 2014 Agenda Waarom Document Management? Uitdagingen bij het beheren van documenten Uitdagingen bij het

Nadere informatie

WebSite Director Gebruikersgids

WebSite Director Gebruikersgids WebSite Director Gebruikersgids CyberTeams, Inc. 104 South Main Street, Mt. Airy, MD 21771 301-829-6144! www.cyberteams.com CyberTeams and WebSite Director are registered trademarks of CyberTeams, Inc.

Nadere informatie

Technical Note. API Beschrijving Aangetekend Mailen

Technical Note. API Beschrijving Aangetekend Mailen AUTHOR APPROVED Technical Note API Beschrijving Referentie: API beschrijving AM Versie: 0.0.7 Datum: 2015-07-24 Aangetekend Bellen B.V. Computerweg 5 Postbus 8307 3503 RH Utrecht T: +31 346 581 731 support@aangetekendmailen.nl

Nadere informatie

Auteur boek: Vera Lukassen Titel boek: Word Gevorderd 2010. 2011, Serasta Uitgegeven in eigen beheer info@serasta.nl Eerste druk: augustus 2012

Auteur boek: Vera Lukassen Titel boek: Word Gevorderd 2010. 2011, Serasta Uitgegeven in eigen beheer info@serasta.nl Eerste druk: augustus 2012 Auteur boek: Vera Lukassen Titel boek: Word Gevorderd 2010 2011, Serasta Uitgegeven in eigen beheer info@serasta.nl Eerste druk: augustus 2012 ISBN: 978-90-817910-7-6 Dit boek is gedrukt op een papiersoort

Nadere informatie

Planbord installatie instructies

Planbord installatie instructies Planbord installatie instructies Uit Comprise Wiki Inhoud 1 Basis installatie 1.1 Installeren 1.1.1 Microsoft Data Access Components 1.2 De eerste keer starten 2 Veelgestelde vragen 2.1 "Network resource

Nadere informatie

ibridge/andk the analyst s connection

ibridge/andk the analyst s connection ibridge/andk the analyst s connection ibridge / ANDK Uiteraard weet ú als criminaliteitsanalist als geen ander dat u met behulp van de Analyst s Notebook software analyseschema s handmatig kunt opbouwen

Nadere informatie

Intermax backup exclusion files

Intermax backup exclusion files Intermax backup exclusion files Document type: Referentienummer: Versienummer : Documentatie 1.0 Datum publicatie: Datum laatste wijziging: Auteur: 24-2-2011 24-2-2011 Anton van der Linden Onderwerp: Documentclassificatie:

Nadere informatie