wiki d'assistència (web...

47
Wiki d’assistència (Web semàntica) Jordi Fumaña Arderiu Grau en Enginyeria informàtica Joan Anton Perez Braña 9 de març de 2016

Upload: others

Post on 25-Aug-2021

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

Wiki d’assistència (Web semàntica) Jordi Fumaña Arderiu Grau en Enginyeria informàtica Joan Anton Perez Braña 9 de març de 2016

Page 2: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

© Jordi Fumaña Arderiu Reservats tots els drets. Està prohibit la reproducció total o parcial d'aquesta obra per qualsevol mitjà o procediment, compresos la impressió, la reprografia, el microfilm, el tractament informàtic o qualsevol altre sistema.

Page 3: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

1

FITXA DEL TREBALL FINAL

Títol del treball: Wiki d’assistència

Nom de l’autor: Jordi Fumanya Arderiu

Nom del consultor: Joan Anton Perez Braña

Data de lliurament : 06/2016

Àrea del Treball Final: Web semàntica

Titulació: Grau d’Enginyeria Informàtica

Resum del Treball (màxim 250 paraules):

El treball es basa en l’anàlisi, disseny i implementació d’una web semàntica de tipus Wiki per a la gestió del coneixement per a les assistències de producte que l’empresa necessita, ja que actualment no disposa de cap eina similar.

Aquesta wiki permetrà la documentació i indexació de la informació per tal d’agilitzar la recerca d’informació i reduir enormement el temps emprat per a localitzar informació.

El projecte consta de tres parts, la primera en referència al projecte, seguit de l’estudi i part teòrica del projecte i finalment la part pràctica.

Amb la consolidació del treball, es pretén posar en funcionament el sistema i que fins a final d’any s’alimenti d’informació perquè disposi de molts recursos a curt termini i marqui l’evolució de l’empresa. Es tracta doncs, d’una acció estratègica per la gestió del coneixement i integració amb altres sistemes.

Page 4: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

2

Abstract (in English, 250 words or less):

The work is based on the analysis, design and implementation of a wiki semantic web for knowledge management assistance for products that the company have, because currently has no similar tool.

This wiki will be useful for documentation and indexing information quicker, and search for information and greatly reduce the time taken to locate information.

The project consists in three parts, the first is referring to the project, followed by the study and theoretical part of the project and finally the practice.

With the consolidation of the work is intended to operate the system until the end of the year feeding of information to many resources available in the short term and marks the evolution of the company. It is therefore a strategic action for knowledge management and integration with other systems.

Paraules clau (entre 4 i 8):

Wiki, web semàntica, documentació, coneixement, xml

Page 5: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

1

Índex

1. Introducció ...................................................................................................... 3

1.1 Context i justificació del Treball ................................................................. 3 1.2 Objectius del Treball .................................................................................. 4 1.3 Enfocament i mètode seguit ...................................................................... 5 1.4 Planificació del Treball............................................................................... 6 1.5 Breu sumari de productes obtinguts .......................................................... 8

1.6 Breu descripció dels altres capítols de la memòria ................................... 8 2. Conceptes bàsics ........................................................................................... 9

2.1 Web semàntica .......................................................................................... 9 2.2 XML ......................................................................................................... 11 2.3 RDF i RDF-SCHEMA .............................................................................. 12 2.4 SPARQL .................................................................................................. 13 2.5 OWL ........................................................................................................ 14

2.6 Wikis Semàntiques .................................................................................. 15

3. Estudi del projecte ........................................................................................ 17 3.1 Model XML .............................................................................................. 17 3.2 Model RDF en OWL ................................................................................ 17

3.3 Ontologia, disseny i poblament ............................................................... 18 3.4 Manual Protégé ....................................................................................... 21

4. Desenvolupament del projecte ..................................................................... 26

4.1 Elecció de l’eina de treball ....................................................................... 26

4.2 Instal·lació i configuració de la plataforma en local ................................. 27 4.3 Importació de l’Ontologia ......................................................................... 32

5. Wiki operativa ............................................................................................... 34 6. Conclusions .................................................................................................. 35 7. Glossari ........................................................................................................ 37

8. Bibliografia .................................................................................................... 38 9. Annex ........................................................................................................... 39

9.1 Elecció del proveïdor d’allotjament .......................................................... 39

9.2 Instal·lació i configuració de la plataforma ............................................... 40 9.3 Wiki allotjada ........................................................................................... 42

9.4 Instruccions per configuració de l’entorn virtual ....................................... 42

Page 6: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

2

Índex d’il·lustracions Figura 1: Diagrama de Gantt de la Pac3 ............................................................ 6 Figura 2: Diagrama de Gantt de la Pac1 ............................................................ 6 Figura 3: Diagrama de Gantt de la Pac4 ............................................................ 6 Figura 4: Diagrama de Gantt de la Pac1 ............................................................ 6 Figura 5: Resum del Diagrama de Gantt ............................................................ 7

Figura 6: Sketchup de la web semàntica ............................................................ 9 Figura 7: Estructura de la web semàntica ........................................................ 10

Figura 8: Wiki Semàntica ................................................................................. 15 Figura 9: Organigrama de classes ................................................................... 20 Figura 10: Estructura Protégé .......................................................................... 21 Figura 11: DataTypes ....................................................................................... 23 Figura 12: Objectes en Protégé ........................................................................ 24

Figura 13: Individuals en Protégé ..................................................................... 25

Figura 14: Propietats de l’Individual ................................................................. 25 Figura 15: Captura OntoWiki ............................................................................ 26 Figura 16: Captura Semantic MediaWiki .......................................................... 26

Figura 17: Extensió RDFIO .............................................................................. 27 Figura 18: DropBox Màquina RDFIO ............................................................... 28

Figura 19: Instal·lació VirtualBox ...................................................................... 28

Figura 20: Importació de la màquina virtual ..................................................... 29

Figura 21: Càrrega del fitxer .ova ..................................................................... 29 Figura 22: Important la màquina ....................................................................... 30

Figura 23: Exemple d’èxit en la importació ....................................................... 30 Figura 24: Exportació de la ontologia en RDF/XML ......................................... 32 Figura 25: Importació del fitxer en RDF/XML ................................................... 33

Figura 26: Pàgina RecentChanges .................................................................. 33 Figura 27: Consulta SPARQL ........................................................................... 34 Figura 28: Exemple Montatges ......................................................................... 34

Figura 29: Client FileZilla per FTP .................................................................... 40 Figura 30: Posada en marxa del sistema ......................................................... 41

Figura 31: Inici de sessió .................................................................................. 41

Page 7: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

3

1. Introducció

1.1 Context i justificació del Treball

Aquest document descriu el pla de treball del projecte final de carrera en l’estudi d’un cas real per a la implantació d’una web semàntica de tipus wiki per a la gestió del coneixement sobre la instal·lació i ús dels productes de control d’accés de l’empresa on treballo. Com a punt introductori i de presentació, treballo com a responsable de sistemes des de fa 8 anys a una empresa multinacional del sector d’automatismes i control d’accés, que és la matriu d’un grup d’empreses, i dins d’aquest, una de més petita d’àmbit nacional en la que em basaré pel projecte, utilitzant com a referència el nom de ControlSA. Fins el moment l’empresa ControlSA no disposa de cap eina per a la gestió del coneixement sobre la instal·lació i ús dels productes de control d’accés i el que fa és emmagatzemar-ho en sistema de carpetes amb diferents fitxers, pdf, Word, Excel, etc. La situació actual requereix de tenir els aplicatius necessaris per a obrir cada tipus d’informació, no està indexada i suposa una elevada càrrega de treball per a localitzar i consultar la informació quan es precisa. A més, l’accés a aquesta informació és restringit i fa que els clients hagin de passar pel servei tècnic de la casa per a consultar-ho, un fet que incrementa excessivament el treball del departament tècnic i ocasiona problemes. Per tant, és necessària una eina que permeti emmagatzemar aquesta informació d’una forma àgil i que es pugui consultar ràpidament i remotament. He trobat interessant i adequat que el plantejament s’adaptés a l’àmbit de l’empresa per mitigar la problemàtica observada i portar a terme el projecte de final de grau al mateix temps. Al plantejar-ho a l’empresa, s’han mostrat molt interessats en trobar una solució com la web semàntica per tal d’ordenar la informació actual i com a base per a la integració amb futures plataformes.

Page 8: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

4

1.2 Objectius del Treball

Aquest treball suposa la oportunitat per a la organització i implantació d’una solució per a la gestió de coneixement de producte i de serveis que ofereix l’empresa ControlSA d’una forma àgil i còmoda. Es durà a terme mitjançant un model ontològic personalitzat per ControlSA i basat en un portal web semàntic Media-Wiki, després d’haver comparat entre vàries solucions que tenen la mateixa base. L’objectiu perseguit en aquest projecte és dissenyar, crear, implementar i posar en marxa una web semàntica a l’estil de Wiki per a resoldre les necessitats de l’empresa ControlSA, en gestió del coneixement dels productes, instal·lacions i clients. Amb aquesta eina es necessita que es puguin indexar els continguts per tal d’agilitzar la cerca i que permeti l’accés remot als instal·ladors. El resultat final que s’espera és una aplicació web hostatjada a l’exterior de l’empresa amb la corresponent seguretat per a gestió d’informació i coneixement. Les millores que poden resultar d’aquest projecte, suposaran un estalvi del temps en la recerca de la informació per la relació i agrupació que pot oferir el tipus d’eina comentat, així com també una millor documentació de les instal·lacions actuals que realitza l’empresa. Actualment es detecten errors en falta de documentació sobre els treballs realitzats perquè no es localitza o bé s’ha extraviat, per tant, es pretén trobar la manera d’evitar els errors humans i agilitzar les tasques de manteniment a través de directoris específics que vinculin la informació.

La finalitat oculta del projecte és també de posar una base per a futures plataformes a través de la informació ordenada en metadades i ontològicament, i que a través d’agents externs es pugui interactuar amb la informació.

Page 9: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

5

1.3 Enfocament i mètode seguit

Actualment ControlSA no disposa d’una eina de gestió del coneixement per documentar la informació dels productes i, per tant, l’estratègia que es vol portar a terme és el desenvolupament per a satisfer una necessitat de vital importància que està ocasionant una pèrdua de temps enorme a l’empresa i per tant és necessària per a la viabilitat del treball que es porta a terme. No es pot valorar la possibilitar de millorar el sistema actual perquè aquest no existeix, ja que l’empresa ha sofert un canvi d’estratègia i de mercat, al passar de ser una distribuïdora a una empresa instal·ladora i que ha de tenir documentat el producte. El que es pretén en el projecte és el disseny de com s’ha de vertebrar el sistema ontològic que es presenta i definir-ne l’abast. És important que, en aquesta fase, s’identifiquin tots els indicadors i conceptes que es requereixen pel bon ús de la web semàntica, perquè pot afectar a diferents nivells i serà complicat afegir-ho més endavant. A més, si es posa en pràctica, no afectarà al funcionament actual ja que és inexistent, sinó que només afectarà el canvi d’hàbits en documentació de les instal·lacions.

Page 10: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

6

1.4 Planificació del Treball

Els recursos necessaris pel desenvolupament del treball són un allotjament per a hostatjar el servei web prototipat que es durà a terme pel TFG que es preveu posar en funcionament si el resultat és optimista i, sobretot, el temps a destinar-hi en el disseny, desenvolupament i documentació del mateix. A continuació, es pot observar la planificació amb un diagrama de Gantt a través de l’eina online tomsplanner.com

Figura 2: Diagrama de Gantt de la Pac1

Figura 4: Diagrama de Gantt de la Pac1

Figura 1: Diagrama de Gantt de la Pac3

Figura 3: Diagrama de Gantt de la Pac4

Page 11: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

7

Per si no s’aprecia correctament en les imatges, és:

Figura 5: Resum del Diagrama de Gantt

Page 12: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

8

1.5 Breu sumari de productes obtinguts

El producte esperat en tot el TFG és d’obtenir un disseny sòlid i complet per a la gestió de la informació que es vol portar a terme amb la web semàtica. Això inclou definir l’abast i identificar les classes i subclasses que formen part del projecte. També caldrà trobar casos individuals i plantejar un disseny ontològic amb l’eina seleccionada per a poder-ho passar a una wiki de forma àgil. S’espera obtenir una wiki funcional que pugui satisfer la necessitat actual de l’empresa ControlSA en la gestió de coneixement dels productes que subministra i instal·la amb una relació directe dels clients.

1.6 Breu descripció dels altres capítols de la memòria

El present treball disposa a continuació els capítols d’Estudi teòric del projecte i el desenvolupament. S’han dividit en dues parts ja que considero, d’una banda, la teoria i, d’altra banda, la part pràctica, amb un desenvolupament i posada en funcionament de l’aplicació treballada. En l’estudi del projecte s’identifica el model ontològic a seguir, amb un disseny amb l’aplicació Protégé. Al desenvolupament del projecte, es porta a la pràctica el model elegit amb la plataforma MediaWiki i l’extensió Semantic MediaWiki, per posar en funcionament la solució per a l’empresa ControlSA. Finalment s’inclouen les conclusions, el glossari i la biografia del TFG.

Page 13: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

9

Figura 6: Sketchup de la web semàntica

2. Conceptes bàsics Abans d’iniciar-nos en el plantejament teòric, cal una introducció dels conceptes bàsics sobre el tema tractat, per tal de conèixer què és una web semàntica i com està composta. Tot i que es poden trobar més estils i llenguatges, ens centrarem amb els més influents pel projecte.

2.1 Web semàntica

Amb el naixement d’Internet i posteriorment de les pàgines web, en tot l’entorn WWW i en un món pensat per a l’usuari i la seva interacció, es va veure la necessitat de disposar d’eines perquè les pàgines poguessin parlar entre elles, sense la interacció de l’usuari, i obrir la porta a noves prestacions i serveis que fins al moment no hi havia. Per això es considera una eina de gran valor, ja que ha revolucionat el món d’Internet. Per entendre una mica millor el concepte de web semàntica i d’una forma il·lustrativa, es pot observar el següent Sketchup. http://www.agilegeoscience.com/blog/2012/1/24/modern-illuminations.html

Page 14: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

10

La web semàntica és l’evolució del web inicial que va començar la navegació d’internet. Amb ella s’ha evolucionat l’estructura de dades per permetre la integració de dades i ser compartides entre diferents sistemes i aplicacions, donant capacitat de resposta als servidors web de les peticions d’usuaris o altres serveis sense que requereixi la intervenció d’un agent. Amb una web semàntica podem definir elements per tal de ser utilitzats per altres llibreries o aplicacions de forma autònoma i facilitar la integració entre plataformes. El major avanç des de l’aparició d’Internet, i que per alguns ha estat anomenat el Web 3.0. Els punts fonamentals de la web semàntica són:

- la semàntica, dotar la informació de significat interpretable per a les màquines, amb informació comprensible i processable.

- les metadades, que són dades contenidores d’altres dades, en què l’objectiu és descriure i donar informació de les dades superiors.

- l’ontologia, que és la jerarquització dels conceptes amb atributs i relacions de les classes definides, que es regeixen per una certes regles definides.

Estructura de la web semàntica

Figura 7: Estructura de la web semàntica

Page 15: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

11

2.2 XML

Aquest llenguatge va ser desenvolupat per W3C per estandarditzar una forma de comunicació simple i que agrupi grans quantitats de dades. És molt útil per a la comunicació amb bases de dades o entre aplicacions. De forma resumida, podríem dir que identifica elements i etiquetes. Un document xml està compost per 4 parts:

- el pròleg, que declara el document com xml i el format en què està codificat. Declaració <?xml version=”1.0” encoding=”UTF-16”?> Referència <!DOCTYPE nom SYSTEM “nom.dtd”> Aquest és el mètode de com comencen tots els fitxers xml, en què identifica la versió que està codificat.

- El cos, com arrel dels elements i atributs.

Aquests elements poden contenir més elements al seu interior, o estar buit, però sempre s’ha d’iniciar amb el tag corresponent i tancar-lo al final: <model>TPL4</model> <esta_instalat>Tibidabo</esta_instalat> <num_portes>2</num_portes> </model>

- Els elements i atributs, que n’hi poden haver n vegades. Els hem vist representats a l’exemple anterior. Tinguem en compte que poden haver-hi comentaris, els quals no afecten el funcionament però serveixen per a l’anàlisi. <!Definirem les plantes-->

- I les instruccions. Que poden no ser-hi. Aquestes s’utilitzen per a passar informació a una aplicació sobre com ha de tractar els elements. El mecanisme de forma general és: <? Instrucció ?>. Un exemple és la crida d’una fulla d’estils o llibreries addicionals.

Page 16: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

12

2.3 RDF i RDF-SCHEMA

RDF (Resource Description Framework) és un model estàndard d’intercanvi d’informació per Internet en format web. En una web semàntica, les descripcions dels recursos es divideixen en tres parts; Subjecte: que és el recurs a descriure. Predicat: són propietats del recurs i les seves relacions. Objecte: és el valor que té la propietat descrita. Al basar-se en XML, la informació pot ser intercanviada de forma àgil per a sistemes molt diferents (sistemes operatius, navegadors, ...) però que entenen el llenguatge. Els conceptes clau de RDF és la utilització d’un model gràfic de dades, basar el vocabulari en URI, és a dir, tot recurs té un identificador uniforme que pot ser un localitzador d’una URL o un altre element. Pot contenir números, cadenes de text i dates. I utilitza una lògica simple per indicar relacions entre subjecte i objecte. RDF-SCHEMA és una extensió de l’anterior, que sorgeix al 1998, per W3C, per solucionar les limitacions que tenia el model anterior i ampliar-ne la capacitat, així com també permet construir esquemes i vertebrar la informació amb l’ús de classes i subclasses, propietats i restriccions. Es poden definir una jerarquia de classes i subclasses a partir de 3 classes elementals, aquestes son rdfs:Resource, rdfs:Property i rdfs:Class. En les propietats, cal indicar el tipus de classe permet indicar la jerarquia de classes i propietats, a través de rdf:type, rdfs:subClassOf i rdfs:subPropertyOf. Finalment, es troben les restriccions de propietats que permeten indicar les propietats i valors que tenen les classes. Es fa a través de rdfs:domain i rdfs:range per indicar els valors possibles.

Page 17: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

13

2.4 SPARQL

SPARQL és el llenguatge més utilitzat per a consultes en RDF i RDFS. Aquest inclou un subconjunt de referències URI i optimitza l’espai per a ser més ràpid. Les principals característiques són les funcions condicionals i les funcions de comprovació de tipus de dades. També incorpora funcions modificadores de consulta com serien, DISTINCT, ORDER BY, LIMIT, ... :

PREFIX dc: <http://localhost/elements/1.1/>

SELECT ?contacte

WHERE { <http://localhost/contactes> dc:title ?contacte

}

Es poden observar similituds amb altres llenguatges com SQL, pel fet que utilitza crides iguals. En aquest exemple retornarà el nom dels contactes de les instal·lacions documentades a la Wiki en forma de llistat.

Page 18: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

14

2.5 OWL

El OWL (Ontology Web Language) és un llenguatge que permet publicar i compartir ontologies per a definir els elements i les seves relacions en la informació de la web. S’utilitza pel processament de la informació a la web i té com a objectiu de facilitar un model de marcatge construït sobre RDF i codificat en XML. Més endavant es podrà trobar com a resultat d’una exportació de l’ontologia RDF. El següent exemple ens mostra els elements bàsics d’OWL:

<owl:Class rdf:ID="Vintage">

<rdfs:subClassOf>

<owl:Restriction>

<owl:onProperty rdf:resource="#hasVintageYear"/>

<owl:cardinality

rdf:datatype="&xsd;nonNegativeInteger">1</owl:cardinality>

</owl:Restriction>

</rdfs:subClassOf>

</owl:Class>

<owl:Class rdf:ID="WineGrape">

<rdfs:subClassOf rdf:resource="&food;Grape" />

</owl:Class>

Es pot observar que apareixen les classes i instàncies a l’inici que defineix les subclasses, amb owl:Class rdf:ID=”Vintage”. La propietat es defineix entre instàncies mitjançant, owl:ObjectProperty o bé entre una classe i un literal amb owl:DatatypeProperty, que no s’ha inclòs en l’exemple. Les restriccions és un altre element bàsic d’OWL, el qual es troba marcat en vermell a l’exemple. I finalment, un altre element són els operadors, que donen suport a les operacions com ara unió, intersecció i complement.

Page 19: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

15

2.6 Wikis Semàntiques

Les wikis semàntiques són les webs que incorporen les funcionalitats vistes fins el moment. Aquestes actuen com a motor de base de dades, a partir de la informació que hi està publicada. Les principals característiques són l’auto-completació de la informació i que els mateixos usuaris alimenten el contingut, i la vinculació entre pàgines per seguiment d’informació. Algunes wikis semàntiques poden mostrar les relacions entre pàgines o altres dades en format com gràfics, taules, calendaris o mapes.

Figura 8: Wiki Semàntica

Page 20: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

16

Característiques d’una Wiki Semàntica Des d’un punt de vista tècnic, es tracta d’una web amb:

- Entorn distribuït i escalable. - Integració ontològica per a la descripció semàntica de

continguts OWL. - Informació etiquetada amb elements XML. - Informació etiquetada amb elements RDF. - Ús de serveis i agents capaços d’interactuar amb la

informació, i registrar-ne de nova, editar-la o compartir-la. - Entorn col·laboratiu.

Usos d’una Wiki Semàntica: Aquestes plataformes s’utilitzen per a:

- Ordenar i classificar la informació. - Publicació en format Web. - Facilitar-ne l’edició i l’auto-aprenentatge. - Compartir informació entre usuaris i màquines. - Vertebrar el coneixement i relacionar continguts.

Page 21: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

17

3. Estudi del projecte

3.1 Model XML

Per a treballar en la wiki corresponent, amb el disseny ontològic que s’ha definit i que es descriu més endavant, una mostra d’aplicabilitat és per a la representació de productes segons el domini i la jerarquia plantejada:

<?xml version=”1.0” encoding=”UTF-8”?>

<ACR> <Producte> <control_accces> <hardware> <model>TPL4</model> <esta_instalat>Hospital Vall d’Ebron</esta_instalat> <num_portes>4</num_portes> </hardware> </control_acces> </Producte> </ACR>

En l’exemple, es passa la informació d’aquest producte anomenat TPL4, que està instal·lat a l’Hospital Vall d’Ebron i permet gestionar fins a 4 portes.

3.2 Model RDF en OWL

En el model que es presenta pel disseny ontològic d’aquest projecte i en el context real, serà codificat en RDF de la següent manera: #Primer s’inicialitza la classe descripció en referència al client ICON. <rdf:Description rdf:about="#ICON"> #seguidament hi ha les propietats <ACR:compra rdf:resource="#TPL4"/> <ACR:es_client rdf:resource="#Montatges"/> #En el següent, trobem identificada una URI en què fa referència <ACR:nom_client rdf:datatype="http://www.w3.org/2001/XMLSchema#string">ICON Clinical Research</ACR:nom_client> <ACR:Instalació rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Control de presència i accés</ACR:Instalació> <ACR:Contacte rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Mario Luccio</ACR:Contacte> #Aquí treballa amb el tipus de recurs <rdf:type rdf:resource="#Client_de_client"/> #Sempre es tanca el tag </rdf:Description>

Page 22: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

18

3.3 Ontologia, disseny i poblament

El concepte d’ontologia prové de la unió dels mots grecs Onto (que vol dir ser) i logia (que significa ciència o bé estudi de la ciència) per expressar l’estudi del ser, molt utilitzat en filosofia però que s’ha adaptat per a relacionar les classes i entitats que treballarem. És important determinar l’abast i el domini de l’ontologia, que per aquest projecte serà l’abast del coneixement de les instal·lacions de l’empresa ControlSA amb i un domini que inclou altre branca fent referència al producte que subministra i instal·la l’organització. És necessària aquesta relació per tal de tenir un coneixement integrat i accessible per la tasca que ha de realitzar la web semàntica. Hi ha dos grans grups en qüestió, les instal·lacions (classificats com a clients) i els productes, que són classes diferents però es poden vincular entre ells per tal de relacionar els productes existents en una instal·lació o amb la pàgina del producte, o bé per a referenciar instal·lacions al consultar productes. Com que la família de productes que treballa ControlSA és molt diversa, no es poden identificar més subclasses per sota d’aquesta ja que serien patrons diferents, per exemple entre barreres vehiculars i lectors de control d’accés o programes. Per tant, es deixa en aquest nivell. Cal diferenciar entre: Classe o concepte: descripció formal d’una entitat del domini de coneixement que ha de ser representat. És la unitat bàsica i pot tenir subclasses. Aquestes també poden contenir instàncies o manifestacions concretes del què significa i té una estructura jeràrquica. En el model següent s’ha considerat la superclasse ControlSA (o bé ACR com abreviació) que és la superlativa i preveu futures ampliacions, amb les subclasses de Producte i Client (pensat per a representar les instal·lacions). Instància o individu: Representació concreta d’una classe o concepte. Com serà per exemple una instal·lació, del tipus “Hospital Vall d’Hebron”. Atribut o propietat: Descriu amb detall classes i instàncies mitjançant determinats valors. En aquest cas seran atributs com la versió d’un determinat software o bé el nombre de portes que pot controlar un hardware de control d’accés. Relació: interacció o associació entre dues classes del domini. Com seria donat un producte en quines instal·lacions de client està instal·lat.

Page 23: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

19

Cardinalitat: s’utilitza com a complement de la relació i es pot trobar en el treball, per exemple donada una instal·lació quants productes pot tenir, i aquest nombre pot ser il·limitat. Però podria tractar-se d’un conjunt de valors o bé un boleà entre si / no. Herència: són les propietats que agafa una subclasse d’una classe superior jeràrquicament. Com serà un atribut de client que passa a les demés subclasses. Diagrama d’activitat: permet conèixer si, per exemple, donada una instal·lació quins productes té instal·lats i a l’inversa. Així com també, si un producte com “control d’errants” s’ha realitzat una campanya per atreure clients, indica la relació i es pot saber en cada campanya quins clients s’han fet. Per tant, és en el diagrama on s’indica la relació perquè la informació cobri sentit. Regla: expressió lògica utilitzada per a la deducció de coneixement en l’ontologia. Es trobaran com donada una instal·lació amb plaques de control d’accés, ha de tenir el software per a gestionar-ho.

Page 24: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

20

Les classes i subclasses definides són:

En aquest disseny, es plantegen dues classes com a principals, clients i producte, que està relacionat per les instal·lacions, el qual donada una família (Control accés, barreres, ...) està instal·lat en un client. Pel que fa al client cal conèixer la procedència i diferenciar-lo entre client de client (perquè potser es coneix la instal·lació però no es tracta directament amb ell) i clients propis, dels quals cal definir-ne un perfil, que pot ser instal·lador, distribuïdor o client final.

UML

Clients Producte

Tipus Origen Control d’accés

Barreres

Control Errants

Lectors biomètrics

Client de client

Client pròpi

Google

Licitació

Fires Client Final

Distribuidor

Instal·lador

Campanyes

Proveidor

Figura 9: Organigrama de classes

Page 25: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

21

3.4 Manual Protégé

Mitjançant l’eina de Protégé, s’ha definit el model comentat anteriorment, però aquest és molt simple donada la diferència entre els productes a tractar.

Classes i subclasses definides:

Figura 10: Estructura Protégé

La definició de les classes, s’ha portat a terme en base a dos grans grups que tenen una herència diferent com són els clients i els productes.

Page 26: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

22

Les classes han estat elegides en funció de la informació que es necessita documentar, és a dir: Classes finals: Clients que tenen Producte instal·lats que són de Proveïdors, però el camp proveïdor és només identificatiu, ja quel què es vol és la relació entre Clients i Productes. I es classifiquen així: Donat un client, es vol classificar-lo en funció de l’origen en la relació, per si s’ha captat el client a través d’una Campanya, per posicionament a Google, en una Fira o bé una licitació o concurs. I també es vol conèixer el perfil de client que és, ja que pot tractar-se d’un client d’un nostre client (client de client) o bé ser un client directe nostre (client pròpi), i en aquest identificar si és un instal·lador, un distribuïdor o bé un client Final, com un Ajuntament, hospital, ... Aleshores, cada una d’aquestes classes tindrà objectes relacional i propietats diferents, però mantindrà una herència jeràrquica. Pel que fa al producte, interessa documentar i diferenciar entre famílies de producte donada la seva singularitat, i per això tenim classes com Barreres, Control d’accés, Biomètrics i Control d’errants, que són les quatre famílies actuals en què treballa l’empresa. I que totes elles tindran una relació amb la classe proveïdor per on han estat comprades. Amb aquest plantejament, es pot diferenciar entre les dades que es documenten entre un client que ha estat caçat per una campanya amb el que s’ha conegut en una fira. O entre característiques concretes d’equips de control d’errants amb les especificacions d’equips biomètrics.

Page 27: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

23

Data Types (tipus de dades)

Figura 11: DataTypes

Les propietats que es volen controlar en funció de la classe són: Classe Propietat Client Nom Nom comercial que s’identifica el client Client Contacte persona de contacte per aquest client Tipus Instal·lació De quina instal·lació es refereix Instal·lador Àrea Zona assignada de cobertura Distribuïdor Àrea Zona assignada de cobertura Campanya Campanya Quina campanya va captar el client Google Paraula clau Per quina paraula clau ens ha trobat Google Sem Booleà per cerca orgànica o pagament Fira Edició Quina fira va ser, p. Ex. Sicur 2014 Licitació Entitat Organisme licitador. P. Ex. Generalitat Producte Nom Nom comercial que s’identifica el producte Producte Stock Quantitat de producte en stock Producte documentació Booleà sobre si té documentació Barreres Intensiu Booleà per saber si és intensiva o no. Barreres Llargada En metres, que cobreix. P. Ex. 4 metres Control d’errants Autònom Booleà per identificar si online o autònom Control Accés Online Booleà per identificar si online o autònom Biomètric Número d’usuaris Usuaris màxim que suporta.

Page 28: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

24

Objectes

Figura 12: Objectes en Protégé

Els objectes ofereixen la possibilitat de relacionar entre les classes, que poden ser amb un únic sentit o bé en els dos sentits, és a dir inversos. Els objectes identificats en el model són:

Objecte Binomi Definició

Compra Clients – Producte

Donat un client, quin producte compra. Pot ser més d’un

Es Compra Producte – Proveidor

Donat un producte a quin proveïdor es compra.

Es promociona Campanya – Producte

En una campanya, quin producte es promociona

Vam contactar Clients pròpis – Origen

Per conèixer com vam contactar amb un client pròpi

Disposa Licitació/concurs – Producte

En una instal·lació d’un concurs, quins producte tenen

Es client Té de client

Client de client – clients pròpis

Inversament, relaciona un client de client amb el nostre client

Es complementa S’integra

Control d’Accés – Control d’errants

Aquestes famílies de produccte, tenen la particularitat que es poden complementar o integrar, aleshores aquí es relaciona si van junts o separats

Està instal·lat Té instal·lat

Producte – Client Final

Relacionem el producte en client per a conèxier la instal·lació

Page 29: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

25

Individuals:

Figura 13: Individuals en Protégé

En què s’han registrat alguns casos amb les propietats definides:

Figura 14: Propietats de l’Individual

Page 30: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

26

4. Desenvolupament del projecte

4.1 Elecció de l’eina de treball

S’ha portat a terme una recerca de les eines disponibles per a la gestió del coneixement a través d’una web semàntica i s’observa que els darrers anys ha augmentat el ventall de possibilitats, n’hi ha prou amb una cerca de plataforma per a wiki ontològica i observar el gran volum de resultats. Però després d’una filtració i seguint amb les recomanacions de companys, projectes anteriors i el pla de treball, he seleccionat entre dos, l’OntoWiki d’” Agile Knowledge Engineering and Semantic Web (AKSW)” i “Semantic MediaWiki”, declinant-me finalment per la segona ja que està basada en el motor de Wikipedia, que va ser el gran potenciador d’aquesta eina i que la va donar a conèixer.

Figura 15: Captura OntoWiki

Figura 16: Captura Semantic MediaWiki

Page 31: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

27

4.2 Instal·lació i configuració de la plataforma en local

Inicialment havia optat per a posar en funcionament el disseny ontològic en la wiki semàntica configurada en un domini però donat una sèrie de problemes d’integració de les versions actuals de MediaWiki amb l’extensió RDFIO que permet carregar el disseny ontològic que s’ha definit en Protégé, m’he vist obligat a optar per a l’alternativa que proposa el mateix desenvolupador de l’extensió https://www.mediawiki.org/wiki/Extension:RDFIO Aquesta alternativa passa per a utilitzar una versió que ha preparat el desenvolupador amb una versió concreta de la plataforma i de les extensions, a més de les dependències necessàries per a poder utilitzar RDFIO. Aleshores, el què he fet ha estat la instal·lació de Virtualbox i descàrrega de la màquina configurada.

Figura 17: Extensió RDFIO

Hi ha un manual que descriu els passos que s’han realitzat per a posar en marxa el sistema virtualitzat. https://gist.github.com/samuell/4f515973bb8d215eac22 Per a descarregar i instal·lar el VirtualBox, es pot trobar al web del propietari actual Oracle i descarregar-lo de forma gratuïta. I pel que fa a la imatge de la màquina virtual, està penjada al Dropbox del desenvolupador:

Page 32: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

28

Figura 18: DropBox Màquina RDFIO

La instal·lació de Virtualbox és senzilla i amb l’assistent es pot seleccionar totes les pantalles amb l’opció predeterminada:

Figura 19: Instal·lació VirtualBox

Page 33: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

29

Per a la configuració de la màquina a través de la imatge descarregada s’ha d’utilitzar l’opció d’importació i indicar-ne el fitxer .ova

Figura 20: Importació de la màquina virtual

Figura 21: Càrrega del fitxer .ova

I acte seguit, la màquina ja està apunt:

Page 34: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

30

Figura 22: Important la màquina

Per assegurar que s’ha importat correctament, ha d’apareixer com a configurada en el panell principal de Virtualbox, i ja es pot iniciar.

Figura 23: Exemple d’èxit en la importació

Page 35: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

31

La configuració elegida per a aquesta màquina, és una variant de l’ubuntu que va néixer més enfocat al món de l’educació, el Xubuntu, el qual incorpora ja instal·lat un servidor LAMP, per a publicació de pàgines web en Apache, amb PHP i MySQL configurats. En aquest servidor web, s’ha instal·lat la plataforma MediaWiki i l’extensió Semantic Media Wiki, i finalment s’ha carregat l’extensió RDFIO per a poder realitzar importacions de model ontològics en extensió .owl. Per al funcionament de la màquina, s’ha assignat 1024 Mb de RAM i comparteix els dos nuclis amb el pc físic. Per a la configuració del sistema operatiu i enfocat a la wiki semàntica, l’autor de la màquina es pot trobar l’annex 9.4. Els requeriments són un servidor web, amb PHP i MySQL per a MediaWiki, seguidament la instal·lació de l’extensió de Semantic MediaWiki i RDFIO, i amb aquests el sistema ja està operatiu.

Page 36: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

32

4.3 Importació de l’Ontologia

Per a importar l’ontologia, primerament cal guardar el disseny de Protégé en format OWL i seguidament traslladar-lo al portal en local. El format compatible per a la importació és RDF/XML, i ha de generar un fitxer amb l’extensió .owl.

Figura 24: Exportació de la ontologia en RDF/XML

Aquest fitxer s’ha de passar a la màquina virtual, a través de les “Guest Tools” o bé utilitzant eines com el Google Drive. L’extensió RDFIO habilita una pàgina especial per a la càrrega de dissenys ontològics en RDF, i és en aquesta que s’ha de copiar el disseny exportat en format xml:

Page 37: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

33

Figura 25: Importació del fitxer en RDF/XML

Encara que també es podria fer consultant una URL si el fitxer ha estat guardat en una altre ubicació. Finalment, per a comprovar que la càrrega s’ha realitzat de forma correcte, es pot consultar la pàgina de canvis recents i apareixerà el nou disseny ontològic ja carregat:

Figura 26: Pàgina RecentChanges

Page 38: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

34

5. Wiki operativa

Una vegada realitzada la importació, es poden fer cerques SPARQL amb l’eina que facilita l’extensió RDFIO i permet executar consultes sobre l’ontologia definida:

Figura 27: Consulta SPARQL

En l’ontologia feta amb Protégé i que ha estat carregat, es pot observar la seva estructura en qualsevol de les pàgines individuals definides i veure els enllaços que presenta cada pàgina, fent molt àgil la navegació i la interpretació per a les màquines:

Figura 28: Exemple Montatges

En aquest cas, es pot consultar el client amb l’Alies Montatges, les seves dades fiscals, els clients que té assignats, els productes habituals de compra i la categoria de què forma part.

Page 39: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

35

6. Conclusions

Quan vaig elegir el tema pel treball de final de grau, vaig decantar-me pel món web, que conec de fa temps i he desenvolupat varis portals i aplicacions per a les empreses en què treballo. Aleshores, em va cridar l’atenció el web semàntic ja que ho desconeixia, i era un tema nou per a mi que no havia tingut en compte prèviament.

Qui més qui menys, tothom coneix la wikipèdia i, com a informàtic, creia que era un gestor de continguts (CMS) que d’una forma àgil permetia crear noves pàgines i documentar informació, però no anava més enllà el meu coneixement. Per tant, ha estat sorprenent conèixer quina és la raó de ser d’una Wiki, i que a part de mostrar una interfície d’informació als usuaris, també és capaç de parlar-se amb altres pàgines i integrar-se amb més plataformes. Considero que un gran aprenentatge ha estat descobrir el veritable sentit d’una web semàntica, que desconeixia i no me l’esperava així. A més, tot i conèixer el llenguatge d’XML, m’ha suposat una visió millor i més àmplia de les seves possibilitats, trobant-hi la solució d’integració de diferents plataformes, que fins aleshores no sabia com unir.

A més, un nou concepte que he après és el d’ontologia, un terme que desconeixia i molt menys sabia quins eren els seus usos. Inicialment tenia previst portar a terme un projecte que pogués ser útil per a l’empresa i l’entorn laboral en què em veig immers cada dia, d’aquí la proposta d’oferir una solució per a la problemàtica d’una de les empreses del grup. En aquest sentit, l’objectiu que em vaig fixar va ser el d’implementar una eina que ens donés capacitat de gestionar la informació de les instal·lacions i que es relacionés amb clients i productes que trobàvem a cada instal·lació. En aquest cas s’ha basat el projecte i finalment s’ha obtingut una eina que satisfà el plantejament inicial que exposo a la introducció. Per aquest motiu, considero molt interessant el desenvolupament d’aquest treball i que fins i tot ha contribuït a trobar una millor operativa al món laboral i incrementar en eficiència, aspectes en què se centren els esforços tecnològics a les empreses i departaments de sistemes. Pel que fa a la planificació i seguiment, considero que no han estat encertats al 100% donat que per condicions laborals vaig tenir un canvi de tasques laborals a l’inici del projecte, fet que em va implicar molt de temps que no havia previst. A més, sovint tinc desplaçaments que m’incomuniquen durant dos o tres dies, fet que no em permetia avançar i, per tant, m’ha suposat un esforç molt gran els dies que tenia disponibilitat i els caps de setmana de forma completa, per tal de poder-ho portar a terme. Considero que la conciliació familiar amb un canvi de funcions a la feina, més dues assignatures de la UOC i el TFG ha estat

Page 40: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

36

una suma molt costosa i que m’ha requerit un gran esforç, malgrat que m’hauria agradat disposar d’una mica més de temps. Les línies de treball futur que no s’han pogut explorar en aquest treball han estat una definició més àmplia del disseny ontològic, en què entressin més classes, subclasses i individuals, ja que amb converses amb el consultor, hem considerat que podria ser més ampli. Destacar que he considerat les més rellevants i que vaig identificar en aquell moment, però sí que serà revisat més endavant, per tal d’afinar-ho, una vegada estiguem treballant a ple rendiment en el nou portal semàntic. Finalment, també m’he marcat un treball futur en traslladar la wiki amb el disseny ontològic que tinc en local, a través de la màquina virtual pels problemes de compatibilitat, a l’allotjament extern i poder-lo posar en funcionament.

Page 41: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

37

7. Glossari

Wiki : Lloc web col·laboratiu que pot ser editat pels usuaris. XML: Extensible Markup Language, ”Llenguatge de marques extensible” OWL: Ontology Web Language. Llenguatge d’ontologies Web RDF: Resource Description Framework. Entorn de treball per descripció de recurs URI: Uniform Resource Identifier. És una cadena de caràcters que identifica inequívocament un recurs. URL: Uniform Resource Locator. És una seqüència de caràcters que s’utilitza per a nombrar recursos a Internet. SPARQL: Protocol and RDF Query Language. Llenguatge de consulta per a RDF. PHP: Pre Hypertext Processor. Llenguatge de programació web. MySQL: Motor de base de dades relacional de codi lliure.

Page 42: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

38

8. Bibliografia

- Tomsplanner.com (Eina de Gantt) a març 2016. - http://www.slideshare.net/rclariso/orientacions-generals-per-al-treball-

final-a-la-uoc (Orientació general) a març de 2016 - https://ca.wikipedia.org/wiki/Wiki (I variants en altres idiomes) a març

de 2016 - http://openaccess.uoc.edu/webapps/o2/bitstream/10609/23244/6/jper

eapTFC0613memoria.pdf (Orientació general) a març 2016 - https://www.youtube.com/watch?v=kvam8yWj_rI (Video explicatiu de

webs semàntiques) a març de 2016 - https://www.w3.org/2001/sw/ (Estandard W3C), a abril de 2016 - http://www2006.org/programme/files/xhtml/4039/xhtml/fp4039-

voelkel.html. Wiki semàntiques. a abril 2016 - http://www.arxivers.com/index.php/documents/publicacions/revista-

lligall-1/lligall-32-1/998-05-aproximacio-a-les-ontologies-definicio-i-construccio-aplicacio-al-camp-de-l-arxivistica-1/file (Documentació Ontològica), a maig de 2016

- http://www.agilegeoscience.com/blog/2012/1/24/modern-illuminations.html (Skectchup Web semàntica) a Juny 2016.

- https://jimenosky.wordpress.com/2008/10/07/web-semantica-web-30-ii-parte/ (Imatge estructura web semàntica) a Juny 2016

- http://www.slideshare.net/cool_uk/semantic-mediawiki-simple-tutorial (Semantic Media wiki) a maig 2016.

- http://www.slideshare.net/hustwj/ontology-reasoning-4 (Imatges OWL, a juny 2016).

Page 43: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

39

9. Annex

9.1 Elecció del proveïdor d’allotjament

Al tractar-se d’un projecte real i que es durà a terme, s’ha optat per allotjar la plataforma en un servidor extern a l’empresa que doni millor accés i disposició per els treballadors remots i que accediran a través d’Internet. Per això s’ha elegit un domini que enllaci al servei, el qual ha estat rformacio.info, pel joc de paraules que suposa. Després d’una cerca en l’immensa oferta de proveïdors que ofereixen allotjament, he seleccionat un que ofereix una relació qualitat preu molt bona i que hem treballat en altres projectes, del qual tenim bones experiències. Per a la posada en funcionament del web semàntic, busquem un servidor que treballi en PHP i MySQL per tal de poder instal·lar i configurar-hi el Media Wiki. Per a l’elecció, també s’ha de considerar el trànsit mensual que utilitzarà la plataforma, ja que com que s’hi dipositaran fitxers, pot suposar un elevat espai de transferència. L’allotjament elegit inclou una transferència il·limitada de transit.

Page 44: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

40

9.2 Instal·lació i configuració de la plataforma

El proveïdor de l’allotjament ens facilita un portal de gestió de l’espai web en què es poden crear usuaris de connexió FTP i per la gestió de la base dades, que necessitem per la configuració de la plataforma. Aleshores, he pujat els fitxers per FTP i configurat el fitxer LocalSettings.php de MediaWiki per habilitar l’extensió “Semantic” i posar en marxa el sistema. Per a la càrrega de fitxers, he utilitzat FileZilla que és una eina gratuïta i codi lliure.

Figura 29: Client FileZilla per FTP

Una vegada estan carregats els fitxers, a l’accedir amb el navegador, si és la primera vegada, es carrega un assistent que ens ajuda amb la configuració de MediaWiki, fins que posa en funcionament la plataforma. Per a instal·lar l’extensió de semàntic MediaWiki, només cal copiar la carpeta de fitxers al directori d’extensions i habilitar-ho en LocalSettings.php, amb aquests passos ja queda activat.

Page 45: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

41

Figura 30: Posada en marxa del sistema

Figura 31: Inici de sessió

Page 46: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

42

9.3 Wiki allotjada De la wiki que s’ha plantejat inicialment, i que es posarà en marxa per a l’empresa ControlSA, s’ha habilitat un compte de demostració, però és en la que no s’ha pogut carregar l’ontologia per problemes d’incompatibilitats de l’extensió.

Hi ha un usuari habilitat per a la demostració i proves pel TFG, les dades de connexió son: URL: http://rmacio.info Usuari: demo_tfg Contrasenya: tfg_demo

9.4 Instruccions per configuració de l’entorn virtual

Per a la configuració de la màquina virtual amb el servei web, la wiki semàntica i l’extensió RDFIO s’ha executat, segons el creador de l’extensió:

sudo apt-get install gnome-terminal vim git tig curl subversion

# Installing the basics of a LAMP server

sudo apt-get install apache2 mysql-server php5

# Installing the "connections" between the packages

sudo apt-get install libapache2-mod-php5 php5-mysql

# Various extra stuff for

sudo apt-get install php5-cli php5-gd php5-xdebug php5-json php5-xsl

# Restart the Apache web server

sudo service apache2 restart

firefox http://localhost

cd /var/www

sudo chown -R rdfio:www-data html/

cd /var/www/html

# Download the latest mediawiki release

wget http://releases.wikimedia.org/mediawiki/1.23/mediawiki-1.23.0.tar.gz

# Unpack the mediawiki archive

tar -zxvf mediawiki-1.23.0.tar.gz

# Rename the extracted folder

mv mediawiki-1.23.0 mw123

# Log in to MySQL as root:

mysql -u root –p

CREATE DATABASE mw123;

CREATE USER mw123@localhost IDENTIFIED by 'changethis';

GRANT ALL ON mw123.* TO mw123@localhost;

Page 47: Wiki d'assistència (Web semàntica)openaccess.uoc.edu/webapps/o2/bitstream/10609/53663/6... · 2017. 10. 2. · per a la gestió de la informació que es vol portar a terme amb la

43

Quit

# After downloading the LocalSettings.php file, copy it to the wiki folder:

cp ~/Downloads/LocalSettings.php .

# Enter your new wiki:

firefox http://localhost/mw123/

# Head over to the SMW website:

firefox http://semantic-mediawiki.org

# Open the composer intall instructions

firefox https://getcomposer.org/doc/00-intro.md#installation-nix

curl -sS https://getcomposer.org/installer | php

ll *.phar

php composer.phar require mediawiki/semantic-media-wiki "~1.9"

# Install the dependency, Wiki Object Model:

cd extensions

svn checkout

http://svn.wikimedia.org/svnroot/mediawiki/trunk/extensions/WikiObjectModel

include_once("$IP/extensions/WikiObjectModel/WikiObjectModel.php");

echo 'include_once("$IP/extensions/WikiObjectModel/WikiObjectModel.php");' >>

LocalSettings.php

cd extensions/SemanticMediaWiki

mkdir libs

cd libs

git clone https://github.com/semsol/arc2.git arc

cd wiki/extensions

git clone https://github.com/samuell/RDFIO.git

include_once("$IP/extensions/RDFIO/RDFIO.php");

$smwgOWLFullExport = true;

echo 'include_once("$IP/extensions/RDFIO/RDFIO.php");' >> LocalSettings.php

echo '$smwgOWLFullExport = true;' >> LocalSettings.php

# Open the page MediaWiki:Sidebar

firefox http://localhost/mw123/MediaWiki:Sidebar

# Edit the page and paste the following code, and save:

* Semantic Tools

** Special:ARC2Admin|ARC2 Admin

** Special:RDFImport|RDF Import

** Special:SPARQLEndpoint|SPARQL Endpoint

** Special:SPARQLImport|SPARQL Import

firefox http://localhost/mw123/Special:Arc2Store