Skip to topic | Skip to bottom
Home

TechWeb10
TechWeb10.DomandeRisposter1.68 - 22 Mar 2011 - 16:00 - RuggeroGiordanotopic end

Start of topic | Skip to actions

Domande e Risposte

Usate senza problema questa pagina per discussioni, domande, proposte.

  • Set ALLOWTOPICVIEW =
  • Set ALLOWTOPICCHANGE =

Tipo di ritorno Servizi Server Side

Domanda

Buonasera! A nome del Gruppo 23 (6 Crediti) volevo chiedere: il tipo di ritorno "stringa" è l'unico tipo ammesso da specifiche come tipo di ritorno da una chiamata ad un servizio asincrono server side? (in stile GWT) O è possibile mantenendosi conformi alle specifiche, ritornare vettori o liste di Stringhe?

Inoltre volevo sapere se ogni modulo server side deve ritornare solo dopo aver processato tramite xslt o è possibile per strutture semplici ritornare direttamente html senza processo xslt (ad esempio per l elenco documenti disponibili) Grazie

Risposta

Attenzione...

Leggendo le specifiche del progetto a pagina (6), dice testuali parole:

La parte client-side è in Javascript/Ajax utilizzando un framework a piacere. Noi consigliamo o GWT o ExtJs?.

La parte server-side è in un linguaggio come PHP o Perl o Java. Noi consigliamo Java servlet su Tomcat

Query Xpath specificate tramite file di configurazione?

Domanda

Buonasera! Premetto che faccio parte di un gruppo che lavora per i 6 crediti. Abbiamo visto che dobbiamo fare fogli XSLT per le DTD forniteci e non per documenti TEI generici; il nostro dubbio è che anche le query Xpath che facciamo sui file XML per andare a selezionare di volta in volta i metadati, il testo, l'apparato, etc. dipendono dalla struttura dei documenti TEI dettate dalle specifiche DTD forniteci, e quindi poterebbero non funzionare su altri file XML con strutture diverse.

Dobbiamo fare quindi in modo di specificare le DTD supportate e le relative query Xpath per ogni specifica DTD per mezzo del file di configurazione? O possiamo supporre che la struttura dei file TEI sia in linea di massima simile e che quindi le query Xpath vadano a buon fine per un generico documento TEI?

Grazie in anticipo per l'aiuto, Gruppo ltw22

Risposta

Sì, potete assumere che i DTD in questione siano quelli appropriati per la collezione di documenti da voi gestita.

Saluti

FV

Servizio stemma codicum e i metadati mancanti

Domanda

Il servizio "Visualizzazione dello stemma codicum" ha come input uno o piu' documenti tei che contengano informazioni sullo stemma codicum nei metadati. Cercando su tei-c scopro che i metadati relativi allo stemma codicum sono 3: graph, node, arc. Nessuno dei documenti forniti ha questi metadati. Sono io che interpreto male le specifiche sul servizio o effettivamente i testi forniti non sono appropriati? Se sono io che interpreto male, come devo interpretare quello che c'e' scritto?

Risposta

Questa è la risposta del Prof. Vitali:

nelle vie brevi, mi sono accordato con la dott.ssa Tomasi per la seguente soluzione: nella lista dei testimoni si aggiunga un attributo "der" che abbia come valore l'id di un altro testimone, A CUI SI ASSOCI L'ID DEL TESTIMONE DA CUI SI RITIENE CHE QUESTO DERIVI. Si aggiungano anche elementi witness con missing="true" per indicare testimoni che si ritengano essere esistiti ma di cui NON si hanno tracce. QUESTO PERMETTE DI VISUALIZZARE L'ALBERO DELLO STEMMA CODICUM ESPRESSO DALLE DERIVAZIONI ESPLICITE.

Si estendano appropriatamente i DTD e si popolino poi i documento con queste due nuove aggiunte con i seguenti criteri:

  • Non ci siano cicli (cioè non ci sia una catena A der B, B der C, ..., K der A).
  • I testimoni mancanti non siano citati nel testo vero e proprio.

Questo dovrebbe bastare per visualizzare lo stemma codicum.

Domanda

Dalla risposta del prof Vitali si capisce come trattare i file "parallel segmentation" ma non si capisce come trattare i documenti tipo "Paul Newman" dove al contrario non esiste un attributo witness al quale aggiungere l'attributo der, e non esiste un attributo id da usare come valore per l'attributo der. Anche la creazione di witness con attributo missing="true" non puo' essere fatta in file senza tale elemento. Come ci si comporta in questo caso?

Risposta

waiting....

Domanda

Dato che da specifiche il servizio "ha come input uno o piu' documenti tei" devo assumere che questi documenti siano in relazione tra loro? Ad esempio tutti i file "Una donna alta*" creano un unico stemma codicum, ma come comportarci se i file dati in input non sono in relazione tra loro? Dobbiamo creare stemma codicum separati o tornare un errore?

Risposta

waiting....

Come interpretare il servizio obbligatorio?

Domanda

Non riusciamo a capire come interpretare il servizio obbligatorio (diff tra 2 TEI)

Risposta

Da quanto detto dal Prof. Vitali a lezione, la strada più semplice è questa:
  • Trasformare i due documenti in Earmark
  • Fare un diff tra i documenti (in particolare è fondamentale il diff sul testo (più che sugli earmark element)
  • Esprimere queste differenze con un'ontologia (file RDF)
  • Visualizzare in qualche modo queste differenze nel client (HTML)

Errore nel file bruni_guerrapunica.xml

Domanda

quando provo ad aprire il file bruni_guerrapunica.xml mi da quest erroe:

Errore interpretazione XML: entità non definita Indirizzo: /PATH.../bruni_guerrapunica.xml Linea numero 113, colonna 53:to et &dTonda;difficultaà &iSegnoSopra;intro&dTonda;da&ctLeg;cto certo ra&gStondata;gionamento

che devo fare?


Risposta

E' stata data risposta nel topic News ed Annunci da Di Iorio.

Altra risposta

Per poter visualizzare quei caratteri serve un'estensione di UNICODE per vedere quei glifi. Noi abbiamo scelto un font indicato dalla Medieval Unicode Font Initiative. http://www.mufi.info/fonts/ In particolare abbiamo scelto Andron Scriptor Web, che fino a poco tempo fa era l'unico compatibile con la versione 3.0 di MUFI

Domanda

Ma una volta installato il font che bisogna fare per farlo riconoscere?

Utilizzo dei widget dei framework

Domanda

Durante il working group è sorto un dubbio comune a vari gruppi: i framework che ci sono stati segnalati (Ext JS e GWT) mettono a disposizione vari widget (molto interessanti) che, al momento della creazione, hanno bisogno di avere in input oggetti JSON oppure alberi XML. Alcuni di questi widget sembrano perfetti per rappresentare la nostra lista di documenti TEI, quindi attualmente la procedura che viene eseguita da alcuni gruppi è questa:
  • Viene chiamato il modulo server-side che si occupa della creazione della lista
  • Questo modulo utilizzando DOM (o SAX) crea l'albero XML da dare in input al costruttore del widget
  • Viene restituito come output il suddetto albero XML

Il dubbio che ci è sorto quindi è il seguente: anche per questa parte dell'applicazione siamo obbligati a restituire HTML previa trasformazione con XSLT, oppure possiamo restituire eccezionalmente un albero XML costruito con DOM o SAX? Oppure come soluzione intermedia, possiamo restituire XML previa trasformazione con XSLT?

Risposta

Il Prof. Fabio Vitali ha detto che per qualsiasi modulo, il server deve restituire HTML o XHTML mediante trasformazione con un foglio di stile XSLT. Nello specifico se il client ha bisogno di una particolare struttura XML o JSON per utilizzare un particolare widget dovrà parsare ciò che ha ricevuto dal server e trasformarlo in base alle proprie esigenze.

Registrazione provider

Domanda

Volevo chiedere se è presente una pagina specifica per la registrazione di un provider SP o se dovremmo aggiungere una tabella, per esempio, nella nostra pagina del gruppo?

Risposta

Al working group è stata data risposta che la pagina dovrebbe esser creata dal professore

Configurazione di eclipse per utilizzare tomcat (macchine laboratorio)

Domanda

Perdonate la mia ignoranza, oggi abbiamo provato a configurare eclipse per utilizzare tomcat, sulle macchine del laboratorio. Ad un certo punto ci e' stato chiesto di inserire la "tomcat installation directory", e a questo punto sorge la domanda... dov'e' tomcat? Abbiamo provato a cercare la directory di installazione sulle macchine del laboratorio ma senza alcun risultato.

Risposta

Come scritto sulle slide "Progettazione server-side" (formato 4P dalla pagina 12, terza slide) devi andare a scaricare il binario dal sito http://tomcat.apache.org estrarlo sulla tua home. Poi da eclipse selezionare l'eseguibile che stara' in ~/dirEstratta/bin/ . (GruppoLTW01)

Risposta a domanda mai fatta sulla correttezza dei file

Domanda

Ma il file carmina.xml mi dà migliaia di errori di validazione. Come posso fare?

Risposta

Ehm. Vero. Ho messo oggi (27 aprile 2010) a disposizione una versione riveduta e corretta e si spera privi di errori di validazione. Bisogna riscaricare tutto il pacchetto Esami.zip.

Domanda per licenza Oxygen-Eclipse

Domanda

Ieri per la prima volta abbiamo visto col prof. Barabucci, l'ambiente di lavoro Oxygen su piattaforma Eclipse. Oggi, riguardando gli esercizi svolti, ho provato ad installare i pacchetti di Oxygen anche sulla mia macchina, ma all'apertura di un file XSD mi viene proposta una finestra per ottenere una chiave per la licenza. Dato che la versione trial dura soltanto 30 giorni, volevo sapere se in facoltà era disponibile una licenza per gli studenti e, in caso positivo, come ottenerla.

Risposta

Io compro ogni anno la mia licenza di Oxygen con i miei soldi personali. Non esistono nel budget di dipartimento fondi per l'acquisto di questo tipo di software su cui io sia riuscito a mettere le mani. Mi spiace.

Domanda server per il progetto

Domanda

Il progetto deve essere testato in un server specifico o può essere svolto usando la propria macchina come server?

Risposta

Nel server locale della tua macchina

Domanda documenti TEI

Domanda

I documenti TEI dove li possiamo trovare ? sono quelli degli esempi sulla pagina delle slide oppure dobbiamo aspettare che ci vengano forniti?

Risposta

Si sono quelli negli esempi.

Domanda su TEI e DTD

Domanda

Studiando le slide e cercando in rete non ci è chiara questa cosa: quando ci viene fornito un documento con un dtd associato, p.e. generato con pizzachef, tale dtd sembra essere non solo un sottoinsieme, bensì un'estesione di TEI, cioè con tag che in TEI non sono validi. Sbaglio? A questo punto, se è così, mi chiedo: come possiamo realizzare dei fogli XSLT generali, se ogni documento ha il suo dtd con tag "personalizzati?"

Risposta

Pizza Chef permette di definire sottoinsiemi di TEI per usi specifici, e, facoltativamente di estenderlo con elementi e attributi nuovi, ridefinizioni di elementi e attributi esistenti, ecc.

Però vorrei sottolineare che:

  1. mentre le restrizioni sono frequentissime, le estensioni sono inconsuete e dovute ad usi molto specialistici del linguaggio, e secondo me non abbiamo di questi casi nei documenti che abbiamo presentato
  2. tipicamente, tali estensioni hanno un impatto su tutta la catena produttiva dei documenti, inclusi i fogli di stile XSLT (cioè ovviamente se uno fa delle estensioni le fa in maniera tale che possano essere utilizzate dai fogli di stile che poi andrà ad usare, e non in maniera arbitraria, isolata e non documentata)
  3. L'idea di fare, per il corso di TW, un foglio di stile per tutto il linguaggio TEI è molto ambiziosa (TEI è IMMENSO), e molto più appropriato mi sembra fare il foglio di stile relativo agli specifici DTD che vi sono stati consegnati.
  4. In ogni caso, XSLT fornisce gli strumenti per trattare vocabolari aperti, creando template di default per tutti gli elementi per cui non esiste una regola più specifica, creando template di debugging che visualizzino gli elementi e gli attributi per cui non è ancora stata inserita una regola specifica, e in generale ignorando elementi ed attributi per cui non esistono regole.

In definitiva, avete ampia possibilità di scelta relativamente al problema posto.

FV

Problemi di validazione

Domanda

Guardando i documenti, ottengo i seguenti problemi di validazione. Succede anche a voi? Come dobbiamo comportarci?

Problemi di validazione:

/3edizioni-fenomeniManoscritto-immagine
=======================================
-bruni_guerrapunica.xml
-Marco_entity.txt
-tei-msMarco.dtd


Per validare il documento xml con l'annessa dtd ho dovuto
1. incollare il contenuto di Marco_entity.txt al posto della riga 18 (<!ENTITY % Marco_entity SYSTEM "Marco_entity.txt">) di tei-msMarco.dtd
2. rimuovere la riga 4 e la riga 112 del file .xml (sembrano esserci problemi con la dichiarazione JPEG e l'inclusione dell'immagine)

Queste modifiche mi permettono di validare il documento (su oxygen) ma comunque se provo a visualizzarlo in un browser ottengo errori quali

error on line 113 at column 52: Entity 'dTonda' not defined
... e analoghi

Inoltre ottengo, in Oxygen, i seguenti warning sul file .dtd

SystemID: tei-msMarco.dtd
Nome motore: Xerces
Severità: warning
Descrizione: The content model of element "ab" refers to the undeclared element "_DUMMY_model.gLike".
 8790:1
Lunghezza: 1

e analoghi.


/location-referenced
====================
- carmina.xml
- fraTei.dtd

Ottengo numerosissimi errori di validazione nel documento .xml, tra cui

Descrizione: Document root element "Tei.2", must match DOCTYPE root "TEI".
Descrizione: Element type "listWit" must be declared.
Descrizione: Unexpected element "listWit". The content of the parent element type must match "(p|bibl|biblFull|biblStruct|listBibl|scriptStmt|recordingStmt)+".
Descrizione: Attribute "sigil" is required and must be specified for element type "witness".
Descrizione: Attribute "xml:id" must be declared for element type "witness".
Descrizione: Element type "i" must be declared.
Descrizione: Element type "sup" must be declared.
Descrizione: Element type "br" must be declared.
....e molti altri problemi su elementi e attributi



parallel segmentation
================

Quando cerco di validare faith.xml ottengo i seguenti errori (sul .dtd)

SystemID: teixtstc.dtd
Descrizione: The notation "JPEG" must be declared when referenced in the unparsed entity declaration for "p1891".
Descrizione: The notation "JPEG" must be declared when referenced in the unparsed entity declaration for "ll227".
Descrizione: The notation "JPEG" must be declared when referenced in the unparsed entity declaration for "cp32".

Risposta

E' possibile correggere questo errore modificandoo il file faith.xml come segue:
  <!ENTITY p1891 SYSTEM "images/p1891.jpg" NDATA jpg>
  <!ENTITY ll227 SYSTEM "images/ll227.jpg" NDATA jpg>
  <!ENTITY cp32 SYSTEM "images/cp32.jpg" NDATA jpg>

ed aggiungendo la seguente riga al termine del file teixtstc.dtd:

  <!NOTATION jpg SYSTEM "image/gif">

Nello stesso modo e' possibile correggere il medesimo errore di validazione del file bruni_guerrapunica.xml. (GruppoLTW01)

Catalogo: DTD vs. XMLSchema vs. RNG (12 crediti)

Domanda

..forse piu` una domanda da presentare in sede di WG.. visto che una parte del catalogo sara` comune a tutti i gruppi di progetto (12 crediti), trovate che a livello di coordinazione tra gruppi possa essere utile accordarsi su quale linguaggio adottare per scrivere il documento per la validazione del catalogo? Io ad esempio avrei proposto al mio gruppo di progetto di usare XMLSchema, escluderei infatti DTD perche` -ad esempio- non sarei in grado di esplicitare che il numero minimo di servizi sia 2... Voi che ne pensate? (GruppoLTW01)

Risposta

Oggi è stato realizzato con XMLSchema lo schema generale del catalogo

Catalogo: creare file XMLSchema su NetBeans?

Domanda

Non riesco a creare un documento XMLSchema, come fare?

Risposta

http://forums.netbeans.org/topic18789.html&highlight= Plugins->Settings->Add Name: NetBeans? Dev URL: http://updates.netbeans.org/netbeans/updates/6.8/uc/m1/dev/catalog.xml.gz torna sul tab "Available plugins", Installa il plugin "XML Schema and WSDL" (GruppoLTW01)

Catalogo: Problemi con il parsing dei file TEI

Domanda

Anche io ho molti problemi di parsing. Quando vado a caricare bruniguerrapunica.xml ottengo un elenco di errori del tipo
Warning: DOMDocument::load() [domdocument.load]: Entity 'dTonda' not defined ecc....
Warning: DOMDocument::load() [domdocument.load]: Entity 'iSegnoSopra' not defined in ...
Warning: DOMDocument::load() [domdocument.load]: Entity 'dTonda' not defined in ...
E anche il file carmina.xml mi da dei problemi
Warning: DOMDocument::load() [domdocument.load]: ID C5-27 already defined...
Warning: DOMDocument::load() [domdocument.load]: ID C9-3.1 already defined...
Ho provato ad apportare i cambiamenti di cui si parlava qualche domanda fà, ma niente, sembra che il file Dtd non sia considerato affatto.

Stiamo utilizzando php e per importare il documento usiamo:
$xmlDoc = new DOMDocument();
$xmlDoc->load("carmina.xml");

Parser Java: usare Sax o Dom?

Domanda

Considerando che i documenti TEI non dovranno essere modificati, per chi sceglie di implementare il server con le java servlet quale parser gli conviene utilizzare, SAX O DOM?

Risposta

Sono tutti documenti molto brevi. Non c'è veramente necessità di subire le restrizioni e i vincoli di un parser SAX. In secondo luogo, se usate XPath il DOM è quasi indispensabile.

Framework Ajax+JS: prototype basta?

Domanda

Stavamo pensando di usare la libreria prototype per implementare la parte client, per i nostri scopi può bastare oppure potremmo avere bisogno di un framework più potente?

Risposta

A mio parere prototype non ha un numero sufficientemente alto di widget per realizzare interfacce sufficientemente interessanti, e quindi lascia al programmatore (voi) molto lavoro. Però siete liberi di scegliere il framework che preferite.

Servizio Obbligatorio 12 crediti: come interpretare il diff?

Domanda

Vorrei un chiarimento sul servizio obbligatorio per il progetto di TW da 12 crediti. Non mi è chiaro cosa si intenda per differenze tra i file TEI:
  • deve essere solo un diff testuale? Cioè devo considerare solo le differenze tra i text-node? oppure deve essere un diff anche a livello di xml? Del tipo: questo nodo ha 2 figli qui e là ne ha 3?
  • nel caso di più di due documenti, come ci comportiamo per descrivere, ad esempio, una sostituzione?

Risposta

  • Lo scopo dell'esercizio è quello di evidenziare le differenze tra i manoscritti: nell'ottica FRBR, le differenze a livello di expression. Queste differenze sono la registrazione dell'esistenza di problemi di copiatura da parte dei copisti originali. Le differenze a livello di markup sono differenze tra specifici documenti elettronici: nell'ottica FRBR, sono differenze a livello di manifestation che sono la registrazione di differenze di opinione o errori da parte dei recentissimi marcatori in XML. Quest'ultima differenza, sebbene potenzialmente utile, è sicuramente molto MENO interessante della differenza a livello di manoscritti.
  • le differenze sono sempre tra una coppia di documenti. E' la costruzione di un documento multiversione che, dovendo considerare diff multipli, può aver bisogno di usarne tre o più. Ma questo è un modulo diverso.

FV

Java+GWT Servelet che non possono leggere il filesystem?

Domanda

Ciao a tutti, abbiamo recentemente scoperto che una volta caricato online il nostro progetto (su golem, ma anche altri server) non ci è possibile leggere i file e le cartelle apparentemente a causa di un problema di permessi. Le path sono corrette infatti la servlet cerca di aprire il file ma riceve un errore con questa motivazione:

Service method 'public abstract void package.Class.method()' threw an unexpected exception: java.security.AccessControlException: access denied (java.io.FilePermission /[a_path]/xml read)

Qualcuno sa come risolvere questo inconveniente?

Grazie e ciao,

Marlon

Risposta

Mi rispondo da solo nel caso qualcuno avesse questo problema.
Il problema è settare i permessi giusti cul server Tomcat, cosa non possibile se non si ha accesso al file catalina.policy, ovvero se non si usa un server proprio. Noi abbiamo risolto chiedendo un ampliamento dello spazio di una nostra home ed utilizzando questa per "installarvici" tomcat lanciato poi da una macchina del lab. Questo avrà indirizzo http://nomeMacchinaDelLab.cs.unibo.it:8080/nomeWebApp. Se avete dubbi riguardo a questo contattatemi.
MarlonSaglia


-- MarlonSaglia - 28 Jul 2010
to top


You are here: TechWeb10 > DomandeRisposte

to top

Copyright © Fabio Vitali 2017 Last update of DomandeRisposte on 22 Mar 2011 - 16:00 by RuggeroGiordano