00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef _QUERIES_H_
00025 #define _QUERIES_H_
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00043 #define MBI_VARIOUS_ARTIST_ID \
00044 "89ad4ac3-39f7-470e-963a-56509c546377"
00045
00050 #define MBS_Rewind \
00051 "[REWIND]"
00052
00056 #define MBS_Back \
00057 "[BACK]"
00058
00066 #define MBS_SelectArtist \
00067 "http://musicbrainz.org/mm/mm-2.1#artistList []"
00068
00076 #define MBS_SelectAlbum \
00077 "http://musicbrainz.org/mm/mm-2.1#albumList []"
00078
00086 #define MBS_SelectTrack \
00087 "http://musicbrainz.org/mm/mm-2.1#trackList []"
00088
00094 #define MBS_SelectTrackArtist \
00095 "http://purl.org/dc/elements/1.1/creator"
00096
00102 #define MBS_SelectTrackAlbum \
00103 "http://musicbrainz.org/mm/mq-1.1#album"
00104
00109 #define MBS_SelectTrmid \
00110 "http://musicbrainz.org/mm/mm-2.1#trmidList []"
00111
00116 #define MBS_SelectCdindexid \
00117 "http://musicbrainz.org/mm/mm-2.1#cdindexidList []"
00118
00123 #define MBS_SelectReleaseDate \
00124 "http://musicbrainz.org/mm/mm-2.1#releaseDateList []"
00125
00131 #define MBS_SelectLookupResult \
00132 "http://musicbrainz.org/mm/mq-1.1#lookupResultList []"
00133
00138 #define MBS_SelectLookupResultArtist \
00139 "http://musicbrainz.org/mm/mq-1.1#artist"
00140
00145 #define MBS_SelectLookupResultAlbum \
00146 "http://musicbrainz.org/mm/mq-1.1#album"
00147
00152 #define MBS_SelectLookupResultTrack \
00153 "http://musicbrainz.org/mm/mq-1.1#track"
00154
00160 #define MBS_SelectRelationship \
00161 "http://musicbrainz.org/ar/ar-1.0#relationshipList []"
00162
00163
00164
00165
00166
00170 #define MBE_QuerySubject \
00171 "http://musicbrainz.org/mm/mq-1.1#Result"
00172
00175 #define MBE_GetError \
00176 "http://musicbrainz.org/mm/mq-1.1#error"
00177
00178
00179
00180
00181
00182
00183
00189 #define MBE_GetStatus \
00190 "http://musicbrainz.org/mm/mq-1.1#status"
00191
00192
00193
00194
00195
00196
00200 #define MBE_GetNumArtists \
00201 "http://musicbrainz.org/mm/mm-2.1#artistList [COUNT]"
00202
00206 #define MBE_GetNumAlbums \
00207 "http://musicbrainz.org/mm/mm-2.1#albumList [COUNT]"
00208
00212 #define MBE_GetNumTracks \
00213 "http://musicbrainz.org/mm/mm-2.1#trackList [COUNT]"
00214
00218 #define MBE_GetNumTrmids \
00219 "http://musicbrainz.org/mm/mm-2.1#trmidList [COUNT]"
00220
00224 #define MBE_GetNumLookupResults \
00225 "http://musicbrainz.org/mm/mq-1.1#lookupResultList [COUNT]"
00226
00227
00228
00229
00230
00231
00235 #define MBE_ArtistGetArtistName \
00236 "http://purl.org/dc/elements/1.1/title"
00237
00241 #define MBE_ArtistGetArtistSortName \
00242 "http://musicbrainz.org/mm/mm-2.1#sortName"
00243
00248 #define MBE_ArtistGetArtistId \
00249 ""
00250
00256 #define MBE_ArtistGetAlbumName \
00257 "http://musicbrainz.org/mm/mm-2.1#albumList [] http://purl.org/dc/elements/1.1/title"
00258
00264 #define MBE_ArtistGetAlbumId \
00265 "http://musicbrainz.org/mm/mm-2.1#albumList []"
00266
00267
00268
00269
00270
00271
00275 #define MBE_AlbumGetAlbumName \
00276 "http://purl.org/dc/elements/1.1/title"
00277
00282 #define MBE_AlbumGetAlbumId \
00283 ""
00284
00288 #define MBE_AlbumGetAlbumStatus \
00289 "http://musicbrainz.org/mm/mm-2.1#releaseStatus"
00290
00294 #define MBE_AlbumGetAlbumType \
00295 "http://musicbrainz.org/mm/mm-2.1#releaseType"
00296
00300 #define MBE_AlbumGetAmazonAsin \
00301 "http://www.amazon.com/gp/aws/landing.html#Asin"
00302
00306 #define MBE_AlbumGetNumCdindexIds \
00307 "http://musicbrainz.org/mm/mm-2.1#cdindexidList [COUNT]"
00308
00312 #define MBE_AlbumGetNumReleaseDates \
00313 "http://musicbrainz.org/mm/mm-2.1#releaseDateList [COUNT]"
00314
00321 #define MBE_AlbumGetAlbumArtistId \
00322 "http://purl.org/dc/elements/1.1/creator"
00323
00327 #define MBE_AlbumGetNumTracks \
00328 "http://musicbrainz.org/mm/mm-2.1#trackList [COUNT]"
00329
00335 #define MBE_AlbumGetTrackId \
00336 "http://musicbrainz.org/mm/mm-2.1#trackList [] "
00337
00343 #define MBE_AlbumGetTrackList \
00344 "http://musicbrainz.org/mm/mm-2.1#trackList"
00345
00351 #define MBE_AlbumGetTrackNum \
00352 "http://musicbrainz.org/mm/mm-2.1#trackList [?] http://musicbrainz.org/mm/mm-2.1#trackNum"
00353
00359 #define MBE_AlbumGetTrackName \
00360 "http://musicbrainz.org/mm/mm-2.1#trackList [] http://purl.org/dc/elements/1.1/title"
00361
00367 #define MBE_AlbumGetTrackDuration \
00368 "http://musicbrainz.org/mm/mm-2.1#trackList [] http://musicbrainz.org/mm/mm-2.1#duration"
00369
00375 #define MBE_AlbumGetArtistName \
00376 "http://musicbrainz.org/mm/mm-2.1#trackList [] http://purl.org/dc/elements/1.1/creator http://purl.org/dc/elements/1.1/title"
00377
00383 #define MBE_AlbumGetArtistSortName \
00384 "http://musicbrainz.org/mm/mm-2.1#trackList [] http://purl.org/dc/elements/1.1/creator http://musicbrainz.org/mm/mm-2.1#sortName"
00385
00391 #define MBE_AlbumGetArtistId \
00392 "http://musicbrainz.org/mm/mm-2.1#trackList [] http://purl.org/dc/elements/1.1/creator"
00393
00394
00395
00396
00397
00398
00402 #define MBE_TrackGetTrackName \
00403 "http://purl.org/dc/elements/1.1/title"
00404
00409 #define MBE_TrackGetTrackId \
00410 ""
00411
00415 #define MBE_TrackGetTrackNum \
00416 "http://musicbrainz.org/mm/mm-2.1#trackNum"
00417
00421 #define MBE_TrackGetTrackDuration \
00422 "http://musicbrainz.org/mm/mm-2.1#duration"
00423
00427 #define MBE_TrackGetArtistName \
00428 "http://purl.org/dc/elements/1.1/creator http://purl.org/dc/elements/1.1/title"
00429
00433 #define MBE_TrackGetArtistSortName \
00434 "http://purl.org/dc/elements/1.1/creator http://musicbrainz.org/mm/mm-2.1#sortName"
00435
00439 #define MBE_TrackGetArtistId \
00440 "http://purl.org/dc/elements/1.1/creator"
00441
00442
00443
00444
00445
00446
00450 #define MBE_QuickGetArtistName \
00451 "http://musicbrainz.org/mm/mq-1.1#artistName"
00452
00456 #define MBE_QuickGetArtistSortName \
00457 "http://musicbrainz.org/mm/mm-2.1#sortName"
00458
00462 #define MBE_QuickGetArtistId \
00463 "http://musicbrainz.org/mm/mm-2.1#artistid"
00464
00468 #define MBE_QuickGetAlbumName \
00469 "http://musicbrainz.org/mm/mq-1.1#albumName"
00470
00474 #define MBE_QuickGetTrackName \
00475 "http://musicbrainz.org/mm/mq-1.1#trackName"
00476
00480 #define MBE_QuickGetTrackNum \
00481 "http://musicbrainz.org/mm/mm-2.1#trackNum"
00482
00486 #define MBE_QuickGetTrackId \
00487 "http://musicbrainz.org/mm/mm-2.1#trackid"
00488
00492 #define MBE_QuickGetTrackDuration \
00493 "http://musicbrainz.org/mm/mm-2.1#duration"
00494
00495
00496
00497
00498
00499
00503 #define MBE_ReleaseGetDate \
00504 "http://purl.org/dc/elements/1.1/date"
00505
00509 #define MBE_ReleaseGetCountry \
00510 "http://musicbrainz.org/mm/mm-2.1#country"
00511
00512
00513
00514
00515
00516
00520 #define MBE_LookupGetType \
00521 "http://www.w3.org/1999/02/22-rdf-syntax-ns#type"
00522
00526 #define MBE_LookupGetRelevance \
00527 "http://musicbrainz.org/mm/mq-1.1#relevance"
00528
00532 #define MBE_LookupGetArtistId \
00533 "http://musicbrainz.org/mm/mq-1.1#artist"
00534
00538 #define MBE_LookupGetAlbumId \
00539 "http://musicbrainz.org/mm/mq-1.1#album"
00540
00544 #define MBE_LookupGetAlbumArtistId \
00545 "http://musicbrainz.org/mm/mq-1.1#album " \
00546 "http://purl.org/dc/elements/1.1/creator"
00547
00551 #define MBE_LookupGetTrackId \
00552 "http://musicbrainz.org/mm/mq-1.1#track"
00553
00557 #define MBE_LookupGetTrackArtistId \
00558 "http://musicbrainz.org/mm/mq-1.1#track " \
00559 "http://purl.org/dc/elements/1.1/creator"
00560
00561
00562
00563
00564
00565
00570 #define MBE_GetRelationshipType \
00571 "http://www.w3.org/1999/02/22-rdf-syntax-ns#type"
00572
00579 #define MBE_GetRelationshipDirection \
00580 "http://musicbrainz.org/ar/ar-1.0#direction"
00581
00585 #define MBE_GetRelationshipArtistId \
00586 "http://musicbrainz.org/ar/ar-1.0#toArtist"
00587
00591 #define MBE_GetRelationshipArtistName \
00592 "http://musicbrainz.org/ar/ar-1.0#toArtist http://purl.org/dc/elements/1.1/title"
00593
00597 #define MBE_GetRelationshipAlbumId \
00598 "http://musicbrainz.org/ar/ar-1.0#toAlbum"
00599
00603 #define MBE_GetRelationshipAlbumName \
00604 "http://musicbrainz.org/ar/ar-1.0#toAlbum http://purl.org/dc/elements/1.1/title"
00605
00609 #define MBE_GetRelationshipTrackId \
00610 "http://musicbrainz.org/ar/ar-1.0#toTrack"
00611
00615 #define MBE_GetRelationshipTrackName \
00616 "http://musicbrainz.org/ar/ar-1.0#toTrack http://purl.org/dc/elements/1.1/title"
00617
00621 #define MBE_GetRelationshipURL \
00622 "http://musicbrainz.org/ar/ar-1.0#toUrl"
00623
00627 #define MBE_GetRelationshipAttribute \
00628 "http://musicbrainz.org/ar/ar-1.0#attributeList []"
00629
00630
00631
00632
00633
00637 #define MBE_TOCGetCDIndexId \
00638 "http://musicbrainz.org/mm/mm-2.1#cdindexid"
00639
00642 #define MBE_TOCGetFirstTrack \
00643 "http://musicbrainz.org/mm/mm-2.1#firstTrack"
00644
00648 #define MBE_TOCGetLastTrack \
00649 "http://musicbrainz.org/mm/mm-2.1#lastTrack"
00650
00655 #define MBE_TOCGetTrackSectorOffset \
00656 "http://musicbrainz.org/mm/mm-2.1#toc [] http://musicbrainz.org/mm/mm-2.1#sectorOffset"
00657
00662 #define MBE_TOCGetTrackNumSectors \
00663 "http://musicbrainz.org/mm/mm-2.1#toc [] http://musicbrainz.org/mm/mm-2.1#numSectors"
00664
00665
00666
00667
00668
00673 #define MBE_AuthGetSessionId \
00674 "http://musicbrainz.org/mm/mq-1.1#sessionId"
00675
00680 #define MBE_AuthGetChallenge \
00681 "http://musicbrainz.org/mm/mq-1.1#authChallenge"
00682
00683
00684
00685
00686
00693 #define MBQ_GetCDInfo \
00694 "@CDINFO@"
00701 #define MBQ_GetCDTOC \
"@LOCALCDINFO@"
00705 #define MBQ_AssociateCD \
"@CDINFOASSOCIATECD@"
/* -------------------------------------------------------------------------
* Server queries (queries must have argument(s) substituted in them)
* -------------------------------------------------------------------------
*/
00716 #define MBQ_Authenticate \
"<mq:AuthenticateQuery>\n" \
00717 " <mq:username>@1@</mq:username>\n" \
00718 "</mq:AuthenticateQuery>\n"
00719
00724 #define MBQ_GetCDInfoFromCDIndexId \
00725 "<mq:GetCDInfo>\n" \
00726 " <mq:depth>@DEPTH@</mq:depth>\n" \
00727 " <mm:cdindexid>@1@</mm:cdindexid>\n" \
00728 "</mq:GetCDInfo>\n"
00729
00745 #define MBQ_TrackInfoFromTRMId \
00746 "<mq:TrackInfoFromTRMId>\n" \
00747 " <mm:trmid>@1@</mm:trmid>\n" \
00748 " <mq:artistName>@2@</mq:artistName>\n" \
00749 " <mq:albumName>@3@</mq:albumName>\n" \
00750 " <mq:trackName>@4@</mq:trackName>\n" \
00751 " <mm:trackNum>@5@</mm:trackNum>\n" \
00752 " <mm:duration>@6@</mm:duration>\n" \
00753 "</mq:TrackInfoFromTRMId>\n"
00754
00760 #define MBQ_QuickTrackInfoFromTrackId \
00761 "<mq:QuickTrackInfoFromTrackId>\n" \
00762 " <mm:trackid>@1@</mm:trackid>\n" \
00763 " <mm:albumid>@2@</mm:albumid>\n" \
00764 "</mq:QuickTrackInfoFromTrackId>\n"
00765
00771 #define MBQ_FindArtistByName \
00772 "<mq:FindArtist>\n" \
00773 " <mq:depth>@DEPTH@</mq:depth>\n" \
00774 " <mq:artistName>@1@</mq:artistName>\n" \
00775 " <mq:maxItems>@MAX_ITEMS@</mq:maxItems>\n" \
00776 "</mq:FindArtist>\n"
00777
00783 #define MBQ_FindAlbumByName \
00784 "<mq:FindAlbum>\n" \
00785 " <mq:depth>@DEPTH@</mq:depth>\n" \
00786 " <mq:maxItems>@MAX_ITEMS@</mq:maxItems>\n" \
00787 " <mq:albumName>@1@</mq:albumName>\n" \
00788 "</mq:FindAlbum>\n"
00789
00795 #define MBQ_FindTrackByName \
00796 "<mq:FindTrack>\n" \
00797 " <mq:depth>@DEPTH@</mq:depth>\n" \
00798 " <mq:maxItems>@MAX_ITEMS@</mq:maxItems>\n" \
00799 " <mq:trackName>@1@</mq:trackName>\n" \
00800 "</mq:FindTrack>\n"
00801
00808 #define MBQ_FindDistinctTRMId \
00809 "<mq:FindDistinctTRMID>\n" \
00810 " <mq:depth>@DEPTH@</mq:depth>\n" \
00811 " <mq:artistName>@1@</mq:artistName>\n" \
00812 " <mq:trackName>@2@</mq:trackName>\n" \
00813 "</mq:FindDistinctTRMID>\n"
00814
00818 #define MBQ_GetArtistById \
00819 "http://@URL@/mm-2.1/artist/@1@/@DEPTH@"
00823 #define MBQ_GetAlbumById \
"http://@URL@/mm-2.1/album/@1@/@DEPTH@"
00827 #define MBQ_GetTrackById \
"http://@URL@/mm-2.1/track/@1@/@DEPTH@"
00831 #define MBQ_GetTrackByTRMId \
"http://@URL@/mm-2.1/trmid/@1@/@DEPTH@"
00835 #define MBQ_GetArtistRelationsById \
"http://@URL@/mm-2.1/artistrel/@1@"
00839 #define MBQ_GetAlbumRelationsById \
"http://@URL@/mm-2.1/albumrel/@1@"
00843 #define MBQ_GetTrackRelationsById \
"http://@URL@/mm-2.1/trackrel/@1@"
00847 #define MBQ_SubmitTrack \
"<mq:SubmitTrack>\n" \
00848 " <mq:artistName>@1@</mq:artistName>\n" \
00849 " <mq:albumName>@2@</mq:albumName>\n" \
00850 " <mq:trackName>@3@</mq:trackName>\n" \
00851 " <mm:trmid>@4@</mm:trmid>\n" \
00852 " <mm:trackNum>@5@</mm:trackNum>\n" \
00853 " <mm:duration>@6@</mm:duration>\n" \
00854 " <mm:issued>@7@</mm:issued>\n" \
00855 " <mm:genre>@8@</mm:genre>\n" \
00856 " <dc:description>@9@</dc:description>\n" \
00857 " <mm:link>@10@</mm:link>\n" \
00858 " <mq:sessionId>@SESSID@</mq:sessionId>\n" \
00859 " <mq:sessionKey>@SESSKEY@</mq:sessionKey>\n" \
00860 "</mq:SubmitTrack>\n"
00861
00871 #define MBQ_SubmitTrackTRMId \
00872 "<mq:SubmitTRMList>\n" \
00873 " <mm:trmidList>\n" \
00874 " <rdf:Bag>\n" \
00875 " <rdf:li>\n" \
00876 " <mq:trmTrackPair>\n" \
00877 " <mm:trackid>@1@</mm:trackid>\n" \
00878 " <mm:trmid>@2@</mm:trmid>\n" \
00879 " </mq:trmTrackPair>\n" \
00880 " </rdf:li>\n" \
00881 " </rdf:Bag>\n" \
00882 " </mm:trmidList>\n" \
00883 " <mq:sessionId>@SESSID@</mq:sessionId>\n" \
00884 " <mq:sessionKey>@SESSKEY@</mq:sessionKey>\n" \
00885 " <mq:clientVersion>@CLIENTVER@</mq:clientVersion>\n" \
00886 "</mq:SubmitTRMList>\n"
00887
00912 #define MBQ_FileInfoLookup \
00913 "<mq:FileInfoLookup>\n" \
00914 " <mm:trmid>@1@</mm:trmid>\n" \
00915 " <mq:artistName>@2@</mq:artistName>\n" \
00916 " <mq:albumName>@3@</mq:albumName>\n" \
00917 " <mq:trackName>@4@</mq:trackName>\n" \
00918 " <mm:trackNum>@5@</mm:trackNum>\n" \
00919 " <mm:duration>@6@</mm:duration>\n" \
00920 " <mq:fileName>@7@</mq:fileName>\n" \
00921 " <mm:artistid>@8@</mm:artistid>\n" \
00922 " <mm:albumid>@9@</mm:albumid>\n" \
00923 " <mm:trackid>@10@</mm:trackid>\n" \
00924 " <mq:maxItems>@MAX_ITEMS@</mq:maxItems>\n" \
00925 "</mq:FileInfoLookup>\n"
00926
00927 #endif
00928