Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro:SQL Server
Azure SQL Database
Azure SQL Managed Instance
SQL databáze v Microsoft Fabric
Komponenty se zástupnými znaky slouží ke zvýšení flexibility v tom, co se může v modelu obsahu zobrazovat. Tyto komponenty jsou podporovány v jazyce XSD následujícími způsoby:
Součásti zástupných znaků elementu Jsou reprezentovány elementem
<xsd:any>.Komponenty zástupných znaků atributu. Jsou reprezentovány elementem
<xsd:anyAttribute>.
Prvky zástupných znaků <xsd:any> a <xsd:anyAttribute> podporují použití atributu processContents. To vám umožní zadat hodnotu, která určuje, jak aplikace XML zpracovávají ověřování obsahu dokumentu přidruženého k těmto prvkům se zástupnými znaky. Toto jsou různé hodnoty a jejich účinek:
Striktní hodnota určuje, že obsah je plně ověřen.
Hodnota přeskočení určuje, že se obsah neověřuje.
Laxní hodnota určuje, že jsou ověřeny pouze prvky a atributy, pro které jsou k dispozici definice schématu.
cs-CZ: Laxní validace a xs:anyType elementy
Specifikace schématu XML používá laxní ověřování pro prvky typu anyType . Vzhledem k tomu, že SQL Server 2005 (9.x) nepodporuje laxní ověřování, bylo použito přísné ověřování pro prvky anyType. Od verze SQL Server 2008 (10.0.x) je podporována volná validace. Obsah prvků typu anyType se ověří pomocí laxního ověření.
Následující příklad znázorňuje laxní ověření. Element e schématu je typu anyType . Příklad vytvoří typové proměnné XML a znázorňuje laxní ověření elementu anyType typu.
CREATE XML SCHEMA COLLECTION SC AS '
<schema xmlns="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://ns">
<element name="e" type="anyType"/>
<element name="a" type="byte"/>
<element name="b" type="string"/>
</schema>';
GO
Následující příklad je úspěšný, protože ověření <e> je úspěšné:
DECLARE @var XML(SC);
SET @var = '<e xmlns="http://ns"><a>1</a><b>data</b></e>';
GO
Následující příklad je úspěšný. Instance je přijata, i když ve schématu není definován žádný prvek <c> :
DECLARE @var XML(SC);
SET @var = '<e xmlns="http://ns"><a>1</a><c>Wrong</c><b>data</b></e>';
GO
Instance XML v následujícím příkladu je odmítnuta, protože definice <a> elementu neumožňuje řetězcovou hodnotu.
DECLARE @var XML(SC);
SET @var = '<e xmlns="http://ns"><a>Wrong</a><b>data</b></e>';
SELECT @var;
GO