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.
Certains objets présentés ici ont été introduits dans la première version de l'espace de noms, et obéissent à des règles de nommage qui ont été depuis abandonnées. Ils ont été remplacés par des types équivalents respectant les nouvelles règles et sont indiqués ci-dessous comme d'usage déconseillé. Ils seront supprimés dans les prochaines versions de l'espace de noms.
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
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 21 est le premier niveau de classification de la NAF. Il est composé de 21 sections identifiées par un caractère alphabétique ("A" à "U").
Le type SectionNAF2008Type décrivant les codes des 21 sections du niveau 21 de la NAF est défini comme suit :
§1.
<xs:simpleType name="SectionNAF2008Type"> <xs:restriction base="ie:ChaineAsciiMajusculeType"> <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:SectionNAF2008Type"/>
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 SectionNAF2008 est la suivante :
§4.
<xs:element name="SectionNAF2008" type="ie:SectionNAF2008Type"/>
Les éléments SectionNAF2008 peuvent être utilisés directement dans des documents XML, par exemple :
§5.
<ex:entreprise> <ex:nom>RENAULT FRANCE AUTOMOBILES (RFA)</ex:nom> <ie:SectionNAF2008>C</ie:SectionNAF2008> </ex:entreprise>
La définition de l'attribut sectionNAF2008 est la suivante :
§6.
<xs:attribute name="sectionNAF2008" type="ie:SectionNAF2008Type"/>
Les attributs Section_NAF peuvent être utilisés directement dans des documents XML, par exemple :
§7.
<ex:entreprise ie:sectionNAF2008="C"> <ex:nom>RENAULT FRANCE AUTOMOBILES (RFA)</ex:nom> </ex:entreprise>
Le niveau 88 est le deuxième niveau de classification de la NAF. Il est composé de 88 divisions identifiées par deux caractères numériques ("01" à "99").
Le type DivisionNAF2008Type décrivant les codes des 88 divisions du niveau 88 de la NAF est défini comme suit :
§8.
<xs:simpleType name="DivisionNAF2008Type"> <xs:restriction base="ie:ChaineNumeriqueType"> <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:
§9.
<xs:element name="mon-element-division-naf" type="ie:DivisionNAF2008Type"/>
Les éléments ou attributs ainsi définis peuvent ensuite être utilisés dans des documents XML, par exemple :
§10.
<ex:mon-element-division-naf>25</ex:mon-element-division-naf>
La définition de l'élément DivisionNAF2008 est la suivante :
§11.
<xs:element name="DivisionNAF2008" type="ie:DivisionNAF2008Type"/>
Les éléments DivisionNAF2008 peuvent être utilisés directement dans des documents XML, par exemple :
§12.
<ex:entreprise> <ex:nom>RENAULT FRANCE AUTOMOBILES (RFA)</ex:nom> <ie:DivisionNAF2008>29</ie:DivisionNAF2008> </ex:entreprise>
La définition de l'attribut divisionNAF2008 est la suivante :
§13.
<xs:attribute name="divisionNAF2008" type="ie:DivisionNAF2008Type"/>
Les attributs divisionNAF2008 peuvent être utilisés directement dans des documents XML, par exemple :
§14.
<ex:entreprise ie:divisionNAF2008="29"> <ex:nom>RENAULT FRANCE AUTOMOBILES (RFA)</ex:nom> </ex:entreprise>
Le niveau 272 est le troisième niveau de classification de la NAF. Il est composé de 272 groupes identifiés par quatre caractères ("01.1" à "99.0").
Le type GroupeNAF2008Type décrivant les codes des 272 groupes du niveau 272 de la NAF est défini comme suit :
§15.
<xs:simpleType name="GroupeNAF2008Type"> <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:
§16.
<xs:element name="mon-element-groupe-naf" type="ie:GroupeNAF2008Type"/>
Les éléments ou attributs ainsi définis peuvent ensuite être utilisés dans des documents XML, par exemple :
§17.
<ex:mon-element-groupe-naf>25.6</ex:mon-element-groupe-naf>
La définition de l'élément GroupeNAF2008 est la suivante :
§18.
<xs:element name="GroupeNAF2008" type="ie:GroupeNAF2008Type"/>
Les éléments GroupeNAF2008 peuvent être utilisés directement dans des documents XML, par exemple :
§19.
<ex:entreprise> <ex:nom>RENAULT FRANCE AUTOMOBILES (RFA)</ex:nom> <ie:GroupeNAF2008>29.1</ie:GroupeNAF2008> </ex:entreprise>
La définition de l'attribut groupeNAF2008 est la suivante :
§20.
<xs:attribute name="groupeNAF2008" type="ie:GroupeNAF2008Type"/>
Les attributs groupeNAF2008 peuvent être utilisés directement dans des documents XML, par exemple :
§21.
<ex:entreprise ie:groupeNAF2008="29.1"> <ex:nom>RENAULT FRANCE AUTOMOBILES (RFA)</ex:nom> </ex:entreprise>
Le niveau 615 est le quatrième niveau de classification de la NAF. Il est composé de 615 classes identifiées par cinq caractères ("01.11" à "99.00").
Le type ClasseNAF2008Type décrivant les codes des 615 classes du niveau 615 de la NAF est défini comme suit :
§22.
<xs:simpleType name="ClasseNAF2008Type"> <xs:restriction base="xs:token"> <xs:length value="5"/> <xs:pattern value="[0-9]{2}\.[0-9]{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 classes NAF, par exemple:
§23.
<xs:element name="mon-element-classe-naf" type="ie:ClasseNAF2008Type"/>
Les éléments ou attributs ainsi définis peuvent ensuite être utilisés dans des documents XML, par exemple :
§24.
<ex:mon-element-classe-naf>25.61</ex:mon-element-classe-naf>
La définition de l'élément ClasseNAF2008 est la suivante :
§25.
<xs:element name="ClasseNAF2008" type="ie:ClasseNAF2008Type"/>
Les éléments ClasseNAF2008 peuvent être utilisés directement dans des documents XML, par exemple :
§26.
<ex:entreprise> <ex:nom>RENAULT FRANCE AUTOMOBILES (RFA)</ex:nom> <ie:ClasseNAF2008>29.10</ie:ClasseNAF2008> </ex:entreprise>
La définition de l'attribut classeNAF2008 est la suivante :
§27.
<xs:attribute name="classeNAF2008" type="ie:ClasseNAF2008Type"/>
Les attributs classeNAF2008 peuvent être utilisés directement dans des documents XML, par exemple :
§28.
<ex:entreprise ie:classeNAF2008="29.10"> <ex:nom>RENAULT FRANCE AUTOMOBILES (RFA)</ex:nom> </ex:entreprise>
Le niveau 732 est le cinquième niveau de classification de la NAF. Il est composé de 732 sous-classes identifiées par six caractères ("01.11Z" à "99.00Z").
Le type SousClasseNAF2008Type décrivant les codes des 732 sous-classes du niveau 732 de la NAF est défini comme suit :
§29.
<xs:simpleType name="SousClasseNAF2008Type"> <xs:restriction base="xs:token"> <xs:length value="6"/> <xs:pattern value="[0-9]{2}\.[0-9]{2}[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 sous-classes NAF, par exemple:
§30.
<xs:element name="mon-element-sous-classe-naf" type="ie:SousClasseNAF2008Type"/>
Les éléments ou attributs ainsi définis peuvent ensuite être utilisés dans des documents XML, par exemple :
§31.
<ex:mon-element-sous-classe-naf>25.61Z</ex:mon-element-sous-classe-naf>
La définition de l'élément SousClasseNAF2008 est la suivante :
§32.
<xs:element name="SousClasseNAF2008" type="ie:SousClasseNAF2008Type"/>
Les éléments SousClasseNAF2008 peuvent être utilisés directement dans des documents XML, par exemple :
§33.
<ex:entreprise> <ex:nom>RENAULT FRANCE AUTOMOBILES (RFA)</ex:nom> <ie:SousClasseNAF2008>29.10Z</ie:SousClasseNAF2008> </ex:entreprise>
La définition de l'attribut sousClasseNAF2008 est la suivante :
§34.
<xs:attribute name="sousClasseNAF2008" type="ie:SousClasseNAF2008Type"/>
Les attributs sousClasseNAF2008 peuvent être utilisés directement dans des documents XML, par exemple :
§35.
<ex:entreprise ie:sousClasseNAF2008="29.10Z"> <ex:nom>RENAULT FRANCE AUTOMOBILES (RFA)</ex:nom> </ex:entreprise>
§36.
<xs:simpleType name="Section_NAF_stype" ie:obsolete="true"> <xs:restriction base="ie:Chaîne_ASCII_Majuscule_stype"> <xs:length value="1"/> </xs:restriction> </xs:simpleType>
§37.
<xs:element name="Section_NAF" type="ie:Section_NAF_stype" ie:obsolete="true"/>
§38.
<xs:attribute name="Section_NAF" type="ie:Section_NAF_stype" ie:obsolete="true"/>
§39.
<xs:simpleType name="Sous_Section_NAF_stype" ie:obsolete="true"> <xs:restriction base="ie:Chaîne_ASCII_Majuscule_stype"> <xs:length value="2"/> </xs:restriction> </xs:simpleType>
§40.
<xs:element name="Sous_Section_NAF" type="ie:Sous_Section_NAF_stype" ie:obsolete="true"/>
§41.
<xs:attribute name="Sous_Section_NAF" type="ie:Sous_Section_NAF_stype" ie:obsolete="true"/>
§42.
<xs:simpleType name="Division_NAF_stype" ie:obsolete="true"> <xs:restriction base="ie:Chaîne_Numérique_stype"> <xs:length value="2"/> </xs:restriction> </xs:simpleType>
§43.
<xs:element name="Division_NAF" type="ie:Division_NAF_stype" ie:obsolete="true"/>
§44.
<xs:attribute name="Division_NAF" type="ie:Division_NAF_stype" ie:obsolete="true"/>
§45.
<xs:simpleType name="Groupe_NAF_stype" ie:obsolete="true"> <xs:restriction base="xs:token"> <xs:length value="2"/> <xs:pattern value="[0-9]{2}\.[0-9]"/> </xs:restriction> </xs:simpleType>
§46.
<xs:element name="Groupe_NAF" type="ie:Groupe_NAF_stype" ie:obsolete="true"/>
§47.
<xs:attribute name="Groupe_NAF" type="ie:Groupe_NAF_stype" ie:obsolete="true"/>
§48.
<xs:simpleType name="Classe_NAF_stype" ie:obsolete="true"> <xs:restriction base="xs:token"> <xs:length value="5"/> <xs:pattern value="[0-9]{2}\.[0-9][A-Z]"/> </xs:restriction> </xs:simpleType>
§49.
<xs:element name="Classe_NAF" type="ie:Classe_NAF_stype" ie:obsolete="true"/>
§50.
<xs:attribute name="Classe_NAF" type="ie:Classe_NAF_stype" ie:obsolete="true"/>
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]
§51.
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ie="http://xml.insee.fr/schema" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://xml.insee.fr/schema" version="2.0"> <xs:include schemaLocation="insee-commun.xsd"/> §1.Type SectionNAF2008Type §8.Type DivisionNAF2008Type §15.Type GroupeNAF2008Type §22.Type ClasseNAF2008Type §29.Type SousClasseNAF2008Type §4.Élément SectionNAF2008 §11.Élément DivisionNAF2008 §18.Élément GroupeNAF2008 §25.Élément ClasseNAF2008 §32.Élément SousClasseNAF2008 §6.Attribut sectionNAF2008 §13.Attribut divisionNAF2008 §20.Attribut groupeNAF2008 §27.Attribut classeNAF2008 §34.Attribut sousClasseNAF2008 <xs:annotation ie:obsolete="true"> <xs:documentation>Les objets qui suivent sont obsolètes et seront supprimés dans les prochaines versions.</xs:documentation> </xs:annotation> §36.Type Section_NAF_stype §39.Type Sous_Section_NAF_stype §42.Type Division_NAF_stype §45.Type Groupe_NAF_stype §48.Type Classe_NAF_stype §37.Élément Section_NAF §40.Élément Sous_Section_NAF §43.Élément Division_NAF §46.Élément Groupe_NAF §49.Élément Classe_NAF §38.Attribut Section_NAF §41.Attribut Sous_Section_NAF §44.Attribut Division_NAF §47.Attribut Groupe_NAF §50.Attribut Classe_NAF </xs:schema>
Schéma validant les exemples utilisant les définitions de types simples :
[Document]
§52.
<xs:schema xmlns:ex="http://dyomedea.com/ns/example" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ie="http://xml.insee.fr/schema" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://dyomedea.com/ns/example" version="1.0"> <xs:import namespace="http://xml.insee.fr/schema" schemaLocation="naf.xsd"/> §2.Type SectionNAF2008Type §9.Type DivisionNAF2008Type §16.Type GroupeNAF2008Type §23.Type ClasseNAF2008Type §30.Type SousClasseNAF2008Type <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 simples :
[Document]
§53.
<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 SectionNAF2008Type §10.Type DivisionNAF2008Type §17.Type GroupeNAF2008Type §24.Type ClasseNAF2008Type §31.Type SousClasseNAF2008Type </ex:exemples>
Document XML regroupant les exemples utilisant les éléments et attributs :
[Document]
§54.
<ex:exemples xmlns:ex="http://dyomedea.com/ns/example" xmlns:ie="http://xml.insee.fr/schema"> §5.Élément SectionNAF2008 §7.Attribut sectionNAF2008 §12.Élément DivisionNAF2008 §14.Attribut divisionNAF2008 §19.Élément GroupeNAF2008 §21.Attribut groupeNAF2008 §26.Élément ClasseNAF2008 §28.Attribut classeNAF2008 §33.Élément SousClasseNAF2008 §35.Attribut sousClasseNAF2008 </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 :