Errore parser XML

di il
3 risposte

Errore parser XML

Ciao ragazzi, stavo provando un semplice codice XML online ma il parser mi da un errore che non riesco a capire sull'elemento radice Libro, il documento mi sembra corretto, cosa sto sbagliano?

<?xml version = ”1.0” ?>
<DOCTYPE Libro[
<!ELEMENT Libro(autore+, titolo, isbn, introduzione?, Capitoli)>
<!ELEMENT autore(#PCDATA)>
<!ELEMENT titolo(#PCDATA)>
<!ELEMENT isbn(#PCDATA)>
<!ELEMENT introduzione(#PCDATA)>
<!ELEMENT Capitoli(Capitolo+)>
<!ELEMENT Capitolo(numero, titolo, testo)>
<!ELEMENT numero(#PCDATA)>
<!ELEMENT testo( #PCDATA)>
]>
<Libro>
	<autore>Massimo Canducci</autore>
	<titolo>PHP 5 pocket</titolo>
	<isbn>88-503-2194-5</isbn>
	<introduzione>L’introduzione del libro</introduzione>
	<Capitoli>
		<Capitolo>
			<numero>1</numero>
			<titolo>Uno sguardo a php5</titolo>
			<testo>testo del capitolo..</testo>
		</Capitolo>
         <Capitolo>
			<numero>2</numero>
			<titolo>I mattoni del linguaggio</titolo>
			<testo>testo del capitolo..</testo>
		</Capitolo>
        <Capitolo>
			<numero>3</numero>
			<titolo>Funzioni</titolo>
			<testo>testo del capitolo..</testo>
		</Capitolo>
        <Capitolo>
			<numero>4</numero>
			<titolo>Array</titolo>
			<testo>testo del capitolo..</testo>
		</Capitolo>
    </Capitoli>
</Libro>

Mi da un errore di invalid attribute element sull'elemento radice Libro

3 Risposte

  • Re: Errore parser XML

    30/03/2023 - Domeniks88 ha scritto:


    <DOCTYPE Libro[

    La scrittura corretta credo sia <!DOCTYPE… (manca il “!”).

  • Re: Errore parser XML

    Esatto grazie mille, in realtà ci sono anche altri errori nel codice, perciò non me lo parsava, grazie mille

  • Re: Errore parser XML

    Scusate ma ho un nuovo problemino, praticamente stavo provando le entità, ho creato un file .xml ed un file .dtd dove definisco le regole e le entità. Se provo a definire delle entità nel file esterno ho un errore sul browser mentre se le definisco nello stesso file il browser legge senza problemi. Dove posso sbagliare. 

    Questo è il dtd esterno dove ho dichiarato l'entità isbn, il parser mi da la convalida ok ma il browser mi da proprio l'errore sull'entità non dichiarata

    <!ELEMENT Libro (autore+, titolo, isbn, introduzione?, Capitoli)>
    <!ELEMENT autore (#PCDATA)>
    <!ELEMENT titolo (#PCDATA)>
    <!ELEMENT isbn (#PCDATA)>
    <!ELEMENT introduzione (#PCDATA)>
    <!ELEMENT Capitoli (Capitolo+)>
    <!ELEMENT Capitolo (numero, titolo, testo)>
    <!ELEMENT numero (#PCDATA)>
    <!ELEMENT testo (#PCDATA)>
    <!ENTITY isbn "88-503-2159-5">

    Mentre questo è l'xml

    <?xml version = "1.0" ?>
    <!DOCTYPE Libro SYSTEM "prova.dtd">
    <Libro>
    	<autore>Massimo Canducci</autore>
    	<titolo>PHP 5 pocket</titolo>
    	<isbn>&isbn;</isbn>
    	<introduzione>Lintroduzione del libro</introduzione>
    	<Capitoli>
    		<Capitolo>
    			<numero>1</numero>
    			<titolo>Uno sguardo a php5</titolo>
    			<testo>testo del capitolo..</testo>
    		</Capitolo>
             <Capitolo>
    			<numero>2</numero>
    			<titolo>I mattoni del linguaggio</titolo>
    			<testo>testo del capitolo..</testo>
    		</Capitolo>
            <Capitolo>
    			<numero>3</numero>
    			<titolo>Funzioni</titolo>
    			<testo>testo del capitolo..</testo>
    		</Capitolo>
            <Capitolo>
    			<numero>4</numero>
    			<titolo>Array</titolo>
    			<testo>testo del capitolo..</testo>
    		</Capitolo>
        </Capitoli>
    </Libro>
Devi accedere o registrarti per scrivere nel forum
3 risposte