5

PostGreSQL で実行する MS SQL スクリプトを移植しようとしています。次のように定義された XML スキーマ コレクション スクリプトを使用します。

CREATE XML SCHEMA COLLECTION [MySchema] AS N'<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"> 
<xsd:element name="MyRootElement"> 
<xsd:complexType> <xsd:complexContent> <xsd:restriction base="xsd:anyType"> <xsd:sequence> <xsd:element name="Child1" minOccurs="0"> <xsd:complexType> <xsd:complexContent> <xsd:restriction base="xsd:anyType"> <xsd:sequence>
    .
    .

この XML スキーマ タイプを PostGreSQL で使用するために変換できますか? したがって、ストアド プロシージャの xml 型の入力パラメーターの検証の定義を使用できます。そうでない場合、入力パラメーターに必要なスキーマがあることを確認するにはどうすればよいですか?

入力値がDTDを指定している場合でも、XMLタイプはドキュメントタイプ宣言(DTD)に対して入力値を検証しないことを読みました。また、現在、XML スキーマなどの他の XML スキーマ言語に対する検証の組み込みサポートもありません。

4

1 に答える 1

2

必要な検証を行うカスタム関数を (おそらく PL/Perl または PL/Python で) 作成し、チェック制約を使用してそれを列にフックします。

于 2013-09-23T13:24:54.070 に答える