2010-04-07 24 views
5

Birisi xsd'de böyle bir şeyi tanımlamak için nasıl giderdi? Bir özniteliğin olası içeriği belirlediği bir xsd içinde xml tanımlama

<start> 
    <request type="typeA"> 
     <elementOnlyFoundInA /> 
    </request> 
    <request type="typeB"> 
     <elementOnlyFoundInB /> 
    </request> 
</start> 

Sadece nasıl görünebileceğini hakkında bir fikir edinmek için Xsd.exe geçmekle birlikte type değeri ve istek içerikleri arasındaki ilişkileri tanımak görünmüyor. İçeriği bir xsd dosyasında böyle bir öznitelik temelinde tanımlamak mümkün mü?

cevap

4

XML Şeması şu anda böyle bir şeyi desteklemiyor - başka niteliklerin veya öğelerin içeriğine göre yapı yapamazsınız.

Çalışmalarda yeni bir XML şema sürümü bu yönde bir şey sunabilir, ancak şu anda kabul edilmekten ve uygulanmasından çok uzaktır.

Bu tür bir XML doğrulamasına ihtiyacınız varsa, şimdilik Schematron'a dönmeniz gerekir.

+0

İyi bir çağrı - Schematron hakkında yeterince bilgi sahibi değilsiniz. –

+0

Bu ilk defa xsd üzerinde çalıştığımdan beri ... hayır Schematron'u duymadım, ona bir bakayım. – SeanJA