Ce document présente une bibliothèque de types, d'éléments et d'attributs XML permettant de représenter les codes Nomenclature d'Activités Française (NAF) définis par l'INSEE.
La définition formelle de cette bibliothèque est réalisée sous la forme d'un schéma W3C XML Schema.
Les types, éléments et attributs décrits décrit dans ce module font partie de l'espace de noms INSEE : http://xml.insee.fr/schema/2004
Cette documentation et les ressources qui en dépendent (schémas, exemples, transformations XSLT) sont soumises aux conditions d'utilisation des informations publiées sur le site de l'INSEE.
Le niveau 17 est le premier niveau de classification de la NAF. Il est composé de 17 sections identifiées par un caractère alphabétique ("A" à "Q").
Le type Section_NAF_stype décrivant les codes des 17 sections du niveau 17 de la NAF est défini comme suit :
§1.
<xs:simpleType name="Section_NAF_stype"> <xs:restriction base="ie:Chaîne_ASCII_Majuscule_stype"> <xs:length value="1"/> </xs:restriction> </xs:simpleType>
Ce type peut être affecté dans un schéma pour définir des éléments ou attributs contenant des codes de sections NAF, par exemple:
§2.
<xs:element name="mon-element-section-NAF" type="ie:Section_NAF_stype"/>
Les éléments ou attributs ainsi définis peuvent ensuite être utilisés dans des documents XML, par exemple :
§3.
<ex:mon-element-section-NAF>H</ex:mon-element-section-NAF>
La définition de l'élément Section_NAF est la suivante :
§4.
<xs:element name="Section_NAF" type="ie:Section_NAF_stype"/>
Les éléments Section_NAF peuvent être utilisés directement dans des documents XML, par exemple :
§5.
<ex:entreprise> <ex:nom>RENAULT FRANCE AUTOMOBILES (RFA)</ex:nom> <ie:Section_NAF_stype>G</ie:Section_NAF_stype> </ex:entreprise>
La définition de l'attribut Section_NAF est la suivante :
§6.
<xs:attribute name="Section_NAF" type="ie:Section_NAF_stype"/>
Les attribut Section_NAF peuvent être utilisés directement dans des documents XML, par exemple :
§7.
<ex:entreprise ie:Section_NAF_stype="G"> <ex:nom>RENAULT FRANCE AUTOMOBILES (RFA)</ex:nom> </ex:entreprise>
Le niveau 31 est le deuxième niveau de classification de la NAF. Il est composé de 31 sous-sections identifiées par deux caractères alphabétiques ("AA" à "QA"). Le premier de ces deux caractères est le code de la section dans laquelle la sous-section est incluse.
Le type Sous_Section_NAF_stype décrivant les codes des 31 sous-sections du niveau 31 de la NAF est défini comme suit :
§8.
<xs:simpleType name="Sous_Section_NAF_stype"> <xs:restriction base="ie:Chaîne_ASCII_Majuscule_stype"> <xs:length value="2"/> </xs:restriction> </xs:simpleType>
Ce type peut être affecté dans un schéma pour définir des éléments ou attributs contenant des codes de sections NAF, par exemple:
§9.
<xs:element name="mon-element-sous-section-NAF" type="ie:Sous_Section_NAF_stype"/>
Les éléments ou attributs ainsi définis peuvent ensuite être utilisés dans des documents XML, par exemple :
§10.
<ex:mon-element-sous-section-NAF>DI</ex:mon-element-sous-section-NAF>
La définition de l'élément Sous_Section_NAF est la suivante :
§11.
<xs:element name="Sous_Section_NAF" type="ie:Sous_Section_NAF_stype"/>
Les éléments Sous_Section_NAF peuvent être utilisés directement dans des documents XML, par exemple :
§12.
<ex:entreprise> <ex:nom>RENAULT FRANCE AUTOMOBILES (RFA)</ex:nom> <ie:Sous_Section_NAF>GA</ie:Sous_Section_NAF> </ex:entreprise>
La définition de l'attribut Sous_Section_NAF est la suivante :
§13.
<xs:attribute name="Sous_Section_NAF" type="ie:Sous_Section_NAF_stype"/>
Les attributs Sous_Section_NAF peuvent être utilisés directement dans des documents XML, par exemple :
§14.
<ex:entreprise ie:Sous_Section_NAF_stype="GA"> <ex:nom>RENAULT FRANCE AUTOMOBILES (RFA)</ex:nom> </ex:entreprise>
Le niveau 60 est le troisième niveau de classification de la NAF. Il est composé de 62 divisions identifiées par deux caractères numériques ("01" à "99").
Le type Division_NAF_stype décrivant les codes des 62 divisions du niveau 60 de la NAF est défini comme suit :
§15.
<xs:simpleType name="Division_NAF_stype"> <xs:restriction base="ie:Chaîne_Numérique_stype"> <xs:length value="2"/> </xs:restriction> </xs:simpleType>
Ce type peut être affecté dans un schéma pour définir des éléments ou attributs contenant des codes de divisions NAF, par exemple:
§16.
<xs:element name="mon-element-division-NAF" type="ie:Division_NAF_stype"/>
Les éléments ou attributs ainsi définis peuvent ensuite être utilisés dans des documents XML, par exemple :
§17.
<ex:mon-element-division-NAF>62</ex:mon-element-division-NAF>
La définition de l'élément Division_NAF est la suivante :
§18.
<xs:element name="Division_NAF" type="ie:Division_NAF_stype"/>
Les éléments Division_NAF peuvent être utilisés directement dans des documents XML, par exemple :
§19.
<ex:entreprise> <ex:nom>RENAULT FRANCE AUTOMOBILES (RFA)</ex:nom> <ie:Division_NAF>50</ie:Division_NAF> </ex:entreprise>
La définition de l'attribut Division_NAF est la suivante :
§20.
<xs:attribute name="Division_NAF" type="ie:Division_NAF_stype"/>
Les attribut Division_NAF peuvent être utilisés directement dans des documents XML, par exemple :
§21.
<ex:entreprise ie:Division_NAF_stype="50"> <ex:nom>RENAULT FRANCE AUTOMOBILES (RFA)</ex:nom> </ex:entreprise>
Le niveau 220 est le troisième niveau de classification de la NAF. Il est composé de 224 groupes identifiés par quatre caractères ("01.1" à "99.0"). Les deux premiers de ces caractères sont le code de la division dans laquelle le groupe est inclus.
Le type Groupe_NAF_stype décrivant les codes des 224 groupes du niveau 220 de la NAF est défini comme suit :
§22.
<xs:simpleType name="Groupe_NAF_stype"> <xs:restriction base="xs:token"> <xs:length value="4"/> <xs:pattern value="[0-9]{2}\.[0-9]"/> </xs:restriction> </xs:simpleType>
Ce type peut être affecté dans un schéma pour définir des éléments ou attributs contenant des codes de groupes NAF, par exemple:
§23.
<xs:element name="mon-element-groupe-NAF" type="ie:Groupe_NAF_stype"/>
Les éléments ou attributs ainsi définis peuvent ensuite être utilisés dans des documents XML, par exemple :
§24.
<ex:mon-element-groupe-NAF>18.3</ex:mon-element-groupe-NAF>
La définition de l'élément Groupe_NAF est la suivante :
§25.
<xs:element name="Groupe_NAF" type="ie:Groupe_NAF_stype"/>
Les éléments Groupe_NAF peuvent être utilisés directement dans des documents XML, par exemple :
§26.
<ex:entreprise> <ex:nom>RENAULT FRANCE AUTOMOBILES (RFA)</ex:nom> <ie:Groupe_NAF>50.1</ie:Groupe_NAF> </ex:entreprise>
La définition de l'attribut Groupe_NAF est la suivante :
§27.
<xs:attribute name="Groupe_NAF" type="ie:Groupe_NAF_stype"/>
Les attributs Groupe_NAF peuvent être utilisés directement dans des documents XML, par exemple :
§28.
<ex:entreprise ie:Groupe_NAF_stype="50.1"> <ex:nom>RENAULT FRANCE AUTOMOBILES (RFA)</ex:nom> </ex:entreprise>
Le niveau 700 est le troisième niveau de classification de la NAF. Il est composé de 712 classes identifiées par cinq caractères ("01.1A" à "99.0Z"). Les quatre premiers de ces caractères sont le code du groupe dans lequel la classe est incluse.
Le type Classe_NAF_stype décrivant les codes des 712 classes du niveau 700 de la NAF est défini comme suit :
§29.
<xs:simpleType name="Classe_NAF_stype"> <xs:restriction base="xs:token"> <xs:length value="5"/> <xs:pattern value="[0-9]{2}\.[0-9][A-Z]"/> </xs:restriction> </xs:simpleType>
Ce type peut être affecté dans un schéma pour définir des éléments ou attributs contenant des codes de classes NAF, par exemple:
§30.
<xs:element name="mon-element-classe-NAF" type="ie:Classe_NAF_stype"/>
Les éléments ou attributs ainsi définis peuvent ensuite être utilisés dans des documents XML, par exemple :
§31.
<ex:mon-element-classe-NAF>71.2A</ex:mon-element-classe-NAF>
La définition de l'élément Classe_NAF est la suivante :
§32.
<xs:element name="Classe_NAF" type="ie:Classe_NAF_stype"/>
Les éléments Classe_NAF peuvent être utilisés directement dans des documents XML, par exemple :
§33.
<ex:entreprise> <ex:nom>RENAULT FRANCE AUTOMOBILES (RFA)</ex:nom> <ie:Classes_NAF>50.1Z</ie:Classes_NAF> </ex:entreprise>
La définition de l'attribut Classe_NAF est la suivante :
§34.
<xs:attribute name="Classe_NAF" type="ie:Classe_NAF_stype"/>
Les attributs Classe_NAF peuvent être utilisés directement dans des documents XML, par exemple :
§35.
<ex:entreprise ie:Classe_NAF_stype="50.1Z"> <ex:nom>RENAULT FRANCE AUTOMOBILES (RFA)</ex:nom> </ex:entreprise>
L'utilisation des éléments et attributs définis dans ce schéma permet de se baser directement sur leur nom (et espace de noms) pour les identifier et les valider.
L'utilisation des types simples définis dans ce schéma permet au contraire d'utiliser des noms d'attributs et d'éléments quelconques (et appartenant à des espaces de noms quelconques).
L'attribution de types à ces éléments et attributs permet de les valider en suivant les définitions de ce schéma.
Ces attributions sont également transmises aux applications supportant W3C XML Schema et son "Post Schema Validation Infoset" (PSVI) qui peuvent reconnaître qu'il s'agit des données d'identification définies par ce schéma.
Les documents suivants sont disponibles pour téléchargement.
[Document]
§36.
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ie="http://xml.insee.fr/schema/2004" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://xml.insee.fr/schema/2004" version="1.0"> <xs:include schemaLocation="insee-commun.xsd"/> §1.Type Section_NAF_stype §8.Type Sous_Section_NAF_stype §15.Type Division_NAF_stype §22.Type Groupe_NAF_stype §29.Type Classe_NAF_stype §4.Elément Section_NAF §11.Elément Sous_Section_NAF §18.Elément Division_NAF §25.Elément Groupe §32.Elément Classe_NAF §6.Attribut Section_NAF §13.Attribut Sous_Section_NAF §20.Attribut Division_NAF §27.Attribut Groupe_NAF §34.Attribut Classe_NAF </xs:schema>
Schéma validant les exemples utilisant les définitions de types simples :
[Document]
§37.
<xs:schema xmlns:ex="http://dyomedea.com/ns/example" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ie="http://xml.insee.fr/schema/2004" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://dyomedea.com/ns/example" version="1.0"> <xs:import namespace="http://xml.insee.fr/schema/2004" schemaLocation="naf.xsd"/> §2.Type Section_NAF_stype §9.Type Sous_Section_NAF_stype §16.Type Division_NAF_stype §23.Type Groupe_NAF_stype §30.Type Classe_NAF_stype <xs:element name="exemples"> <xs:complexType> <xs:sequence> <xs:any maxOccurs="unbounded" minOccurs="0" namespace="##targetNamespace" processContents="strict"/> </xs:sequence> </xs:complexType> </xs:element> </xs:schema>
Document XML regroupant les exemples utilisant les définitions de types simple :
[Document]
§38.
<ex:exemples xmlns:ex="http://dyomedea.com/ns/example" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://dyomedea.com/ns/example exemples-naf-types.xsd"> §3.Type Section_NAF_stype §10.Type Sous_Section_NAF_stype §17.Type Division_NAF_stype §24.Type Groupe_NAF_stype §31.Type Classe_NAF_stype </ex:exemples>
Document XML regroupant les exemples utilisant les éléments et attributs :
[Document]
§39.
<ex:exemples xmlns:ex="http://dyomedea.com/ns/example" xmlns:ie="http://xml.insee.fr/schema/2004"> §5.Elément Section_NAF §7.Attribut Section_NAF §12.Elément Sous_Section_NAF §14.Attribut Sous_Section_NAF §19.Elément Division_NAF §21.Attribut Division_NAF §26.Elément Groupe §28.Attribut Groupe_NAF §33.Elément Classe_NAF §35.Attribut Classe_NAF </ex:exemples>
Les documents et sites de référence suivants ont été utilisés pour la constitution de ce vocabulaire XML.
Publié par l'INSEE, le site Nomenclature d'Activités Française donne accès à la définition de la NAF et permet de télécharger les listes de codes sous plusieurs formats.
Les ressources suivantes sont définies ou référencées dans ce document :