• Keine Ergebnisse gefunden

Internet Technologies II

N/A
N/A
Protected

Academic year: 2022

Aktie "Internet Technologies II"

Copied!
3
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Prof. Dr. Thomas Schmidt HAW Hamburg

FB E/I, Room 780, Tel.: 42875 - 8157 Email:

schmidt@informatik.haw-hamburg.de

Internet Technologies II

LAB: XML, Web Services, Semantics

Goal: Implement a semantic overlay network of Web Services.

1st Step (XML Processing):

Please produce a valid XML sample document from this schema. Write a simple Java program, which performs the validation.

Please proceed in writing an XSL stylesheet to transform this XML document into HTML output. Extend your Java program to perform the XSL transformation.

Look at the JBOSS installation and get acquainted with the application server.

Optional homework extension: Use deploy your Java transform program as a Web Service (in: XML+XSL, out: HTML), write a Client Web appli- cation to use this service and display results.

2nd Step (Simplified Learning Object Service)

An IEEE LOM Learning Object is an XML structure, which includes Meta data, content and relations (between LOs). Such standardized Learning Objects are typically stored in online repositories, ready for download or exchange. The aim of the task will lie in the development of a distributed retrieval Web services in interconnected repositories.

Please implement at first a Webservice Client, which can search and download LOs from the online HylOs repository

HOST = "http://hylos.cpt.haw-hamburg.de:9080"

SERVICE_PATH = " /jboss-net/services/HylosObjectService"

and their relations as Beans.

The repository offers a Webservice complying the methods

• searchObjects, returning an array of internal paths for a search filter, and

• fetchObject, returning a Learning Object for a path:

(2)

<wsdl:message name="searchObjectsRequest">

<wsdl:part name="filter" type="xsd:string"/>

</wsdl:message>

<wsdl:message name="searchObjectsResponse">

<wsdl:part name="searchObjectsReturn" type="soapenc:Array"/>

</wsdl:message>

<wsdl:message name="fetchObjectResponse">

<wsdl:part name="fetchObjectReturn" type="tns1:HylosObject"/>

</wsdl:message>.

The full WSDL service description can be retrieved from http://hylos.cpt.haw-hamburg.de:9080/jboss-net/servlet/AxisServlet.

The object codes for he HylosObject (Interface) and the Relations (Interface), which are derived from RepositoryObject, you find here.

The search string syntax of the searchObjects method follows and LDAP approach (see RFC 2254):

filter = "(" filtercomp ")"

filtercomp = and / or / not / item and = "&" filterlist

or = "|" filterlist not = "!" filter filterlist = 1*filter

item = simple / present / substring / extensible simple = attr filtertype value

filtertype = equal / approx / greater / less equal = "="

approx = "~="

greater = ">="

less = "<="

present = attr "=*"

substring = attr "=" [initial] any [final]

initial = value

any = "*" *(value "*") final = value

attr = AttributeDescription value = AttributeValue

Example:

(cn=Babs Jensen) (!(cn=Tim Howes))

(&(objectClass=Person)(|(sn=Jensen)(cn=Babs J*))) (o=univ*of*mich*)

3rd Step (Simplified Learning Object Repository):

Compatible with the Web Service Interface of Step 2 please implement and deploy a Hypermedia Learning Object Repository, which is capable of holding a list of Learning Objects. This repository service should offer the interfaces (see above)

ƒ fetchObject (as above)

(3)

ƒ searchObject (as above) and

ƒ putObject (HylosObject o)

and a persistence layer within the file system (use XML files within a given directory and the HylosObject identifier as filename).

To implement the method searchObjects(string filter) you may use this search packet

Hint: First create an XML search node tree by using the method filter2xml(filter) from class MirSearch.

Then create a SearchOperator from the

SearchOperatorFactory), which provides a setData method to connect your list of object data.

Provide some exemplary data within your repository, which are classified by keywords obtained from the ACM Computing Classification System .

4th Step (Semantic Query):

Extend your repository client to perform semantic retrieval in the follow- ing sense: Any search term (taken from the ACM Computing Classifica- tion vocabulary) undergoes semantic inferences to identify equivalent or related terms, which are then used to query in the repository. Use the SKOS representation of the ACM Ontology as model input for the Jena API.

(Hint: Load the SKOS schema as model schema and the ACM representa- tion as model data with the ModelLoader.loadModel(). Then obtain an OWL reasoner, ReasonerRegistry.getOWLReasoner(), as SKOS is built upon OWL. Bind the schema, reasoner.bindSchema() and then create your inference model, ModelFactory.createInfModel().)

Referenzen

ÄHNLICHE DOKUMENTE

 Jede Resource kann nur eine Klasse sein, ein Datentype, oder ein Datentypeigenschaft, eine Objekteigenschaft, ein Individuum, oder Teil eines built-in Vokabulars, aber nicht

We first evaluate the F-Measure results for semantic matching with STROMA using Sem- Rep as a background knowledge resource to look up the semantic relation type between pairs

The Semantic Service Manager (SSM) is a tool aiming at the development process of agent- oriented software to enable the semi-automatic annotation of agent actions.. The main goal

(1) it supports querying of the semantic data with a keyword based approach, so the users do not need to learn a semantic query language, (2) it helps users find relevant results

The proposed team planning algorithms respect criteria of optimal teams and select those members from the pool of employees that can fulfil the project descriptions as a group..

The BOEMIE Ontology repository comprehends a set of OWL files containing assertional information, also called ABoxes, where each ABox contains the rich semantic metadata of a

The focus of his research is foundations and applications of knowledge representation and reasoning, and his research record lists over 130 publications in such diverse areas

2.2 Selection and Sense Classification of Ambiguous Turkish Verbs and Nouns The average number of senses for Turkish words can be significantly high leading to many problems for