De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

Open Universiteit Nederland Afstudeeropdracht Bachelor Informatica

Verwante presentaties


Presentatie over: "Open Universiteit Nederland Afstudeeropdracht Bachelor Informatica"— Transcript van de presentatie:

1 Open Universiteit Nederland Afstudeeropdracht Bachelor Informatica
Run Januari 2009 Project: “Semantic Friendly Forms” Ontwikkeling van een Extensie voor MediaWiki Opdrachtgever: Dr. Lloyd Rutledge, OU Nederland Begeleider: Ir. Paul Oord, OU Nederland Door: Henri Gerrits Rens te Kloese

2 Agenda Opdracht en doelstelling Omgeving Product Implementatie
Ontwikkelingsproces Evaluatie en advies Conclusie Vragen

3 1. Opdracht en Doelstelling
Opdracht: extensie op Semantic MediaWiki Hoofddoelstellingen: Vriendelijker gebruikersinterface Meer semantische functies Nevendoelstellingen: Onderzoek en experimenteren Cursus Capita Selecta

4 2. Omgeving Breed en diep Wiki-infrastructuur: Semantiek:
MediaWiki (MW) Semantic MediaWiki (SMW) Semantic Forms (SF) Semantiek: Resource Description Framework (RDF) RDF Schema (RDF/S) Web Ontology Language (OWL) Semantic Web MediaWiki Extensions Semantic Friendly Forms Semantic MediaWiki Semantic Forms Parser Functions MySQL 5

5 2.1 Omgeving: Infrastructuur
MW “Media Wiki” (ontwikkeld 2002-heden) Open source applicatie voor ‘runnen’ van wiki’s Webtechnologie Uitbreidbaar Toepassingen: Wikipedia, Bibliotheken, Social networks en kennisdeling

6 2.2 Omgeving: Infrastructuur
SMW “Semantic MediaWiki” (2005-heden) Open source extensie op MediaWiki Voegt semantiek toe via: Properties en Types, Querytaal, Exportmogelijkheid SF “Semantic Forms” (2007-heden) Open source extensie op MediaWiki en SMW Voegt formulieren toe voor creëren van: Properties, Templates, Forms, Pages

7 2.3 Omgeving: Semantiek RDF (W3C aanbeveling 2004)
Meta-data model (relaties tussen “statements”) Formaat voor presentatie en uitwisseling van gegevens RDF/S (W3C aanbeveling 2004) Kennisrepresentatietaal Gebruikt syntax van RDF Biedt structuur aan RDF Levert basiselementen voor beschrijving van “lichtgewicht” ontologieën

8 2.3 Omgeving: Semantiek RDF (W3C aanbeveling 2004) Ontologie
Meta-data model (relaties tussen “statements”) Formaat voor presentatie en uitwisseling van gegevens RDF/S (W3C aanbeveling 2004) Kennisrepresentatietaal Gebruikt syntax van RDF Biedt structuur aan RDF Levert basiselementen voor beschrijving van “lichtgewicht” ontologieën Ontologie Definitie: “het product van een poging een uitputtend en strikt conceptueel schema te formuleren over een bepaald domein” (wikipedia)

9 2.4 Omgeving: Semantiek OWL (W3C aanbeveling 2004)
Kennisrepresentatietaal (beschrijft ontologieën) Breidt RDF/S uit met restricties Open World Assumption

10 “Semantic Friendly Forms” (SFF)
3. Product Opdracht: extensie op Semantic MediaWiki Hoofddoelstellingen: Vriendelijker gebruikersinterface (opnieuw bewerken, navigatie, autocompletion, beheer etc.) Meer semantische functies (RDF/S & OWL) “Semantic Friendly Forms” (SFF) Tool voor het opzetten en onderhouden van ontologieën m.b.v. wiki-technologie

11 3.1 Product: Opnieuw bewerken
Probleem: SF kan wel creëren maar niet bewerken Oplossing: toevoegen van bewerkfunctie

12 3.2 Product: Navigatie Probleem: bij SF steeds terug naar Special Pages Oplossing: toevoegen van hyperlinks

13 3.3 Product: Autocompletion
Probleem: bij SF alleen vorige input beschikbaar Oplossing: autocompletion uit namespace context

14 3.4 Product: Domain Speciale eigenschap van Property: “Has domain”
Voorgedefinieerde SFF Property Gebaseerd op rdfs:domain Meerwaardig (categories) Invoer via Property-formulier Gebruikt bij genereren van Templates

15 3.5 Product: Range Speciale eigenschap van Property “Has range”
Voorgedefinieerde SFF Property Gebaseerd op rdfs:range Meerwaardig (categories) Invoer via Property-formulier Mogelijk gebruik bij autocompletion (niet geïmplementeerd)

16 3.6 Product: InverseOf Speciale eigenschap van Property “Is inverse of” Voorgedefinieerde SFF Property Gebaseerd op owl:inverseOf Meerwaardig (properties) Voorbeeld: ouder-kindrelaties Invoer via Property-formulier Gebruikt bij tonen ‘impliciete’ properties Implementatie niet 100% → gedeactiveerd

17 3.7 Product: Symmetric Speciale eigenschap van Property “Is symmetric”
Voorgedefinieerde SFF Property Gebaseerd op owl:SymmetricProperty Boolean Voorbeeld: buur-relaties Invoer via Property-formulier Speciaal geval van InverseOf Gebruikt bij tonen ‘impliciete’ properties Implementatie niet 100% → gedeactiveerd

18 3.8 Product: Label & Comment
Speciale eigenschap van Property “Has label” en “Has comment” Voorgedefinieerde SFF Properties Gebaseerd op rdfs:label, rdfs:comment Geen semantische waarde Invoer via Property-formulier Label gebruikt bij genereren van Templates

19 3.9 Product: Demo OWL Wiki Forms

20 3.9 Product: Demo OWL Wiki Forms Template/Form: Report
Category: Reports Property: Student Template/Form: Person Category: People

21 3.10 Product: Terugkoppeling Projectplan
Vriendelijker gebruikersinterface: 0.0 Hiding Properties 1.1 Edit Form 1.2 Edit Template 1.3 Edit Property 2.2 Semantic browser 2.3.1 Autocompletion Semantische constructies: 3.1 Domain 3.2 Label 3.3 Comment 3.4 InverseOf 3.6 Range 3.7 Symmetric

22 4. Implementatie Resultaat Bronnen Knelpunten

23 4.1 Implementatie: Resultaat
Deliverables: MediaWiki-extensie Gebruikersdocumentatie “Project documentation” Meest recente versies MW, SMW en SF ondersteund Technologie: Server side: PHP Client side: JavaScript/YUI (autocompletion) Meertalig: Nederlands Engels

24 4.2 Implementatie: Bronnen
Consulten: Markus Krötzsch (AIFB Karlsruhe, SMW, OWL 2) Rinke Hoekstra (UvA, OWL 2) Internet: MediaWiki en extensies SMW en SF Standaarden van RDF/S en OWL Semantisch Web (Web 3.0) PHP

25 4.3 Implementatie: Knelpunten
Nauwelijks “extension points” → duplicatie Geen stabiele API → compatibiliteitsproblemen Gebrekkige documentatie: MediaWiki en extensies → reverse engineering PHP als taal → bugs PHP is scripttaal → geen compilatie → bugs Programmeerstijl: Global functions & variables → moeilijk uitbreiden / testen → bugs Lange functies → moeilijk begrijpen / uitbreiden / testen → bugs

26 4.3 Implementatie: Knelpunten
Nauwelijks “extension points” → duplicatie Geen stabiele API → compatibiliteitsproblemen Gebrekkige documentatie: MediaWiki en extensies → reverse engineering PHP als taal → bugs PHP is scripttaal → geen compilatie → bugs Programmeerstijl: Global functions & variables → moeilijk uitbreiden / testen → bugs Lange functies → moeilijk begrijpen / uitbreiden / testen → bugs Open Source ?

27 5. Ontwikkelingsproces Hoofdfasering: Incrementele ontwikkeling: Team:
Voorbereidingsfase → Scope Uitvoeringsfase → Product Afsluitfase → Documentatie Incrementele ontwikkeling: Explorerend, snelle terugkoppeling Per functie: analyse, ontwerp, implementatie Team: 3 → 2 personen Taakverdeling

28 6. Evaluatie en advies Open punten Verdere ontwikkeling Proces

29 6.1 Evaluatie: Open Punten
Niet afgemaakte functionaliteit: InverseOf Symmetric Niet “gebruikte” functionaliteit: Range Comment Dynamische autocompletion Security?

30 6.2 Evaluatie: Verdere Ontwikkeling
Integreren met SF Uitbreiden van Semantic Web met meer functionaliteit, zoals: Meer constructies uit RDF/S en OWL Relatie met “Knowledge Management”: Beheer van semantische data Exchange-functie voor semantische data Redeneren met semantische data SPARQL queries op MediaWiki data Ondersteuning consistentiebeheer

31 Semantic Web Data Source Layer XHTML pages + RDF-A data Semantic Web
App.1 SMW App. 2 Representation Layer RDF Triple Store 1 RDF Triple Store 2 Knowledge Layer SPARQL Query RDF Editor OWLIM Reasoner

32 Semantic Web Data Source Layer XHTML pages + RDF-A data Semantic Web
App.1 SMW App. 2 Extract data Representation Layer RDF Triple Store 1 RDF Triple Store 2 Read data Knowledge Layer SPARQL Query RDF Editor OWLIM Reasoner

33 Semantic Web Data Source Layer XHTML pages + RDF-A data Semantic Web
App.1 SMW App. 2 Extract data Upload data Representation Layer RDF Triple Store 1 RDF Triple Store 2 Read data Store data Knowledge Layer SPARQL Query RDF Editor OWLIM Reasoner

34 6.3 Evaluatie: Proces Steile leercurve Team:
Uitval teamlid Afstand en tijdverschil overbrugbaar Communicatie met opdrachtgever: Effectief Incrementele ontwikkeling: Effectief voor dit project “Risico”: nieuwe wensen en eisen

35 7. Conclusie Nuttige functionaliteit gezien opdracht
Advies: integreren met SF Ruimte voor verdere ontwikkeling Open source is niet perfect

36 8. Vragen ?


Download ppt "Open Universiteit Nederland Afstudeeropdracht Bachelor Informatica"

Verwante presentaties


Ads door Google