Określanie docelowego obszaru nazw przy użyciu sql:miejsce docelowe-nazw (schematu XDR)
Ważne: |
|---|
Ten temat jest dołączane jako odniesienia dla starszych aplikacji.Żadna praca przyszłego rozwoju są wykonywane z tej funkcji.Unikaj używania tej funkcji w nowych prac rozwojowych.Zamiast tego użyj adnotacjami schematów XSD tworzenia widoków XML.Aby uzyskać więcej informacji, zobacz Wprowadzenie do adnotacjami schematów XSD (SQLXML 4.0).Można przekonwertować istniejące schematy XDR adnotacjami schematów XSD.Aby uzyskać więcej informacji, zobacz Konwertowanie adnotacjami schematy XDR równoważne schematów XSD (SQLXML 4.0). |
sql:target-namespace Adnotacji można umieszczać elementy i atrybuty z domyślnego obszaru nazw do innego obszaru nazw.sql:target-namespace atrybut, które mogą być dodawane tylko do <schematu> tag w schematu XDR.
Wartość sql:target-namespace jest nazw URI (Uniform Resource Identifier) używane do generowania elementy i atrybuty określonych w schemacie mapowania.Ten identyfikator URI jest stosowany do wszystkich elementów i atrybutów w domyślny obszar nazw.Dokument XML zwróconych z kwerend przeciwko ten schemat zawiera xmlns:prefix = "uri" deklaracje i prefiks element i atrybut nazwy odpowiednio.Identyfikator URI, który jest używany pochodzi z wartością sql:target-namespace adnotacji.Prefiks jest generowane w sposób arbitralny i nie odpowiada wartości w schemacie (nawet jeśli prefiksy są używane w schemacie).
Przykłady
Aby utworzyć próbki pracy przy użyciu poniższych przykładach, musi spełniać określone wymagania.Aby uzyskać więcej informacji, zobacz Wymagania dotyczące uruchamianie przykładów SQLXML.
A.Określ miejsce docelowe obszar nazw
W tym przykładzie sql:target-namespace adnotacji jest używany do określenia miejsce docelowe namespace.W wyniku wszystkich elementów i atrybutów, które byłyby zostały przewiezione do domyślnego obszaru nazw są przekierowywane do miejsce docelowe (MyNamespace) w obszarze nazw.
<?xml version="1.0" ?>
<Schema xmlns="urn:schemas-microsoft-com:xml-data"
xmlns:dt="urn:schemas-microsoft-com:datatypes"
xmlns:sql="urn:schemas-microsoft-com:xml-sql"
sql:target-namespace="urn:MyNamespace">
<ElementType name="Sales.SalesOrderHeader" >
<AttributeType name="SalesOrderID" />
<attribute type="SalesOrderID"/>
</ElementType>
<ElementType name="Sales.Customer" >
<AttributeType name="CustomerID" />
<attribute type="CustomerID" />
<element type="Sales.SalesOrderHeader" >
<sql:relationship
key="CustomerID"
foreign-key="CustomerID"
key-relation="Sales.Customer"
foreign-relation="Sales.SalesOrderHeader" />
</element>
</ElementType>
</Schema>
Aby przetestować przykładowe kwerendy XPath względem schematu
Kod schematu skopiować i wkleić go do pliku tekstowego.Zapisz plik jako TargetNS Xdr.xml.
Skopiuj następujący szablon i wkleić go do pliku tekstowego.Zapisz plik jako TargetNS XdrT.xml w tym samym katalogu, w którym zapisano TargetNS Xdr.xml.
<ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql"> <sql:xpath-query mapping-schema="TargetNS-Xdr.xml" xmlns:x="urn:MyNamespace" > x:Sales.Customer[@CustomerID=1] </sql:xpath-query> </ROOT>Żądań kwerend XPath w szablonie, wszystkie <klienta> elementów zdefiniowanych w obszarze nazw "mynamespace".W szablonie prefiks x, jest związany z obszaru nazw.
Ścieżka katalogu określonego dla mapowania schematu (TargetNS Xdr.xml) jest katalog, w którym zapisany szablon.Ścieżka bezwzględna również można określić, na przykład:
mapping-schema="C:\MyDir\TargetNS-Xdr.xml"Tworzenie i używanie szablon wykonać skryptu testu 4.0 SQLXML (Sqlxml4test.vbs).
Aby uzyskać więcej informacji, zobacz Przy użyciu ADO SQLXML wykonanie kwerendy 4.0.
Zestaw wyników jest następujący:
<ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql">
<y0:Sales.Customer xmlns:y0="urn:MyNamespace" CustomerID="1">
<y0:Sales.SalesOrderHeader SalesOrderID="43860" />
<y0:Sales.SalesOrderHeader SalesOrderID="44501" />
<y0:Sales.SalesOrderHeader SalesOrderID="45283" />
<y0:Sales.SalesOrderHeader SalesOrderID="46042" />
</y0:Sales.Customer>
</ROOT>
Uwaga, że prefiksy generowane są dowolne, ale mapy do tych samych nazw.
Ważne: