1,633
edits
Fahrenheit (talk | contribs) |
mNo edit summary |
||
(16 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
{{TOCright}} | {{TOCright}} | ||
=Concerns and Goals= | =Concerns and Goals= | ||
As the [[ | As the [[CharDB DEV|CharDB]], [[OstDB DEV|OstDB]], [[MangaDB DEV|MangaDB]] and AniDB's producers all tend to include data about individuals or companies it would be a good idea to extract the generic data for individuals and companies into two separate tables which are then used by all other parts. | ||
* I.e. instead of having all the data inside the producer table, it would only include those data fields which are producer specific and would refer to a person or company table for the general data. | * I.e. instead of having all the data inside the producer table, it would only include those data fields which are producer specific and would refer to a person or company table for the general data. | ||
Line 12: | Line 13: | ||
** person<=>person relations? (married?) | ** person<=>person relations? (married?) | ||
* <s>And multiplicities, i.e. has each producer only one person/company related to it, or multiple ones?</s> - ''Each producer | * <s>And multiplicities, i.e. has each producer only one person/company related to it, or multiple ones?</s> - ''Each producer has only one entity assigned to it. Although one of those entities is Collaboration which can hold multiple companies and/or persons.'' | ||
* <s>Also, should names be a separate table (like anime titles) or are there only a small number of names we'd want to store per person/company?</s> - ''Names have their own table for every Entity that has titles.'' | * <s>Also, should names be a separate table (like anime titles) or are there only a small number of names we'd want to store per person/company?</s> - ''Names have their own table for every Entity that has titles.'' | ||
Line 21: | Line 22: | ||
* Also how are matching pseudonyms (they're not unique, are they?) handled? | * Also how are matching pseudonyms (they're not unique, are they?) handled? | ||
* Looking at [[ | * Looking at [[Generic PersonCompany DEV#Producer|Producer]], [[Generic PersonCompany DEV#Artist|Artist]], [[Generic PersonCompany DEV#Mangaka|Mangaka]] and [[Generic PersonCompany DEV#Seiyuu|Seiyuu]] we see that they are very similar the only thing changing are the names of the generic fields (like start date), so a question is should we either: | ||
*# have multiple modules for each specialization or should we keep it only under one module and differentiate with something like show=addentity&type=person[&edit=1] | *# have multiple modules for each specialization or should we keep it only under one module and differentiate with something like show=addentity&type=person[&edit=1] | ||
*# keep using the current way that is xvcl everything and make several modules for each specialization? | *# keep using the current way that is xvcl everything and make several modules for each specialization? | ||
=The big picture= | =Suggestion 1= | ||
==The big picture== | |||
[[Image:People1.png]] | [[Image:People1.png]] | ||
''''' | {{eyecatch|Warning|Image does '''not''' reflect the current layout!}} | ||
* To Fix: | * To Fix: | ||
Line 35: | Line 37: | ||
** Decide if we actually need the Pseudonym table | ** Decide if we actually need the Pseudonym table | ||
=Data Fields= | ==Data Fields== | ||
==Generic Fields== | ===Generic Fields=== | ||
===Generic Fields - Person=== | ====Generic Fields - Person==== | ||
* image | * image | ||
* url (en) | * url (en) | ||
Line 65: | Line 67: | ||
* verified | * verified | ||
===Generic Fields - Company=== | ====Generic Fields - Company==== | ||
* image | * image | ||
* type - type of company | * type - type of company | ||
Line 87: | Line 89: | ||
* verified | * verified | ||
===Generic Fields - Collaboration=== | ====Generic Fields - Collaboration==== | ||
* type - collaboration type | * type - collaboration type | ||
** 1 - Joint work | ** 1 - Joint work | ||
Line 116: | Line 118: | ||
* verified | * verified | ||
==Specializations== | ===Specializations=== | ||
===Producer=== | ====Producer==== | ||
* relid - entity id | * relid - entity id | ||
* typeid - type of entity | * typeid - type of entity | ||
Line 127: | Line 129: | ||
* end date - if different from underlying entity | * end date - if different from underlying entity | ||
* description - producer specific information | * description - producer specific information | ||
* [ratings&co] - not implemented in the | * [ratings&co] - not implemented in the UI | ||
===Seiyuu=== | ====Seiyuu==== | ||
<tt>derived from [[ | <tt>derived from [[Generic PersonCompany DEV#Artist|Artist]]/[[OstDB DEV|OstDB]]</tt> | ||
* relid - entity id | * relid - entity id | ||
* typeid - type of entity | * typeid - type of entity | ||
** | ** 2 - person | ||
* titleid - titles used by the entity | * titleid - titles used by the entity | ||
* debut on - Start of career | * debut on - Start of career | ||
Line 140: | Line 142: | ||
* [ratings&co] - not implemented in the ui | * [ratings&co] - not implemented in the ui | ||
===Artist=== | ====Artist==== | ||
<tt> | <tt>derived from [[OstDB DEV|OstDB]]</tt> | ||
* relid - entity id | * relid - entity id | ||
* typeid - type of entity | * typeid - type of entity | ||
** | ** 2 - person | ||
** | ** 3 - collaboration (allows to make bands) | ||
* titleid - titles used by the entity | * titleid - titles used by the entity | ||
* debut on - Start of career | * debut on - Start of career | ||
Line 152: | Line 154: | ||
* [ratings&co] - not implemented in the ui | * [ratings&co] - not implemented in the ui | ||
===Mangaka=== | ====Mangaka==== | ||
<tt>derived from [[ | <tt>derived from [[Generic PersonCompany DEV#Artist|Artist]]/[[OstDB DEV|OstDB]]</tt> | ||
* relid - entity id | * relid - entity id | ||
* typeid - type of entity | * typeid - type of entity | ||
** | ** 2 - person | ||
** | ** 3 - collaboration (allows us to have several persons working under the same penname) | ||
* titleid - titles used by the entity | * titleid - titles used by the entity | ||
* debut on - Start of career | * debut on - Start of career | ||
Line 164: | Line 166: | ||
* [ratings&co] - not implemented in the ui | * [ratings&co] - not implemented in the ui | ||
== | ==further notes== | ||
===Person=== | ===Person=== | ||
* Persons '''need''' one ''main title'', made from [title] firstname lastname (lang defaults to transcription) | * Persons '''need''' one ''main title'', made from [title] firstname lastname (lang defaults to transcription) | ||
* Persons can have '''one''' ''maiden name'', made from [title] firstname lastname (lang defaults to transcription) | * Persons can have '''one''' ''maiden name'', made from [title] firstname lastname (lang defaults to transcription) | ||
* Persons can have '''multiple''' ''alias'', made from [title] firstname lastname (lang defaults to transcription) | * Persons can have '''multiple''' ''alias'', made from [title] firstname lastname (lang defaults to transcription) | ||
* Persons can have '''multiple''' '' | * Persons can have '''multiple''' ''nicknames'', made from lastname (lang defaults to transcription) | ||
* One can choose '''optional''' relations between persons and/or companies | * One can choose '''optional''' relations between persons and/or companies (not implemented in the UI). | ||
===Company=== | ===Company=== | ||
Line 218: | Line 179: | ||
* Companies can have '''multiple''' ''synonyms'' (lang defaults to transcription) | * Companies can have '''multiple''' ''synonyms'' (lang defaults to transcription) | ||
* Companies can have '''multiple''' ''short names'' (lang defaults to transcription) | * Companies can have '''multiple''' ''short names'' (lang defaults to transcription) | ||
* One can choose '''optional''' relations between persons and/or companies | * One can choose '''optional''' relations between persons and/or companies (not implemented in the UI). | ||
===Collaboration=== | ===Collaboration=== | ||
<tt>Still very unspecified</tt> | <tt>Still very unspecified</tt> | ||
* Collaborations '''need''' a type (unspecified at the moment, see [[ | * Collaborations '''need''' a type (unspecified at the moment, see [[Generic PersonCompany DEV#Generic Fields - Collaboration|Collaboration]]) | ||
* Collaborations aren't limited to either companies or persons but can be a mix of both (unspecified at the moment) | * Collaborations aren't limited to either companies or persons but can be a mix of both (unspecified at the moment). | ||
===Producer=== | ===Producer=== | ||
Line 250: | Line 210: | ||
* One chooses from the related entry which names should the Artist be known as. | * One chooses from the related entry which names should the Artist be known as. | ||
= | =Suggestion 2= | ||
== | ==creatortb== | ||
* image | |||
* url (en) | |||
* url (jp) | |||
* url wiki (en) | |||
* url wiki (jp) | |||
* birth date | |||
* death date | |||
* description | |||
* role[] - relevant for in which system the entity will be shown/used (filter) | |||
** Mangaka | |||
** Artist | |||
** Anime Producer | |||
** Seiyuu | |||
* type | |||
**Person | |||
**Company | |||
* parentid | |||
**analogue to the guise system for character we use this here as well | |||
** let's say person A works under pseudonym B as a mangaka. then we add both persons and set the parentid for the child (the pseudonym) | |||
** that way we can credit the correct person while still being able to display both data entries under 1 entity | |||
== | ==creatornametb== | ||
* name | |||
* lang - language of title | |||
* type - type of title | |||
** 1 - Main title | |||
** 2 - Alias | |||
** 3 - Maiden name | |||
** 4 - Nickname | |||
* verified | |||
== | ==creatorcreatorreltb== | ||
-- used for "silly" relations like "marriage", collaborations, etc. | |||
* prelid | |||
**married | |||
**works for | |||
**works with | |||
**... | |||
* producerid | |||
* next | |||
===Collection | ==creatorrelationtb== | ||
<tt>check [[ | --defines the relation types | ||
*name | |||
*restriction | |||
**relations should be filtered down by type | |||
**personlevel relations make not much sense for companies and vice versa | |||
** see character system which works that way | |||
*description | |||
==creatortagtb== | |||
* tag system like used for character to add further non numerical data | |||
=Top Level Agglomerates= | |||
==Manga== | |||
<tt>check [[MangaDB DEV|MangaDB]]</tt> | |||
* like animenetries at AniDB | |||
* description | |||
* genres/categories | |||
* mangaka(s) [relation] | |||
* picture | |||
==Character== | |||
<tt>check [[CharDB DEV|CharDB]]</tt> | |||
* arbitrary number of titles (with language information) | |||
* picture | |||
* description | |||
* seiyuu [relation] | |||
* appearance in episodes [relation] | |||
==Song== | |||
<tt>check [[OstDB DEV|OstDB]]</tt> | |||
* arbitrary number of titles (with language information) | |||
* length (in seconds) | |||
* genre (?) | |||
* artists(s) [relation] | |||
* appearance in anime [relation] | |||
* ... | |||
==Collection== | |||
<tt>check [[OstDB DEV|OstDB]]</tt> | |||
* picture | |||
* arbitrary number of titles (with language information) | |||
* number of tracks | |||
* release date | |||
* genre (?) | |||
* artist(s) [relation] | |||
* anime(s) [relation] | |||
* ... | |||
=System= | |||
This details a bit of what is done and what we are aiming at | |||
[[Category:Development]] | [[Category:Development]] | ||
[[Category:CharDB]] |
edits