2009-08-05 7 views
0

Ich möchte die Eindeutigkeit für zwei Arten von Elementen garantieren: MainQuestion und AlternateQuestion. Kann ich in der Select-Abfrage für meinen Schlüssel xsd: etwas angeben, das "// MainQuestion oder // AlternateQuestion"? Jemand hat mir gesagt, dass so etwas existiert, aber es scheint, dass XSD nur eine Teilmenge der XPath-Syntax unterstützt ...ist es möglich, ein OR in einem Xpath in einem XSD anzugeben?

Antwort

1

Unterstützung von Pavels Antwort, dass Sie "|" verwenden können in einem XPath in XML Schema.

XML Schema unterstützt eine Teilmenge von XPath (was ich als "falschen XPath" betrachte). Was es unterstützt, ist explizit in der Spezifikation angegeben. Sie müssen durch ein paar Abschnitte suchen, um es zu finden. Dies ist ein Link auf den genauen Abschnitt:

http://www.w3.org/TR/xmlschema-1/#c-selector-xpath

2

Sie sollten in der Lage | wie gewohnt zu verwenden:

//MainQuestion | //AlternateQuestion 

die Syntax in der Tat beschränkt ist -, dass es in etwa die gleichen wie Einschränkungen für Schablonenmuster in XSLT 1.0, aber zusätzlich ist kann keine Filter in Pfadschritten enthalten. | wird jedoch explizit als unterstützt aufgeführt.

+0

Dank für Ihre Antwort, ich weiß nicht, wie ich nicht feststellen, dass ich, das war recht einfach ... – lau

Verwandte Themen