1

XSD は、DTD が行っていたのと同じように XML を検証するために使用される xml スキーマ定義言語ファイルであることは知っていますが、今ではそれが xml ファイルなのかデータセット ファイルなのか疑問に思っています。その背後にある理由は、私は c# プロジェクトに timberdata.xsd が含まれていますが、それを開くと、データセット ファイルを意味する多くのデータ テーブルが表示されます??. しかし、実際には、データベースをチェックしたときにxmlを検証するためのスキーマファイルであることがわかっているxsdは、mydata.xml以下に示すエントリを見ることができました

<?xml version="1.0" standalone="yes"?>
<timberdataSchema xmlns="http://tempuri.org/timberdata.xsd">

このxmlファイルはスキーマファイルです。つまり、xsdファイルまたは私たちのプロジェクトで見ることができるファイル「timberdata.xsd」には、多くのデータテーブルが含まれているため、データセットです。

もう 1 つの質問は、timberdata.xsdCustomtool エントリが "MSDataSetGenerator" で埋められていることを確認できるプロパティを確認したときに、これはどういう意味ですか? 「timberdata.xsd」と一緒に見ることができます timberdata.xsc と timberdata.xss は両方とも xsd ファイルである xml 形式ですか??

4

2 に答える 2

4

XSDは常にXMLファイルです(XMLはフォーマットであり、データが何であるかについては何も定義しません)。

XSDは、テーブルの定義に必要な親子関係と基本的な型の制限を簡単に定義できるため、データベーススキーマとして使用できます。「MSDataSetGenerator」は、XSDが保存されるたびに、XSDから必要なファイル/バイナリをビルドする「カスタムツール」です。

カスタムツールの説明は次のとおりです-シングルファイルジェネレーターとMSDataSetGeneratorがシングルファイルジェネレーターの登録に登録される方法。

XSDは、必要に応じて、奇妙で複雑なものを定義することもできます...

于 2012-04-13T16:44:15.290 に答える
0

ファイル拡張子について質問されていると思います。かなり古いオペレーティング システムである Windows と Unix には、ファイルに関連付けられた信頼できる型情報がないため、ファイル名の最後の部分 (および/またはファイルの最初の数バイト) からファイルの内容を推測しようとします。 !)。ただし、ファイル拡張子は慣習上の問題にすぎません。ファイル拡張子の標準レジストリはありません。たとえば、XML を含まない拡張子 .xml のファイルを作成する人を止めるものは何もありません。したがって、拡張子が .xsd のファイルには、何でも含めることができます。

実際、オペレーティング システムでは通常、ユーザーまたはシステム管理者がファイル拡張子と特定のプログラムとの関連付けを設定できるため、たとえば .xsd 拡張子を XML スキーマ プロセッサに関連付けることができます。しかし、他の誰かが同じ拡張子を「データセット ファイル プロセッサ」(それが何であれ) に関連付ける可能性があり、どちらも正しくも正しくもありません。

于 2012-04-15T17:16:02.357 に答える