--- a/src/hdalab/models/dataviz.py Thu Apr 12 01:27:16 2018 +0200
+++ b/src/hdalab/models/dataviz.py Wed Apr 11 12:19:47 2018 +0200
@@ -11,44 +11,80 @@
class TagYears(models.Model):
-
+ """
+ Représente une période (début - fin) associée à un Tag.
+
+ :cvar object tag: Le tag
+ :cvar int start_year: L'année de début de la période.
+ :cvar int end_year: L'année de fin de période.
+ """
tag = models.OneToOneField(Tag, related_name="years", blank=False, null=False, db_index=True)
start_year = models.IntegerField(blank=False, null=False, db_index=True)
end_year = models.IntegerField(blank=False, null=False, db_index=True)
-
+
class Meta:
app_label = 'hdalab'
-
+
class TagLinks(models.Model):
-
+ """
+ Représente un lien entre tag.
+
+ :cvar object subject: Le tag sujet (source) du lien.
+ :cvar object object: Le tag object (cible) du lien.
+ """
+
subject = models.ForeignKey(Tag, blank=False, null=False, db_index=True, related_name="taglinks_subjects")
object = models.ForeignKey(Tag, blank=False, null=False, db_index=True, related_name="taglinks_objects")
-
+
class Meta:
app_label = 'hdalab'
class Country(models.Model):
-
+ """
+ Représente un pays.
+
+ :cvar str dbpedia_uri: L'URI DBPedia de ce pays.
+ """
+
dbpedia_uri = models.URLField(max_length=255, blank=False, null=False, db_index=True, unique=True)
-
+
class Meta:
app_label = 'hdalab'
class GeoInclusion(models.Model):
-
+ """
+ Représente une relation entre un tag et un pays. (par exemple, le tage "Paris" est inclus dans le pays "France")
+ Un tag ne peut être relié qu'a un seul pays.
+
+ :cvar object tag: le tag.
+ :cvar object country: Le pays.
+
+ """
+
tag = models.OneToOneField(Tag, related_name="locatedin", db_index=True)
country = models.ForeignKey(Country, blank=False, null=False, related_name="includes", db_index=True)
-
+
class Meta:
app_label = 'hdalab'
class DbpediaFields(models.Model):
+ """
+ Informations DBPedia pour un tag.
+ Un tag ne peut être lié qu'à une seule instance de cette classe.
+
+ :cvar str dbpedia_uri: L'URI DBPedia.
+ :cvar object tag: Le tag.
+ :cvar str abstract: Texte résumé du tag issu de DBPedia.
+ :cvar str thumbnail: URL d'un thumbnail pour le tag.
+ :cvar str label: Label DBPedia pour le tag.
+
+ """
dbpedia_uri = models.URLField(max_length=2048, blank=False, null=False, db_index=True, unique=False)
tag = fields.OneToOneField(Tag, db_index=True, related_name="dbpedia_fields", related_default=lambda instance: None)
abstract = models.TextField(blank=True, null=True)
- thumbnail = models.URLField(max_length=2048, blank=True, null=True, db_index=False)
+ thumbnail = models.URLField(max_length=2048, blank=True, null=True, db_index=False)
label = models.CharField(max_length=2048, unique=False, blank=True, null=True)
class Meta:
@@ -56,6 +92,16 @@
class DbpediaFieldsTranslation(models.Model):
+ """
+ Les traductions pour un :class:DbpediaField.
+
+ :cvar object master: Le DBPediafield
+ :cvar str language_code: Le code de la langue de la traduction.
+ :cvar str label: Le label traduit. Attention si une traduction du label n'a pas été trouvée, on trouvera là le même label que dans "master".
+ :cvar str abstract: Le résumé traduit. Attention si une traduction du résumé n'a pas été trouvée, on trouvera là le même label que dans "master".
+ :cvar bool is_label_translated: Indique si le label est effectivement traduit.
+ :cvar bool is_abstract_translated: Indicque si le résumé est effectivement traduit.
+ """
master = models.ForeignKey(DbpediaFields, blank=False, null=False, db_index=True, related_name="translations")
language_code = models.CharField(max_length=15, blank=False, null=False, db_index=True)
@@ -69,27 +115,45 @@
class HdaSession(models.Model):
-
+ """
+ Classe destinée à sauvagarder des session d'exploration sur HDALab (état de l'interface de recherche par facette).
+ Cet objet n'est pas utilisé.
+ """
+
sessionid = models.CharField(max_length=36, unique=True, blank=False, null=False, db_index=True)
data = models.TextField(blank=True, null=True)
-
+
class Meta:
app_label = 'hdalab'
class InseeCoords(models.Model):
-
+ """
+ Coordonnées géographiques et nom de l'entité pour un code INSEE.
+
+ :cvar integer insee: code insee.
+ :cvar str city_name: Nom de la commune.
+ :cvar float latitude: Latitude.
+ :cvar float longitude: Longitude.
+ """
+
insee = models.IntegerField(primary_key=True)
city_name = models.CharField(max_length=255, blank=False, null=False)
latitude = models.FloatField(blank=False, null=False)
longitude = models.FloatField(blank=False, null=False)
-
+
class Meta:
app_label = 'hdalab'
class DatasheetExtras(models.Model):
-
+ """
+ Information supplémentaire pour und fiche hda.
+
+ :cvar object datasheet: La fiche HDA.
+ :cvar object insee: Les information insee (:class:InseeCoords) pour la fiche.
+ """
+
datasheet = models.OneToOneField(Datasheet, related_name="extras", db_index=True)
insee = models.ForeignKey(InseeCoords, blank=True, null=True, db_index=True)
-
+
class Meta:
- app_label = 'hdalab'
\ No newline at end of file
+ app_label = 'hdalab'