Top Banner
1 STI INNSBRUCK ANNOTATION OF KAYSERS.AT WEBSITE WITH SCHEMA.ORG Zaenal Akbar, Ioan Toma STI Innsbruck, University of Innsbruck, Technikerstraße 21a, 6020 Innsbruck, Austria [email protected] 2015-07-30 Semantic Technology Institute Innsbruck STI INNSBTRUCK Technikerstraße 21a A 6020 Innsbruck Austria http://www.sti-innsbruck.
14

ANNOTATION OF KAYSERS WEBSITE WITH …...The website uses Typo3 CMS [4] as its backend, with MySQL [5] as its database. Since there is no plugin available yet for schema.org annotation,

Aug 08, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: ANNOTATION OF KAYSERS WEBSITE WITH …...The website uses Typo3 CMS [4] as its backend, with MySQL [5] as its database. Since there is no plugin available yet for schema.org annotation,

1

STI INNSBRUCK

ANNOTATION OF KAYSERS.AT

WEBSITE WITH SCHEMA.ORG

Zaenal Akbar, Ioan Toma STI Innsbruck, University of Innsbruck,

Technikerstraße 21a, 6020 Innsbruck, Austria [email protected]

2015-07-30

Semantic Technology Institute Innsbruck

STI INNSBTRUCK Technikerstraße 21a A – 6020 Innsbruck

Austria http://www.sti-innsbruck.

Page 2: ANNOTATION OF KAYSERS WEBSITE WITH …...The website uses Typo3 CMS [4] as its backend, with MySQL [5] as its database. Since there is no plugin available yet for schema.org annotation,

1

Contents 1. Introduction ......................................................................................................................................... 2

2. Content Mapping ................................................................................................................................ 2

3. Implementation ................................................................................................................................... 6

3.1 Website Backend .......................................................................................................................... 6

3.2 Modified Database ........................................................................................................................ 6

3.3 Annotated Pages ............................................................................................................................ 6

4. Result .................................................................................................................................................. 6

4.1 Article ........................................................................................................................................... 7

4.2 Offer .............................................................................................................................................. 8

4.3 Hotel ............................................................................................................................................ 11

5. Discussion ......................................................................................................................................... 13

References ............................................................................................................................................. 13

Page 3: ANNOTATION OF KAYSERS WEBSITE WITH …...The website uses Typo3 CMS [4] as its backend, with MySQL [5] as its database. Since there is no plugin available yet for schema.org annotation,

2

1. Introduction

This document presents our implementation of annotating the website of the Kaysers 4-Star

Hotel [1] with Schema.org [2]. The implementation was performed by injecting the related

Class and Properties into the content of the website.

The outputs of this implementation are:

1. The final mapping between the identified content types from the website to

Schema.org classes including their relevant properties.

2. The selected method on how to inject the annotation into the content.

2. Content Mapping

Contents in the website are divided into a few categories and sub-categories:

1. The Kaysers: Philosophy, Impressions, Newsletter, Gutschein, Hotel Assessment,

Press, Partner, Weather, Jobs, Current Events

2. Rooms And Prices: Rooms And Prices, Gourmet- & Vital Board, Enquire & Book,

Zusatzleistungen, Winter Offers, Summer Offers

3. Wellness: Kaysers Spa, Wellness Packages, Beauty Treatments, Massages, Time For

Two

4. Nature & Indulgence: Natural Hideaway, Culinary Specialities, Kaysers In Winter,

Kaysers In Summer

5. Movement: Tennis, Golf, Hike & Bike, Yoga & Co, Skiing In Tyrol, Cross-Country

Skiing, Winter Walking, Culture, Cultural City Of Innsbruck

6. Contact: Contact, How To Get To Us, Imprint

The mapping is representing a relation between the identified content types (including

properties) of the website to the classes and properties of Schema.org. Original mapping

described in [3] was used as the reference, but a change will be applied if necessary.

Table 1 Mapping the Content Types to Schema.org

No. Content Type Schema.org

Class Property

1 The Kaysers Article

name

articleBody

image

2 Rooms and Prices

2.1 Rooms and Prices Offer

name

description

image

PriceSpecification priceSpecification

validFrom

validThrough

priceCurrency

Page 4: ANNOTATION OF KAYSERS WEBSITE WITH …...The website uses Typo3 CMS [4] as its backend, with MySQL [5] as its database. Since there is no plugin available yet for schema.org annotation,

3

price

2.2 Gourmet & Vital Board Article

name

articleBody

image

2.3 Additional Services Offer

name

description

image

PriceSpecification priceSpecification

priceCurrency

price

QuantitativeValue eligibleQuantity

value

2.4 Winter Offers Offer

name

description

image

PriceSpecification priceSpecification

validFrom

validThrough

priceCurrency

price

2.5 Summer Offers Offer

name

description

image

PriceSpecification priceSpecification

validFrom

validThrough

priceCurrency

price

3 Wellness

3.1 Kaysers Spa Article

name

articleBody

image

3.2 Wellness Packages Offer

name

description

image

PriceSpecification priceSpecification

priceCurrency

price

QuantitativeValue eligibleQuantity

value

3.3 Beauty Treatments Offer

name

Page 5: ANNOTATION OF KAYSERS WEBSITE WITH …...The website uses Typo3 CMS [4] as its backend, with MySQL [5] as its database. Since there is no plugin available yet for schema.org annotation,

4

description

image

PriceSpecification priceSpecification

priceCurrency

price

QuantitativeValue eligibleQuantity

value

3.4 Massages Offer

name

description

image

PriceSpecification priceSpecification

priceCurrency

price

QuantitativeValue eligibleQuantity

value

3.5 Time for Two Offer

name

description

image

PriceSpecification priceSpecification

priceCurrency

price

QuantitativeValue eligibleQuantity

value

4 Nature & Indulgence Article

name

articleBody

image

5 Movement

5.1 Tennis Offer

name

image

PriceSpecification priceSpecification

name

description

priceCurrency

price

QuantitativeValue eligibleQuantity

value

Article

name

articleBody

image

5.2 Golf, …, Culture Article

name

articleBody

image

Page 6: ANNOTATION OF KAYSERS WEBSITE WITH …...The website uses Typo3 CMS [4] as its backend, with MySQL [5] as its database. Since there is no plugin available yet for schema.org annotation,

5

6 Contact

6.1 Contact Hotel

name

telephone

email

PostalAddress address

streetAddress

addressLocality

addressRegion

postalCode

addressCountry

AggregateRating aggregateRating

ratingValue

ratingCount

6.2 Imprint Hotel

name

telephone

faxNumber

email

PostalAddress address

streetAddress

addressLocality

addressRegion

postalCode

addressCountry

Compared to the original mapping explained in [3], a few changes have been made to fit the

content type to the most suitable class. For example, when a page has no price information

then the page will be annotated as “Article” (instead of “Offer”).

Used classes of Schema.org:

1. Hotel

2. PriceSpecification

3. Quantitative Value

4. Article

5. PostalAddress

6. AggregateRating

Page 7: ANNOTATION OF KAYSERS WEBSITE WITH …...The website uses Typo3 CMS [4] as its backend, with MySQL [5] as its database. Since there is no plugin available yet for schema.org annotation,

6

3. Implementation

In this section, we describe how the annotation was implemented, encountered problems and

used solutions.

3.1 Website Backend

The website uses Typo3 CMS [4] as its backend, with MySQL [5] as its database. Since there

is no plugin available yet for schema.org annotation, we decided to inject the annotation

directly into the content.

Typo3 is integrated with Rich Text Editors (RTE) for text user input. Originally, our plan was

to injecting the annotation through this editor, but RTE has strict restriction in which html

tags are accepted and it will clean up the “unrecognized” tags. Since for annotation, special

tags (meta-tags) are required, a modification is necessary to the RTE configuration, which is

risky. Therefore, we decided to inject the annotation directly through the database, in this

case through MySQL tables.

3.2 Modified Database

There are five tables were modified in order to annotated the website. Those database tables

are:

1. tt_contents. This table holds general pages.

2. tx_mpnews_news. This table holds specific pages which are categorized into pre-

defined categories, for example winter and summer offers.

3. tx_mpwellness_items. This table holds various items of wellness category, for

example packages, beauty treatments.

4. tx_mpzimmerpreise_seasons. This table holds various date intervals (from – to) for

several available seasons.

5. tx_mpzimmerpreise_rooms. This table holds various room items including their

priceses for a specific season.

3.3 Annotated Pages

In total, we were able annotating 268 pages/sub-pages in three different languages

(German/Default, English, and France).

4. Result

In this chapter, we show the results of several annotated pages when extracted using

Structured Data Testing from Google [7].

Page 8: ANNOTATION OF KAYSERS WEBSITE WITH …...The website uses Typo3 CMS [4] as its backend, with MySQL [5] as its database. Since there is no plugin available yet for schema.org annotation,

7

4.1 Article

Article is used to annotated a generic page contains generic information. For example a page

about Philosophy of the hotel as shown at Figure 1.

Figure 1 Extracted Article

Page 9: ANNOTATION OF KAYSERS WEBSITE WITH …...The website uses Typo3 CMS [4] as its backend, with MySQL [5] as its database. Since there is no plugin available yet for schema.org annotation,

8

4.2 Offer

A page could contain one Offer with several PriceSpecifications. For example in offer for

Rooms, the Offer contains variety prices according to the availability duration as shown at

Figure 2.

Figure 2 Extracted Offer

Page 10: ANNOTATION OF KAYSERS WEBSITE WITH …...The website uses Typo3 CMS [4] as its backend, with MySQL [5] as its database. Since there is no plugin available yet for schema.org annotation,

9

A page also could contain more than one Offer. For example for Beauty Treatment as shown

at Figure 3.

Figure 3 Extracted several Offers

Page 11: ANNOTATION OF KAYSERS WEBSITE WITH …...The website uses Typo3 CMS [4] as its backend, with MySQL [5] as its database. Since there is no plugin available yet for schema.org annotation,

10

A page also could contain Offer and Article at the same time. For example for the Tennis as

shown at Figure 4.

Figure 4 Extracted Offer and Article

Page 12: ANNOTATION OF KAYSERS WEBSITE WITH …...The website uses Typo3 CMS [4] as its backend, with MySQL [5] as its database. Since there is no plugin available yet for schema.org annotation,

11

4.3 Hotel

Information about the Hotel can be obtained from the page Contact as shown at Figure 5.

Figure 5 Extracted Hotel

Page 13: ANNOTATION OF KAYSERS WEBSITE WITH …...The website uses Typo3 CMS [4] as its backend, with MySQL [5] as its database. Since there is no plugin available yet for schema.org annotation,

12

Hotel also can be obtained from the page Imprint as shown at Figure 6.

Figure 6 Extracted Hotel

Page 14: ANNOTATION OF KAYSERS WEBSITE WITH …...The website uses Typo3 CMS [4] as its backend, with MySQL [5] as its database. Since there is no plugin available yet for schema.org annotation,

13

5. Discussion

As mentioned above, the annotations were injected directly through the database tables. This

approach raises a few potential problems in the future:

- A content modification through RTE will be discarding all inserted annotation, i.e.

meta-tags will be discarded automatically by RTE.

o To avoid this situation, a future content modification should be through the

database interface.

- Second option is to customize the RTE configuration in a way capable of accepting

those special meta-tags.

References

[1] Kaysers 4-Star Hotel, http://kaysers.at

[2] Shema.org, http://schema.org/

[3] Zaenal Akbar, Ioan Toma, “Analysis of Kaysers.at Website”, Technical Report, STI

Innsbruck, 09.06.2015

[4] TYPO3 – The Enterprise Open Source CMS, https://typo3.org/

[5] MySQL – Open Source Database, https://www.mysql.com/

[6] Rich Text Editors (RTE),

http://docs.typo3.org/typo3cms/CoreApiReference/Rte/Index.html

[7] Structured Data Testing Tool, https://developers.google.com/structured-data/testing-

tool/