Você está aqui: Página Inicial Esquemas (XSDs) lexml-br-rigido.xsd

lexml-br-rigido.xsd

lexml-br-rigido.xsd — Extensible Markup Language (XML), 9Kb

Conteúdo do arquivo

<?xml version="1.0" encoding="UTF-8"?>

<xsd:schema targetNamespace="http://www.lexml.gov.br/1.0" 
	xmlns="http://www.lexml.gov.br/1.0" 
	xmlns:xlink="http://www.w3.org/1999/xlink" 
	elementFormDefault="qualified" 
	xmlns:xsd="http://www.w3.org/2001/XMLSchema">
      
       <xsd:import namespace="http://www.w3.org/1999/xlink" schemaLocation="Xlink.xsd" /> 
       <xsd:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd"/>
      <xsd:include schemaLocation="lexml-base.xsd"/>



	<xsd:simpleType name="idArtigo">
		<xsd:annotation>
			<xsd:documentation>
				A regras abaixo tratam dos IDs de dispositivos no nível de artigo para baixo. 
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:ID">
			<xsd:pattern value="(art\d+((-[0-9]{1,3})?){0,3}(_cpt|_(par|dpg)\d+((-[0-9]{1,3})?){0,3})_asp\d+_)?art\d+((-[0-9]{1,3})?){0,3}"></xsd:pattern>
			<xsd:pattern value="(art\d+((-[0-9]{1,3})?){0,3}(_cpt|_(par|dpg)\d+((-[0-9]{1,3})?){0,3})_asp\d+_)?art\d+((-[0-9]{1,3})?){0,3}(_cpt|_(par|dpg)\d+((-[0-9]{1,3})?){0,3})"></xsd:pattern>
			<xsd:pattern value="(art\d+((-[0-9]{1,3})?){0,3}(_cpt|_(par|dpg)\d+((-[0-9]{1,3})?){0,3})_asp\d+_)?art\d+((-[0-9]{1,3})?){0,3}(_cpt|_(par|dpg)\d+((-[0-9]{1,3})?){0,3})_(inc|dpg)\d+((-[0-9]{1,3})?){0,3}"></xsd:pattern>
			<xsd:pattern value="(art\d+((-[0-9]{1,3})?){0,3}(_cpt|_(par|dpg)\d+((-[0-9]{1,3})?){0,3})_asp\d+_)?art\d+((-[0-9]{1,3})?){0,3}(_cpt|_(par|dpg)\d+((-[0-9]{1,3})?){0,3})_(inc|dpg)\d+((-[0-9]{1,3})?){0,3}_(ali|dpg)\d+((-[0-9]{1,3})?){0,3}"></xsd:pattern>
			<xsd:pattern value="(art\d+((-[0-9]{1,3})?){0,3}(_cpt|_(par|dpg)\d+((-[0-9]{1,3})?){0,3})_asp\d+_)?art\d+((-[0-9]{1,3})?){0,3}(_cpt|_(par|dpg)\d+((-[0-9]{1,3})?){0,3})_(inc|dpg)\d+((-[0-9]{1,3})?){0,3}_(ali|dpg)\d+((-[0-9]{1,3})?){0,3}_(ite|dpg)\d+((-[0-9]{1,3})?){0,3}"></xsd:pattern>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:simpleType name="idAgregador">
		<xsd:annotation>
			<xsd:documentation>
				A regras abaixo tratam dos IDs de dispositivos no nível de artigo para cima. 
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:ID">
			<xsd:pattern value="(art\d+((-[0-9]{1,3})?){0,3}(_cpt|_(par|dpg)\d+((-[0-9]{1,3})?){0,3})_asp\d+_)?(prt|agh)\d+((-[0-9]{1,3})?){0,3}"></xsd:pattern>
			<xsd:pattern value="(art\d+((-[0-9]{1,3})?){0,3}(_cpt|_(par|dpg)\d+((-[0-9]{1,3})?){0,3})_asp\d+_)?((prt|agh)\d+((-[0-9]{1,3})?){0,3}_)?(liv|agh)\d+((-[0-9]{1,3})?){0,3}"></xsd:pattern>
			<xsd:pattern value="(art\d+((-[0-9]{1,3})?){0,3}(_cpt|_(par|dpg)\d+((-[0-9]{1,3})?){0,3})_asp\d+_)?(((prt|agh)\d+((-[0-9]{1,3})?){0,3}_)?(liv|agh)\d+((-[0-9]{1,3})?){0,3}_)?(tit|agh)\d+((-[0-9]{1,3})?){0,3}"></xsd:pattern>
			<xsd:pattern value="(art\d+((-[0-9]{1,3})?){0,3}(_cpt|_(par|dpg)\d+((-[0-9]{1,3})?){0,3})_asp\d+_)?((((prt|agh)\d+((-[0-9]{1,3})?){0,3}_)?(liv|agh)\d+((-[0-9]{1,3})?){0,3}_)?(tit|agh)\d+((-[0-9]{1,3})?){0,3}_)?(cap|agh)\d+((-[0-9]{1,3})?){0,3}"></xsd:pattern>
			<xsd:pattern value="(art\d+((-[0-9]{1,3})?){0,3}(_cpt|_(par|dpg)\d+((-[0-9]{1,3})?){0,3})_asp\d+_)?(((((prt|agh)\d+((-[0-9]{1,3})?){0,3}_)?(liv|agh)\d+((-[0-9]{1,3})?){0,3}_)?(tit|agh)\d+((-[0-9]{1,3})?){0,3}_)?(cap|agh)\d+((-[0-9]{1,3})?){0,3}_)?(sec|agh)\d+((-[0-9]{1,3})?){0,3}"></xsd:pattern>
			<xsd:pattern value="(art\d+((-[0-9]{1,3})?){0,3}(_cpt|_(par|dpg)\d+((-[0-9]{1,3})?){0,3})_asp\d+_)?(((((prt|agh)\d+((-[0-9]{1,3})?){0,3}_)?(liv|agh)\d+((-[0-9]{1,3})?){0,3}_)?(tit|agh)\d+((-[0-9]{1,3})?){0,3}_)?(cap|agh)\d+((-[0-9]{1,3})?){0,3}_)?(sec|agh)\d+((-[0-9]{1,3})?){0,3}_(sub|agh)\d+((-[0-9]{1,3})?){0,3}"></xsd:pattern>
		</xsd:restriction>
	</xsd:simpleType>
	
       
             <xsd:annotation>
        		<xsd:documentation>
		 =====================================================================
		
		Elements for hierarchical documents
		
		===================================================================== 
		</xsd:documentation>
	</xsd:annotation>

	<xsd:element name="Parte">
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:extension base="hierarchy">
					<xsd:sequence minOccurs="0" maxOccurs="unbounded" >
						<xsd:element ref="Artigo" minOccurs="0" maxOccurs="unbounded" />
						<xsd:element ref="Livro" minOccurs="0" maxOccurs="unbounded" />
					</xsd:sequence>
				</xsd:extension>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>

	<xsd:element name="Livro">
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:extension base="hierarchy">
					<xsd:sequence>
						<xsd:sequence>
							<xsd:element ref="Artigo" minOccurs="0" maxOccurs="unbounded" />
							<xsd:element ref="Titulo" minOccurs="0" maxOccurs="unbounded" />
						</xsd:sequence>	
					</xsd:sequence>
				</xsd:extension>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>

	<xsd:element name="Titulo">
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:extension base="hierarchy">
					<xsd:sequence>
						<xsd:sequence>
							<xsd:element ref="Artigo" minOccurs="0" maxOccurs="unbounded" />
							<xsd:element ref="Capitulo" minOccurs="0" maxOccurs="unbounded" />
						</xsd:sequence>	
					</xsd:sequence>
				</xsd:extension>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>

	<xsd:element name="Capitulo">
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:extension base="hierarchy">
					<xsd:sequence>
						<xsd:sequence>
							<xsd:element ref="Artigo" minOccurs="0" maxOccurs="unbounded" />
							<xsd:element ref="Secao" minOccurs="0" maxOccurs="unbounded" />
						</xsd:sequence>	
					</xsd:sequence>
				</xsd:extension>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>

	<xsd:element name="Secao">
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:extension base="hierarchy">
					<xsd:sequence>
						<xsd:sequence>
							<xsd:element ref="Artigo" minOccurs="0" maxOccurs="unbounded" />
							<xsd:element ref="Subsecao" minOccurs="0" maxOccurs="unbounded" />
						</xsd:sequence>	
					</xsd:sequence>
				</xsd:extension>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	
	<xsd:element name="Subsecao">
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:extension base="hierarchy">
					<xsd:sequence>
						<xsd:element ref="Artigo" minOccurs="0" maxOccurs="unbounded" />
					</xsd:sequence>
				</xsd:extension>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element> 
	
	<xsd:complexType name="ArticleType" >
		<xsd:sequence >
			<xsd:element ref="TituloArtigo" minOccurs="0" maxOccurs="1" />
			<xsd:element ref="Rotulo" minOccurs="1" maxOccurs="1" />
			<xsd:choice>
				<xsd:sequence >
					<xsd:element ref="Caput" minOccurs="1" maxOccurs="1" />
					<xsd:element ref="Paragrafo" minOccurs="0" maxOccurs="unbounded" />
				</xsd:sequence>
				<xsd:element ref="DispositivoGenerico" minOccurs="0" maxOccurs="unbounded"/>
			</xsd:choice>
		</xsd:sequence>
		<xsd:attributeGroup ref="corereqArt"/>
		<xsd:attributeGroup ref="linkopt"/>		
	</xsd:complexType>

	<xsd:element name="Artigo" type="ArticleType" />

	<xsd:complexType name="DispositivoType" >
		<xsd:sequence >
			<xsd:element ref="Rotulo" minOccurs="0" maxOccurs="1" />
			<xsd:element ref="p" minOccurs="0" maxOccurs="unbounded"/>
			<xsd:element ref="Alteracao" minOccurs="0" maxOccurs="1"/>
			<xsd:element ref="DispositivoGenerico" minOccurs="0" maxOccurs="unbounded"/>
		</xsd:sequence>
		<xsd:attributeGroup ref="corereqArt"/>
		<xsd:attributeGroup ref="linkopt"/>
	</xsd:complexType>

	<xsd:element name="Caput">
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:extension base="DispositivoType">
					<xsd:sequence>
						<xsd:element ref="Inciso" minOccurs="0" maxOccurs="unbounded" />
         			                                 <xsd:element ref="Pena" minOccurs="0" maxOccurs="1"/>
					</xsd:sequence>
				</xsd:extension>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	
	<xsd:element name="Inciso">
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:extension base="DispositivoType">
					<xsd:sequence>
						<xsd:element ref="Alinea" minOccurs="0" maxOccurs="unbounded" />
         			                                 <xsd:element ref="Pena" minOccurs="0" maxOccurs="1"/>
					</xsd:sequence>
				</xsd:extension>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>

	<xsd:element name="Alinea">
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:extension base="DispositivoType">
					<xsd:sequence>
						<xsd:element ref="Item" minOccurs="0" maxOccurs="unbounded" />
         			                                 <xsd:element ref="Pena" minOccurs="0" maxOccurs="1"/>
					</xsd:sequence>	
				</xsd:extension>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>

	<xsd:element name="Paragrafo">
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:extension base="DispositivoType">
					<xsd:sequence>
						<xsd:element ref="Inciso" minOccurs="0" maxOccurs="unbounded" />
         			                                 <xsd:element ref="Pena" minOccurs="0" maxOccurs="1"/>
					</xsd:sequence>
				</xsd:extension>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	
	<xsd:element name="Item" type="DispositivoType"/>
	

	<xsd:annotation>
		<xsd:documentation>
		 =====================================================================
		
		End of Schema
		
		===================================================================== 
		</xsd:documentation>
	</xsd:annotation>

</xsd:schema>
Ações do documento