Virtual Storyteller overzicht Java Theorem Prover (JTP)

Maat: px
Weergave met pagina beginnen:

Download "Virtual Storyteller overzicht Java Theorem Prover (JTP)"

Transcriptie

1 Virtual Storyteller overzicht Java Theorem Prover (JTP) JTP is een object-geörienteerd redeneer systeem, geïmplementeerd in Java. In dit document wordt het opzetten van een simpel redeneersysteem in JTP behandeld. De onderdelen van het systeem worden een voor een behandeld. Verder wordt een aantal problemen die voor zouden kunnen komen op een rijtje gezet. Een beknopte javadocbeschrijving bij de klassen kan gevonden worden via de JTP website: De basisklasse voor een redeneersysteem is de Reasoning Context. Elke Reasoning Context in JTP stamt af van de basisklasse jtp.context.basicreasoningcontext. Representatie van kennis Kennis wordt gerepresenteerd in de Conjunctieve Normaal Vorm (Conjunctive Normal Form, CNF). Een stukje kennis in CNF bestaat uit een aantal clausules (Clauses), die allemaal waar zijn. Een clausule wordt intern gerepresenteerd als een verzameling van Literals en de logische operatoren NOT en OR. Kennis wordt geïmplementeerd in KIFzinnen (KIF: Knowledge Interchange Format). De kennis (A => B), (B => C) bestaat dus uit twee clausules, (A => B) en (B => C). De clausule A => B wordt in JTP gerepresenteerd als (NOT(B) OR (A)). A en B zijn beide een Literal. Een Literal bestaat uit een relatie en de argumenten waartussen die relatie geldt. Neem bijvoorbeeld de Literal (ancestor Mary Sue). ancestor is hier de relatie. De argumenten zijn Mary en Sue. Argumenten van een Literal kunnen ook variabelen zijn. Een variabele begint met een vraagteken (? ), met daar op volgend een aantal karakters. Op deze manier kan bijvoorbeeld transitiviteit worden uitgedrukt: (=> ((ancestor?x?y) (ancestor?y?z)) (ancestor?x?z) ) Kennisrepresentatie concreet in Java klassen: CNFSentence is een rijtje conjuncte Clauses, dus impliciet gecombineerd met een AND. Dus de CNFSentence met Clause A, B en C heeft een KIF-representatie (and (A) (B) (C)) Clause is een rijtje disjuncte Literals, dus impliciet gecombineerd met een OR. Dus de Clause met Literals A en B heeft een KIF-representatie (or (A) (B)) Literal is een simpele Clause die bestaat uit een relatie en argumenten waartussen de relatie geldt, in de vorm van Symbols. Bijvoorbeeld (father Jan Piet) definieert de

2 father relatie tussen Jan en Piet. Een Literal heeft ook een polariteit; is de polariteit van een Literal L false, dan is NOT(L) waar. Symbol is een (symbool-)element, met een package (die ook leeg kan zijn) en een name. owl:inverseof kan gerepresenteerd worden als een Symbol met package owl (of eigenlijk en name inverseof. Variable is een variabele, bijvoorbeeld?loc. Reasoning Context In JTP zijn verschillende omgevingen om te redeneren geimplementeerd. Elk van deze omgevingen biedt de mogelijkheid om kennis op te slaan (telling) en op te vragen (asking). Deze kennis wordt ingegeven d.m.v. KIF-zinnen, en worden door de reasoning context omgezet naar CNF. Intern worden deze CNF-feiten gebruikt om andere feiten af te leiden. Een Reasoning Context bestaat uit Reasoners en Dispatchers. Dispatchers ontvangen een query of een assertion en spelen die door naar een geschikte Reasoner. Telling reasoners verwerken kennis op een forward-chaining manier; ze verwerken consequenties van aangenomen kennis. Asking reasoners op hun beurt, verwerken kennis via backwardchaining; er worden steeds bewijzen gezocht bij queries. De meest simpele Reasoning Context is geimplementeerd in de klasse jtp.context.basicreasoningcontext. Deze context biedt mogelijkheden om assertions en queries te verwerken: - Assertions worden door een jtp.modelim.breadthfirstforwardreasoner reasoner uitbesteed aan een jtp.disp.sequentialdispatcher. - Queries worden door een jtp.context.iterativedeepening reasoner uitbesteed aan een jtp.disp.sequentialdispatcher. Om kennis op te kunnen slaan moet aan een BasicReasoningContext een jtp.gmp.clauseorientationkb worden toegevoegd. De feitelijke opslag van kennis gebeurt in deze klasse in de private-velden pos en neg. Gespecialiseerde contexten Binnen JTP bestaan er 2 uitbreidingen op de door de BasicReasoningContext geleverde basis context: De klassen jtp.frame.fc.context en jtp.frame.listen.context. Beide klassen bieden ondersteuning voor forward-chaining rules door middel van speciale reasoners, maar de manier waarop rules worden ondersteund verschilt in beide klassen. Een overzicht van de reasoners die worden gebruikt door jtp.frame.listen.context: - Telling reasoners: o jtp.frame.linkasserter o jtp.frame.listen.vclistenercreator o jtp.frame.slotvaluetellingreasoner (gekoppeld aan een FrameKB)

3 - Asking reasoners: o jtp.frame.slotvalueaskingreasoner (gekoppeld aan een FrameKB) De klasse jtp.frame.listen.context vormt de basis voor de klasse jtp.context.rdf.rdfcontext. Een RDFContext voegt de volgende reasoners toe aan de reeds over geërfde reasoners: o Asking reasoners: o jtp.frame.holdsreasoner o jtp.frame.enumeratingreasoner o jtp.func.inequal De klasse jtp.context.owl.owlcontext vormt een verdere specialisatie van de RDFContext. Een OWLContext voegt de volgende reasoners toe: o Telling reasoners: o jtp.frame.listen.dl.intersectiontypereasoner o jtp.classifier.classifiertellingreasoner

4 RDF/OWL functionaliteit zoals beschreven in wordt door JTP bereikt door de volgende bestanden te laden tijdens het opzetten van een RDF of OWL reasoning context: %JTP%/src/jtp/context/owl/owl-assumptions.kif %JTP%/src/jtp/context/owl/owl-rules.xml %JTP%/src/jtp/context/rdf/rdf-assumptions.kif %JTP%/src/jtp/context/rdf/rdf-rules.xml In de xml-bestanden zijn de zogenaamde forward-chaining regels gedefinieerd, de kifbestanden bevatten KIF-definities van OWL en RDF zoals: (rdfs:domain rdf:type rdfs:resource) (rdfs:range rdf:type rdfs:class) (rdf:type owl:thing owl:class) (owl:complementof owl:thing owl:nothing) Toevoegen van kennis Het toevoegen van kennis aan een reasoning context gebeurt middels het aannemen (assert-en) van feiten. Aangenomen feiten kunnen ervoor zorgen dat er forward-chaining regels worden geactiveerd, daarom zijn er twee manieren om kennis aan te nemen: de ene levert een ReasoningStepIterator als resultaat, de andere een integer. De Iterator kan gebruikt worden om handmatig door de forward-chained informatie te lopen, de integer geeft simpelweg het aantal nieuw geïmpliceerde feiten. Verder kan het feit dat aangenomen dient te worden op 2 manieren worden aangegeven: middels een codering als tekst, of als object-representatie. Dit leidt tot de volgende 4 methodes om een feit aan te nemen: int BasicReasoningContext.tell( Object assertion ) ReasoningStepIterator BasicReasoningContext.getAssertionResults( DirectAssertion assertion ) int BasicReasoningContext.tellString( String assertion, URL url ) ReasoningStepIterator BasicReasoningContext.getStringAssertionResults( String assertion ) Het verschil tussen het meegeven van een Object of String is dat wanneer een Stringrepresentatie wordt meegegeven, deze door de reasoning context eerst zal worden vertaald naar een DirectAssertion-object. Het verschil tussen de get... -methodes en de andere methodes, is het wel of niet doorgeven van de kennis aan de undo-manager. De methodes die een ReasoningStepIterator retourneren slaan het aangenomen feit niet op in de undo-manager. Een consequentie hiervan is dat feiten die via de get -methodes zijn toegevoegd aan de KB op een later tijdstip niet meer op te sommen zijn.

5 Opvragen van kennis Het opvragen van kennis gaat via het doen van een query aan de kennisbank. De context BasicReasoningContext biedt hiervoor de methode ask( String query ). De query wordt intern vertaald door de FirstOrderLogicTranslator van de context, die weer gebruik maakt van de parser die op dat moment in de context (zie setparser()) is ingesteld. JTP wijzigt soms intern de gebruikte parser (bijvoorbeeld wanneer een KB wordt geladen via loadrdfkb(), die een RDFParser instelt), vandaar dat het aan te raden is om ofwel direct de AskingReasoner van de context aan te roepen: getaskingreasoner().process(translator.translate( query )) Queries die uit een simpele Literal bestaan (bijvoorbeeld (fatherof?x?y)), worden afgehandeld door de model elimination theorem prover, die geimplementeerd is in de klasse jtp.modelim.modeleliminationreasoner. Wanneer een query echter meer complex vormgegeven is, komt deze via de AskingDispatcher terecht bij de jtp.modelim.askingqueryreasoner. Deze reasoner gaat op een bijzonder wijze om met de query: Er wordt een tijdelijke Literal aangemaakt die bestaat uit een hulp-naam $aux, en waarvan de variabelen de verzameling is van ongebonden variabelen uit de oorspronkelijke query. Er wordt een hulpregel toegevoegd aan de kennisbank. Deze hulpregel ziet eruit als: (query => $aux). Vervolgens wordt ($aux) als query aan de kennisbank gegeven. Op deze manier kan toch weer de model elimination theorem prover worden gebruikt. Een voorbeeld: stel, de query is (a?x => b?y). De vrije variabelen in deze query zijn?x en?y. Er wordt dus een hulp-literal aangemaakt: ($aux?x?y). Verder wordt deze regel toegevoegd aan de KB: ((a?x => b?y) => $aux?x?y). Intern wordt nu de query ($aux?x?y) doorgegeven aan de ModelEliminationReasoner. Een bijkomstigheid van het gebruik van de AskingQueryProcessor is dat de hulp-regels die toegevoegd worden aan de KB niet worden verwijderd. Wanneer hier geen rekening mee wordt gehouden, zal een groot aantal complexe queries dus leiden tot een steeds hogen geheugen-gebruik. Het is daarom raadzaam om vóór het stellen van een query een snapshot te maken via de UndoManager (zie hieronder). Antwoord op een query Het resultaat van een query is een ReasoningStepIterator, wat een belangrijke klasse is binnen JTP. Een instantie van de klasse jtp.reasoningstep is in wezen een bewijs van de query. Een ReasoningStep bestaat uit de volgende attributen: goal: de te bewijzen Literal. subgoals: wanneer de query geen literal is, maar een conjunctie van literals, vormt elke literal in de conjunctie een subgoal. subproofs: elke subgoal wordt bewezen in een eigen bewijs.

6 bindings: de vrije variabelen die in de stap voorkomen plus de waarden waarvoor ze gesubstitueerd zijn bij het vormen van het bewijs. Itereren van de kennisbank De kennis in een JTP reasoning context wordt opgeslagen in private velden in de klasse ClauseOrientationKB, en is dus niet direct opvraagbaar. In plaats daarvan kan kennis worden geïtereerd via de UndoManager klasse. Kennis die is aangenomen via de tell- methoden wordt door de undo-manager bijgehouden, zodat feiten later weer via untell kunnen worden ingetrokken. Deze functionaliteit is geëncapsuleerd in de klasse jtp.undo.snapshotundomanager. Het via deze klasse ophalen van aangenomen kennis gaat als volgt: 1. Via BasicReasoningContext.getUndoManager() wordt de undo-manager opgehaald. 2. Er wordt een snapshot shot gemaakt via SnapshotUndoManager.getSnapshot() 3. Kennis die sinds het maken van de snapshot via tell-methoden is aangenomen kan worden opgevraagd met de methode SnapshotUndoManager.getObjectsToldSinceSnapshot(). Packages De verschillende packages binnen JTP: jtp.cache voor cachen van een Knowledge Store (wordt niet gebruikt in JTP) jtp.classifier voor classificatie algoritmes (OWL) ( x heeft 4 muren en een dak dus x is een gebouw ) jtp.context Reasoning contexts (daml, rdf, owl) jtp.demod Lijkt iets te zijn met het kunnen transformeren van kennis (bv vervangen van literals en variabelen) jtp.disp Dispatchers (besteden queries uit naar reasoners) jtp.fol First order logic: de klassen waar kennis uit bestaat zoals CNFSentences, Clauses, Literals, Variables etc. Bevat ook parsers voor deze kennis (van String naar Java objecten) jtp.frame Alles voor frame-based reasoning -- jtp.frame.vocab Vocabulaire voor RDF, OWL etc. -- jtp.frame.fc Voor forward chaining (rules) -- jtp.frame.listen luistert naar binnenkomende kennis om gevolgen te trekken -- jtp.frame.vc Value collection, voor het zoeken erin en werken ermee jtp.func Functional reasoners -- jtp.func.math Mathematical reasoners jtp.gmp Modus Ponens reasoners jtp.iw InferenceWeb reasoners jtp.modelim Model elimination reasoners jtp.proof Afhandelen van bewijzen: goals, subgoals, en redeneer-regels zoals and-introduction jtp.rs ReasoningSteps

7 jtp.time jtp.ui jtp.undo jtp.util jtp Time reasoners User interface voor JTP Voor het retracten van knowledge Verschillende hulpklassen Basis-interfaces van veel klassen die in de subpackages uitgeweid worden JTP Gebruiken Bij het schrijven van een java-applicatie die gebruik maakt van JTP dienen de volgende files worden meegenomen in de classpath-parameter van java en javac: Antlr.jar Base64.jar http.jar icu4j.jar iiop.jar jade.jar jadetools.jar jakarta-oro jar jdom.jar jena.jar jtp.jar log4j.jar xercesimpl.jar xmlparserapis.jar

TW2020 Optimalisering

TW2020 Optimalisering TW2020 Optimalisering Hoorcollege 11 Leo van Iersel Technische Universiteit Delft 25 november 2015 Leo van Iersel (TUD) TW2020 Optimalisering 25 november 2015 1 / 28 Vandaag Vraag Voor welke problemen

Nadere informatie

Datatypes Een datatype is de sort van van een waarde van een variabele, veel gebruikte datatypes zijn: String, int, Bool, char en double.

Datatypes Een datatype is de sort van van een waarde van een variabele, veel gebruikte datatypes zijn: String, int, Bool, char en double. Algemeen C# Variabele Een variabele is een willekeurige waarde die word opgeslagen. Een variabele heeft altijd een datetype ( De soort waarde die een variabele bevat). Datatypes Een datatype is de sort

Nadere informatie

Verkenning adoptie W3C rdf/owl technologie voor IMxx/NEN modellen

Verkenning adoptie W3C rdf/owl technologie voor IMxx/NEN modellen Verkenning adoptie W3C rdf/owl technologie voor IMxx/NEN- 3610 modellen Project team: Hans Schevers (BuildingBits), Marcel Reuvers, Paul Janssen, Linda van den Brink, Versie 1.0 Doelstelling Verkenning

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

4 ASP.NET MVC. 4.1 Controllers

4 ASP.NET MVC. 4.1 Controllers 4 ASP.NET MVC ASP.NET is het.net raamwerk voor het bouwen van webapplicaties. De MVC variant hiervan is speciaal ontworpen voor het bouwen van dergelijke applicaties volgens het Model-View-Controller paradigma.

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

MS-Office documenten integratie via SAP PI

MS-Office documenten integratie via SAP PI MS-Office documenten integratie via SAP PI Met behulp van het SAP Process Integration systeem (SAP PI) kun je op vele manieren je integratie regelen tussen je SAP systemen en/of andere systemen. Ook met

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

In deze les. Eerste orde logica. Elementen van EOL. Waarom eerste orde logica? Combinatie met logica. Variabelen en Kwantoren

In deze les. Eerste orde logica. Elementen van EOL. Waarom eerste orde logica? Combinatie met logica. Variabelen en Kwantoren In deze les Eerste orde logica Bart de Boer Waarom EOL? Syntax en semantiek van EOL Opfrisser Gebruik van EOL EOL in de Wumpus-wereld Waarom eerste orde logica? Eerste orde logica kan alles uitdrukken

Nadere informatie

Examen Programmeren 2e Bachelor Elektrotechniek en Computerwetenschappen Faculteit Ingenieurswetenschappen Academiejaar juni 2011

Examen Programmeren 2e Bachelor Elektrotechniek en Computerwetenschappen Faculteit Ingenieurswetenschappen Academiejaar juni 2011 Examen Programmeren 2e Bachelor Elektrotechniek en Computerwetenschappen Faculteit Ingenieurswetenschappen Academiejaar 2010-2011 21 juni 2011 **BELANGRIJK** 1. Lees eerst de volledige opgave (inclusief

Nadere informatie

SYNTRA-WEST. Initiatiecursus JAVA. Deel

SYNTRA-WEST. Initiatiecursus JAVA. Deel SYNTRA-WEST Initiatiecursus JAVA Deel Syntra-West Syntra-West (vroeger Vormingsinstituut West-Vlaanderen) Doorniksesteenweg 220 8500 Kortrijk Tel. 056/26.02.00 Fax 056/22.81.07 i Inhoudsopgave SYNTRA-WEST...

Nadere informatie

Logic for Computer Science

Logic for Computer Science Logic for Computer Science 06 Normaalvormen en semantische tableaux Wouter Swierstra University of Utrecht 1 Vorige keer Oneindige verzamelingen 2 Vandaag Wanneer zijn twee formules hetzelfde? Zijn er

Nadere informatie

Kleine cursus PHP5. Auteur: Raymond Moesker

Kleine cursus PHP5. Auteur: Raymond Moesker Kleine cursus PHP5 Auteur: Raymond Moesker Kleine cursus PHP PHP is platform en CPU onafhankelijk, open source, snel, heeft een grote userbase, het is object georiënteerd, het wordt omarmd door grote bedrijven

Nadere informatie

Een gelinkte lijst in C#

Een gelinkte lijst in C# Een gelinkte lijst in C# In deze tutorial ga demonstreren hoe je een gelinkte lijst kan opstellen in C#. We gaan een klasse schrijven, die een gelijkaardige functionaliteit heeft als een ArrayList, namelijk

Nadere informatie

11 Selecties. Selectie versus snelselectie Planon FacilityOffice SE kent naast selecties ook nog snelselecties. Wat is nu het verschil?

11 Selecties. Selectie versus snelselectie Planon FacilityOffice SE kent naast selecties ook nog snelselecties. Wat is nu het verschil? 11 Selecties Met behulp van de selectiefunctie bepaalt u welke elementen, bijvoorbeeld objecten, orders of personen u in de elementensectie wilt opnemen. U kunt bijvoorbeeld alle objecten uit het bouwjaar

Nadere informatie

Les 15 : updaten van gegevens in de database (deel2).

Les 15 : updaten van gegevens in de database (deel2). Les 15 : updaten van gegevens in de database (deel2). In de volgende reeks lessen zal alle vorige leerstof uitgebreid aan het bod komen. Zie ook de vorige lessen en documenten om informatie op te zoeken

Nadere informatie

Artificiële intelligentie: les van 21 november 2002

Artificiële intelligentie: les van 21 november 2002 Artificiële intelligentie: les van 21 november 2002 Nys Wim, wim.nys@vub.ac.be Gybels Kim, kim.gybels@vub.ac.be Leuse Tom, tom.leuse@vub.ac.be Heyse Wouter, wouter.heyse@vub.ac.be Frank Joris, frank.joris@vub.ac.be

Nadere informatie

INFITT01 Internettechnologie WEEK 2

INFITT01 Internettechnologie WEEK 2 INFITT01 Internettechnologie WEEK 2 Programma Contexts Listeners Scope/Attributes Thread safety Taken container Een servlet draait in een container (servlet container). De container, die ten dienste van

Nadere informatie

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

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

Software Design Document

Software Design Document Software Design Document Mathieu Reymond, Arno Moonens December 2014 Inhoudsopgave 1 Versiegeschiedenis 2 2 Definities 3 3 Introductie 4 3.1 Doel en Scope............................. 4 4 Logica 5 4.1

Nadere informatie

Vakgroep CW KAHO Sint-Lieven

Vakgroep CW KAHO Sint-Lieven Vakgroep CW KAHO Sint-Lieven Objecten Programmeren voor de Sport: Een inleiding tot JAVA objecten Wetenschapsweek 20 November 2012 Tony Wauters en Tim Vermeulen tony.wauters@kahosl.be en tim.vermeulen@kahosl.be

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

BRP-BZM Use Case Realisations Guidelines

BRP-BZM Use Case Realisations Guidelines BRP-BZM Use Case Realisations Guidelines Versie 2.0 02-09-2011 Definitief Versiehistorie Datum Versie Auteur 23-12-2010 0.1 Eerste versie R.F. Schaaf 04-01-2011 1.0 Feedback verwerkt R. Schaaf en D. Geluk

Nadere informatie

Tentamen Object Georiënteerd Programmeren TI1206 29 oktober 2014, 9.00-11.00 Afdeling SCT, Faculteit EWI, TU Delft

Tentamen Object Georiënteerd Programmeren TI1206 29 oktober 2014, 9.00-11.00 Afdeling SCT, Faculteit EWI, TU Delft Tentamen Object Georiënteerd Programmeren TI1206 29 oktober 2014, 9.00-11.00 Afdeling SCT, Faculteit EWI, TU Delft Bij dit tentamen mag je geen gebruik maken van hulpmiddelen zoals boek of slides. Digitale

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

HOE TEKEN IK EEN OMGEVINGSMODEL

HOE TEKEN IK EEN OMGEVINGSMODEL HOE TEKEN IK EEN OMGEVINGSMODEL MATTIAS DE WAEL 1. Inleiding Om de allereenvoudigste Scheme expressies te begrijpen volstaat het substitutiemodel. Het substitutiemodel verondersteld het bestaan van een

Nadere informatie

1 Inleiding in Functioneel Programmeren

1 Inleiding in Functioneel Programmeren 1 Inleiding in Functioneel Programmeren door Elroy Jumpertz 1.1 Inleiding Aangezien Informatica een populaire minor is voor wiskundestudenten, leek het mij nuttig om een stukje te schrijven over een onderwerp

Nadere informatie

Practicumopgave 3: SAT-solver

Practicumopgave 3: SAT-solver Practicumopgave 3: SAT-solver Modelleren en Programmeren 2015/2016 Deadline: donderdag 7 januari 2016, 23:59 Introductie In het vak Inleiding Logica is onder andere de propositielogica behandeld. Veel

Nadere informatie

NP-volledigheid. Algoritmiek

NP-volledigheid. Algoritmiek NP-volledigheid Polynomiale algoritmen of moeilijke problemen? Algoritme A is polynomiaal, als er een constante c bestaat, zodat het algoritme bij inputs van formaat n O(n c ) tijd gebruikt. Sommige problemen

Nadere informatie

Hoofdstuk 1: Inleiding. Hoofdstuk 2: Klassen en objecten Datahiding: afschermen van implementatiedetails. Naar de buitenwereld toe enkel interfaces.

Hoofdstuk 1: Inleiding. Hoofdstuk 2: Klassen en objecten Datahiding: afschermen van implementatiedetails. Naar de buitenwereld toe enkel interfaces. Hoofdstuk 1: Inleiding Objectoriëntatie: 1. Objecten & klassen: samenwerking van componenten om bepaald doel te bereiken; herbruikbaarheid. 2. Encapsulation: afschermen gedragingen en kenmerken van de

Nadere informatie

SQL Aantekeningen 3. Maarten de Rijke mdr@science.uva.nl. 22 mei 2003

SQL Aantekeningen 3. Maarten de Rijke mdr@science.uva.nl. 22 mei 2003 SQL Aantekeningen 3 Maarten de Rijke mdr@science.uva.nl 22 mei 2003 Samenvatting In deze aflevering: het selecteren van tuples, operaties op strings, en aggregatie functies. Verder kijken we naar iets

Nadere informatie

Verder zijn er de nodige websites waarbij voorbeelden van objectgeoriënteerd PHP (of Objec Oriented PHP, OO PHP) te vinden zijn.

Verder zijn er de nodige websites waarbij voorbeelden van objectgeoriënteerd PHP (of Objec Oriented PHP, OO PHP) te vinden zijn. Objectgeoriënteerd PHP (versie 5) Kennisvereisten: Ervaring met programmeren in PHP met MySQL Je weet wat een class of klasse is Je weet wat een instantie van een klasse (een object) is Je weet wat een

Nadere informatie

Aanpassingen versie 6.0

Aanpassingen versie 6.0 Nr. Onderdeel Aanpassing SR Algemeen 1 Bij Klantgegevens het geslacht van de klant meegeven. 2 Op de overzichtspagina van het klantenoverzicht i.p.v. Aanmelddatum de Statusdatum laten zien en de algemene

Nadere informatie

Kennisrepresentatie & Redeneren. Piter Dykstra Instituut voor Informatica en Cognitie

Kennisrepresentatie & Redeneren. Piter Dykstra Instituut voor Informatica en Cognitie Kennisrepresentatie & Redeneren Piter Dykstra Instituut voor Informatica en Cognitie www.math.rug.nl/~piter piter@math.rug.nl 30 april 2007 INLEIDING Kennisrepresentatie & Redeneren Week1: Introductie

Nadere informatie

Variabelen en statements in ActionScript

Variabelen en statements in ActionScript Ontwikkelen van Apps voor ios en Android Variabelen en statements in ActionScript 6.1 Inleiding Als we het in de informatica over variabelen hebben, bedoelen we een stukje in het geheugen van de computer

Nadere informatie

case: ocl-expressies

case: ocl-expressies Hoofdstuk 7 case: ocl-expressies In dit hoofdstuk worden de expressies ontwikkeld bij het domein-klassediagram van de case zoals dat in hoofdstuk 5 ontwikkeld is. Daarna worden de resterende stappen uit

Nadere informatie

Leaflet Web Maps with qgis2leaf

Leaflet Web Maps with qgis2leaf Leaflet Web Maps with qgis2leaf QGIS Tutorials and Tips Author Ujaval Gandhi http://google.com/+ujavalgandhi Translations by Dick Groskamp This work is licensed under a Creative Commons Attribution 4.0

Nadere informatie

return an ; } private I L i s t l i j s t ;

return an ; } private I L i s t l i j s t ; In bovenstaande code werd de binding t e k s t. DataBindings. Add(new Binding ( Text, l i j s t, ) ) ; gebruikt om de eigenschap Text van het object tekst (dwz. tekst.text) te binden aan het object lijst.

Nadere informatie

Examen Software Ontwikkeling I 2e Bachelor Informatica Academiejaar Januari, **BELANGRIJK** : Schrijf je naam onderaan dit blad

Examen Software Ontwikkeling I 2e Bachelor Informatica Academiejaar Januari, **BELANGRIJK** : Schrijf je naam onderaan dit blad Examen Software Ontwikkeling I 2e Bachelor Informatica Academiejaar 2006-2007 23 Januari, 2007 **BELANGRIJK** : Schrijf je naam onderaan dit blad Leg volgende 3 begrippen kort en bondig uit : a. Concurrent

Nadere informatie

SQL datadefinitietaal

SQL datadefinitietaal SQL datadefinitietaal We kunnen er het schema van de database mee bepalen: metadata toevoegen, wijzigen en verwijderen uit een database. Basiscommando's: CREATE : toevoegen van metagegevens DROP : verwijderen

Nadere informatie

Programmeren in Java 3

Programmeren in Java 3 26 september 2007 Deze les korte herhaling vorige les Unified Modelling Language notatie van een class afleiding pointers abstracte classes polymorphisme dubieuze(?) constructies interfaces Meer over class

Nadere informatie

Een inleiding in de Unified Modeling Language 67

Een inleiding in de Unified Modeling Language 67 Een inleiding in de Unified Modeling Language 67 1.4.5. Toepassing 5: Klasse Kaart. De opdracht bestaat erin algemene klassen te maken zodanig dat het mogelijk wordt om het even welk kaartspel te maken.

Nadere informatie

Examen Programmeren 2e Bachelor Elektrotechniek en Computerwetenschappen Faculteit Ingenieurswetenschappen Academiejaar juni, 2010

Examen Programmeren 2e Bachelor Elektrotechniek en Computerwetenschappen Faculteit Ingenieurswetenschappen Academiejaar juni, 2010 Examen Programmeren 2e Bachelor Elektrotechniek en Computerwetenschappen Faculteit Ingenieurswetenschappen Academiejaar 2009-2010 16 juni, 2010 **BELANGRIJK** 1. Lees eerst de volledige opgave (inclusief

Nadere informatie

Handleiding. MED PLUS software

Handleiding. MED PLUS software Handleiding MED PLUS software De MED PLUS software beschikt over een aantal functies waarmee instellingen en of functies aangepast kunnen worden in de MED11. Aansluiten van MED11 Sluit de MED SK PLUS interface

Nadere informatie

De API s van Floricode. Platforms on stage SIERTEELT(digi)TAAL 2018

De API s van Floricode. Platforms on stage SIERTEELT(digi)TAAL 2018 De API s van Floricode Platforms on stage SIERTEELT(digi)TAAL 2018 Voorstellen Bernard van Raaij Voorzitter Werkgroep Standaarden Floricode Directeur Q-ray BV Werkgroep Standaarden Valt onder directie

Nadere informatie

Modeluitwerking Tentamen Computationele Intelligentie Universiteit Leiden Informatica Vrijdag 11 Januari 2013

Modeluitwerking Tentamen Computationele Intelligentie Universiteit Leiden Informatica Vrijdag 11 Januari 2013 Modeluitwerking Tentamen Computationele Intelligentie Universiteit Leiden Informatica Vrijdag Januari 20 Opgave. Python Gegeven is de volgende (slechte) Python code:. def t(x): 2. def p(y):. return x*y

Nadere informatie

Technisch Ontwerp. Integratie Tekst-Plot. Versie 1.0. Datum 02 december 2010

Technisch Ontwerp. Integratie Tekst-Plot. Versie 1.0. Datum 02 december 2010 Technisch Ontwerp Integratie Tekst-Plot Versie 1.0 Datum 02 december 2010 Status Definitief Colofon IVENT A&A CDC Madame Curielaan 4-6 Postbus 20703 2289 CA Rijswijk Contactpersoon Patrick Brooijmans Teamleider

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

Beschrijving JabberPoint met inwerkopdracht (versie 1.6)

Beschrijving JabberPoint met inwerkopdracht (versie 1.6) Open Universiteit Design patterns Casus eindopdracht Beschrijving JabberPoint met inwerkopdracht (versie 1.6) 1 Algemeen overzicht JabberPoint ondersteunt het tonen van presentaties die worden ingelezen

Nadere informatie

SQL Plan Management in Oracle11g Harald van Breederode

SQL Plan Management in Oracle11g Harald van Breederode SQL Plan Management in Oracle11g Harald van Breederode Sinds de introductie van de Cost Based Optimizer (CBO) in Oracle7 hebben zowel database beheerders als database ontwikkelaars de wens om deze optimizer

Nadere informatie

Javascript oefenblad 1

Javascript oefenblad 1 Leer de basis van Javascript. Javascript oefenblad 1 Niels van Velzen Javascript oefenblad 1 Pagina 2 Inleiding Javascript is niet altijd even makkelijk. Vooral aan het begin is het even wennen hoe de

Nadere informatie

public Bier ( string N, double P, Brouwerij B) { Naam = N; AlcoholPerc = P; Brouwer = B;

public Bier ( string N, double P, Brouwerij B) { Naam = N; AlcoholPerc = P; Brouwer = B; Beschouw bijvoorbeeld de twee onderstaande klassen, waarvan de attributen en eigenschappen geannoteerd zijn met bijkomende XML-annotaties: using System ; using System. Xml ; using System. Xml. S e r i

Nadere informatie

ManageWare Pro Postbus 568 3700AN Zeist Tel.: 030-692 5701 Fax: 084-718 8468. Documentenbeheer

ManageWare Pro Postbus 568 3700AN Zeist Tel.: 030-692 5701 Fax: 084-718 8468. Documentenbeheer Documentenbeheer Inleiding ConsultManager heeft nu een professionele module om documenten te archiveren, te koppelen aan cliënten, artsen, etc., en te beheren. Het was al mogelijk om externe documenten

Nadere informatie

Automating Complex Workflows using Processing Modeler

Automating Complex Workflows using Processing Modeler Automating Complex Workflows using Processing Modeler QGIS Tutorials and Tips Author Ujaval Gandhi http://google.com/+ujavalgandhi Translations by Dick Groskamp This work is licensed under a Creative Commons

Nadere informatie

Noties Informatica. In java fungeren objecten als een model voor de elementen waarin een probleem kan worden opgesplitst

Noties Informatica. In java fungeren objecten als een model voor de elementen waarin een probleem kan worden opgesplitst s Informatica Hoofdstuk 1 Object Klasse Methode Parameters Type Velden Toestand Compiler Resultaten (returnwaarde) In java fungeren objecten als een model voor de elementen waarin een probleem kan worden

Nadere informatie

Externe pagina s integreren in InSite en OutSite

Externe pagina s integreren in InSite en OutSite Externe pagina s integreren in InSite en OutSite Document-versie: 1.1 Datum: 04-10-2013 2013 AFAS Software Leusden Niets uit deze uitgave mag verveelvoudigd worden en/of openbaar gemaakt worden door middel

Nadere informatie

Etiketten printen met OpenOffice

Etiketten printen met OpenOffice Etiketten printen met OpenOffice Johan Henselmans Het is eenvoudig om met OpenOffice etiketten te printen. Hieronder de stappen: 1. Ga naar Extra,Gegevensbronnen en kies een gegevensbron of maak er een.

Nadere informatie

Automatisering voor Financiële Dienstverleners. Werken met Queries en Merge Documenten. For more information visit our website at www.pyrrho.

Automatisering voor Financiële Dienstverleners. Werken met Queries en Merge Documenten. For more information visit our website at www.pyrrho. Automatisering voor Financiële Dienstverleners Werken met Queries en Merge Documenten For more information visit our website at www.pyrrho.com Date: Document Nr: 30 maart, 2007 UBizzMerge, Versie 4.0 Status:

Nadere informatie

Project Software Engineering XML parser: Parsen van een xml CD catalogus

Project Software Engineering XML parser: Parsen van een xml CD catalogus Project Software Engineering XML parser: Parsen van een xml CD catalogus Brent van Bladel brent.vanbladel@uantwerpen.be February 16, 2017 XML (Extensible Markup Language) is een taal waarmee we op een

Nadere informatie

Automatische Installatie op IIS server

Automatische Installatie op IIS server Automatische Installatie op IIS server In de map Web staat het installatiebestand : Je kan de install starten door het aanklikken van het msi bestand vanuit Verkenner. Na installatie is steeds een manuele

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

Modelleren en Programmeren

Modelleren en Programmeren Modelleren en Programmeren Jeroen Bransen 11 december 2015 Ingebouwde datastructuren Meer boomstructuren Access specifiers Gebruikersinvoer Codestijl Packages SAT-solver Ingebouwde datastructuren Ingebouwde

Nadere informatie

Naam project Lost And Found Animals Lokaal gehost Percentage van het totaal geleverde werk 1 Cindy Jansen 50% 2 Eline Steyvers 50%

Naam project Lost And Found Animals Lokaal gehost Percentage van het totaal geleverde werk 1 Cindy Jansen 50% 2 Eline Steyvers 50% Naam project Lost And Found Animals Url Lokaal gehost Groepsleden Percentage van het totaal geleverde werk 1 Cindy Jansen 50% 2 Eline Steyvers 50% 1. Beveiliging in de toepassing Naam gebruiker Wachtwoord

Nadere informatie

Demo applicatie. Functionele Beschrijving SPITS

Demo applicatie. Functionele Beschrijving SPITS Demo applicatie Aantonen functioneren LogiFlor systematiek Functionele Beschrijving SPITS Standaardisatie Project Informatievoorziening Transport Sierteelt onderwerp: Functionele beschrijving Demo applicatie

Nadere informatie

Artificiële Intelligentie 1. Kennissystemen. 22 oktober 2002

Artificiële Intelligentie 1. Kennissystemen. 22 oktober 2002 Artificiële Intelligentie 1 Kennissystemen 22 oktober 2002 Deze oefeningenles gaat over kennissystemen, één van de grootste succesverhalen van de kunstmatige intelligentie. We zullen zien wat kennissystemen

Nadere informatie

Orbis Software. Debman4U. Release Notes2.10. Dit document bevat de Release Notes van Debman4U V2.10

Orbis Software. Debman4U. Release Notes2.10. Dit document bevat de Release Notes van Debman4U V2.10 Orbis Software Debman4U Release Notes2.10 Dit document bevat de Release Notes van Debman4U V2.10 Inhoudsopgave 1. 0 1. 1 1. 2 1. 3 1. 4 Belangrijkste nieuwe functionaliteiten Nieuw design Debman4U Ondersteuning

Nadere informatie

Mailmerge Auteur : Reint Endendijk Versie : 1.0 Datum : 25 juni 2010

Mailmerge Auteur : Reint Endendijk Versie : 1.0 Datum : 25 juni 2010 Auteur : Reint Endendijk Versie : 1.0 Datum : 25 juni 2010 2 Volgens Wikipedia is mailmerge: Een software product dat een bestand (of database) van namen en adressen samenvoegt met een sjabloon, om zodoende

Nadere informatie

2BA Deeplink Gebruiksbeschrijving

2BA Deeplink Gebruiksbeschrijving 2BA Deeplink Gebruiksbeschrijving Document versie: 1.0 SCVN 02 Uitgiftedatum: 2006-5-1 Status: Conceptueel Auteur: 2BA Inhoudsopgave Inhoudsopgave... 2 1 Wat is deeplink?... 3 2 Deeplink gebruiken... 4

Nadere informatie

Handleiding Magento - Asperion

Handleiding Magento - Asperion Handleiding Magento - Asperion www.webwinkelfacturen.nl Samenvatting Dit is de handleiding voor de koppeling van Magento naar Asperion. De koppeling zorgt dat voor facturen in Magento automatisch een factuur

Nadere informatie

IBAN API. Simpel & krachtig. Documentatie : IBAN REST API Versie : 1.0 DE BETAALFABRIEK

IBAN API. Simpel & krachtig. Documentatie : IBAN REST API Versie : 1.0 DE BETAALFABRIEK IBAN API Simpel & krachtig Documentatie : IBAN REST API Versie : 1.0 DE BETAALFABRIEK Introductie De Betaalfabriek IBAN API is een REST API om IBAN-conversie en validatie te integreren in uw administratiesysteem,

Nadere informatie

Zoemzinnen. Algemene info. Functies met een variabel aantal argumenten

Zoemzinnen. Algemene info. Functies met een variabel aantal argumenten Zoemzinnen Functies met een variabel aantal argumenten Bij het definiëren van een functie leg je in principe vast hoeveel argumenten er aan de functie moeten doorgegeven worden. Dit aantal correspondeert

Nadere informatie

Modelleren en Programmeren

Modelleren en Programmeren Modelleren en Programmeren Jeroen Bransen 6 december 2013 Terugblik Programma en geheugen Opdrachten Variabelen Methoden Objecten Klasse Programma en geheugen Opdrachten Variabelen zijn gegroepeerd in

Nadere informatie

APPLICATION MANAGER. Gebruikershandleiding. Dit document beschrijft hoe Brain Force Application Manager gebruikt kan worden.

APPLICATION MANAGER. Gebruikershandleiding. Dit document beschrijft hoe Brain Force Application Manager gebruikt kan worden. APPLICATION MANAGER Gebruikershandleiding AUTHEUR(S) Tom van Lint VERSIE [Versie] Concept KLANTNAAM BRAIN FORCE B.V. DATUM 9 april 2015 SAMENVATTING Dit document beschrijft hoe Brain Force Application

Nadere informatie

Dynamische webapplicaties in Java

Dynamische webapplicaties in Java Dynamische webapplicaties in Java October 7, 2006 In java is het mogelijk dynamische webpagina s te implementeren. De code om de dynamische gegevens te genereren staat in servlets of Java Server Pages

Nadere informatie

Software-Ontwikkeling I Academiejaar 2006-2007

Software-Ontwikkeling I Academiejaar 2006-2007 Software-Ontwikkeling I Academiejaar 2006-2007 Project: Bibliotheekbeheer 1 1. Digitale bibliotheek a. Inleiding Bibliotheken houden onder meer hun collecties van uitleenbare artikels bij in digitaal formaat.

Nadere informatie

MWW orders feed. Algemene orders feed in XML format

MWW orders feed. Algemene orders feed in XML format MWW orders feed Algemene orders feed in XML format Inhoudsopgave Algemeen... 3 Sleutel... 3 Versie... 3 URL... 3 Output... 3 Vragen?... 3 Changelog... 3 Veld definities... 4 Algemene informatie... 4 Orders...

Nadere informatie

Importeren van grids uit de WADI database

Importeren van grids uit de WADI database Importeren van grids uit de WADI database Ministerie van Verkeer en Waterstaat Directoraat-Generaal Rijkswaterstaat Rijksinstituut voor Kust en Zee/RIKZ S O F T W A R E S O L U T I O N S Versies: Versie

Nadere informatie

Selenium IDE Webdriver. Introductie

Selenium IDE Webdriver. Introductie Selenium IDE Webdriver Het Wielsem 10, 5231 BW s- Hertogenbosch, telefoon 073-6409311 e- mail info@testwork.nl internet http://www.testwork.nl 1 Inhoudsopgave 1 Inhoudsopgave... 2 2 Selenium IDE... 3 3

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

APPLICATIEBOUW 3E COLLEGE: OBJECT GEORIËNTEERD PROGRAMMEREN, METHODEN, PARAMETERS, SCOPE VAN VARIABELEN. Onderdeel van SmartProducts

APPLICATIEBOUW 3E COLLEGE: OBJECT GEORIËNTEERD PROGRAMMEREN, METHODEN, PARAMETERS, SCOPE VAN VARIABELEN. Onderdeel van SmartProducts APPLICATIEBOUW 3E COLLEGE: OBJECT GEORIËNTEERD PROGRAMMEREN, METHODEN, PARAMETERS, SCOPE VAN VARIABELEN Onderdeel van SmartProducts INHOUD COLLEGE 3 Scope van variabelen {3.9} Class ontwerpen en maken,

Nadere informatie

DIAGNOSTISCHE TOETS Softwaresystemen UITWERKING

DIAGNOSTISCHE TOETS Softwaresystemen UITWERKING DIAGNOSTISCHE TOETS Softwaresystemen datum: Donderdag van Week 7 UITWERKING Deze diagnostische toets bevat vragen over excepties en concurrency. Beantwoord de vragen zo goed mogelijk in 30 minuten Bespreek

Nadere informatie

WEBSECURITY INFORMATICA STUDENTENWERKING. Gemaakt door Bryan De Houwer en Yuri Moens

WEBSECURITY INFORMATICA STUDENTENWERKING. Gemaakt door Bryan De Houwer en Yuri Moens WEBSECURITY INFORMATICA STUDENTENWERKING Gemaakt door Bryan De Houwer en Yuri Moens ISW Informatica studentenwerking voor en door studenten Wat bieden wij aan: Workshops Shell accounts Altijd bereikbaar

Nadere informatie

OEFENINGEN PYTHON REEKS 1

OEFENINGEN PYTHON REEKS 1 Vraag 1: Expressies & Types OEFENINGEN PYTHON REEKS 1 Python maakt gebruik van enkele vaak voorkomende (data)types. Zo zijn er integers die behoren tot de gehele getallen (VB: 3), zijn er float s die behoren

Nadere informatie

CAK Installatiehandleiding

CAK Installatiehandleiding CAK Installatiehandleiding Versie 1.1 Applicatie om centraal de uren van de zorgaanbieders door de gemeente laten aanbieden aan het CAK. Eerst moeten de tabellen, views, packages etc worden aangemaakt.

Nadere informatie

icafe Een digitaal bestelsysteem voor de horeca Joeri Verdeyen Stefaan De Spiegeleer Naim Ben Tanfous

icafe Een digitaal bestelsysteem voor de horeca Joeri Verdeyen Stefaan De Spiegeleer Naim Ben Tanfous icafe Een digitaal bestelsysteem voor de horeca Joeri Verdeyen Stefaan De Spiegeleer Naim Ben Tanfous 2006-2007 Voorwoord 1 Inhoudsopgave 2 Hoofdstuk 1 Inleiding 3 Hoofdstuk 2 icafe 2.1 Het idee 2.2 Mogelijkheden

Nadere informatie

1 Inleiding probleembeschrijving

1 Inleiding probleembeschrijving Bas Weelinck (5985498), Merlijn Wajer (5948940), Koos van Strien (5783437) 18 mei 2010 1 Inleiding probleembeschrijving Volgens de specificaties gegeven in het opdrachtdocument moet een gedistribueerde

Nadere informatie

Implementatie #-operator

Implementatie #-operator Departement Wiskunde-Informatica Universiteit Antwerpen November 13, 2005 Book sample Book sample Tools Reïficatie Maak van de event method loan een method class Loan Non-reïficatie Genereer nieuwe properties

Nadere informatie

Tentamen Imperatief en Object-georiënteerd programmeren in Java voor CKI

Tentamen Imperatief en Object-georiënteerd programmeren in Java voor CKI Tentamen Imperatief en Object-georiënteerd programmeren in Java voor CKI Vrijdag 22 januari 2010 Toelichting Dit is een open boek tentamen. Communicatie en het gebruik van hulpmiddelen zijn niet toegestaan.

Nadere informatie

Kennismaken Greenfoot

Kennismaken Greenfoot HOOFDSTUK 1 Kennismaken met Greenfoot onderwerpen: de interface van Greenfoot, omgaan met objecten, methodes aanroepen, een scenario uitvoeren concepten: object, klasse, methode-aanroep, parameter, retourwaarde

Nadere informatie

Handleiding. CRAB Read. Bevragingen op Lite CRAB. Agentschap voor Geografische Informatie Vlaanderen

Handleiding. CRAB Read. Bevragingen op Lite CRAB. Agentschap voor Geografische Informatie Vlaanderen Handleiding CRAB Read Bevragingen op Lite CRAB Agentschap voor Geografische Informatie Vlaanderen Inhoud Inhoud 2 1 Inleiding 3 2 Operaties en datatypes 4 2.1 Overzicht 4 2.2 Lite CRAB entiteiten 5 2.2.1

Nadere informatie

Samenvoeging document syntax

Samenvoeging document syntax Samenvoeging document syntax Kleos beschikt over een interne model- en tekstblokbewerker om de aanmaak en de bewerking van modellen en tekstblokken mogelijk te maken. U kunt hiervoor echter ook een externe

Nadere informatie

Les 10 : Aanmaken van een database (deel2).

Les 10 : Aanmaken van een database (deel2). Les 10 : Aanmaken van een database (deel2). Wat is een database? Een centrale opslagruimte voor gegevens. Alle informatie wordt centraal opgeslagen en kan door iedereen geraadpleegd worden. Voordelen van

Nadere informatie

Programmeren in Java 3

Programmeren in Java 3 2 september 2007 voor deeltijdstudenten Kop van Zuid Rotterdam, 3 juni 2007 Even voorstellen Naam: Wessel Oele(31) Docent bij opleiding technische informatica Kamer: I210 (tweede verdieping, links de gang

Nadere informatie

CCHR: De snelste CHR implementatie

CCHR: De snelste CHR implementatie CCHR: De snelste CHR implementatie Promotor: Prof. Dr. Bart Demoen Begeleider: Dr. ir. Tom Schrijvers Pieter Wuille 20 december 2006 1 Algemeen Waarom CCHR Structuur 2 Implementatie Mogelijkheden 3 Ontwerpbeslissingen

Nadere informatie

Datastructuren: stapels, rijen en binaire bomen

Datastructuren: stapels, rijen en binaire bomen Programmeermethoden Datastructuren: stapels, rijen en binaire bomen week 12: 23 27 november 2015 www.liacs.leidenuniv.nl/ kosterswa/pm/ 1 Inleiding In de informatica worden Abstracte DataTypen (ADT s)

Nadere informatie

Informatica. Objectgeörienteerd leren programmeren. Van de theorie met BlueJ tot een spelletje met Greenfoot... Bert Van den Abbeele

Informatica. Objectgeörienteerd leren programmeren. Van de theorie met BlueJ tot een spelletje met Greenfoot... Bert Van den Abbeele Informatica Objectgeörienteerd leren programmeren Van de theorie met BlueJ tot een spelletje met Greenfoot... Bert Van den Abbeele http://creativecommons.org/licenses/by-nc-nd/3.0/legalcode Objectgeörienteerd

Nadere informatie

FRESNEL FORMS. Een Protégé plugin voor het genereren van datasysteeminterfaces van datamodellen op het Semantic Web ABI TEAM 30

FRESNEL FORMS. Een Protégé plugin voor het genereren van datasysteeminterfaces van datamodellen op het Semantic Web ABI TEAM 30 FRESNEL FORMS Een Protégé plugin voor het genereren van datasysteeminterfaces van datamodellen op het Semantic Web ABI TEAM 30 1 Even voorstellen Alex Mekkering Joop van de Heijning Teun Theunissen 2 Opzet

Nadere informatie