ERD表記(crow 'フィート)を読み取って自然言語に変換するにはどうすればよいですか?
On 12月 3, 2020 by admin背景
ERD(エンティティリレーションシップダイアグラム)表記の読み方を理解して、自然言語の説明に変換できるようにしようとしています。
変換方法を説明できるようにしています。自然言語の図を参照してください。
次の図を使用しましょう:(実際のエンティティの正確さにとらわれすぎないでください。これらは単なる例です。)
自然言語文の例
住所の会社
これは、会社から住所への関係について話す正しい方法でしょうか。
会社には1つから多数の住所があります(配送、請求など)。
これは、会社に少なくとも1つの住所が必要であることを示しています、そうですか?
図の表記と一致しますか?
接続会社
各企業の接続数は0から多数です。
それは正しいですか?それは私が会社側でそのダブルバーを読む方法ですか?
2つの会社側コネクタはどのように異なりますか?
2つの会社側コネクタはまったく異なることを示していますか?
それを説明できますか?
自然言語翻訳の一般的なヘルプ?
論理的なものはありますか各関係を調べて自然言語に変換するために提供できる手順を含む方法?
たとえば、Company toConnectionを使用します。
-
どこから読み始めますか?
-
接続のカラスの足が番号を示していることをどのように覚えていますか(または説明しますか)会社が持っている接続の数とその逆はありませんか?
ありがとう
コメント
回答
次の画像を使用して、これにもっと明確に答えたいと思います( https://www.lucidchart.com/pages/ER-diagram-symbols-and-meaning )
の定義の使用これらの記号から、最初に投稿した図について次のことが当てはまることがわかります。
- 会社には1対多の住所があります(配送、請求など)。
- 会社には0から多数の接続があります
- 接続には1つ(そして1つだけ)の会社があります
- アドレスには1つの会社があります-これにはおそらく二重線コネクタが含まれている必要があります唯一無二。
最後の質問は次のとおりです。
可能な手順を備えた論理的な方法はありますか各関係を調べ、tを変換するための準備o自然言語?
- 開始するエンティティに指を置きます。たとえば、Companyに指を置きます。
- 「Companyhas …」と言って、話したい関連エンティティを選択します。たとえば、接続を選択します。
- 接続エンティティ(3本の線(脚)が付いた空の円)に接する関係記号を見て、0から多数を示します。
- 続行「…ゼロから多数の接続」と言います。
最後の文は次のようになります。
「会社はゼロから多数の接続。 “
これにより、実体関連図の記号を自然言語に変換できます。
コメント
- 次のことも考慮してください:[1]関係(ERD内)は両方の方法で機能する必要があります(' tでない場合は、終了する可能性があります冗長な関係のモデリング)。例えば。元の図を見てください:会社-<接続、各接続が可能性があることも考慮してください('は')会社に関連付けられている、つまり、会社がなくても接続が存在する可能性があります。これは(シナリオでは)有効なビジネスルールですか? [2]可能な限り、"が"よりも説明的な動詞を使用してください。例えば。会社-<製品:"配信"と言うか"製造業者"は、会社が(実際に)何をしているのかを示します。
- 実際、会社ではあなたがそれを逆に読んでいるかもしれない接続物。元の図は、実際には会社に0から多数の接続があることを示していますが、接続には1つ(そして1つだけ)の会社があります。つまり、'は会社側の2本の破線です。ダイアグラムの会社側にゼロまたは1つの記号が付いている場合にのみ、あなたが言ったことは真実です。
回答
このリンクから: archive.orgミラー(元のURLが壊れています) 1
カーディナリティモダリティは、関係に関するビジネスルールの指標です。カーディナリティとは、1つのエンティティのインスタンスを関連エンティティのインスタンスに関連付けることができる最大回数を指します。モダリティとは、1つのエンティティのインスタンスを関連エンティティのインスタンスに関連付けることができる最小回数を指します。カーディナリティは1または多で、シンボルは関係線の外側の端に配置され、エンティティに最も近くなります。モダリティは1または0で、シンボルはカーディナリティシンボルの隣の内側に配置されます。カーディナリティが1の場合、直線が描画されます。多くのカーディナリティのために、3本のつま先を持つ足が描かれます。モダリティが1の場合、直線が描画されます。モダリティが0の場合、円が描画されます。ゼロ以上[b4] 1以上[b5] 1および1のみ(正確に1)[b6]ゼロまたは1 [b7]カーディナリティとモダリティは関係線の両端に示されます。これが行われると、関係は1対1(1:1)、1対多(1:M)、または多対多(M:M)として読み取られます。
[1]元のリンク:http://web.simmons.edu/~benoit/lis458/CrowsFootNotation.pdf
回答
宛先理解する必要のあるモデリング表記を適切に説明してください。そこには多くのリソースがあります-ここにあなたが始めるための1つの関連するサイトがあります。それはあまりにも広く文書化されており、スタックでカバーするには広大なトピックです答えを交換します。 「各関係の真に技術的な説明を書きたい場合は、モデルのドキュメントで簡単に説明できます。
プロセスに関する質問:
各関係を調べて自然言語に変換するために提供できる手順を備えた論理的な方法はありますか?
他の文章と同じように聴衆はあなたの執筆の焦点とスタイルを推進する必要があります。あなたは技術文書を書いていますか?もしそうなら、誰のために特別ですか?ほとんどのデータベースの専門家はただ図に行きます。あなたがビジネスユーザーのために書いているなら、彼らのプロセスに集中してそのガイドを聞かせてくださいあなたの構造と単語の選択。たとえば、モデルが会社の住所を記録する方法を記述している場合、最初に最もよく知られている場所は会社です。口語的には、住所の会社ではなく、会社の住所について話し合います。
どこから読み始めますか?
プロセス/口語的な提案に従っている場合は、会社から始めてくださいそして論理的にその関係を探ります。この例では、会社に関連し、さらに説明する2つの意味のあるテーブルがあります。
まず、次のことを説明します。"A company has at least one, and possibly many, addresses."
カジュアルな会話では通常考えられないことを説明するためにループバックする必要があります。"We only store connection types that relate to a company (it"s not a long list of arbitrary or potential connection types) and each connection type has only one company."
これは、関係とデータルールとは何か。また、あまり意味がないように思われるので、これはスキーマの例ではありませんでした。誰かがデザインを確認するか、ビジネスプロセスについて真剣に考えることをお勧めします。これこれが、ERDドキュメントで言語からモデルへの変換と思考に関連する追加情報を見つける理由の1つです。
多くの専門家が、テストとしてこの種の演習を行い、モデルは理にかなっています。彼らが尋ね始めるのは次のとおりです。"Does a company have a connection type, or does it make more sense that a company"s relationship with it"s multiple addresses have connection types?"
これにより、ルックアップテーブルと次のような説明を使用して再構築する必要があります。"A company has one or more addresses of different types."
A company has 1 or more addresses