440 likes | 552 Views
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
E N D
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
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
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.
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.
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.
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.
Ontology Languages (OWL) • OWL Lite • OWL DL • OWL Full
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.
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.
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.
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
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
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
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
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
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.
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.
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.
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.
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.
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 JavaServerPages(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
Microsoft SQL Server • Microsoft SQL Server 2005 is a database and data analysis platform for large-scale online transactionprocessing (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.
Music and Audio system use case, implementation and execution
JBuilder 2006 Computation Engine Jena 2.3 OWL API Inference Engine User interface JSP Pages RDQL Serarch Query Protege 3.2 OWL File Ontology & Knowledge Base Music and Audio system use case, implementation and execution • Execution of program in Browser
Music and Audio system use case, implementation and execution • Execution of program in Browser
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:
Music and Audio system use case, implementation and execution • Running queries in Algernon • 2)Find all WebSites Address for artists:
Music and Audio system use case, implementation and execution • Running queries in Algernon • 3)Find all album names which are not linkto_wikipedia site:
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:
Music and Audio system use case, implementation and execution • Running queries in SQL Server 2005 • 2)Find all WebSites Address for artists:
Music and Audio system use case, implementation and execution • Running queries in Algernon • 3)Find all album names which are not linkto_wikipedia site:
Music and Audio system use case, implementation and execution • Some source codes for classes in Music and Audio ontology:
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.
Comparison of Semantic Search and Regular Search • By using OWL, the Music Ontologygains a powerfulextensibility 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.
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.
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.
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
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
Thank you • Any Questions?