2016-03-28 22 views
0

Ben bir complexType ve string temelli bir simpleContent gibi bazı özniteliklere sahip bir öğe istediğim bir Xml şeması yazıyorum. Aynı zamanda beyaz boşluğu korumak istedim. Şu anda bu pasajı vardır:Korunan boşluk ve özniteliklere sahip Xml şema veri türü

<xs:complexType name="actualType"> 
    <xs:simpleContent> 
    <xs:extension base="stringWithSpace"> 
     <xs:attribute name="a" type="xs:int"/> 
     <xs:attribute name="b" type="xs:int"/> 
    </xs:extension> 
    </xs:simpleContent> 
</xs:complexType> 

<xs:simpleType name="stringWithSpace"> 
    <xs:restriction base="xs:string"> 
    <xs:whiteSpace value="preserve" /> 
    </xs:restriction> 
</xs:simpleType> 

soru, ben özelliklerini ve korunmuş boşluk almak için iki ayrı tip olması gerekir yoksa gözden kaçırdığım bir şey var mı?

+0

Geçerli uygulamanız çalışıyor mu? –

+0

Evet, şu anda çalışıyor. İstediğim tek "kısıtlama", ayrıştırıcının tüm boşlukları yememesi nedeniyle hem dizgi türünü kısıtlamak hem de genişletmek için gerçekten garip geliyor. Bir değişiklik türü için sadece bir kez taban türünü uzatacağım programlama arka planından geliyormuş gibi geliyor. –

+0

(Doğru) yaklaşımınız bunu yapmanın standart yolu gibi görünüyor. Boşluk korunmuş dizeyi yeniden kullanabileceğinizi varsayarsak, bunu çok kötü olarak görmüyorum. –

cevap

1

Bunun, sorunun orijinal snippet'inde belirtildiği gibi bunu yapmanın standart yolu olduğunun doğrulandığını görüyorum. Soruyu yanıtlıyorum, daha sonra bunu arayan herkes aynı onayı alabilir.

İlgili konular