Visualizzazione dei risultati da 1 a 7 su 7

Discussione: dubbio su figli e dtd

  1. #1
    Utente di HTML.it L'avatar di zoom
    Registrato dal
    Dec 2001
    Messaggi
    1,737

    dubbio su figli e dtd

    sto creando una dtd per un xml di esportazione dati.
    l'xml è abbastanza complesso, perchè esporta i dati di 3 tabelle collegate tra loro.
    Ora ho un problema di validazione.
    La struttura è più o meno simile a questa:

    <root>
    <elemento>
    <livello></livello>
    <id></id>
    <titolo></titolo>
    <testo></testo>
    <scheda>
    <livello></livello>
    <id></id>
    <content></content>
    </scheda>
    </elemento>
    </root>

    il problema è che dopo che ho definito le caratteristiche del padre "scheda" e passo a definire i suoi figli mi dice che livello è duplicato.
    sbaglio qualcosa oppure nemmeno i figli possono avere il nome del campo uguale? :master:
    perchè altrimenti devo fare un bel po' di modifiche alle query :master:
    Chicco Ravaglia per sempre con noi!

  2. #2
    Che senso ha avere due etichette (livello e id) univoche uguali nella struttura di un elemento?

  3. #3
    Utente di HTML.it L'avatar di zoom
    Registrato dal
    Dec 2001
    Messaggi
    1,737
    ehm... non è venuto benissimo l'esempio.

    livello e id sono presenti in elemento.
    elemento contiene scheda
    scheda contiene livello e id, ovviamente diversi da quelli esterni...

    sarebbero differenti e arrivano proprio da tabella diversa...
    quindi, quello che mi chiedo è: è possibile come cosa e quindi sto sbagliando la dtd oppure non ha senso? :master:
    Chicco Ravaglia per sempre con noi!

  4. #4
    In teoria dovresti specificare diversi namespace per i tag di doppio significato. Oppure il doppio significato potrebbe essere già dato dal genitore.

    Non capisco bene in cosa consista il tuo problema.

  5. #5
    Utente di HTML.it L'avatar di zoom
    Registrato dal
    Dec 2001
    Messaggi
    1,737
    vabbè, il problema l'ho risolto dando ai campi dei figli nomi diversi

    ora però ho quest'altro problema.

    elemento root ha n figli compagnia.
    elemento compagnia ha un figlio UUID e uno produzioni
    elemento produzioni ha n figli produzione.

    la dtd l'ho fatta così.
    <!DOCTYPE root [
    <!ELEMENT root (compagnia+)>
    <!ELEMENT compagnia (uuid?, produzioni*)>
    <!ELEMENT uuid (#PCDATA)>
    <!ELEMENT produzioni (produzione*)>
    <!ELEMENT produzione (id?)>
    <!ELEMENT id (#PCDATA)>
    ]>

    però il validatore mi dice

    error (680): ambiguous content model: produzione

    la riga è questa:
    <!ELEMENT produzione (id?)>

    cosa c'è di sbagliato?
    non è giusta come definizione?
    Chicco Ravaglia per sempre con noi!

  6. #6
    Forse ti basta definire prima ID e poi PRODUZIONE. Prova e facci sapè.

  7. #7
    Utente di HTML.it L'avatar di zoom
    Registrato dal
    Dec 2001
    Messaggi
    1,737
    no sono un fagiano strafuso...
    nella query per la costruzione dell'xml e della dtd avevo erroneamente inserito due volte produzione.
    quindi faceva casino perchè ne scriveva veramente due...
    sono 3 giorni che sto lavorando senza sosta a sta cosa e non sto veramente più capendo niente....
    scusate
    Chicco Ravaglia per sempre con noi!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.