Ho un documento XSD che inizia con:Per cosa è questo spazio dei nomi di importazione XSD?
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd"/>
<xs:complexType name="T_segment">
<xs:sequence>
<xs:element ref="element" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute ref="xml:space" use="required"/>
<xs:attribute ref="id" use="required"/>
</xs:complexType>
...
Quando provo ad usare questa XSD in un'applicazione di mapping come BizTalk si fa saltare in aria lamentarsi namespace. Quindi rimuovo il tag xs: import namespace e si lamenta del tag xs: attribute ref = "xml: space". Quindi, lo rimuovo e sembra funzionare bene (almeno non esplodere).
La mia domanda è, a cosa servono questi tag? Rimuovendoli sto rompendo il xsd?
Da quello che so, i namespace servono per evitare conflitti. Ma in xsd tutto è prefisso da xs e lo stesso schema ha xmlns: xs = "http://www.w3.org/2001/XMLSchema". Non sono sicuro di cosa sia l'importazione.
Hai esaminato la documentazione del W3C per il tag di importazione? (Http://www.w3.org/TR/xmlschema-0/#import). –
Sì, ho letto la documentazione ma non sono riuscito a capire cosa volessero dire perché entra in molti altri dettagli che non ho potuto seguire. Penso di aver bisogno di un umano per dire "Significa questo ... e portarlo fuori significa ...". – dtc