Il cliente di Altova, Recordare, sviluppa una soluzione basata su MusicXML

Recordare® È un'azienda tecnologica specializzata nella fornitura di software e servizi per la comunità musicale. I loro prodotti principali, la famiglia di plugin Dolet®, sono plugin indipendenti dalla piattaforma, progettati per i più diffusi software di notazione musicale, che facilitano lo scambio e l'interazione dei file di spartiti musicali grazie all'utilizzo del formato MusicXML. Dolet funge da traduttore di alta qualità tra il formato dati MusicXML e altre applicazioni, consentendo agli utenti di lavorare con questi file su qualsiasi sistema, comprese le applicazioni leader del settore per la notazione musicale e la composizione, come Finale® e Sibelius®. L'elenco delle aziende che utilizzano MusicXML include anche software per la scansione ottica, come SharpEye o capella-scan, sequencer musicali come Cubase, e molti altri. Dolet migliora il supporto per il formato MusicXML in tutti questi programmi, promuovendo l'interoperabilità e la condivisione di spartiti musicali. Per la creazione dei plugin Dolet, Recordare ha utilizzato l'editor XML XMLSpy di Altova per modificare e testare gli schemi XML e i DTD di MusicXML necessari, e lo strumento di confronto e unione DiffDog per i test di regressione.

La sfida

Tradizionalmente, lo scambio di informazioni musicali tra applicazioni veniva realizzato utilizzando il formato di file MIDI (Musical Instrument Digital Interface), un protocollo di trasferimento dati nato nel campo della musica elettronica. MIDI non è un formato ideale per la trasmissione di partiture musicali, poiché non tiene conto della vasta gamma di notazioni (ad esempio, pause, ripetizioni, dinamiche, testi, legature, indicazioni di tempo, ecc.) che trasmettono gran parte del significato. MusicXML è un formato di file aperto, basato su XML, specificamente creato per contenere dati di notazione musicale o partiture digitali, ed è stato sviluppato a partire da formati precedenti, MuseData e Humdrum.

XML conferisce a MusicXML la potenza e la flessibilità necessarie per essere facilmente accessibile, analizzata, visualizzata e, in generale, manipolata da una vasta gamma di strumenti automatizzati, e la sua accettazione come standard la rende un formato ideale per la composizione musicale utilizzando la tecnologia informatica. Dal suo rilascio iniziale da parte di Recordare nel gennaio del 2004 (la versione 2.0 è stata rilasciata nel giugno del 2007), MusicXML ha guadagnato riconoscimento nel settore della notazione musicale, con il supporto di oltre 100 prodotti leader, ed è riconosciuto come lo standard XML di fatto per lo scambio di dati musicali. Questi prodotti non avrebbero adottato MusicXML se non fosse stato possibile utilizzarlo per scambiare dati con applicazioni leader del settore come Finale e Sibelius. Sviluppando plugin avanzati per suite di notazione musicale popolari, Recordare sarebbe in grado di offrire ai propri clienti tutti i vantaggi che XML può apportare in termini di scambio dati e standardizzazione.

La soluzione

I plugin Dolet 4, basati su MusicXML, per Finale e Sibelius, offrono una rappresentazione più precisa e utilizzabile della musica scritta rispetto alla semplice traduzione in formato MIDI standard. Oltre a offrire il supporto nativo per MusicXML, i plugin Dolet 4 per Finale e Dolet 4 per Sibelius migliorano le funzionalità di questi programmi aggiungendo caratteristiche avanzate come:

  • Traduzione in blocco
  • Uno scambio di dati più preciso e affidabile
  • Maggiore controllo sulla formattazione
  • Supporto per lo schema XML di MusicXML (oltre al DTD)

Nella creazione dei plugin, Recordare ha dovuto rispettare requisiti specifici imposti dalle applicazioni Sibelius e Finale. Il plugin per Sibelius è stato programmato in ManuScript ed è uno dei plugin più grandi mai scritti in quel linguaggio. Per quanto riguarda Finale, invece, i plugin devono avere un nucleo in C++, e Recordare ha implementato questa esigenza, aggiungendo la logica MusicXML in Java e un livello JNI per garantire la comunicazione bidirezionale tra Java e C++.

I plugin Dolet di Recordare sono ora elementi fondamentali del processo di preparazione musicale per molte colonne sonore di film e programmi televisivi, nonché per le nuove pubblicazioni musicali. Gli errori di traduzione devono essere corretti tramite aggiornamenti di manutenzione, garantendo al contempo che non vengano introdotti nuovi errori in questi complessi plugin di traduzione. I test di regressione del file MusicXML prodotto dai plugin Dolet sono quindi una parte essenziale del processo di controllo qualità di Recordare.

Recordare ha utilizzato DiffDog di Altova nello sviluppo dei plugin Dolet. XMLSpy è stato utilizzato per i test e modificare i loro DTD (Document Type Definitions) e gli schemi XML, e DiffDog per eseguire test di regressione sui file MusicXML prodotti dal software. Recordare dispone di diverse suite di test di regressione che coprono un'ampia gamma di repertori musicali, dal barocco all'hip-hop. DiffDog consente di confrontare facilmente i risultati di esecuzioni multiple di queste suite di test, offrendo la possibilità di ignorare le differenze negli elementi di metadati XML, come la versione del software e la data di creazione del file XML, che cambiano sempre tra i diversi test.

Recordare ha utilizzato XMLSpy di Altova Editor XML per modificare i DTD e gli schemi XML di MusicXML, a partire dall'utilizzo di XMLSpy 3.5 (rilasciato nel 2001) per creare le prime versioni alpha e beta dei DTD di MusicXML. La versione 2.0 di MusicXML ha introdotto una versione compressa in formato ZIP del formato, simile a quella utilizzata in altre applicazioni XML come Open Office e Open XML. La versione Enterprise Edition di XMLSpy 2008 offre un supporto completo per file XML compressi Ha reso più semplice testare questa nuova funzionalità insieme al plugin Dolet per Finale.

Il supporto di XMLSpy per XQuery ha contribuito anche agli sforzi di Recordare nel campo dei test di regressione. In risposta a una richiesta di un cliente, Recordare ora esporta le istruzioni di elaborazione XML dal plugin Dolet per Sibelius quando rileva una caratteristica musicale che non riesce a tradurre correttamente. Un semplice processo di esecuzione di XQuery per cercare tutte le istruzioni di elaborazione nei file XML di una determinata cartella consente a Recordare di verificare la presenza di queste limitazioni all'interno di ogni suite di test, e quindi confrontare i file XML risultanti utilizzando DiffDog tra le diverse esecuzioni della suite di test.

Recentemente, la crescente domanda dei clienti ha spinto Recordare a sviluppare una versione XSD del formato MusicXML. XMLSpy è stato utilizzato per sviluppare e testare gli schemi. Grazie alle funzionalità di XMLSpy, è stato possibile testare la validazione degli schemi, le limitazioni e le estensioni degli schemi, e generare automaticamente la documentazione degli schemi.

I risultati

I plugin Dolet sono estensioni per software industriali standard che sfruttano le funzionalità integrate del formato MusicXML per rendere le partiture musicali realmente intercambiabili tra sistemi e strumenti diversi. Questi plugin sono in grado di generare una notazione musicale precisa e significativa, basata sulle potenti specifiche di MusicXML. I principali Modifica degli schemi XML le funzionalità di XMLSpy e la sua robustezza Differenze tra file XML e differenze tra directory Il supporto fornito da DiffDog ha permesso a Recordare di sviluppare e perfezionare gli schemi MusicXML e di eseguire test di regressione sui plugin Dolet. L'elevata qualità degli schemi e del software risultante ha reso MusicXML e i plugin Dolet elementi fondamentali del toolkit per compositori, arrangiatori, editori, trascrittori e grafici in tutto il settore, ovunque si utilizzi la musica stampata.

Provate XMLSpy, DiffDog e gli altri strumenti di Altova MissionKit grazie a una prova gratuita di 30 giorni.