192 Personal Content Experience: Managing Digital Life in the Mobile Age tion and execution speed, since no matter how good a service they provide, if they make applications unusable, they are futile. While the development is continuing, the initial results are highly promising. The performance of the metadata system appears to be satisfactory in terms of access speed and memory consumption, con- sidering that we are using a non-optimized build. We have tested the system with collections of mobile media fi les, where the system per- forms as expected. 5.8.3 Example Usage of Metadata Engine Let us take a short walkthrough with Metadata Engine, and see how a developer (we shall call her Faye) can make use of it in content man- agement. We assume that the ontology presented in our Metadata Ontology already exists in the engine. Faye is developing an application that can play MP3 music using playlists, regardless of their storage location (songs can be stored either locally, or remotely on a network server). First, she notices that there is no MP3 schema in the MdE. This is not the case in the real version, but let us assume so in this example. It means that she will have to create a schema defi nition for MP3 fi les before any MP3 specifi c metadata can be used. She decides to extend the already existing music defi nitions so she uses the API methods to get the current defi nition for music object, and then with another method she creates a new MP3 schema defi nition extending the old music defi nition. She uses her own namespace to avoid property name collisions with any other schema. Faye then creates ID3v2 property defi nitions for all attributes in ID3v2 that are not already included in old music defi nition. As a side benefi t for creating MP3 schema object, she can use MdE as an MP3 search engine to fi nd all MP3s easily and quickly by using it as an MP3 fi lter. Faye’s application scans all MP3 fi les in the device – she creates an MP3 harvester. Besides scanning the device itself, she makes the har- vester scan all available songs from a DLNA certifi ed media server in the home network. She makes it create an instance of MP3 schema object for each MP3 fi le it fi nds, thus creating a metadata instance for each of them. The harvester adds all ID3 tags it fi nds inside the MP3 fi le or from the media server as metadata properties into the instance object. Instance objects contain actual metadata which is stored into database inside MdE as MP3 metadata. Again, our system harvesters will do all MP3 metadata importing automatically, so in real life there
Personal Content Experience Page 215 Page 217