predicato CONVALIDATO

I test predicati CONVALIDATI se il valore specificato da XML - expression è stato convalidato utilizzando la funzione XMLVALIDATE.

Se il valore specificato è nullo, il risultato del vincolo di convalida è sconosciuto; altrimenti il risultato del vincolo di convalida è vero o falso. Il valore specificato deve essere di tipo XML.

Se la clausola SECONDO XMLSCHEMA non è specificata, gli schemi XML utilizzati per la validazione non influiscono sul risultato del vincolo di validazione.

Read syntax diagramSkip visual syntax diagramXML-expression ISNOTVALIDATED according-to-clause
according-to-clause
Read syntax diagramSkip visual syntax diagramACCORDING TO XMLSCHEMA XML-schema-identificationIN(,XML-schema-identification)
XML-schema-identification
Read syntax diagramSkip visual syntax diagramIDXML-schema-nameURIXML-uri1NO NAMESPACELOCATIONXML-uri2

Descrizione

XML - espressione
Specifica il valore XML sperimentato, dove XML - espressione può consistere in un documento XML, un contenuto XML, una sequenza di nodi XML, un XML nome - colonnao un XML correlazione - nome.

Se viene specificato un XML nome - colonna , il predicato valuta se i documenti XML associati al nome della colonna specificato sono stati convalidati.

Consultare "CREATE TRIGGER" per informazioni sulla specifica dei nomi di correlazione di tipo XML come parte di trigger.

E'CONVALIDATO o NON CONVALIDATO
Specifica lo stato di convalida richiesto per l'operando XML - expression .

Per un vincolo che specifica IS CONVALIDATO per valutare come vero, l'operando deve essere stato convalidato. Se una clausola SECONDO XMLSCHEMA opzionale include uno o più schemi XML, l'operando deve essere stato convalidato utilizzando uno degli schemi XML identificati.

Per un vincolo che specifica NON CONVALIDATO per valutare come falso, l'operando deve essere in uno stato convalidato. Se una clausola SECONDO XMLSCHEMA opzionale include uno o più schemi XML, l'operando deve essere stato convalidato utilizzando uno degli schemi XML identificati.

secondo - clausola
Specifica uno o più schemi XML contro i quali l'operando deve o non deve essere stato convalidato. Possono essere specificati solo gli schemi XML precedentemente registrati con l' repository di schemi XML .
SECONDO XMLSCHEMA
ID XML - schema - nome
Specifica un identificativo SQL per lo schema XML. Il nome, incluso il qualificatore schema SQL implicito o esplicito, deve identificare univocamente uno schema XML esistente nell'archivio di schemi XML al server corrente. Se nessun schema XML da questo nome esiste nello schema SQL implicitamente o esplicitamente specificato, viene restituito un errore (SQLSTATE 42704).
URI XML-uri1
Specifica l'URI namespace di destinazione dello schema XML. Il valore di XML-uri1 specifica un URI come una costante di stringa di carattere non vuota. L'URI deve essere il namespace di destinazione di uno schema XML registrato (SQLSTATE 4274A) e, se non è specificata alcuna clausola LOCATION, deve identificare univocamente lo schema XML registrato (SQLSTATE 4274B).
nessun namespace
Specifica che lo schema XML non ha namespace di destinazione. L'URI namespace di destinazione è equivalente a una stringa di caratteri vuota che non può essere specificata come URI di namespace esplicito.
POSIZIONE XML-uri2
Specifica l'URI di posizione dello schema XML dello schema XML. Il valore di XML-uri2 specifica un URI come una costante di stringa di carattere non vuota. L'URI della posizione dello schema XML, combinato con l'URI dello spazio dei nomi di destinazione, deve identificare uno schema XML registrato (SQLSTATE 4274A), e ci deve essere solo uno tale schema XML registrato (SQLSTATE 4274B).

Esempi

Esempio 1: Assumi che la colonna XMLCOL sia definito nella tabella T1. Richiamare solo i valori XML convalidati da qualsiasi schema XML.
   SELECT XMLCOL FROM T1
     WHERE XMLCOL IS VALIDATED
Esempio 2: Assumi che la colonna XMLCOL sia definito nella tabella T1. Far rispettare la regola che i valori non possono essere inseriti o aggiornati a meno che non siano stati convalidati.
   ALTER TABLE T1 ADD CONSTRAINT CK_VALIDATED
     CHECK (XMLCOL IS VALIDATED)
Esempio 3: si supponga di voler selezionare solo quelle righe dalla tabella T1 con colonna XML XMLCOL che sono state convalidate con l'URI dello schema XML http://www.posample.org.

   SELECT XMLCOL FROM T1 
     WHERE XMLCOL IS VALIDATED 
      ACCORDING TO XMLSCHEMA URI 
      'http://www.posample.org'