29-11-2011 : Remettre dans le débat politique les principes du Conseil National de la Résistance
17-02-2012 : Pétition pour une protection de l’apiculture et des consommateurs face au lobby des OGM
Logo de mon site
Logo de mon site
Faire un don

Luxpopuli / eZ Publish / Les datatypes / Datatype : ISBN





Right menu

Logo du site ez.no  Logo XHTML 1.O du W3C  Logo XHTML 1.O du W3C  Site francophone officiel de Firefox
zero papier grâce aux catalogues et promos en ligne de bonial

Les datatypes

Table des matières

  1. Les datatypes
  2. Datatype : Authors -- Auteurs
  3. Datatype : Country -- Pays
  4. Datatype : Identifier -- Identifiant
  5. Datatype : ISBN
  6. Datatype : Matrix -- Matrice
  7. Datatype : Multi-option2
  8. Datatype : Product category -- Catégorie de produits
  9. Datatype : Time -- Heure
  10. Datatype : XML Block -- Bloc XML

Datatype : ISBN

Date de publication: le mardi 5 juin 2007 à 22h43
Dernière modification: par Pascal BOYER le dimanche 20 février 2011 à 17h26

20/03/2008 4:59

Summary / Résumé

Validates and stores an ISBN value.
Valide et stocke une valeur ISBN (International Standard Book Number ou Numéro International Normalisé du Livre).

Properties / Propriétés

Name
Name
Internal name
Nom interne
Searchable
Interrogeable
Information collector
Collecteur d'information
ISBN ezisbn Yes / Oui No / Non

Description

The "ISBN" datatype allows the validation, storage and retrieval of a single ISBN (International Standard Book Number) code. From version 3.10 of eZ Publish, this datatype uses the new ISBN-13 format by default.
Le datatype ISBN permet de valider, de stocker et de retrouver un code ISBN. Ce datatype, depuis la version eZ Publish 3.10, utilise par défaut le nouveau format ISBN-13.

Note that from the 1st of January, 2007, the book industry started using 13 digit ISBN codes (ISBN-13) to identify all books in their supply chains.
Retenez que depuis le 1er janvier 2007 l'industrie du livre utilise les codes ISBN à 13 chiffres ( ISBN-13 ) afin d'identifier tous les livres dans leurs chaînes d'approvisionnement.

According to the ISBN-13 standard, the 13-digit number consists of five parts. The parts are separated by dashes. The following table describes each of the five parts using the ISBN-13 code "978-0-14026-690-0" as an example.
En accord avec le standard ISBN-13, le nombre à 13 chiffres est composé de 5 parties séparées par des tirets. Le tableau ci-dessous décrit chacune de ces 5 parties en prenant pour exemple le code ISBN-13 «978-0-14026-690-0»:

# Name
Nom
Description Example
Exemple
1 Prefix
Préfixe
A three digit prefix that can be either 978 or 979. Note that the new 979 prefix will not be utilized until all 978 prefixes have been assigned.
Un nombre à 3 chiffres valant 978 ou 979. Retenez que le nouveau préfixe 979 ne sera pas utilisé tant que tous les préfixes 978 n'auront pas été assignés.
978
2 Registration group
Langue de publication ou Groupe linguistique
A variable set of digits that identify the country/region in which the ISBN code was assigned. Zero ("0") means that the book belongs to an English speaking area.
Un groupe de chiffres qui identifie le pays/la région où le code ISBN a été assigné. Le chiffre zéro «0» signifie que le livre appartient à une région anglophone.
0
3 Registrant
Maison d'édition ou  Éditeur
A variable set of digits that identify the publisher to whom the ISBN code was originally allocated.
Un groupe de chiffres qui identifie l'entité qui publie et à qui le code ISBN a été initialement affecté.
14026
4 Publication
Titre du livre
A variable set of digits that identify the title of the book.
Un groupe de chiffres qui identifie le titre du livre.
690
5 Check digit
Clef de contrôle
A one digit control number that makes it possible to validate the ISBN code. The check digit is calculated using a formula that makes use of the preceding parts (Prefix, Registration group, Registrant and Publication).
Un unique chiffre de contrôle qui permet de valider le code ISBN. Cette clef de contrôle est calculé par le biais d'une formule utilisant les 4 précédentes parties.
0

While the "Prefix" and "Check digit" elements have a fixed length (3 and 1 digits accordingly), the length of the remaining elements may vary. However, the total length of an ISBN-13 is always 13 digits. The length of the "Registration group", "Registrant" and "Publication" elements can be calculated according to the rules set by the International ISBN Agency. The calculation of these elements is based on the distribution of ranges for the different regions.
Alors que Préfixe et Clef de contrôle sont de taille fixe (respectivement 3 et 1 chiffres), la longueur des trois autres numéros peut varier. Cependant, un code ISBN-13 est toujours constitué de 13 chiffres. La longueur de Langue de publication, de Titulaire et de Titre du livre peut être calculée en respectant les règles définies par l' Agence ISBN Internationale . Le calcul de ces éléments se base sur la distribution des numéros des différentes régions.

In eZ Publish, the ISBN codes are stored as text. The digits are separated by dashes. The different ranges are stored in the database, allowing the system to fix up incorrectly entered ISBN-13 codes (codes with misplaced or missing dashes). When a new version of eZ Publish is released, the latest information about the different ranges is downloaded from http://www.isbn-international.org and stored in the "db_data.dba" file located in the "kernel/classes/datatypes/ezisbn/share/" directory. During the installation process, the setup wizard imports this information to the database. If the information about ranges is missing from the database, the system will display a warning at the class attribute edit interface for this datatype (see below).
Dans eZ Publish, les codes ISBN sont stockés au format texte et les chiffres sont séparés par des tirets. Les différents numéros d'un code étant stockés dans la base de données, cela permet au système de corriger les codes ISBN-13 incorrects (codes contenant des tirets mal placés ou manquants). Lorsqu'une nouvelle version de eZ Publish est publiée, les dernières informations sur les différents numéros d'un code sont téléchargées à partir du site http://www.isbn-international.org puis stockées dans le fichier kernel/classes/datatypes/ezisbn/share/db_data.dba. Au cours du processus d'installation, l'assistant importe ces informations dans la base de données. Si les informations relatives à ces numéros de code sont absentes dans la base de données, alors le système affichera un message d'avertissement dans l'interface d'édition des attributs de classe au niveau de ce datatype (voir ci-dessous).

Note that the calculation rules can be changed on a monthly basis and thus you should run the "updateisbn13.php" script regularly in order to keep the range-information in the database up to date. The following example shows how to get the latest ranges from the ISBN International website:
Retenez que les règles de calcul pouvant évoluer d'un mois à l'autre, vous devez donc régulièrement exécuter le script updateisbn13.php afin de conserver à jour dans la base de données les informations des numéros de codes. L'exemple qui suit explique comment obtenir les derniers numéros de codes à partir du site international de l'ISBN:

  1. Download a ".js" file containing the list of ranges using the following link: http://www.isbn-international.org/converter/ranges.js
    Télécharger, à partir du site http://www.isbn-international.org/converter/ranges.js , un fichier .js contenant une liste de codes
  2. Navigate into the eZ Publish directory and copy the downloaded file there.
    Se placer à la racine du répertoire d'installation de eZ Publish pour y copier le fichier télécharger.
  3. Run the "updateisbn13.php" script using the following shell command:
    Exécuter le script updateisbn13.php par le biais de la commande suivante:

    php bin/php/updateisbn13.php --file=ranges.js

The script will import information from the "range.js" file to the database.
Le script importera dans la base de données les données informations du fichier range.js

The following screenshot shows the class attribute edit interface for this datatype.
L'image ci-dessous illustre l'interface d'édition des attributs de classe dans le cas de ce datatype

Class attribute edit interface for the "ISBN" datatype.
Interface d'édition des attributs de classe dans le cas du datatype «ISBN».

The "ISBN-13 format" checkbox makes it possible to configure the datatype so that it validates and stores ISBN codes according to the ISBN-13 standard. From version 3.10, this checkbox is checked by default when a new attribute using the ISBN datatype is created. Note that the object edit interface will appear differently (four input fields instead of one) when the checkbox is unchecked (see below).
La case à cocher ISBN-13 format permet de configurer le datatype afin qu'il valide et stoker les codes ISBN en accord avec le standard ISBN-13. Depuis la version eZ Publish 3.10, cette case à cocher est cochée par défaut lorsqu'un nouvel attribut basé sur le datatype ISBN est créé. Retenez que l'interface d'édition d'objet s'affichera différemment (quatre champs de saisie à la place d'un seul) lorsque la case à cocher n'est pas cochée (voir ci-dessous).

The following screenshot shows how the class attribute edit interface for the ISBN datatype looks like if the information about ranges is missing from the database.
L'image ci-dessous illustre l'interface d'édition des attributs de classe dans le cas de ce datatype et lorsque les informations sur les codes sont manquantes dans la base de données:

Interface d'édition des attributs de classe dans le cas du datatype «ISBN» et lorsque les données des codes ISBN-13 n'ont pas été importées

Class attribute edit interface for the "ISBN" datatype if the range data for ISBN-13 was not imported.
Interface d'édition des attributs de classe dans le cas du datatype «ISBN» et lorsque les données des codes ISBN-13 n'ont pas été importées.

Click the "Import ISBN range data" button to import ranges to the database.
Cliquez sur le bouton Import ISBN range data pour importer les codes dans la base de données.

Object attribute edit interface / Interface d'édition des attributs d'objet

The following screenshot shows the default object attribute edit interface for this datatype.
L'image ci-dessous illustre l'interface d'édition des attributs d'objet par défaut dans le cas de ce datatype.

Interface d'édition des attributs d'objet dans le cas du datatype «ISBN».

Object attribute edit interface for the "ISBN" datatype.
Interface d'édition des attributs d'objet dans le cas du datatype «ISBN».

As the screenshot shows, an ISBN-13 code consists of five parts separated by dashes.
Comme le montre l'image ci-dessus, un code ISBN-13 est composé de 5 parties séparées par des tirets.

The system will automatically add dashes in case they were omitted during input (for example, "9780140266900" will be converted to "978-0-14026-690-0"). The system will also automatically fix incorrectly placed dashes (for example, "978-0-140266-90-0" will be converted to "978-0-14026-690-0"). If an ISBN-10 code is entered, the system will automatically convert it into a valid ISBN-13 code unless the "ISBN-13 format" checkbox is disabled at the class level. Note that there is no support for automatic conversion of ISBN-13 codes to ISBN-10 codes since the ISBN-10 format is considered to be obsolete.
Le système ajoutera automatiquement les tirets si on les omet lorsque lors de la saisie du code (le code 9780140266900 sera par exemple converti en 978-0-14026-690-0). Le système corrige également automatiquement l'emplacement des tirets lorsque ceux-ci sont mal placés (le code 978-0-140266-90-0 sera par exemple converti en 978-0-14026-690-0). Lorsqu'un code ISBN-10 est saisi alors le système le converti automatiquement en code ISBN-13 valide à moins que la case à cocher  ISBN-13 format soit décochée au niveau de la classe d'objet. Retenez que la conversion automatique des codes ISBN-13 en codes ISBN-10 n'est pas supportée en raison de l'obsolescence du format ISBN-10.

In eZ Publish 3.10, a feature for checking the validity of ISBN codes has been introduced. By default, the system will check all elements of an ISBN-13 code and display a warning if one or more of the entered elements are invalid. For example, "978-0-14026-690-6" is considered to be an invalid code; according to the standard, the last digit should have been a zero ("0"). The validity checking feature can be turned on (default) or off. It is controlled by the "StrictValidation" setting located in the [ISBNSettings] section of the "settings/content.ini" configuration file. Note that the "Prefix" and "Check digit" parts will be validated regardless if the "StrictValidation" setting is enabled or not.
Dans la version eZ Publish 3.10, une fonction de contrôle de validité des codes ISBN a été introduite. Par défaut, le système contrôle tous les éléments des codes ISBN-13 puis affiche un message d'avertissement si au moins l'un de ces éléments est invalide. Par exemple, le code 978-0-14026-690-6 est invalide: pour rester conforme aux standards, le dernier chiffre devrait être zéro (0). La fonction de contrôle de validité des codes peut être activée (état par défaut) ou désactivée par le biais du paramètre StrictValidation de la section [ISBNSettings] du fichier de configuration settings/content.ini. Retenez que le Préfixe et le Chiffre de contact seront validés indépendamment du fait que le paramètre StrictValidation soit activé ou non.

The following screenshot shows the object attribute edit interface for this datatype when ISBN-13 support is disabled.
L'image ci-dessous illustre l'interface d'édition des attributs d'objet lorsque le support du datatype ISBN-13 est désactivé.

Interface d'édition des attributs d'objet dans le cas du datatype «ISBN» et en mode ISBN-10.

Object attribute edit interface for the "ISBN" datatype when in ISBN-10 mode.
Interface d'édition des attributs d'objet dans le cas du datatype «ISBN» et en mode ISBN-10.

Raw output / Sortie brute

The ".content" of an ezcontentobjectattribute object using this datatype returns a hash containing eight elements. The hash-structure of the elements is given in the table below.
La partie .content d'un objet ezcontentobjectattribute utilisant un attribut basé sur ce datatype renvoie un tableau (hash) contenant huit éléments et dont la structure est données par le tableau ci-dessous:

Key
Clef
Type Description
prefix
préfixe
string
Chaîne de caractères
The "Prefix" part of the ISBN code (for example 978).
La partie Préfixe du code ISBN (par exemple 978)
field1
champ 1
string
 Chaîne de caractères
The "Registration group" part of the ISBN code (for example 0).
La partie Langue de publication du code ISBN (par exemple 0)
field2
champ 2
string
 Chaîne de caractères
The "Registrant" part of the ISBN code (for example 14026).
La partie Titulaire du code ISBN (par exemple 14026)
field3
champ 3
string
 Chaîne de caractères
The "Publication group" part of the ISBN code (for example 690).
La partie Titre du livre du code ISBN (par exemple 690)
field4
champ 4
string
 Chaîne de caractères
The "Check digit" part of the ISBN code (for example 0).
La partie Clef de contrôle du code ISBN (par exemple 0)
value
valeur
string
 Chaîne de caractères
The entire ISBN code with dashes (for example 978-0-14026-690-0).
L'intégralité du code ISBN avec des tirets (par exemple 978-0-14026-690-0)
value_without_hyphens
valeur_sans_trait_d_union
string
 Chaîne de caractères
The entire ISBN code without dashes (for example 9780140266900).
L'intégralité du code ISBN sans traits d'union (par exemple 9780140266900)
value_with_spaces
valeur_avec_des_espaces
string
 Chaîne de caractères
The entire ISBN code with spaces (for example 978 0 14026 690 0).
L'intégralité du code ISBN avec des espaces (par exemple 978 0 14026 690 0)