19
Feratel - Schema.org Mapping Zaenal Akbar October 15, 2014 Copyright 2014 STI INNSBRUCK www.sti-innsbruck.at

Feratel mapping

Embed Size (px)

Citation preview

Page 1: Feratel mapping

Feratel - Schema.org Mapping

Zaenal Akbar

October 15, 2014

Copyright 2014 STI INNSBRUCK www.sti-innsbruck.at

Page 2: Feratel mapping

Outline

Introduction

Mapping Feratel XML to Schema.org

ImplementationDemo

Discussion

www.sti-innsbruck.at 2/19

Page 3: Feratel mapping

Introduction

Mapping

A relation between the elements of Feratel XML and theclasses of Schema.org including their properties

Objectives:To annotate the Feratel XML with Schema.org such thatusers of Feratel could benefit from the annotated data

1. Major search engines (Google, Yahoo!, Bing, Yandex) couldinterpret the annotated web pages properly

2. Increasing the visibility of web pages on those searchengines

www.sti-innsbruck.at 3/19

Page 4: Feratel mapping

Introduction

The mapping steps:

1. For each element in Feratel XMLFind the most suitable class in Schema.orgIf not available then find the most suitable property for theparent elements in Schema.org

2. For each attribute of element in Feratel XMLFind the most suitable property for the element or parentelements in Schema.org

www.sti-innsbruck.at 4/19

Page 5: Feratel mapping

Mapping - Example

XML element Event to http://schema.org/Event, Translationto property name

XML element Position to http://schema.org/GeoCoordinates,attribute Latitude and Longitude to properties latitude andlongitude respectively

www.sti-innsbruck.at 5/19

Page 6: Feratel mapping

Events

Property geo is used by type Place onlyA property for the relation between PostalAddress andOrganization is required

www.sti-innsbruck.at 6/19

Page 7: Feratel mapping

Shop Items

Shop Items include brochures, articles and guidesNo class for Guide or BrochureA class for CopyrightHolder is required

www.sti-innsbruck.at 7/19

Page 8: Feratel mapping

Infrastructure

Infrastructure item has various topics, e.g. Bar for Food &Beverages

www.sti-innsbruck.at 8/19

Page 9: Feratel mapping

Destination Packages

Destination package is a bundle of different services andproducts

www.sti-innsbruck.at 9/19

Page 10: Feratel mapping

(Accomodation) Service Providers

www.sti-innsbruck.at 10/19

Page 11: Feratel mapping

Implementation

Client sends request [1]

Dispatcher forwards the requestto the Feratel API endpoint [2]

The received response [3] thenforwarded to the Annotator [4]to be annotated

The annotated response [5] thenreturned to the Client [6]

www.sti-innsbruck.at 11/19

Page 12: Feratel mapping

Feratel API - Target URLs

1. Key Values:http://interface.deskline.net/DSI/KeyValue.asmx

Operations: GetKeyValues, SetClientIP

2. Basic Data:http://interface.deskline.net/DSI/BasicData.asmx

Operations: GetAvailability, GetData, SetClientIP

3. Search: http://interface.deskline.net/DSI/Search.asmxOperations: DoSearch, GetCancellationInformation,GetPaymentInformation, SetClientIP

4. Shopping Cart Manipulation

5. Guest Address Manipulation

6. Saving Requests

www.sti-innsbruck.at 12/19

Page 13: Feratel mapping

HTTP GET

Request:

GET /DSI/BasicData.asmx/GetData?xmlString=string HTTP/1.1

Host: interface.deskline.net

Response:

HTTP/1.1 200 OK

Content-Type: text/xml; charset=utf-8

Content-Length: length

<?xml version="1.0" encoding="utf-8"?>

<string xmlns="http://tempuri.org/">string</string>

www.sti-innsbruck.at 13/19

Page 14: Feratel mapping

Feratel API - Request

<?xml version="1.0" encoding="utf-8"?>

<FeratelDsiRQ

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xmlns:xsd="http://www.w3.org/2001/XMLSchema"

xmlns="http://interface.deskline.net/DSI/XSD">

<Request Originator="FERATEL" Company="FERATEL">

<Range Code="RG">

<Item Id="AAAAAAAA-BBBB-CCCC-DDDD-FFFFFFFFFFFF" />

</Range>

<EventSearch From="2014-10-01" To="2014-10-02" />

</Request>

</FeratelDsiRQ>

www.sti-innsbruck.at 14/19

Page 15: Feratel mapping

Feratel API - Response

<?xml version="1.0"?>

<FeratelDsiRS

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xmlns:xsd="http://www.w3.org/2001/XMLSchema"

Status="0" Message="OK"

xmlns="http://interface.deskline.net/DSI/XSD">

<Result Index="1">

<Events>

<Event Id="..." ChangeDate="2010-05-21T16:41:00">

<Details>...</Details>

</Event>

</Events>

</Result>

</FeratelDsiRS>

www.sti-innsbruck.at 15/19

Page 16: Feratel mapping

Annotator - XSL Transformation

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

<xsl:stylesheet version="1.0"

xmlns:idn="http://interface.deskline.net/DSI/XSD"

xmlns:schema="http://schema.org/"

xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="idn:Event">

<Event itemscope="" itemtype="http://schema.org/Event">

<xsl:apply-templates select="node()|@*"/>

</Event>

</xsl:template>

<xsl:template match="idn:Descriptions/idn:Description">

<Description itemprop="description">

<xsl:copy-of select="node()|@*"/>

</Description>

</xsl:template>

www.sti-innsbruck.at 16/19

Page 17: Feratel mapping

Demo

www.sti-innsbruck.at 17/19

Page 18: Feratel mapping

Discussion

1. Several elements and attributes from Feratel XML can notbe mapped to Schema.org classes or properties

2. A request for Service Providers to Feratel API can not beperformed with one invocation due to the large amount ofdata. A “request workflow” is required and this feature isnot reflected in the current XSLT yet.

www.sti-innsbruck.at 18/19

Page 19: Feratel mapping

Thank You

www.sti-innsbruck.at 19/19