C# の Schematron/XSD を使用した XML 検証
-
16-09-2019 - |
質問
私は、XML ドキュメントのより高度なビジネス ルール検証を行う方法を探してきました。これまでのところ、Schematron は私が必要なことを実行できるようです。
探し回ったところ、見つかったいくつかのライブラリは非常に古く、もうサポートされていないようでした。Schematron が「注目」だったのは 2002 年だけですか?C# で検証を実行できるライブラリはありますか? または、どのように実行すればよいですか?
それとも、高度な検証を実行でき、C# ライブラリがあり、標準化されているものは他にありますか?
解決
価値があることとして、これは私の経験です...
スキーマがビジネス ルールの検証に沿ってもっと機能できればいいのに、と思うことがありました。ただし、私の経験では、スキーマはデータ コントラクト (形式、型など) を定義するために存在します。 ない ビジネスルールを強制するため。それ以上のものを作ろうとすると、あらゆる種類の問題に遭遇し、それが Schematron の人気が下火になったように見える理由かもしれません (バックアップできないという間違った思い込みかもしれません)。
これを回避するには、通常、2 パスのアプローチを実行できます。
- スキーマ検証を使用して、XML 構造/データ型などを検証します。
- XML に対してビジネス ルール チェックを適用します (通常の C# コードで)。
オールインワンの検証アプローチを実行したいという気持ちはわかりますが、これにスキーマを使用しようとすると、長期的にはさらに問題が発生します。最終的には、コードに分離することでビジネス ルール チェックをより細かく制御できるようになります。
所属していません StackOverflow