XML Schema Documentation

Table of Contents

top

Schema Document Properties

Target Namespace None
Element and Attribute Namespaces
  • Global element and attribute declarations belong to this schema's target namespace.
  • By default, local element declarations have no namespace.
  • By default, local attribute declarations have no namespace.
Documentation ICCU - Istituto Centrale per il Catalogo Unico delle Biblioteche Italiane e per le Informazioni Bibliografiche
Laboratorio per le Informazioni Bibliografiche
Schema XML per lo scambio dei dati relativi a biblioteche italiane
Revisione a cura di Carla Di Loreto, Ornella Napoli, Andrea Giuliano, Annamaria Mandillo
Redazione dello schema a cura di Andrea Giuliano
Storia delle revisioni
				$Author: pflorio $ $Id: biblioteca-1.1.xsd,v 1.3
				2006-07-12 08:44:56 giuliano Exp $ $Log:
				biblioteca-1.1.xsd,v $ Revision 1.3 2006-07-12 08:44:56
				giuliano - Modificati o creati alcuni elementi per
				aderire quanto più possibile al modulo di rilevamento
				predisposto dalle regioni. In particolare:

				- reso opzionale il codice iccu, con l'idea di gestire
				biblioteche senza codice, ma almeno con provincia, come
				vengono gestite attualmente dall'applicativo - servizi:
				aggiunta carta-servizi, ore-settimanali,
				ore-settimanali-pomeridiane, settimane-apertura -
				patrimonio: aggiunti elementi
				acquisti-ultimi-quindici-anni, totale-posseduto e
				totale-posseduto-ragazzi; aggiunto attributo
				acquisti-ultimo-anno a materialeType - amministrativa:
				aggiunto elemento minori-quattordici-anni a utenti

				- Trasformati in nonNegativeInteger tutti gli integer.

				- Individuata la necessità di concordare liste
				d'autorità per: - servizi in carta-servizi (quali
				possono essere i servizi?) - categoria-ammessa in
				accesso (quali categorie possono accedere?)

				- Piccole correzioni qua e là.

				Revision 1.2 2006/03/14 09:25:54 giuliano Aggiunte: -
				citazione bibliografica per i cataloghi a volume -
				superficie totale e al pubblico - carta dei servizi (non
				gestita da ICCU) - quantità dei prestiti dei vari tipi
				(non gestiti da ICCU) Correzioni: - "fondo-antico"
				diventa "fondi-antichi", non ripetibile -
				"fondoAnticoType" ha ora solo un attributo "volumi", che
				a sua volta è solo una enumerazione di valori che indica
				i tre possibili intervalli numerici di posseduto (-1000,
				1000-5000, e 5000-)

				Revision 1.1 2006/03/07 13:17:23 giuliano Alla copertura
				bibliografica di catalogoType sono stati aggiunti due
				elementi con formato "YYYY", in modo da rappresentare un
				intervallo di anni.
			

Declared Namespaces

Prefix Namespace
xml http://www.w3.org/XML/1998/namespace
ht http://www.w3.org/1999/xhtml
xs http://www.w3.org/2001/XMLSchema
Schema Component Representation
<xs:schema>
...
</xs:schema>
top

Global Schema Components

Element: biblioteche

Name biblioteche
Type Locally-defined complex type
Nillable no
Abstract no
XML Instance Representation
<biblioteche>
<dataExport> xs:dateTime </dataExport> [1] ?
<biblioteca> bibliotecaType </biblioteca> [0..*]
</biblioteche>
Schema Component Representation
<xs:element name="biblioteche">
<xs:complexType>
<xs:sequence>
<xs:element name="dataExport" type="xs:dateTime" minOccurs="1" maxOccurs="1"/>
<xs:element name="biblioteca" type="bibliotecaType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
top

Complex Type: bibliotecaType

Super-types: None
Sub-types: None
Name bibliotecaType
Abstract no
Documentation L'elemento "biblioteca" è la radice di un documento di questo tipo. Tale elemento fa parte di un content model "xsd:all", che non obbliga a rispettare l'ordine in cui si presentano gli elementi, a differenza di "xsd:sequence".

In tutto il resto dello schema si tende ad usare questo content model, perché meno rigido. Non dovrebbe comportare eccessivo carico per il parser.

La maggior parte degli elementi e attributi risultano opzionali e ripetibili, ma questi aspetti saranno oggetto di una revisione futura dell'intero schema alla luce delle possibilità e delle richieste dei diversi partner interessati a scambiare dati nel formato qui descritto.

Nei casi più elementari si è ritenuto opportuno fissare l'obbligatorietà e la ripetibilità degli elementi.
XML Instance Representation
<...>
<anagrafica> anagraficaType </anagrafica> [0..1]
<cataloghi> cataloghiType </cataloghi> [0..1]
<patrimonio> patrimonioType </patrimonio> [0..1]
<specializzazione> specializzazioneType </specializzazione> [0..*]
<servizi> serviziType </servizi> [0..1]
<amministrativa> amministrativaType </amministrativa> [0..1]
</...>
Schema Component Representation
<xs:complexType name="bibliotecaType">
<xs:sequence>
<xs:element name="anagrafica" type="anagraficaType" minOccurs="0"/>
<xs:element name="cataloghi" type="cataloghiType" minOccurs="0"/>
<xs:element name="patrimonio" type="patrimonioType" minOccurs="0"/>
<xs:element name="specializzazione" type="specializzazioneType" maxOccurs="unbounded" minOccurs="0"/>
<xs:element name="servizi" type="serviziType" minOccurs="0"/>
<xs:element name="amministrativa" type="amministrativaType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: anagraficaType

Super-types: None
Sub-types: None
Name anagraficaType
Abstract no
Documentation Questo tipo raggruppa tutte le informazioni di tipo strettamente anagrafico.
XML Instance Representation
<...>
Start All [1]
<dataCensimento> annoSecoloType </dataCensimento> [0..1] ?
<dataAggiornamento> xs:dateTime </dataAggiornamento> [0..1] ?
<nome> [1] ?
<attuale> string </attuale> [1]
<precedente> string </precedente> [0..*]
<alternativo> string </alternativo> [0..*]
</nome>
<codici> [1] ?
Start All [1]
<iccu> xs:string </iccu> [1] ?
<acnp> xs:string </acnp> [0..1]
<rism> xs:string </rism> [0..1]
<sbn> xs:string </sbn> [0..1]
<cei> xs:string </cei> [0..1]
<cmbs> xs:string </cmbs> [0..1]
End All
</codici>
<indirizzo> [0..1] ?
Start All [1]
<via> xs:string </via> [0..1]
<cap> xs:string </cap> [0..1]
<frazione> xs:string </frazione> [0..1]
<comune> string <<pattern = [0-9]{6}>> </comune> [0..1]
<provincia> string <<pattern = [0-9]{3}>> </provincia> [0..1]
<regione> xs:string </regione> [0..1]
<stato> string <<pattern = [a-zA-Z]{2}>> </stato> [0..1]
End All
</indirizzo>
<contatti> [0..1] ?
<telefonico
tipo="string <<value = {'fax'|'telefono'}>> [1]"> [0..*] ?
Start All [1]
<prefisso> xs:string </prefisso> [1]
<numero> xs:string </numero> [1]
<note> xs:string </note> [0..1]
End All
</telefonico>
<altro
tipo="string <<value = {'e-mail'|'telex'|'url'}>> [1]"> [0..*] ?
<valore> xs:string </valore> [1]
<note> xs:string </note> [0..1]
</altro>
</contatti>
<edificio> [0..1] ?
<denominazione> xs:string </denominazione> [0..1]
<monumentale> siNoType </monumentale> [0..1]
<appositamenteCostruito> siNoType </appositamenteCostruito> [0..1]
<dataCostruzione> annoSecoloType </dataCostruzione> [0..1]
</edificio>
<Istituzione> [0..1] ?
<dataIstituzione> annoSecoloType </dataIstituzione> [0..1]
<dataFondazione> annoSecoloType </dataFondazione> [0..1]
</Istituzione>
End All
</...>
Schema Component Representation
<xs:complexType name="anagraficaType">
<xs:all>
<xs:element name="dataCensimento" type="annoSecoloType" minOccurs="0" maxOccurs="1"/>
<xs:element name="dataAggiornamento" type="xs:dateTime" minOccurs="0" maxOccurs="1"/>
<xs:element name="nome">
<xs:complexType>
<xs:sequence>
<xs:element name="attuale">
<xs:simpleType>
<xs:restriction base="xs:string"/>
</xs:simpleType>
</xs:element>
<xs:element name="precedente" minOccurs="0" maxOccurs="unbounded">
<xs:simpleType>
<xs:restriction base="xs:string"/>
</xs:simpleType>
</xs:element>
<xs:element name="alternativo" minOccurs="0" maxOccurs="unbounded">
<xs:simpleType>
<xs:restriction base="xs:string"/>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="codici">
<xs:complexType>
<xs:all>
<xs:element name="iccu" type="xs:string" minOccurs="1"/>
<xs:element name="acnp" type="xs:string" minOccurs="0"/>
<xs:element name="rism" type="xs:string" minOccurs="0"/>
<xs:element name="sbn" type="xs:string" minOccurs="0"/>
<xs:element name="cei" type="xs:string" minOccurs="0"/>
<xs:element name="cmbs" type="xs:string" minOccurs="0"/>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name="indirizzo" minOccurs="0">
<xs:complexType>
<xs:all>
<xs:element name="via" type="xs:string" minOccurs="0"/>
<xs:element name="cap" type="xs:string" minOccurs="0"/>
<xs:element name="frazione" type="xs:string" minOccurs="0"/>
<xs:element name="comune" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]{6}"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="provincia" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]{3}"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="regione" type="xs:string" minOccurs="0"/>
<xs:element name="stato" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[a-zA-Z]{2}"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name="contatti" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="telefonico" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:all>
<xs:element name="prefisso" type="xs:string"/>
<xs:element name="numero" type="xs:string"/>
<xs:element name="note" type="xs:string" minOccurs="0"/>
</xs:all>
<xs:attribute name="tipo" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="fax"/>
<xs:enumeration value="telefono"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name="altro" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="valore" type="xs:string"/>
<xs:element name="note" type="xs:string" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="tipo" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="e-mail"/>
<xs:enumeration value="telex"/>
<xs:enumeration value="url"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="edificio" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="denominazione" type="xs:string" minOccurs="0"/>
<xs:element name="monumentale" type="siNoType" minOccurs="0"/>
<xs:element name="appositamenteCostruito" type="siNoType" minOccurs="0"/>
<xs:element name="dataCostruzione" type="annoSecoloType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Istituzione" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="dataIstituzione" type="annoSecoloType" minOccurs="0"/>
<xs:element name="dataFondazione" type="annoSecoloType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:all>
</xs:complexType>
top

Complex Type: patrimonioType

Super-types: None
Sub-types: None
Name patrimonioType
Abstract no
Documentation Tipo utilizzato per descrivere il patrimonio di una biblioteca. I sotto-elementi sono tutti ripetibili, e sarebbe opportuno istanziare questo elemento solo se contiene almeno un sotto-elemento non vuoto, ma si è preferito comunque non rendere obbligatori i sotto-elementi.

L'elemento "materiale" va ripetuto per ciascun tipo di materiale. Non è prevista una gerarchia fra i materiali, anche se alcune basi dati, fra cui quella ICCU, organizzano i materiali in gerarchie a due o più livelli. Imporre in questo contesto una gerarchia non gestita in modo uniforme dalle base dati appare superfluo e limitante.

Anche l'elemento "fondo-speciale" va ripetuto per ciascuna istanza di fondo. Inventario e catalogo topografico sono invece non ripetibili. L'elemento "fondi-antichi", invece, serve solo a conteggiare in modo approssimativo i volumi dei diversi fondi antichi della biblioteca, e quindi non è ripetibile. I tre valori dell'attributo "volumi" sono da intendersi "fino a 1000", "da 1000 a 5000", e "oltre 5000".
XML Instance Representation
<...>
<materiale> materialeType </materiale> [0..*]
<fondo-speciale> fondoSpecialeType </fondo-speciale> [0..*]
<fondi-antichi> fondoAnticoType </fondi-antichi> [0..1]
<inventario> infCarType </inventario> [0..1] ?
<catalogo-topografico> infCarType </catalogo-topografico> [0..1] ?
<acquisti-ultimi-quindici-anni> xs:decimal </acquisti-ultimi-quindici-anni> [0..1] ?
<totale-posseduto> xs:nonNegativeInteger </totale-posseduto> [0..1] ?
<totale-posseduto-ragazzi> xs:nonNegativeInteger </totale-posseduto-ragazzi> [0..1] ?
</...>
Schema Component Representation
<xs:complexType name="patrimonioType">
<xs:sequence>
<xs:element name="materiale" type="materialeType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="fondo-speciale" type="fondoSpecialeType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="fondi-antichi" type="fondoAnticoType" minOccurs="0"/>
<xs:element name="inventario" type="infCarType" minOccurs="0"/>
<xs:element name="catalogo-topografico" type="infCarType" minOccurs="0"/>
<xs:element name="acquisti-ultimi-quindici-anni" type="xs:decimal" minOccurs="0"/>
<xs:element name="totale-posseduto" type="xs:nonNegativeInteger" minOccurs="0"/>
<xs:element name="totale-posseduto-ragazzi" type="xs:nonNegativeInteger" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: cataloghiType

Super-types: None
Sub-types: None
Name cataloghiType
Abstract no
Documentation Tipo che raccoglie i diversi cataloghi. Un elemento di questo tipo può dunque contenere i tre tipi di cataloghi di seguito definiti.

Tutti i tre sotto-elementi sono opzionali e ripetibili in un ordine qualsiasi. Nel definire i tre sottotipi sono sfruttate dove possibile le somiglianze fra i tre, attraverso la derivazione di un tipo da un altro.
XML Instance Representation
<...>
<catalogo-generale> catalogoType </catalogo-generale> [0..*]
<catalogo-speciale> catalogoSpecialeType </catalogo-speciale> [0..*]
<catalogo-collettivo> catalogoCollettivoType </catalogo-collettivo> [0..*]
</...>
Schema Component Representation
<xs:complexType name="cataloghiType">
<xs:sequence>
<xs:element name="catalogo-generale" type="catalogoType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="catalogo-speciale" type="catalogoSpecialeType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="catalogo-collettivo" type="catalogoCollettivoType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: serviziType

Super-types: None
Sub-types: None
Name serviziType
Abstract no
Documentation Tipo di elemento relativo ai servizi offerti da una biblioteca. Fra questi, gli orari di apertura, il prestito, le informazioni bibliografiche, tipo e condizioni di accesso e diverse altre informazioni.
XML Instance Representation
<...>
<orario> [0..1] ?
<ufficiale> orarioType </ufficiale> [0..1] ?
<variazione> [0..*] ?
<-- Extends : orarioType -->
<orario
giorno="string <<value = {'lun'|'mar'|'mer'|'gio'|'ven'|'sab'|'dom'}>> [1]"
dalle="string <<pattern = [0-9]{2}:[0-9]{2}>> [1]"
alle="string <<pattern = [0-9]{2}:[0-9]{2}>> [1]"/> [1..*]
<periodo> xs:string </periodo> [0..1]
<note> xs:string </note> [1]
</variazione>
<chiusura> [0..*] ?
Start All [1]
<periodo> xs:string </periodo> [0..1]
<note> xs:string </note> [1]
End All
</chiusura>
<ore-settimanali> xs:decimal </ore-settimanali> [0..1] ?
<ore-settimanali-pomeridiane> xs:decimal </ore-settimanali-pomeridiane> [0..1] ?
<settimane-apertura> xs:decimal </settimane-apertura> [0..1] ?
</orario>
<prestito> [0..1] ?
<locale> [0..1] ?
Start All [1]
<automatizzato> siNoType </automatizzato> [0..1]
<materiale-escluso> xs:string </materiale-escluso> [0..1] ?
<durata> xs:string </durata> [0..1]
<utenti-ammessi> xs:string </utenti-ammessi> [0..1]
<totale-prestiti> xs:decimal </totale-prestiti> [0..1] ?
End All
</locale>
<interbibliotecario> [0..1] ?
<tipo-prestito> [0..*]
<internazionale> siNoType </internazionale> [0..1]
<nazionale> siNoType </nazionale> [0..1]
<ruolo> string <<value = {'POS'|'DSC'}>> </ruolo> [1]
</tipo-prestito>
<automatizzato> siNoType </automatizzato> [0..1]
<totale-prestiti> xs:decimal </totale-prestiti> [0..1] ?
<sistema-ill> [0..*]
Start All [1]
<nome> xs:string </nome> [1]
<note> xs:string </note> [0..1]
End All
</sistema-ill>
</interbibliotecario>
<materiali-esclusi-locale> [0..1] ?
<materiale> xs:string </materiale> [1..*]
</materiali-esclusi-locale>
<riproduzioni> [0..*] ?
<tipo> xs:string </tipo> [1]
<locale> siNoType </locale> [0..1]
<nazionale> siNoType </nazionale> [0..1]
<internazionale> siNoType </internazionale> [0..1]
</riproduzioni>
</prestito>
<informazioni-bibliografiche> [1] ?
Start All [1]
<servizio-interno> siNoType </servizio-interno> [0..1]
<servizio-esterno> [0..1] ?
<modo> xs:string </modo> [0..*]
</servizio-esterno>
End All
</informazioni-bibliografiche>
<internet> [1] ?
<modo> xs:string </modo> [0..1]
</internet>
<accesso> [0..1] ?
<aperta> siNoType </aperta> [0..1] ?
<handicap> xs:string </handicap> [0..1] ?
<categoria-ammessa> xs:string </categoria-ammessa> [0..*] ?
<condizioni-accesso> [0..*] ?
Start All [1]
<eta
min="xs:nonNegativeInteger [0..1]"
max="xs:nonNegativeInteger [0..1]"/> [0..1]
<documenti> [0..1]
<tipo> xs:string </tipo> [0..*]
</documenti>
<appuntamento> xs:string </appuntamento> [0..1]
End All
</condizioni-accesso>
<destinazioni-sociali> [0..1]
<destinazione> [1..*]
<valore> xs:string </valore> [1]
<note> xs:string </note> [0..1]
</destinazione>
</destinazioni-sociali>
</accesso>
<sistemi> [0..*] ?
Start All [1]
<sistema> xs:string </sistema> [1]
End All
</sistemi>
<sezioni-speciali> [0..1] ?
<sezione> xs:string </sezione> [1..*]
</sezioni-speciali>
</...>
Schema Component Representation
<xs:complexType name="serviziType">
<xs:sequence>
<xs:element name="orario" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="ufficiale" type="orarioType" minOccurs="0"/>
<xs:element name="variazione" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:complexContent>
<xs:extension base="orarioType">
<xs:sequence>
<xs:element name="periodo" type="xs:string" minOccurs="0" maxOccurs="1"/>
<xs:element name="note" type="xs:string"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="chiusura" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:all>
<xs:element name="periodo" type="xs:string" minOccurs="0" maxOccurs="1"/>
<xs:element name="note" type="xs:string"/>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name="ore-settimanali" type="xs:decimal" minOccurs="0"/>
<xs:element name="ore-settimanali-pomeridiane" type="xs:decimal" minOccurs="0"/>
<xs:element name="settimane-apertura" type="xs:decimal" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="prestito" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="locale" minOccurs="0">
<xs:complexType>
<xs:all>
<xs:element name="automatizzato" type="siNoType" minOccurs="0"/>
<xs:element name="materiale-escluso" type="xs:string" minOccurs="0"/>
<xs:element name="durata" type="xs:string" minOccurs="0"/>
<xs:element name="utenti-ammessi" type="xs:string" minOccurs="0"/>
<xs:element name="totale-prestiti" type="xs:decimal" minOccurs="0" maxOccurs="1"/>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name="interbibliotecario" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="tipo-prestito" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="internazionale" type="siNoType" minOccurs="0"/>
<xs:element name="nazionale" type="siNoType" minOccurs="0"/>
<xs:element name="ruolo">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="POS"/>
<xs:enumeration value="DSC"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="automatizzato" type="siNoType" minOccurs="0"/>
<xs:element name="totale-prestiti" type="xs:decimal" minOccurs="0" maxOccurs="1"/>
<xs:element name="sistema-ill" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:all>
<xs:element name="nome" type="xs:string"/>
<xs:element name="note" type="xs:string" minOccurs="0"/>
</xs:all>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="materiali-esclusi-locale" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="materiale" type="xs:string" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="riproduzioni" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="tipo" type="xs:string" minOccurs="1"/>
<xs:element name="locale" type="siNoType" minOccurs="0"/>
<xs:element name="nazionale" type="siNoType" minOccurs="0"/>
<xs:element name="internazionale" type="siNoType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="informazioni-bibliografiche">
<xs:complexType>
<xs:all>
<xs:element name="servizio-interno" type="siNoType" minOccurs="0"/>
<xs:element name="servizio-esterno" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="modo" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name="internet">
<xs:complexType>
<xs:sequence>
<xs:element name="modo" type="xs:string" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="accesso" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="aperta" type="siNoType" minOccurs="0"/>
<xs:element name="handicap" type="xs:string" minOccurs="0"/>
<xs:element name="categoria-ammessa" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="condizioni-accesso" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:all>
<xs:element name="eta" minOccurs="0">
<xs:complexType>
<xs:attribute name="min" type="xs:nonNegativeInteger"/>
<xs:attribute name="max" type="xs:nonNegativeInteger"/>
</xs:complexType>
</xs:element>
<xs:element name="documenti" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="tipo" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="appuntamento" type="xs:string" minOccurs="0"/>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name="destinazioni-sociali" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="destinazione" minOccurs="1" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="valore" type="xs:string" minOccurs="1" maxOccurs="1"/>
<xs:element name="note" type="xs:string" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="sistemi" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:all>
<xs:element name="sistema" type="xs:string" minOccurs="1"/>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name="sezioni-speciali" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="sezione" type="xs:string" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
top

Simple Type: tipoDocType

Super-types: xs:string < tipoDocType (by restriction)
Sub-types: None
Name tipoDocType
Content
  • Built-in XSD Type: string
  • value = {'documentoIdentità'|'tesseraBiblioteca'|'letteraPresentazione'}
Schema Component Representation
<xs:simpleType name="tipoDocType">
<xs:restriction base="xs:string">
<xs:enumeration value="documentoIdentità"/>
<xs:enumeration value="tesseraBiblioteca"/>
<xs:enumeration value="letteraPresentazione"/>
</xs:restriction>
</xs:simpleType>
top

Simple Type: modoInternetType

Super-types: xs:string < modoInternetType (by restriction)
Sub-types: None
Name modoInternetType
Content
  • Built-in XSD Type: string
  • value = {'libero'|'a pagamento'|'a tempo'|'limitato'}
Schema Component Representation
<xs:simpleType name="modoInternetType">
<xs:restriction base="xs:string">
<xs:enumeration value="libero"/>
<xs:enumeration value="a pagamento"/>
<xs:enumeration value="a tempo"/>
<xs:enumeration value="limitato"/>
</xs:restriction>
</xs:simpleType>
top

Complex Type: amministrativaType

Super-types: None
Sub-types: None
Name amministrativaType
Abstract no
Documentation Tipo di elemento recante informazioni di carattere amministrativo. È la parte che più probabilmente richiederà aggiustamenti per soddisfare le esigenze di vari enti. Molti elementi sono auto-esplicativi.
XML Instance Representation
<...>
<codice-fiscale> xs:string </codice-fiscale> [0..1]
<partita-IVA> xs:string </partita-IVA> [0..1]
<autonoma> siNoType </autonoma> [0..1] ?
<ente> [0..1] ?
Start All [1]
<nome> xs:string </nome> [1]
<tipologia-amministrativa> xs:string </tipologia-amministrativa> [0..1]
<tipologia-funzionale> xs:string </tipologia-funzionale> [0..1]
<stato> xs:string </stato> [0..1]
<codice-fiscale> xs:string </codice-fiscale> [0..1]
<partita-IVA> xs:string </partita-IVA> [0..1]
<funzione-obiettivo> xs:string </funzione-obiettivo> [0..1]
End All
</ente>
<regolamento> [0..1]
Start All [1]
<norma> xs:string </norma> [0..1]
<url> xs:string </url> [0..1]
End All
</regolamento>
<carta-servizi> [0..1] ?
<servizio> xs:string </servizio> [0..*]
</carta-servizi>
<deposito-legale> [0..*]
<tipo> xs:string </tipo> [0..1]
<anno-inizio> xs:string </anno-inizio> [0..1]
</deposito-legale>
<strutture> [0..1] ?
Start All [1]
<scaffalature> [0..1] ?
Start All [1]
<magazzino> xs:decimal </magazzino> [0..1]
<pubbliche> xs:decimal </pubbliche> [0..1]
End All
</scaffalature>
<superficie> [0..1] ?
Start All [1]
<totale> xs:decimal </totale> [0..1]
<al-pubblico> xs:decimal </al-pubblico> [0..1]
End All
</superficie>
<postazioni> [0..1] ?
Start All [1]
<lettura> xs:nonNegativeInteger </lettura> [0..1]
<video> xs:nonNegativeInteger </video> [0..1]
<audio> xs:nonNegativeInteger </audio> [0..1]
<internet> xs:nonNegativeInteger </internet> [0..1]
End All
</postazioni>
End All
</strutture>
<utenti> [0..1] ?
Start All [1]
<ultimo-anno> xs:nonNegativeInteger </ultimo-anno> [0..1]
<iscritti-prestito> xs:nonNegativeInteger </iscritti-prestito> [0..1]
<minori-quattordici-anni> xs:nonNegativeInteger </minori-quattordici-anni> [0..1]
End All
</utenti>
<personale> [0..1] ?
Start All [1]
<totale> xs:nonNegativeInteger </totale> [0..1]
<temporaneo> xs:nonNegativeInteger </temporaneo> [0..1]
<part-time> xs:nonNegativeInteger </part-time> [0..1]
<esterno> xs:nonNegativeInteger </esterno> [0..1]
End All
</personale>
<bilancio> [0..1] ?
Start All [1]
<entrate> xs:decimal </entrate> [0..1]
<uscite> [0..1]
Start All [1]
<totale> xs:decimal </totale> [0..1]
<personale> xs:decimal </personale> [0..1]
<funzionamento> xs:decimal </funzionamento> [0..1]
<automazione> xs:decimal </automazione> [0..1]
<patrimonio> xs:decimal </patrimonio> [0..1]
<altre> xs:decimal </altre> [0..1]
End All
</uscite>
End All
</bilancio>
</...>
Schema Component Representation
<xs:complexType name="amministrativaType">
<xs:sequence>
<xs:element name="codice-fiscale" type="xs:string" minOccurs="0"/>
<xs:element name="partita-IVA" type="xs:string" minOccurs="0"/>
<xs:element name="autonoma" type="siNoType" minOccurs="0"/>
<xs:element name="ente" minOccurs="0">
<xs:complexType>
<xs:all>
<xs:element name="nome" type="xs:string"/>
<xs:element name="tipologia-amministrativa" type="xs:string" minOccurs="0"/>
<xs:element name="tipologia-funzionale" type="xs:string" minOccurs="0"/>
<xs:element name="stato" type="xs:string" minOccurs="0"/>
<xs:element name="codice-fiscale" type="xs:string" minOccurs="0"/>
<xs:element name="partita-IVA" type="xs:string" minOccurs="0"/>
<xs:element name="funzione-obiettivo" type="xs:string" minOccurs="0"/>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name="regolamento" minOccurs="0">
<xs:complexType>
<xs:all>
<xs:element name="norma" type="xs:string" minOccurs="0"/>
<xs:element name="url" type="xs:string" minOccurs="0"/>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name="carta-servizi" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="servizio" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="deposito-legale" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="tipo" type="xs:string" minOccurs="0"/>
<xs:element name="anno-inizio" type="xs:string" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="strutture" minOccurs="0">
<xs:complexType>
<xs:all>
<xs:element name="scaffalature" minOccurs="0">
<xs:complexType>
<xs:all>
<xs:element name="magazzino" type="xs:decimal" minOccurs="0"/>
<xs:element name="pubbliche" type="xs:decimal" minOccurs="0"/>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name="superficie" minOccurs="0">
<xs:complexType>
<xs:all>
<xs:element name="totale" type="xs:decimal" minOccurs="0"/>
<xs:element name="al-pubblico" type="xs:decimal" minOccurs="0"/>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name="postazioni" minOccurs="0">
<xs:complexType>
<xs:all>
<xs:element name="lettura" type="xs:nonNegativeInteger" minOccurs="0"/>
<xs:element name="video" type="xs:nonNegativeInteger" minOccurs="0"/>
<xs:element name="audio" type="xs:nonNegativeInteger" minOccurs="0"/>
<xs:element name="internet" type="xs:nonNegativeInteger" minOccurs="0"/>
</xs:all>
</xs:complexType>
</xs:element>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name="utenti" minOccurs="0">
<xs:complexType>
<xs:all>
<xs:element name="ultimo-anno" type="xs:nonNegativeInteger" minOccurs="0"/>
<xs:element name="iscritti-prestito" type="xs:nonNegativeInteger" minOccurs="0"/>
<xs:element name="minori-quattordici-anni" type="xs:nonNegativeInteger" minOccurs="0"/>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name="personale" minOccurs="0">
<xs:complexType>
<xs:all>
<xs:element name="totale" type="xs:nonNegativeInteger" minOccurs="0"/>
<xs:element name="temporaneo" type="xs:nonNegativeInteger" minOccurs="0"/>
<xs:element name="part-time" type="xs:nonNegativeInteger" minOccurs="0"/>
<xs:element name="esterno" type="xs:nonNegativeInteger" minOccurs="0"/>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name="bilancio" minOccurs="0">
<xs:complexType>
<xs:all>
<xs:element name="entrate" type="xs:decimal" minOccurs="0"/>
<xs:element name="uscite" minOccurs="0">
<xs:complexType>
<xs:all>
<xs:element name="totale" type="xs:decimal" minOccurs="0"/>
<xs:element name="personale" type="xs:decimal" minOccurs="0"/>
<xs:element name="funzionamento" type="xs:decimal" minOccurs="0"/>
<xs:element name="automazione" type="xs:decimal" minOccurs="0"/>
<xs:element name="patrimonio" type="xs:decimal" minOccurs="0"/>
<xs:element name="altre" type="xs:decimal" minOccurs="0"/>
</xs:all>
</xs:complexType>
</xs:element>
</xs:all>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
top

Complex Type: specializzazioneType

Super-types: None
Sub-types: None
Name specializzazioneType
Abstract no
Documentation La specializzazione di una biblioteca è semplicemente una CDD più una descrizione libera opzionale.
XML Instance Representation
<...>
Start All [1]
<cdd> xs:string </cdd> [1]
<descrizione-libera> xs:string </descrizione-libera> [0..1]
End All
</...>
Schema Component Representation
<xs:complexType name="specializzazioneType">
<xs:all>
<xs:element name="cdd" type="xs:string"/>
<xs:element name="descrizione-libera" type="xs:string" minOccurs="0"/>
</xs:all>
</xs:complexType>
top

Complex Type: materialeType

Super-types: None
Sub-types: None
Name materialeType
Abstract no
Documentation Un tipo di materiale è descritto semplicemente da un nome e da un posseduto (opzionale). Quest'ultimo dev'essere un intero non negativo.
XML Instance Representation
<...
nome="xs:string [1]"
posseduto="xs:nonNegativeInteger [0..1]"
acquisti-ultimo-anno="xs:nonNegativeInteger [0..1]"/>
Schema Component Representation
<xs:complexType name="materialeType">
<xs:attribute name="nome" type="xs:string" use="required"/>
<xs:attribute name="posseduto" type="xs:nonNegativeInteger"/>
<xs:attribute name="acquisti-ultimo-anno" type="xs:nonNegativeInteger"/>
</xs:complexType>
top

Complex Type: fondoSpecialeType

Super-types: None
Sub-types: None
Name fondoSpecialeType
Abstract no
Documentation A parte alcuni elementi dall'ovvio significato, la "descrizione" corrisponde ad una descrizione libera del fondo speciale, mentre "digitalizzazione" registra in forma libera lo stato dell'eventuale digitalizzazione del fondo.
XML Instance Representation
<...>
Start All [1]
<nome> xs:string </nome> [1]
<descrizione> xs:string </descrizione> [0..1]
<cdd> xs:string </cdd> [0..1]
<depositato> siNoType </depositato> [0..1]
<digitalizzazione> siNoType </digitalizzazione> [0..1]
<catalogoInventario> string <<value = {'M'|'S'|'O'|'V'}>> </catalogoInventario> [0..1]
<catalogoInventarioUrl> xs:string </catalogoInventarioUrl> [0..1]
End All
</...>
Schema Component Representation
<xs:complexType name="fondoSpecialeType">
<xs:all>
<xs:element name="nome" type="xs:string"/>
<xs:element name="descrizione" type="xs:string" minOccurs="0"/>
<xs:element name="cdd" type="xs:string" minOccurs="0"/>
<xs:element name="depositato" type="siNoType" minOccurs="0"/>
<xs:element name="digitalizzazione" type="siNoType" minOccurs="0"/>
<xs:element name="catalogoInventario" minOccurs="0">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="M"/>
<xs:enumeration value="S"/>
<xs:enumeration value="O"/>
<xs:enumeration value="V"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="catalogoInventarioUrl" type="xs:string" minOccurs="0"/>
</xs:all>
</xs:complexType>
top

Complex Type: fondoAnticoType

Super-types: None
Sub-types: None
Name fondoAnticoType
Abstract no
Documentation I fondi antichi vanno classificati in base al posseduto: fino a 1000, da 1000 a 5000, oltre 5000. Non è quindi possibile specificare esattamente un posseduto.
XML Instance Representation
<...
volumi="string <<value = {'-1000'|'1000-5000'|'5000-'}>> [1]"/>
Schema Component Representation
<xs:complexType name="fondoAnticoType">
<xs:attribute name="volumi" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="-1000"/>
<xs:enumeration value="1000-5000"/>
<xs:enumeration value="5000-"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
top

Complex Type: catalogoType

Super-types: None
Sub-types: None
Name catalogoType
Abstract no
Documentation I cataloghi hanno diverse caratteristiche comuni. Vale la pena di definire un tipo che raccoglie queste caratteristiche, per poi derivare da esso, tramite restriction, i diversi tipi di cataloghi.

Tutti contengono le quattro forme "schede", "volume", "microfilm" e "digitale", ciascuna con la sua percentuale di copertura (vedi "formaType"), e tutti hanno una copertura temporale. La forma "digitale" ha un tipo particolare, "digitaleType", che aggiunge a "formaType" il solo sott-elemento "supporto".
XML Instance Representation
<...
tipo="xs:string [1]">
<forme> [0..1]
<schede> formaType </schede> [0..1]
<volume> volumeType </volume> [0..1]
<microforme> formaType </microforme> [0..1]
<digitale> digitaleType </digitale> [0..1]
</forme>
<copertura> [0..1] ?
Start All [1]
<da-anno> string <<pattern = [0-9]{4}>> </da-anno> [1]
<ad-anno> string <<pattern = [0-9]{4}>> </ad-anno> [1]
End All
</copertura>
</...>
Schema Component Representation
<xs:complexType name="catalogoType">
<xs:sequence>
<xs:element name="forme" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="schede" type="formaType" minOccurs="0"/>
<xs:element name="volume" type="volumeType" minOccurs="0"/>
<xs:element name="microforme" type="formaType" minOccurs="0"/>
<xs:element name="digitale" type="digitaleType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="copertura" minOccurs="0">
<xs:complexType>
<xs:all>
<xs:element name="da-anno">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]{4}"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ad-anno">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]{4}"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:all>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="tipo" type="xs:string" use="required"/>
</xs:complexType>
top

Complex Type: catalogoSpecialeType

Super-types: None
Sub-types:
Name catalogoSpecialeType
Abstract no
Documentation Catalogo speciale. Deriva da "catalogoType", con l'aggiunta del "nome" del catalogo e del "materiale".

Notare come tale tipo di elemento costituisce la base per il "catalogoSpecialeType".
XML Instance Representation
<...>
<forme> [0..1]
<schede> formaType </schede> [0..1]
<volume> volumeType </volume> [0..1]
<microforme> formaType </microforme> [0..1]
<digitale> digitaleType </digitale> [0..1]
</forme>
<copertura> [0..1] ?
Start All [1]
<da-anno> string <<pattern = [0-9]{4}>> </da-anno> [1]
<ad-anno> string <<pattern = [0-9]{4}>> </ad-anno> [1]
End All
</copertura>
<nome> xs:string </nome> [0..1]
<materiale> xs:string </materiale> [0..1]
</...>
Schema Component Representation
<xs:complexType name="catalogoSpecialeType">
<xs:sequence>
<xs:element name="forme" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="schede" type="formaType" minOccurs="0"/>
<xs:element name="volume" type="volumeType" minOccurs="0"/>
<xs:element name="microforme" type="formaType" minOccurs="0"/>
<xs:element name="digitale" type="digitaleType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="copertura" minOccurs="0">
<xs:complexType>
<xs:all>
<xs:element name="da-anno">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]{4}"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ad-anno">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]{4}"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name="nome" type="xs:string" minOccurs="0"/>
<xs:element name="materiale" type="xs:string" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
top

Complex Type: catalogoCollettivoType

Super-types: catalogoSpecialeType < catalogoCollettivoType (by extension)
Sub-types: None
Name catalogoCollettivoType
Abstract no
Documentation Catalogo collettivo. Deriva da "catalogoSpecialeType", con l'aggiunta della "zona", a sua volta specializzata in un "nome" e in un "tipo".
XML Instance Representation
<...>
<forme> [0..1]
<schede> formaType </schede> [0..1]
<volume> volumeType </volume> [0..1]
<microforme> formaType </microforme> [0..1]
<digitale> digitaleType </digitale> [0..1]
</forme>
<copertura> [0..1] ?
Start All [1]
<da-anno> string <<pattern = [0-9]{4}>> </da-anno> [1]
<ad-anno> string <<pattern = [0-9]{4}>> </ad-anno> [1]
End All
</copertura>
<nome> xs:string </nome> [0..1]
<materiale> xs:string </materiale> [0..1]
<zona> [0..1]
Start All [1]
<nome> xs:string </nome> [0..1] ?
<tipo> xs:string </tipo> [0..1] ?
End All
</zona>
</...>
Schema Component Representation
<xs:complexType name="catalogoCollettivoType">
<xs:complexContent>
<xs:extension base="catalogoSpecialeType">
<xs:sequence>
<xs:element name="zona" minOccurs="0">
<xs:complexType>
<xs:all>
<xs:element name="nome" type="xs:string" minOccurs="0"/>
<xs:element name="tipo" type="xs:string" minOccurs="0"/>
</xs:all>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
top

Complex Type: formaType

Super-types: None
Sub-types:
Name formaType
Abstract no
Documentation La forma di un catalogo ha di solito un solo attributo, la percentuale di copertura, riferita al patrimonio inventariato o supposto, relativo alla forma particolare. Un'eccezione è la forma "digitale", che aggiunge un elemento (o attributo che sia) relativo al tipo di catalogo digitale (CD-ROM, web o altro).
XML Instance Representation
<...
percentuale="xs:string [0..1]"/>
Schema Component Representation
<xs:complexType name="formaType">
<xs:attribute name="percentuale" type="xs:string"/>
</xs:complexType>
top

Complex Type: digitaleType

Super-types: formaType < digitaleType (by extension)
Sub-types: None
Name digitaleType
Abstract no
Documentation La forma "digitale" di un catalogo richiede l'indicazione di un supporto. Per il momento, nel caso on-line non si può indicare la URL.

Si noti che comunque questo tipo è derivato da "formaType" e quindi eredita le sue caratteristiche.
XML Instance Representation
<...
percentuale="xs:string [0..1]">
Start All [1]
<supporto> xs:string </supporto> [0..1]
End All
</...>
Schema Component Representation
<xs:complexType name="digitaleType">
<xs:complexContent>
<xs:extension base="formaType">
<xs:all>
<xs:element name="supporto" type="xs:string" minOccurs="0"/>
</xs:all>
</xs:extension>
</xs:complexContent>
</xs:complexType>
top

Complex Type: volumeType

Super-types: formaType < volumeType (by extension)
Sub-types: None
Name volumeType
Abstract no
Documentation La forma "volumeType" deriva dalla generica "formaType" con l'aggiunta della citazione bibliografica, specifica di questa forma. La citazione è comunque opzionale.
XML Instance Representation
<...
percentuale="xs:string [0..1]">
Start All [1]
<citazione-bibliografica> xs:string </citazione-bibliografica> [0..1]
End All
</...>
Schema Component Representation
<xs:complexType name="volumeType">
<xs:complexContent>
<xs:extension base="formaType">
<xs:all>
<xs:element name="citazione-bibliografica" type="xs:string" minOccurs="0"/>
</xs:all>
</xs:extension>
</xs:complexContent>
</xs:complexType>
top

Complex Type: infCarType

Super-types: None
Sub-types: None
Name infCarType
Abstract no
Documentation Un elemento di questo tipo serve solo a specificare una forma cartacea e una forma informatizzata di qualcosa, tipicamente un catalogo, ma non solo. Entrambi gli elementi che definisce sono semplici siNoType.
XML Instance Representation
<...>
Start All [1]
<informatizzato> siNoType </informatizzato> [0..1]
<cartaceo> siNoType </cartaceo> [0..1]
End All
</...>
Schema Component Representation
<xs:complexType name="infCarType">
<xs:all>
<xs:element name="informatizzato" type="siNoType" minOccurs="0"/>
<xs:element name="cartaceo" type="siNoType" minOccurs="0"/>
</xs:all>
</xs:complexType>
top

Complex Type: orarioType

Super-types: None
Sub-types: None
Name orarioType
Abstract no
Documentation Questo tipo descrive sostanzialmente l'orario ufficiale, ma è anche un tipo base da cui derivare le variazioni di orario. Poiché le variazioni sono all'interno dei servizi, questo tipo base deve essere globale.

La struttura di questo tipo è molto semplice: un giorno della settimana, un orario iniziale e un'orario finale. Sebbene il questionario ICCU preveda una struttura più articolata, queste informazioni sono sufficienti a descrivere qualsiasi ragionevole situazione, e dovrebbero essere gestibili da qualsiasi base dati. Strutture più articolate possono essere ricondotte a questa, ripetendo opportunamente gli elementi.

Per i limiti orari si potrebbe specificare un vincolo più fine, perché quello attuale accetterebbe anche un orario come "35:72".
XML Instance Representation
<...>
<orario
giorno="string <<value = {'lun'|'mar'|'mer'|'gio'|'ven'|'sab'|'dom'}>> [1]"
dalle="string <<pattern = [0-9]{2}:[0-9]{2}>> [1]"
alle="string <<pattern = [0-9]{2}:[0-9]{2}>> [1]"/> [1..*]
</...>
Schema Component Representation
<xs:complexType name="orarioType">
<xs:sequence>
<xs:element name="orario" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="giorno" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="lun"/>
<xs:enumeration value="mar"/>
<xs:enumeration value="mer"/>
<xs:enumeration value="gio"/>
<xs:enumeration value="ven"/>
<xs:enumeration value="sab"/>
<xs:enumeration value="dom"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="dalle" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]{2}:[0-9]{2}"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="alle" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]{2}:[0-9]{2}"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
top

Simple Type: siNoType

Super-types: xs:string < siNoType (by restriction)
Sub-types: None
Name siNoType
Content
  • Built-in XSD Type: string
  • value = {'s'|'n'}
Documentation Un elemento di questo tipo ammette solo valori del tipo "si/no" (ma non esattamente questi due...)
Schema Component Representation
<xs:simpleType name="siNoType">
<xs:restriction base="xs:string">
<xs:enumeration value="s"/>
<xs:enumeration value="n"/>
</xs:restriction>
</xs:simpleType>
top

Complex Type: annoSecoloType

Super-types: xs:string < annoSecoloType (by extension)
Sub-types: None
Name annoSecoloType
Abstract no
Documentation Un elemento di questo tipo contiene una stringa come valore, e ha un attributo "tipo" che serve ad indicare se tale valore è un anno o un secolo. Questo non esclude un elemento con valore "XVI" e tipo "anno", per cui sarebbe auspicabile un costrutto più coerente.
XML Instance Representation
<...
tipo="string <<value = {'anno'|'secolo'}>> [0..1]">
xs:string
</...>
Schema Component Representation
<xs:complexType name="annoSecoloType">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="tipo">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="anno"/>
<xs:enumeration value="secolo"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
top

Generated by xs3p. Last modified: