Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    4

    XML, XSD e vincoli di unicità

    Piccolo problema ho un file XML con elementi A con attributo "code". Questi elementi possono apparire a qualsiasi livello della gerarchia; es:

    <A code="1">
    <A code="2">
    </A>
    </A>

    Ho la necessità di inserire nello schema di validazione un vincolo di unicità globale per tutti gli elementi A in tutto il documento. Ho provato a fare così:

    <xs:unique name="dummy">
    <xs:selector xpath=".//A"/>
    <xs:field xpath="@code"/>
    </xs:unique>

    Ma non funziona... come devo fare???

    Grazie mille
    Soalle

    PS: uso Java come colla per mettere insieme parsing xml, validazione e trasformazione e naturalmente JAXP 1.2
    PPS: perché il parser Java dice che non posso mettere nel tag selector espressioni del tipo: /A//B? Dalla doc del w3c se non ho capito male dovrebbe essere possibile... non è che è Java stesso che mi crea il problema?

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    4
    up please....

    ho un altro problemino....

    Come faccio a definire uno schema che segua queste regole:
    Ho un elemento A e dentro a questo elemento possono apparire gli elementi B, C, D in qualunque ordine e con qualunque cardinalità...

    ES:

    <A>
    <B/>
    <B/>
    <C/>
    <B/>
    <D/>
    <D/>
    <D/>
    <C/>
    </A>

    Grazie per gli eventuali aiuti....

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    4
    ho trovato la soluzione al secondo problema:

    codice:
    <xs:element name="A">
    		<xs:complexType>
    			<xs:choice maxOccurs="unbounded">
    				<xs:element name="B" />
    				<xs:element name="C" />
    				<xs:element name="D" />
    			</xs:choice>
    		</xs:complexType>
    </xs:element>
    Adesso rimane il primo... se qualcuno mi può dare una mano gli sarei grato...

    Ciaociao
    Soalle

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    4
    a forza di sbattere la testa ho scoperto che il primo problema non era mio ma del parser di JAXP1.2

    Alla fine ho risolto usando l'ultima versione del parser della ibm...

    Grazie comunque
    Soalle

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 © 2024 vBulletin Solutions, Inc. All rights reserved.