11

私は、XML 文書のより高度なビジネス・ルール検証を行う方法を探していました。これまでのところ、Schematron は、私が必要としていることができるようです。

私は見回してきましたが、見つけたいくつかのライブラリは非常に古く、もはやサポートされていないようです。Schematron は 2002 年に「ホット」だっただけですか? C# で検証を実行できるライブラリはありますか? または、どうすればよいですか?

または、高度な検証を行うことができ、C# ライブラリを持ち、標準化されている他のものはありますか?

4

1 に答える 1

13

価値があるのは、これが私の経験です...

私は、スキーマがビジネス ルールの検証に沿ってもっと多くのことを行うことができればいいのにと思う瞬間がありました。ただし、私の経験では、スキーマはデータ コントラクト (形式、型など) を定義するためにあります...ビジネス ルールを強制するためではありません。それ以上のものを作ろうとすると、あらゆる種類の問題が発生し、それが Schematron の人気が低下したように見える理由かもしれません (バックアップできないという悪い仮定かもしれません)。

これを回避するには、一般的に 2 パス アプローチを使用できます。

  • スキーマ検証を使用して、xml 構造/データ型などを検証します。
  • xml に対してチェックするビジネス ルールを適用します (通常の C# コードで)。

検証へのオールインワン アプローチを実行したい場合は理解していますが、これにスキーマを使用しようとすると、長期的には頭痛の種が増えます。最終的には、コードを分離することで、ビジネス ルールのチェックをより細かく制御できるようになります。

于 2009-04-24T21:24:35.670 に答える