参考文献の操作
参考文献の取り扱い
Word の引用および参考文献機能は、データを表示するフィールドとは別にソースデータを保存します。 Aspose.Words .NET 用の FOSS ~を介してソースデータを取得するモデル Aspose.Words.Bibliography 名前空間 – Source, Contributor, Person、および Corporate – から到達可能 Document.Bibliography。このページでは、そのデータの構築と読み取りを取り上げます;その CITATION and BIBLIOGRAPHY それを表示するフィールドは、以下で取り上げられています リンクと参照ガイド.
参考文献データモデル
Document.Bibliography は Bibliography のインスタンスで、BibliographyStyle を持ちます――(例:APA や MLA のような)引用スタイル名で、BIBLIOGRAPHY フィールドが更新される際に適用されるものです――そして Sources、すなわちドキュメントで利用可能なすべてのソースレコードを保持する IList<Source> です。
ソースレコード
Source は Source(tag, sourceType) で構成され、Tag は FieldCitation.SourceTag と FieldBibliography.SourceTag が照合する短い識別子で、SourceType はソースの種類を示す列挙型です――値には Book, BookSection, JournalArticle, ArticleInAPeriodical, ConferenceProceedings, Report, Patent, Case, InternetSite, DocumentFromInternetSite, Interview, Film, SoundRecording, Performance, Art, Electronic, および Misc が含まれます。Source.Type は別途、ソースタイプをプレーン文字列として保持します。Title と ShortTitle を超えて、Source は選択された SourceType に応じて多数のカテゴリ固有フィールドを公開します――書籍フィールド (BookTitle, Edition, NumberVolumes, Volume, Pages, ChapterNumber), 定期刊行物フィールド (JournalName, PeriodicalTitle, PublicationTitle, Issue), ウェブフィールド (InternetSiteTitle, Url, DayAccessed, MonthAccessed, YearAccessed), 法律フィールド (CaseNumber, AbbreviatedCaseNumber, Court, Reporter), 録音・放送フィールド (AlbumTitle, Broadcaster, BroadcastTitle, RecordingNumber, Medium, ProductionCompany, Distributor, Station, Theater), PatentNumber, StandardNumber, 論文フィールド (ThesisType, Institution, Department), および一般フィールド (Publisher, City, StateOrProvince, CountryOrRegion, Year, Month, Day, Comments, Guid, Doi, Version, RefOrder, Lcid)。
Contributors
Source.Contributors は、貢献者ロールごとに 1 つのプロパティを持つ ContributorCollection です – Author、Editor、Translator、Compiler、Composer、Conductor、Counsel、Director、Interviewee、Interviewer、Inventor、Performer、Producer、Writer、Artist、および BookAuthor – それぞれは Contributor として型付けされており、下記で説明する 2 種類の貢献者の共通基底です。
個人対法人の貢献者
Contributor は 2 つのクラスで実装されています: 単一の個人用には Person (First、Middle、Last)、組織用には Corporate (Name)。PersonCollection は Contributor から派生し、IEnumerable<Person> (Add、Remove、RemoveAt、Clear、Contains、Count) を実装しています。そのため、複数の個人著者を持つ貢献者ロールは PersonCollection を割り当てることができ、単一の著者のロールが Person を割り当てられるのと同様に容易です。これらは Corporate と共に、同じ Contributor 型のロールプロパティを満たします。
参考文献コンテンツのレンダリング
Source レコードはデータのみを提供します――引用や参考文献テキストを自らレンダリングしません。これは以下によって行われます FieldCitation and FieldBibliography、それは a を検索します Source 一致させて SourceTag against Source.Tag. 参照してください リンクと参照ガイド それらのフィールドクラスについて。
ヒントとベストプラクティス
- すべての
Sourceに一意なTagを付与してください――それはFieldCitation.SourceTagとFieldBibliography.SourceTagが正しいレコードを見つけるために使用する唯一の値です。 Sourceフィールドは、そのSourceTypeに関連するものだけを設定してください――例えば、BookソースはBroadcasterやCaseNumberを使用しませんが、クラスは自動的にこれを強制しません。- 単一の名前付き貢献者には
Personを使用し、同じ役割の複数の個人にはPersonCollectionを、貢献者が個人ではなく組織の場合はCorporateを使用します – 該当するContributorCollectionロールプロパティに適切なものを割り当ててください。 Bibliography.BibliographyStyleは適用する引用スタイル名を記録します;FieldCitationフィールドが期待する出力形式と一貫性を保ってください。- 参照される
CITATIONまたはBIBLIOGRAPHYフィールドを更新する前に、すべてのSourceをDocument.Bibliography.Sourcesに追加してください — ソースが欠けていると、参照フィールドは解決先がありません。
一般的な問題
| 問題 | 原因 | 修正 |
|---|---|---|
CITATION または BIBLIOGRAPHY フィールドが解決できません | Source.Tag はフィールドの SourceTag と正確に一致していません | タグが一致していること、そして Source が Document.Bibliography.Sources に追加されたことを確認してください |
| ロールに誤った貢献者タイプが割り当てられています | 複数の貢献者が存在する場所に Person が割り当てられた、またはその逆です | 1つのロールで複数の個人には PersonCollection を使用し、単一の個人には Person を使用し、組織には Corporate を使用してください |
| ソースフィールドがそのタイプに対して不整合に見えます | 別のSourceType用のフィールドが入力されていました(例: Book ソース上のウェブフィールド) | 選択したSourceTypeに関連するフィールドのみを入力してください |
FAQ
単一の著者がいる書籍のソースはどうやって追加しますか?
SourceType.Book を使用して Source を作成し、BookTitle、Publisher、Year および関連フィールドを設定し、最後に Source.Contributors.Author に Person を割り当てます。
複数の著者がいるソースはどうやって追加しますか?
関連する ContributorCollection のロールプロパティに、PersonCollection(Add() を通じて Person インスタンスで構成されたもの)を割り当てます。例えば Author のように。
個人ではなく組織を引用するにはどうすればよいですか?
Person や PersonCollection の代わりに、組織の Name を用いて構築した Corporate インスタンスを ContributorCollection ロールプロパティに割り当てます。
レンダリングされたドキュメントでは、Source レコードは実際にどこに表示されますか?
それらは単体では表示されません – FieldCitation and FieldBibliography フィールドはそれらから構築されたコンテンツをレンダリングし、次によってマッチングされます SourceTag. 参照してください リンクおよびリファレンスガイド.
API Reference の概要
| クラス / 列挙型 | 説明 |
|---|---|
Bibliography | 参考文献データのルート、Document.Bibliography 経由; BibliographyStyle, Sources |
Source | 個々の引用ソース; カテゴリ固有のフィールドが多数、さらに Contributors |
SourceType | ソース種別の列挙: Book, JournalArticle, InternetSite, Patent, Case, など |
ContributorCollection | ロール別コントリビュータ属性(Author, Editor, Translator, その他)を Source に適用 |
Contributor | Person、PersonCollection、Corporate の共通ベース |
Person / PersonCollection | 単一の個人貢献者、またはそれらの集合 |
Corporate | 貢献者として活動する組織 |