====== dpkq examples ======
Working examples are provided with the ''dpkq'' [[http://q37.info/download/computing/tools/dpkq|package]]. Here are some of this example files (all the example files can be seen at at http://hg.savannah.gnu.org/hgweb/epeios/file/tip/tools/dpkq/Test). You will see some tags/attributes prefixed with ''xpp:'' in some files. This is because this files goes through the [[http://q37.info/computing/epeios/tools/xppq/|Epeios XML preprocessor]].
There are also project files (i. e. files with ''.xprj'' extension) you can give as argument to ''dpkq''. Records stored in the ''Elements.xml'' (more precisely in its ''element_.xml'' sub-file) data file refers directly or indirectly to records of the other data files.
The ''Viewer'' entry in the project files (defined in the ''common.xprj'' file) should actually launch a Web browser to display the output XML file after applying the XSL file on it. As there is no cross-platform standard way to do this, the ''Viewer'' tag contains a command which displays the content of the available markers. Modify this entry at your convenience, but remember that some Web browser does not perform the XSL transformation, apparently due to some security issues. In this case, you can call a script which applies explicitly the XSL transformation, and then opens the Web browser with the resulting HTML file...
===== Context =====
As a musician, I use ''dpkq'' to work my scores. For this, I created following tables :
* Composers : composers of the score,
* Instrumentations : organ (classical or Hammond) or piano (2 or 4 hands), as I play both instrument,
* Collections : some pieces are put together by their composer ; each record contains a reference to an instrumentation and generally to a composer,
* Pieces : pieces of music ; each record refers either to a collection, or an instrumentation and a composer,
* Movements : some pieces are divided in movements ; each record refers to a piece,
* Voices : generally for four hands piano piece (//primo// voice or //secundo// voice) ; each records refers to a movement or a piece,
* Element : scores ; each record refers either to a voice, a movement or a piece,
* Segments : segments of elements, with indication or starting and ending measure ; each record refers to an element.
In the examples, for simplification purpose, the //Voices// table and //Segments// table are not present. Also, the final result show only some formatted line of text per record, instead of showing a scan of page(s) of the score corresponding to the measures of segment as in my use of ''dpkq''.
===== Files =====
==== Miscellaneous files ====
echo Rcd: $RI$, '$RL$'; Tbl: $TI$, '$TL$'; D: '$Data$'; O: '$Output$'; XSL: '$XSL$'
==== Composers-related files ====
Bach
Johann Christian
Bach
Johann Sebastian
Beethoven
Ludwig Van
Brahms
Johannes
Chopin
Frédéric
Debussy
Claude
Fauré
Gabriel
Gershwin
George
Granados
Enrique
Grieg
Edvard
Liszt
Franz
Mendelssohn Bartholdy
Felix
Mozart
Wolfgang Amadeus
Perterson
Oscar
Prokofiev
Sergueï
Rachmaninov
Sergueï
Ravel
Maurice
Schubert
Franz
Schumann
Robert
Simon
Claude
Tchaïkovski
Piotr Ilitch
Widor
Charles-Marie
Composer
s
#
,
#
[
]
Composers.xml
Composers.xsl
.Composers.xml
600
==== Instrumentations-related files ====
Piano two hands
Piano four hands
Classical organ
Hammond organ
Instrumentation
s
#
#
(
)
Instrumentations.xml
Instrumentations.xsl
.Instrumentations.xml
600
==== Collections-related files ====
Children's Corner
3 Romances sans Paroles
17
7 Fantaisies
116
Les Saisons
37a
Préludes - Premier livre
Pièces lyriques
12
2 arabesques
66
Albumblätter
124
24 préludes
28
12 danses espagnoles
Valses sentimentales
50
779
Consolations
172
4 Mazurkas
17
Liebesträume
541
Faschingsschwank aus Wien
26
Best of piano bar
Liebeslieder Waltzes
52a
Sonates pour clarinette et piano
120
Home Organist Library Volume 7 - Jazz Pieces
Big Band Specials for Organ
Ma mère l'Oye
Jazz exercises
2 valses
69
Six pieces for Piano
118
Collection
s
#
:
#
[
]
:
(
)
,
op.
(
)
Collections.xml
Collections.xsl
.Collections.xml
600