44
Music and Audio Information Search System Kiavash Bahreini – 055251

Music and Audio Information Search System Kiavash Bahreini – 055251

Embed Size (px)

Citation preview

Page 1: Music and Audio Information Search System Kiavash Bahreini – 055251

Music and Audio Information Search System

Kiavash Bahreini – 055251

Page 2: Music and Audio Information Search System Kiavash Bahreini – 055251

Outline

Introduction Semantic Web What is Ontology? Domains and ranges Ontology Languages (OWL) Search on the Web Object-oriented Modeling Paradigm Adaptable Inference Capabilities Background The Music Ontology and OWL Protégé JBuilder 2006 Jena 2.3 Ontology API

Page 3: Music and Audio Information Search System Kiavash Bahreini – 055251

Outline (cont)

RDQL Java Server Pages Algernon Tomcat Microsoft SQL Server Music and Audio system use case, implementation and execution Execution of program in Browser Running queries in Algernon Running queries in SQL Server 2005 Some source codes for classes in Music and Audio ontology Comparison of Semantic Search and Regular Search Conclusion References

Page 4: Music and Audio Information Search System Kiavash Bahreini – 055251

Introduction

Internet changed the music industry. At first, sharing systems like Napster allowed people to share any song they had on their computer with millions other people.

Communities like this ontology started to appear.

The Music Ontology is an attempt to link all the information about musical Artists, Albums and Tracks together: from MusicBrainz to my ontology.

Page 5: Music and Audio Information Search System Kiavash Bahreini – 055251

Introduction (Cont)

The goal is to express all relations between musical information to help people finding anything about music and musicians. It is based around the use of machine readable information provided by any web site or web service on the Web.

Page 6: Music and Audio Information Search System Kiavash Bahreini – 055251

Semantic Web

Common framework Allows data

Sharing Reuse

Across domains Application Enterprise Community boundaries

Based on Resource Description Framework (RDF) XML for syntax URIs for naming.

Page 7: Music and Audio Information Search System Kiavash Bahreini – 055251

What is Ontology?

At the heart of all Semantic Web applications is the use of ontologies. A commonly agreed definition of an ontology is: ‘An ontology is an explicit and formal specification of a conceptualisation of a domain of interest.

Page 8: Music and Audio Information Search System Kiavash Bahreini – 055251

Domains and ranges

Page 9: Music and Audio Information Search System Kiavash Bahreini – 055251

Ontology Languages (OWL)

OWL Lite

OWL DL

OWL Full

Page 10: Music and Audio Information Search System Kiavash Bahreini – 055251

Search on the Web

Seeking information on the Web is widely used and will become more important as the Web grows. Nowadays, search engines browse through the Web seeking given terms within web pages or text documents without using ontologies.

Traditional search engines such as Yahoo are based on full-text search. These search engines are seeking documents, which contain certain terms.

Page 11: Music and Audio Information Search System Kiavash Bahreini – 055251

Object-oriented Modeling Paradigm

In the past decade the object-oriented paradigm has become prevalent for conceptual modeling.

Object-oriented models can easily be visualized, thus making understanding conceptual models much simpler. Hence, any successful ontology modeling approach should follow the object-oriented modeling paradigm.

Page 12: Music and Audio Information Search System Kiavash Bahreini – 055251

Adaptable Inference Capabilities

Inference mechanisms for deduction of information not explicitly asserted is an important characteristic of ontology-based systems. However, systems with very general inference capabilities often do not take into account other needs, such as scalability and concurrency.

For example, in the RDFS and OWL ontology languages it is possible to make some classes the domain or the range of some property. This statement can be interpreted as an axiom saying that for any property instance in the ontology, the source and target instances can be inferred to be members of the domain and target concepts, respectively.

Page 13: Music and Audio Information Search System Kiavash Bahreini – 055251

Background

The Music Ontology is an effort of ZitGist LLC. to express musical relationships between artists, albums and tracks.

I used OWL and to query that same information using the RDQL query language for RDF and OWL.

The Music Ontology is mainly influenced by the MusicBrainz community music metadatabase. Most of the properties of this ontology reflect the relationships described in that database. Most of the relationship descriptions written in this document have been taken on the MusicBrainz Wiki

Page 14: Music and Audio Information Search System Kiavash Bahreini – 055251

The Music Ontology and OWL

The Music Ontology is an application of the Ontology Web Language (OWL) because the subject area I am describing – music: albums, artists, audio files, audio file formats, encoding audio files, genre, instrument, key, note, official, resource, rhythm etc has so many competing requirements.

By using OWL, the Music Ontology gains a powerful extensibility mechanism, allowing Music-Ontology-based descriptions to be mixed with claims made in any other OWL and RDF vocabulary

Page 15: Music and Audio Information Search System Kiavash Bahreini – 055251

Protégé

Protégé is an ontology editor knowledge-base editor an open-source, Java tool

provides extensible architecture to create customized knowledge-based applications.

Developed by Stanford University, USA

Page 16: Music and Audio Information Search System Kiavash Bahreini – 055251

Music and Audio Ontology (Classes)

Provides information on Album Artist AudioFile AudioFileType Encoding Instrument Key Live Note Official Resource Rhythm Signal Soundtrack Spokenword Track Type

Page 17: Music and Audio Information Search System Kiavash Bahreini – 055251

Music and Audio Ontology (Data Type and

Object Properties)

Provides information on arranged covered djmix_of duration image linkto_wikipedia medley_of member_of performed similar_to trackNum translation_of

Page 18: Music and Audio Information Search System Kiavash Bahreini – 055251

Music and Audio Ontology (General

structure)

Page 19: Music and Audio Information Search System Kiavash Bahreini – 055251
Page 20: Music and Audio Information Search System Kiavash Bahreini – 055251
Page 21: Music and Audio Information Search System Kiavash Bahreini – 055251

JBuilder 2006

The system is written in JBuilder 2006. JBuilder is and IDE (Integrated

Development Tools) for developing new application, web etc software based on Java

Language. All of the packages and classes for using OWL and running queries are

imported into this IDE.

Page 22: Music and Audio Information Search System Kiavash Bahreini – 055251

Jena 2.3 Ontology API

Jena 2.3 Ontology API is a Java framework for building Semantic Web applications. Use

RDF models in your Java applications with the Jena Semantic Web Framework.

Page 23: Music and Audio Information Search System Kiavash Bahreini – 055251

RDQL

RDQL is a query language for RDF in Jena models. The idea is to provide a data-

oriented query model so that there is a more declarative approach to complement the fine-

grained, procedural Jena API. It is "data-oriented" in that it only queries the

information held in the models; there is no inference being done. Of course, the Jena model may be 'smart' in that it provides the

impression that certain triples exist by creating them on-demand.

Page 24: Music and Audio Information Search System Kiavash Bahreini – 055251

Java Server Pages

JavaServer Pages (JSP) technology allows web developers and designers to rapidly develop and

easily maintain information-rich, dynamic web pages that leverage existing business systems. As part of the Java family, the JSP technology enables

rapid development of web-based applications that are platform independent.

In theory, JavaServer Pages technology separates the user interface from content generation, enabling designers to change the overall page layout without

altering the underlying dynamic content.

Page 25: Music and Audio Information Search System Kiavash Bahreini – 055251

Algernon

Algernon is a rule-based inference system, implemented in Java and interfaced with

Protégé and it is developed by Micheal Hewett. It allows executing queries within the

Protégé GUI. It performs forward and backward rule-

based processing of knowledge bases, and efficiently stores and retrieves information in

ontologies and knowledge bases. It has an ability to call external Java methods and an

internal LISP subsystem.

Page 26: Music and Audio Information Search System Kiavash Bahreini – 055251

Tomcat

Tomcat is the official reference implementation of the Java Servlet 2.2 and JavaServer Pages 1.1 technologies. Developed under the Apache license in an open and participatory environment, it is intended to be a collaboration of the best-of-breed developers from around the world.

Tomcat is a servlet container and JavaServer Pages(tm) implementation. It may be used stand alone, or in conjunction with several popular web servers: Apache, version 1.3 or later Microsoft Internet Information Server, version 4.0 or later Microsoft Personal Web Server, version 4.0 or later Netscape Enterprise Server, version 3.0 or later

Page 27: Music and Audio Information Search System Kiavash Bahreini – 055251

Microsoft SQL Server

Microsoft SQL Server 2005 is a database and data analysis platform for large-scale online transaction processing (OLTP), data warehousing, and e-commerce applications.

The Database Engine is the core service for storing, processing, and securing data. The Database Engine provides controlled access and rapid transaction processing to meet the requirements of the most demanding data consuming applications within your enterprise. The Database Engine also provides rich support for sustaining high availability.

Page 28: Music and Audio Information Search System Kiavash Bahreini – 055251

Music and Audio system use case, implementation and execution

Page 29: Music and Audio Information Search System Kiavash Bahreini – 055251

Music and Audio system use case, implementation and execution Execution of program in Browser

JBuilder 2006

Protege 3.2

OWL File

Ontology & Knowledge Base

User interface

JSPPages

Computation Engine

Jena 2.3 OWL API

Inference Engine

RDQLSerarch Query

Page 30: Music and Audio Information Search System Kiavash Bahreini – 055251

Music and Audio system use case, implementation and execution Execution of program in Browser

Page 31: Music and Audio Information Search System Kiavash Bahreini – 055251

Music and Audio system use case, implementation and execution Running queries in Algernon

1) Find all artist names that their age=45, nationality="Turkish", country "Turkey", and numberOfAlbums=50:

((:BIND ?age 45)(:BIND ?nationality "Turkish")

(:BIND ?country "Turkey")(:BIND ?numberOfAlbums 50)

(:INSTANCE Artist ?aName)(age ?aName ?age)

(nationality ?aName ?nationality)(country ?aName ?country)

(numberOfAlbums ?aName ?numberOfAlbums)(:FAIL (:neq ?age ?age))

(:FAIL (:neq ?nationality ?nationality))(:FAIL (:neq ?country ?country))

(:FAIL (:neq ?numberOfAlbums ?numberOfAlbums)))

Page 32: Music and Audio Information Search System Kiavash Bahreini – 055251

Music and Audio system use case, implementation and execution Running queries in

Algernon 2) Find all WebSites

Address for artists:

((:BIND ?hasResource "N/A")(:INSTANCE Resource ?AtristWebsiteAddress)

(hasResource ?AtristWebsiteAddress ?hasResource)(:FAIL (:neq ?hasResource ?myLink)))

Page 33: Music and Audio Information Search System Kiavash Bahreini – 055251

Music and Audio system use case, implementation and execution Running queries in Algernon

3) Find all album names which are not linkto_wikipedia site:

((:BIND ?linkto_wikipedia "N/A")(:INSTANCE Album ?albumName)

(linkto_wikipedia ?albumName ?linkto_wikipedia)(:FAIL (:neq ?linkto_wikipedia ?linkto_wikipedia)))

Page 34: Music and Audio Information Search System Kiavash Bahreini – 055251

Music and Audio system use case, implementation and execution Running queries in SQL Server 2005

1) Find all artist names that their age=45, nationality="Turkish", country "Turkey", and numberOfAlbums=50:

SELECT DISTINCT [name], [age], [nationality], [country], [numberOfAlbums]

FROM dbo.tblArtistWHERE [age]=45

AND [nationality]='Turkish' AND [country]='Turkey'

AND [numberOfAlbums]=50GO

Page 35: Music and Audio Information Search System Kiavash Bahreini – 055251

Music and Audio system use case, implementation and execution Running queries in SQL Server 2005

2) Find all WebSites Address for artists:

SELECT [id], [name], [hasResource]FROM dbo.tblResource

WHERE [hasResource]='N/A'GO

Page 36: Music and Audio Information Search System Kiavash Bahreini – 055251

Music and Audio system use case, implementation and execution Running queries in Algernon

3) Find all album names which are not linkto_wikipedia site:

SELECT [id], [name], [linkto_wikipedia]FROM dbo.tblAlbum

WHERE [linkto_wikipedia]='N/A'GO

Page 37: Music and Audio Information Search System Kiavash Bahreini – 055251

Music and Audio system use case, implementation and execution

Some source codes for classes in Music and Audio ontology:

<owl:Class rdf:ID="Album"> <rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#strin g" >Album - This is a generic term defining a package of tracks. This applies to compact disks, vinyls, CD singles, EPs, etc. </rdfs:comment> <rdfs:subClassOf> <owl:Class rdf:about="#MyClasses"/> </rdfs:subClassOf> <rdfs:subClassOf> <owl:Restriction> <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int" >1</owl:maxCardinality> <owl:onProperty> <owl:DatatypeProperty rdf:ID="albumName"/> </owl:onProperty> </owl:Restriction> </rdfs:subClassOf> </owl:Class>

Page 38: Music and Audio Information Search System Kiavash Bahreini – 055251

Comparison of Semantic Search and Regular Search In relational database management systems (RDBMS), there is

no class relationship. It means sub classes cannot inherit all properties from their super classes and also there is no instantiation.

Extra work will be required to define class relations and all properties separately.

In semantic databases there are domains and ranges which can apply for each property but in an RDBMS it is impossible.

There is no object property for these systems. In relational database Vastly coding implementation for

returning data is need. There is no way for using and importing ontologies, and for

returning objects data types.

Page 39: Music and Audio Information Search System Kiavash Bahreini – 055251

Comparison of Semantic Search and Regular Search By using OWL, the Music Ontology gains a powerful

extensibility mechanism, allowing Music-Ontology-based descriptions to be mixed with claims made in any other OWL or RDF vocabularies. I can re-use other ontologies to describe different relationship between classes.

OWL provides the Music Ontology with a way to mix together different descriptive vocabularies in a consistent way. Vocabularies can be created by different communities and groups as appropriate and mixed together as required, without needing any centralized agreement.

On the other hand, many existing SW tools are still file-oriented and also mine. This limits the size of ontologies that can be processed, as the whole ontology must be read into main memory. Further, the multi-user support and transactions are typically not present, so the whole infrastructure realizing these requirements must be created from scratch but my project is web based and it is able support multi-user transactions.

Page 40: Music and Audio Information Search System Kiavash Bahreini – 055251

Conclusion The Music Ontology is an application of the Ontology Web Language

(OWL) because the subject area are – music: artists, albums and tracks etc -- has so many competing requirements that a standalone format would not capture them or would lead to trying to describe these requirements in a number of incompatible formats. By using OWL, the Music Ontology gains a powerful extensibility mechanism, allowing Music-Ontology-based descriptions to be mixed with claims made in any other OWL vocabulary.

OWL provides the Music Ontology with a way to mix together different descriptive vocabularies in a consistent way. Vocabularies can be created by different communities and groups as appropriate and mixed together as required, without needing any centralized agreement.

In summary then, OWL is self-documenting in ways which enable the creation and combination of vocabularies in a devolved manner. This is particularly important for an ontology which describes communities, since online communities connect into many other domains of interest, which it would be impossible (as well as suboptimal) for a single group to describe adequately in non-geological time.

Page 41: Music and Audio Information Search System Kiavash Bahreini – 055251

References [1]- http://purl.org/ [2]- Multimedia Content and the Semantic Web METHODS, STANDARDS AND TOOLS Edited by

Giorgos Stamou and Stefanos Kollias Both of National Technical University of Athens, Greece. John Wiley & Sons Ltd.

[3]- T. Berners-Lee, J. Hendler, O. Lassila, The Semantic Web. Scientific American, 284(5), 34–43, 2001.

[4]- O. Lassila, R.R. Swick, Resource Description Framework (RDF) Model and Syntax Specification, http://www.w3.org/TR/REC-rdf-syntax/.

[5]- D. Brickley, R.V. Guha, RDF Vocabulary Description Language 1.0: RDF Schema, http://www.w3.org/TR/rdfschema/.

[6]- M. Kifer, G. Lausen, J. Wu, Logical foundations of object-oriented and frame-based languages. Journal of the ACM, 42, 741–843, 1995.

[7]- D. Fensel, I. Horrocks, F. van Harmelen, S. Decker, M. Erdmann, M. Klein, OIL in a nutshell. In Knowledge Acquisition, Modeling, and Management, Proceedings of the European Knowledge Acquisition Conference (EKAW-2000), October, pp. 1–16. Springer-Verlag, Berlin, 2000.

[8]- P.F. Patel-Schneider, P. Hayes, I. Horrocks, F. van Harmelen, Web Ontology Language (OWL) Abstract Syntax and Semantics, http://www.w3.org/TR/owl-semantics/, November 2002.

[9]- C. Davis, S. Jajodia, P. Ng, R. Yeh (eds), Entity-Relationship Approach to Software Engineering: Proceedings of the 3rd International Conference on Entity-Relationship Approach, Anahein, CA, 5–7, October. North- Holland, Amsterdam, 1983.

[10]- M. Fowler, K. Scott, UML Distilled: A Brief Guide to the Standard Object Modeling Language, 2nd edn. Addison-Wesley, Reading, MA, 1999.

Page 42: Music and Audio Information Search System Kiavash Bahreini – 055251

References (Cont1)

[11]- A. Evans, A. Clark, Foundations of the Unified Modeling Language. Springer-Verlag, Berlin, 1998.

[12]- http://pingthesemanticweb.com/ontology/mo/#sec-external#sec- external [13]- http://www.w3.org/2001/sw/, no pagination, verified on Oct 17, 2002. [14]- http://www.w3.org/2001/sw/, no pagination, verified on July 1st, 2003. [15]- Tim Berners-Lee, James Hendler, and Ora Lassila. The semantic web. Scientific

American, 2001(5), 2001. [16]- Ubbo Visser Intelligent Information Integration for the Semantic Web Springer. [17]- Semantic Web Technologies Trends and Research in Ontology-based Systems

John Davies BT, UK Rudi Studer University of Karlsruhe, Germany Paul Warren BT, UK John Wiley & Sons Ltd.

[18]- http://www.w3.org/2004/OWL/ [19]- http://www.w3.org/RDF/ [20]- The Semantic Web: A Guide to the Future of XML, Web Services, and

Knowledge Management Michael C. Daconta Leo J. Obrst Kevin T. Smith [21]- I. Horrocks, “DAML+OIL: A Description Logic for the Semantic Web.” Bulletin of

the IEEE Computer Society Technical Committee on Data Engineering, IEEE, Vol. 25, No. 1, pp. 4-9, 2002.

[22]- Protégé overview, URL: http://protege.stanford.edu, last visited: June 2006

Page 43: Music and Audio Information Search System Kiavash Bahreini – 055251

References (Cont2)

[23]- N. F. Noy, M. Sintek, S. Decker, M. Crubezy, R. W. Fergerson, & M. A. Musen. “Creating Semantic Web Contents with Protege-2000”, IEEE Intelligent Systems 16(2):60-71, 2001

[24]- J. Gennari, M. A. Musen, R. W. Fergerson, W. E. Grosso, M. Crubézy, H. Eriksson, N. F. Noy, S. W. Tu, “The Evolution of Protégé: An Environment for Knowledge-Based Systems Development”, 2002, URL: http://smi-web.stanford.edu/pubs/SMI_Reports/SMI-2002-0943.pdf

[25]- Erhan Gayde Thesis Eastern Mediterranean University September 2006, Gazimağusa, North Cyprus

[26]- http://www.Borlan.com/ [27]- Jena – A Semantic Web Framework for Java, URL: http://jena.sourceforge.net/. [28]- HP Labs Semantic Web Research, URL: http://www.hpl.hp.com/semweb/. [29]- http://jena.sourceforge.net/tutorial/RDQL/ [30]- Borland JBuilder 2006 Documentation Files. [31]- http://algernon-j.sourceforge.net/ [32]- http://www.hewettresearch.com/mikehewett.html [33]- http://jatha.sourceforge.net/ [34]- http://jakarta.apache.org/site/binindex.html [35]- Microsoft SQL Server 2005 Documentation

Page 44: Music and Audio Information Search System Kiavash Bahreini – 055251

Thank you

Any Questions?