Let's say a number of internet sites with on-line recordings agree on the following simple XML document definition. The definition has an element name followed by the type of data that it should contain. Some of the data types may be free-form text (anything may be entered), other types have to be a certain type (like a number or a date). Also, some data types may only contain one of a number of choices (shown here as text separated by vertical bars '|').
<COMMON-TITLE> any-free-form-text <LOCAL-TITLE> any-free-form-text <PRIMARY-PERFORMER-NAME> any-free-form-text <PRIMARY-PERFORMER-BIRTHDATE> any-positive-date <PRIMARY-PERFORMER-INSTRUMENT> value= fiddle | banjo | guitar | pipes <RECORDING-DATE> any-positive-date <STYLE-LOCATION-COUNTRY> value= standard-two-letter-country-code <STYLE-LOCATION-STATE-REGION> value= standard-two-letter-state-code | Appalachia | Rocky Mountains <STYLE-LOCATION-COMPASS> value= North | South | East | West | Central <STYLE-LOCATION-COMPASS-SUFF> value= Eastern | Western <SAMPLED-FORMAT-URL> URL_hyperlink <SAMPLED-FORMAT-SIZE> positive-numeric-kilobytes <DESCRIPTION-URL> URL_hyperlink <MANDATORY-NOTES-COPYRIGHT> any-free-form-text-or-URL-hyperlinkHere is how the XML document for one of the songs on my web site would look.
<COMMON-TITLE> Rose Waltz
<LOCAL-TITLE> Frank Lowrey's Waltz 1
<PRIMARY-PERFORMER-NAME> Jim Bryner
<PRIMARY-PERFORMER-BIRTHDATE> 07/08/1905
<PRIMARY-PERFORMER-INSTRUMENT> fiddle
<RECORDING-DATE> 1982
<STYLE-LOCATION-COUNTRY> US
<STYLE-LOCATION-STATE-REGION> PA
<STYLE-LOCATION-COMPASS> South
<STYLE-LOCATION-COMPASS-SUFF> Western
<SAMPLED-FORMAT-URL> http://www.mort.net/bwf/krm/jbtapes/tape1/t1t35.MP3
<SAMPLED-FORMAT-SIZE> 1256
<DESCRIPTION-URL> http://www.mort.net\users\krm\otf\jbryner\tape1\index.shtml
<MANDATORY-NOTES-COPYRIGHT> This file can be shared with anyone in the world.
Please include a reference to the source or a link to
http://www.mort.net/bwf/krm/jbtapes/tape1/t1t35.MP3
when distributing this music.
Now if a number of old-time recording repositories have cataloged their music with the Old-Time XML definition, and a search form is developed at a web site that knows about a number of those repositories. An end user could search all of them using that single search form.
If someone was searching for songs where the primary instrument was fiddle and the style was typical
of Southern Pennsylvania.
(PRIMARY-PERFORMER-INSTRUMENT=fiddle)
(STYLE-LOCATION-COMPASS=South)
(STYLE-LOCATION-STATE-REGION=PA)
the results would include most of the music at my
Jim 'Ike' Bryner Tapes page.
Let's say someone is searching for early recordings of fiddle music. The search site could let the person
search by recording date (RECORDING-DATE) or
birthdate of primary performer (PRIMARY-PERFORMER-BIRTHDATE).
Sometimes a repository site might not know the exact
recording or birth date. Additional definitions on those elements could be defined to produce intervals.
Let's say we think a recording took place in 1982, but it might have been up to five years earlier but
no more than one year after. We could have the following.
<RECORDING-DATE> value= 03/25/1982 <RECORDING-DATE-LOW> value= -5 <RECORDING-DATE-HIGH> value= 1In a seach for recordings prior to 1980, the above recording could be included as a possibility.
Ideally the search site would present a simple flexible way to enter search criterion. Also, it should allow the user to specify what output they wish or to return summary statistics instead. Because the search site is requesting XML documents from the repository sites, it can format (sort, create summary statisticts, ...) the result any way it (or the user) wants.
The search site would not include the actual song file that contains the recording. This should be handled
by displaying a URL hyperlink (SAMPLED-FORMAT-URL) instead. This way the user could click on the link
to retrieve the song from the original site directly.
Also, the search site should include any information that the repository site considers mandatory. This
may include a copyright notice or other notes on usage/distribution of the files.
Some definition of a 'Collection' of songs might also be useful (and collections of collections). This could be useful for persons searching for songs in a general catagory (not specific song titles). Since XML documents are hierarchial in nature, this would be very easy to do without duplicating at the individual song level, since the songs could inherit their parent's (the collection's) descriptions. An individual song could also then override or add to a parent's description.