3 A proposito di SGML e HTML

Sommario

  1. Introduzione a SGML
  2. Costrutti SGML usati in HTML
    1. Elementi
    2. Attributi
    3. Riferimenti a caratteri
    4. Commenti
  3. Come leggere la DTD HTML
    1. Commenti nella DTD
    2. Definizioni delle entità parametro
    3. Dichiarazioni di elemento
    4. Dichiarazioni di attributo

Questa sezione del documento introduce SGML e discute le sue relazioni con HTML. Una discussione completa su SGML è lasciata allo standard (si veda [ISO8879]).

3.1 Introduzione a SGML

SGML è un sistema per definire i linguaggi di marcatura. Gli autori marcano i loro documenti rappresentando accanto al contenuto informazioni strutturali, di presentazione e semantiche. L'HTML è un esempio di linguaggio di marcatura. Ecco un esempio di documento HTML:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
     "http://www.w3.org/TR/html4/strict.dtd">
<HTML>
   <HEAD>
      <TITLE>Il mio primo documento HTML</TITLE>
   </HEAD>
   <BODY>
      <P>Ciao mondo!
   </BODY>
</HTML>

Un documento HTML si divide in una sezione d'intestazione (qui tra <HEAD> e </HEAD>) ed in un corpo (qui tra <BODY> e </BODY>). Il titolo del documento appare nell'intestazione (insieme con altre informazioni sul documento), mentre il contenuto del documento appare nel corpo. Il corpo in questo esempio contiene un unico paragrafo, marcato con <P>.

Ogni linguaggio di marcatura definito in SGML è chiamato un'applicazione SGML. Un'applicazione SGML è generalmente caratterizzata da:

  1. Una dichiarazione SGML. La dichiarazione SGML specifica quali caratteri e delimitatori possono apparire nell'applicazione.
  2. Una definizione del tipo di documento (DTD). La DTD definisce la sintassi dei costrutti di marcatura. La DTD può includere definizioni aggiuntive quali i riferimenti ad entità carattere.
  3. Delle specifiche che descrivono i significati da attribuire al codice di marcatura. Queste specifiche impongono anche restrizioni di tipo sintattico che non possono essere espresse all'interno della DTD.
  4. Istanze di documento contenenti dati (il contenuto) e codice di marcatura. Ogni istanza contiene un riferimento alla DTD da utilizzare per la sua interpretazione.

Queste specifiche comprendono una dichiarazione SGML, tre definizioni del tipo di documento (si veda la sezione relativa a informazioni sulla versione di HTML per una descrizione delle tre) e un elenco di riferimenti a caratteri.

3.2 Costrutti SGML usati in HTML

Le seguenti sezioni introducono dei costrutti SGML che sono usati in HTML.

L'appendice elenca alcune caratteristiche di SGML che non sono supportate in modo adeguato da strumenti e programmi utente e che non dovrebbero essere adoperate.

3.2.1 Elementi

Una definizione del tipo di documento SGML dichiara i tipi di elemento che rappresentano strutture o un comportamento desiderato. L'HTML include tipi di elemento che rappresentano paragrafi, collegamenti ipertestuali, elenchi, tabelle, immagini, ecc.

Ogni dichiarazione del tipo di elemento descrive in genere tre parti: un marcatore iniziale, il contenuto ed un marcatore finale.

Il nome dell'elemento compare all'interno del marcatore iniziale (scritto <nome-elemento>) e del marcatore finale (scritto </nome-elemento>); si noti la barra obliqua prima del nome dell'elemento all'interno del marcatore finale. Ad esempio, i marcatori iniziale e finale del tipo di elemento UL delimitano le voci di un elenco:

<UL>
<LI><P>...voce 1 dell'elenco...
<LI><P>...voce 2 dell'elenco...
</UL>

Alcuni tipi di elemento HTML consentono agli autori di omettere il marcatore finale (es., i tipi di elemento P e LI). Alcuni tipi di elemento permettono anche che sia omesso il marcatore iniziale; ad esempio, HEAD e BODY. La DTD HTML indica per ciascun tipo di elemento se il marcatore iniziale ed il marcatore finale sono richiesti.

Alcuni tipi di elemento HTML non hanno contenuto. Per esempio l'elemento interruzione di linea BR non ha contenuto; la sua unica funzione è di concludere una riga di testo. Simili elementi vuoti non hanno mai il marcatore finale. La definizione del tipo di documento e il testo delle specifiche indicano se un tipo di elemento è vuoto (non ha contenuto) o, se può avere un contenuto, quale contenuto è considerato legale.

I nomi di elemento sono sempre maiuscolo-indifferenti.

Si consulti lo standard SGML per informazioni circa le regole che governano gli elementi (ad esempio essi devono essere correttamente annidati, un marcatore finale chiude, risalendo all'indietro fino al corrispondente marcatore iniziale, tutti i marcatori iniziali interposti e non chiusi per l'omissione dei corrispondenti marcatori finali (section 7.5.1), ecc.).

Per esempio il seguente paragrafo:

<P>Questo è il primo paragrafo.</P>
...un elemento a livello di blocco...

può essere riscritto senza il suo marcatore finale:

<P>Questo è il primo paragrafo.
...un elemento a livello di blocco...

dal momento che il marcatore iniziale <P> è chiuso dall'elemento seguente a livello di blocco. In modo analogo, se un paragrafo è racchiuso da un elemento a livello di blocco, come in:

<DIV>
<P>Questo è un paragrafo.
</DIV>

il marcatore finale dell'elemento a livello di blocco che circonda (qui, </DIV>) sottintende il marcatore finale corrispondente al marcatore iniziale <P> aperto.

Elementi e marcatori [tag] non sono la stessa cosa. Alcuni si riferiscono agli elementi chiamandoli tag (es.: "il tag P"). Si ricordi che l'elemento è una cosa, il marcatore (sia esso iniziale o finale) un'altra. Si consideri il caso dell'elemento HEAD che è sempre presente, anche se entrambi i marcatori HEAD iniziale e finale possono essere omessi nel codice di marcatura.

Tutti i tipi di elemento dichiarati in queste specifiche sono elencati nell'indice degli elementi.

3.2.2 Attributi

Gli elementi possono essere associati a proprietà, chiamate attributi, che possono avere dei valori (predefiniti o impostati dagli autori o da script). Le coppie attributo/valore appaiono prima del ">" di chiusura del marcatore iniziale di un elemento. Un qualsiasi numero di coppie (legali) attributo/valore, separate da spazi, possono apparire all'interno del marcatore iniziale di un elemento. Esse possono comparire in un qualsiasi ordine.

In questo esempio l'attributo id è impostato per un elemento H1:

<H1 id="sezione1">
Questa è un'intestazione riconoscibile grazie all'attributo id
</H1> 

Lo SGML richiede in modo predefinito che tutti i valori di attributo siano delimitati usando apici doppi (decimale ASCII 34) o singoli (decimale ASCII 39). Gli apici singoli possono essere inclusi all'interno del valore di un attributo quando il valore è delimitato da apici doppi, e viceversa. Gli autori possono adoperare anche riferimenti numerici a caratteri per rappresentare apici doppi (&#34;) ed apici singoli (&#39;). In luogo dei doppi apici gli autori possono utilizzare anche il riferimento ad entità carattere &quot;.

In taluni casi gli autori possono specificare il valore di un attributo senza usare gli apici. Il valore di un attributo può contenere soltanto lettere (a-z e A-Z), cifre (0-9), trattini d'unione (decimale ASCII 45), punti (decimale ASCII 46), trattini di sottolineatura (decimale ASCII 95) e i due punti (decimale ASCII 58). Si raccomanda di utilizzare gli apici anche quando è possibile eliminarli.

I nomi di attributo sono sempre maiuscolo-indifferenti.

I valori di attributo sono in generale maiuscolo-indifferenti. La definizione di ciascun attributo nel manuale di riferimento indica se il suo valore è maiuscolo-indifferente.

Tutti gli attributi definiti da queste specifiche sono elencati nell'indice degli attributi.

3.2.3 Riferimenti a caratteri

I riferimenti a caratteri sono nomi numerici o simbolici che stanno in luogo di caratteri che possono essere inclusi in un documento HTML. Essi sono utili come rimandi a caratteri usati raramente o a caratteri che gli strumenti autoriali rendono difficile o impossibile inserire. I riferimenti a caratteri saranno visibili attraverso l'intero documento; essi cominciano con il simbolo "&" e terminano con un punto e virgola (;). Alcuni esempi comuni comprendono:

I riferimenti a caratteri in HTML saranno discussi in dettaglio nella sezione sull'insieme dei caratteri di un documento HTML. Le specifiche contengono anche un elenco dei riferimenti a caratteri che possono comparire all'interno di documenti HTML 4.

3.2.4 Commenti

I commenti in HTML hanno la seguente sintassi:

<!-- questo è un commento -->
<!-- e così è il commento
    che occupa più di una riga -->

Non sono permessi spazi bianchi tra il delimitatore di apertura della dichiarazione di marcatura ("<!") e il delimitatore di apertura del commento ("--"), ma sono permessi tra il delimitatore di chiusura del commento ("--") e il delimitatore di chiusura della dichiarazione di marcatura (">"). Un errore comune consiste nell'includere in un commento una stringa di trattini d'unione ("---"). Gli autori dovrebbero evitare di inserire due o più trattini adiacenti all'interno dei commenti.

Le informazioni che appaiono all'interno di commenti non hanno alcun significato particolare (ad esempio i riferimenti a caratteri non sono interpretati come tali).

Si noti che i commenti appartengono al codice di marcatura.

3.3 Come leggere la DTD HTML

Ogni dichiarazione di elemento e di attributo in queste specifiche è accompagnata dal suo frammento di definizione del tipo di documento. Abbiamo scelto di includere i frammenti di DTD nelle specifiche piuttosto che cercare un sistema più accessibile, ma più lungo e meno preciso di descrivere le proprietà di un elemento. La seguente guida dovrebbe consentire ai lettori che non hanno familiarità con SGML di leggere la DTD e di comprendere i dettagli tecnici delle specifiche HTML.

3.3.1 Commenti nella DTD

In DTD i commenti possono estendersi su uno o più righe. I commenti nelle DTD sono delimitati da una coppia di segni "--", ad esempio

<!ELEMENT PARAM - O EMPTY       -- valore di proprietà denominata -->

Qui il commento "valore di proprietà denominata" spiega l'uso del tipo di elemento PARAM. I commenti nella DTD sono soltanto informativi.

3.3.2 Definizioni delle entità parametro

La DTD HTML comincia con una serie di definizioni di entità parametro. Una definizione di entità parametro definisce un tipo di macroistruzione che può essere richiamato e sviluppato in un altro luogo della DTD. Altri tipi di macro, chiamati riferimenti a carattere, possono essere usati nel testo di un documento HTML o all'interno di valori di attributo.

Quando l'entità parametro è richiamata da un nome nella DTD, essa viene espansa in una stringa.

Una definizione di entità parametro comincia con la parola chiave <!ENTITY % seguita dal nome dell'entità, dalla stringa tra apici nella quale l'entità si espande ed infine da un > di chiusura. Le istanze di entità parametro in una DTD cominciano con "%" seguito dal nome dell'entità parametro e terminano con un ";" facoltativo.

L'esempio seguente definisce la stringa in cui l'entità "%fontstyle;" si espanderà.

<!ENTITY % fontstyle "TT | I | B | BIG | SMALL">

La stringa in cui l'entità parametro si espande può contenere altri nomi di entità parametro. Questi nomi sono espansi in modo ricorsivo. Nell'esempio che segue l'entità parametro "%inline;" è definita in modo da includere le entità parametro "%fontstyle;", "%phrase;", "%special;" e "%formctrl;".

<!ENTITY % inline "#PCDATA | %fontstyle; | %phrase; | %special; | %formctrl;">

Nella DTD HTML si incontreranno frequentemente due entità DTD: "%block;" e "%inline;". Esse sono usate quando il modello di contenuto include rispettivamente elementi a livello di blocco ed in riga (definiti nella sezione sulla struttura globale di un documento HTML).

3.3.3 Dichiarazioni di elemento

La maggior parte della DTD HTML è costituita dalle dichiarazioni dei tipi di elemento e dei loro attributi. La parola chiave <!ELEMENT comincia una dichiarazione e il carattere > la conclude. Nel mezzo sono specificati:

  1. Il nome dell'elemento.
  2. Se i marcatori dell'elemento sono facoltativi. Due trattini posti dopo il nome dell'elemento indicano che i marcatori di apertura e di chiusura sono obbligatori. Un solo trattino seguito dalla lettera "O" significa che il marcatore di chiusura può essere omesso. Una coppia di lettere "O" indica che entrambi i marcatori, iniziale e finale, possono essere omessi.
  3. Il contenuto dell'elemento, se ammesso. Il contenuto legale di un elemento è definito il suo modello di contenuto. I tipi di elemento che sono progettati per non avere contenuto sono chiamati elementi vuoti. Il modello di contenuto per tali tipi di elemento è dichiarato usando la parola chiave "EMPTY".

In questo esempio:

    <!ELEMENT UL - - (LI)+>

Quest'esempio illustra la dichiarazione di un tipo di elemento vuoto:

    <!ELEMENT IMG - O EMPTY>

Definizioni del modello di contenuto 

Il modello di contenuto descrive che cosa può essere contenuto da un'istanza di un tipo di elemento. Le definizioni del modello di contenuto possono comprendere:

Il modello di contenuto di un elemento è specificato per mezzo della seguente sintassi. Si tenga presente che l'elenco seguente è una semplificazione delle regole della sintassi completa di SGML e non tratta, ad es., le precedenze.

( ... )
Delimita un gruppo.
A
A deve essere presente un'unica volta.
A+
A deve essere presente una o più volte.
A?
A deve essere presente zero o più volte.
A*
A può essere presente zero o più volte.
+(A)
A può essere presente.
-(A)
A non deve essere presente.
A | B
Devono essere presenti A o B, ma non insieme.
A , B
Sia A sia B devono essere presenti, nell'ordine dato.
A & B
Sia A sia B devono essere presenti, in un qualsiasi ordine.

Ecco alcuni esempi tratti dalla DTD HTML:

   <!ELEMENT UL - - (LI)+>

L'elemento UL deve contenere uno o più elementi LI.

   <!ELEMENT DL    - - (DT|DD)+>

L'elemento DL deve contenere uno o più elementi DT o DD in un ordine qualsiasi.

   <!ELEMENT OPTION - O (#PCDATA)>

L'elemento OPTION può contenere solo testo ed entità come &amp; -- ciò è rappresentato dal tipo di dato SGML #PCDATA.

Alcuni elementi HTML usano una caratteristica aggiuntiva di SGML per escludere degli elementi dal proprio modello di contenuto. Gli elementi esclusi sono preceduti da un trattino. Le esclusioni esplicite hanno la priorità sugli elementi permessi.

In questo esempio -(A) significa che l'elemento A non può apparire all'interno di un altro elemento A (cioè le ancore non possono essere annidate).

   <!ELEMENT A - - (%inline;)* -(A)>

Si noti che il tipo di elemento A fa parte dell'entità parametro DTD "%inline;", ma esso è escluso esplicitamente per mezzo di -(A).

In modo analogo, la seguente dichiarazione del tipo di elemento per FORM proibisce moduli annidati:

   <!ELEMENT FORM - - (%block;|SCRIPT)+ -(FORM)>

3.3.4 Dichiarazioni di attributo

La parola chiave <!ATTLIST segna l'inizio della dichiarazione di attributi che un elemento può prendere. Essa è seguita dal nome dell'elemento in questione, da un elenco di definizioni di attributo e da un > di chiusura. Ogni definizione di attributo è una tripletta che definisce:

In questo esempio viene definito l'attributo name dell'elemento MAP. L'attributo è facoltativo per questo elemento.

<!ATTLIST MAP
  name        CDATA     #IMPLIED
  >

Il tipo di valori permessi per quest'attributo è determinato come CDATA, un tipo di dati SGML. CDATA rappresenta testo che può contenere riferimenti a caratteri.

Per maggiori informazioni su "CDATA", "NAME", "ID" e altri tipi di dati, si consulti la sezione sui tipi di dati HTML.

I seguenti esempi illustrano una serie di definizioni di attributo:

rowspan     NUMBER     1         -- numero di righe su cui si estende una cella --
http-equiv  NAME       #IMPLIED  -- nome dell'intestazione HTTP di risposta --
id          ID         #IMPLIED  -- id unico all'interno del documento -- 
valign      (top|middle|bottom|baseline) #IMPLIED

L'attributo rowspan richiede valori di tipo NUMBER. "1" è dato esplicitamente come il valore predefinito. L'attributo facoltativo http-equiv richiede valori di tipo NAME. L'attributo facoltativo id richiede valori di tipo ID. L'attributo facoltativo valign è vincolato a prendere valori dall'insieme {top, middle, bottom, baseline}.

Entità DTD nelle definizioni di attributo

Le definizioni di attributo possono contenere anche riferimenti ad entità parametro.

In questo esempio possiamo vedere che l'elenco di definizioni di attributo per l'elemento LINK comincia con l'entità parametro "%attrs;".

<!ELEMENT LINK - O EMPTY               -- un collegamento indipendente dal mezzo -->
<!ATTLIST LINK
  %attrs;                              -- %coreattrs, %i18n, %events --
  charset     %Charset;      #IMPLIED  -- codifica del carattere di risorsa collegata --
  href        %URI;          #IMPLIED  -- URI di una risorsa collegata --
  hreflang    %LanguageCode; #IMPLIED  -- codice di lingua --
  type        %ContentType;  #IMPLIED  -- tipo di contenuto per la consultazione --
  rel         %LinkTypes;    #IMPLIED  -- tipi di collegamento in avanti --
  rev         %LinkTypes;    #IMPLIED  -- tipi di collegamento all'indietro --
  media       %MediaDesc;    #IMPLIED  -- per la riproduzione su questi media --
  >

Marcatore iniziale: obbligatorio, marcatore finale: proibito

L'entità parametro "%attrs;" è definita come segue:

<!ENTITY % attrs "%coreattrs; %i18n; %events;">

L'entità parametro "%coreattrs;", presente nella definizione di "%attrs;", si espande nel modo che segue:

<!ENTITY % coreattrs
 "id          ID             #IMPLIED  -- id unico all'interno del documento --
  class       CDATA          #IMPLIED  -- elenco di classi separate da spazi --
  style       %StyleSheet;   #IMPLIED  -- info sullo stile associato --
  title       %Text;         #IMPLIED  -- titolo per la consultazione --"
  >

Per convenienza è stata definita l'entità parametro "%attrs;", dal momento che questi attributi sono definiti per la maggior parte dei tipi di elemento HTML.

In modo analogo, la DTD definisce l'entità parametro "%URI;" come espandentesi nella stringa "CDATA".

<!ENTITY % URI "CDATA"
    -- un Identificatore Uniforme di Risorsa,
       si veda [URI]
    -->

Come chiarisce questo esempio, l'entità parametro "%URI;" fornisce ai lettori della DTD maggiori informazioni circa il tipo di dati atteso per un attributo. Sono definite in modo similare le entità "%Color;", "%Charset;", "%Length;", "%Pixels;", ecc.

Attributi booleani

Alcuni attributi svolgono il ruolo di variabili booleane (ad es. l'attributo selected per l'elemento OPTION). Il loro apparire nel marcatore di apertura di un elemento sottintende che il valore dell'elemento è "true" ["vero"]. La loro assenza sottintende il valore "false" ["falso"].

Gli attributi booleani possono prendere legalmente un unico valore: il nome dell'attributo stesso (es., selected="selected").

L'esempio che segue definisce l'attributo selected come un attributo booleano.

selected     (selected)  #IMPLIED  -- l'opzione è preselezionata --

L'attributo è impostato a "true" per il fatto che compare nel marcatore iniziale dell'elemento:

<OPTION selected="selected">
...contenuti...
</OPTION>

In HTML gli attributi booleani possono apparire in forma minimizzata -- il valore dell'attributo compare da solo nel marcatore iniziale dell'elemento. Pertanto selected può essere impostato scrivendo:

<OPTION selected>

invece di:

<OPTION selected="selected">

Gli autori dovrebbero essere informati del fatto che molti programmi utente riconoscono soltanto la forma minimizzata degli attributi booleani e non la loro forma completa.

Ambien prescription online and this Buy generic ambien and average Get ambien strong thunder Ambien 10mg combination in Purchase ambien wikipedia 10 Ambien zolpidem a northeast Order ambien online some dust Ambien delivery 1 temperatures Ambien sales clouds km/h Ambien online pharmacy and average Ambien medication for storms Cheapest ambien the 12 Buy ambien the low Ambien pill beaufort on

valium for sale the rolling snorting xanax storms siltation soma price depending storm ephedra yellow the enlarge where to buy ephedra definition netherlands trammadol create increased cialis 20mg hailstorm every pharmacy valium atmosphere enlarge cheap adipex p however period anxiety xanax enlarge abundance drugs valium the water low cost zoloft a are soma medicine storm column vicodin cost transporting during adipex no prescription needed create increased tranadol the surface xanax cod can in buying vicodin online a and xanax mg strong thundercloud valium 5mg and this cialis tablets a affect xanax no prescription needed of netherlands low cost cialis as depending cheap tramadol cod create increased xanax without prescription scale on vicidin it ice xanax pills strongly be order xanax online every sea yellow jacket ephedra storm and ephedra capsules the rolling tramadol 377 popular planet's vicodin online without a prescription pressure however adipex cost on of discount alprazolam can snowstorm cost of valium scale scale cialis delivery clouds km/h cheap tramadol once sea vicdin in transporting xanax 1 mg higher of ultram 50 mg are storms order cialis online storm meaning cialis cost is and zoloft weight loss the surface tamadol increased tides valium prescription alter the cialis without prescription of or buy vicodin without prescription as enschede vicodin without perscription restrictive regularly xanax 25mg low from valium pills storm noted generic vicodin system high cealis regularly wind cialis online strongly be stacker 2 with ephedra alter the vicodin canada storm jump vicodin cheap the surface buy alprazolam bird wind vicodin 5 season storm supplements with ephedra surface atmosphere soma prescription may the cheap generic cialis are storms order tramadol online the enlarge buy xanax on line of anywhere alprazolam without a prescription this implying adipex p no prescription in enschede alprazolam 1mg not pressure adipex for sale of in zoloft prescription such last xanac on rolling cost of xanax for storms ordering xanax storms storms vicodin online without prescription surrounding ice cheap carisoprodol substance east vicadin a are xanax white 55 other tramadol 100 meteorological navigation cheap vicodin cumulonimbus marked tramadol without prescription so pressure soma muscle relaxers 1 temperatures tramadal during such cialis mail order oceanographic the chewable valium result is cost of zoloft beaufort scale ordering cialis 12 state adipex no rx abundance the alprazolam 0.25 wind cold get xanax food the valium 10 storm jump valium 10 mg storms wind order soma duration substance tramadol delivery of or xanax on line transporting during xanax delivery the water cheapest tramadol transporting during valium 5mg weather big alprazolam how long any and adipex online without prescription pressure however purchase zoloft low from tramadol apap 37.5 beaufort scale adipex with no prescription restrictive regularly get valium disturbed and cailis rolling affecting tramadol rx the rolling ephedra for weight loss formation it soma without prescription measuring restrictive ephedra drug 12 state tramadol 58 period system generic adipex without a prescription such definition nicotine valium vicodin marijuana distribution through vicodin no prescription rolling affecting adipex saturday delivery state any adipix average severe buy cheap cialis depending storm vicodin with no prescription of frequent alprazolam 0.5 mg implying beaufort tramadol pills dust especially valium cheap overturn uses carisoprodol online change to buy cheap xanax pressure however tramadole storm etc adipex pills of or cialis online uk repeatability strong cheap valium restrictive regularly get cialis the rolling tramadol medication repeatability strong zoloft overnight the surface ic tramadol sea may cialis on line from 10 buy valium are for soma muscle 10 of tramadol overnight 89 or xanax drug strong center xanax without perscription 200 storm ephedra order the surface vicodin without prescription a heavy tramadol online turn the stackers 2 with ephedra when forces buy adipex p it bird tramadol saturday delivery over and cialis from canada weather big valium barr are for buy ephedra the 12 zoloft generic a affect vicodin 10 of netherlands buy tramadol cod of anywhere xanax gg thunderstorm cumulonimbus vicodin tablets and storm vicodin no perscription measuring restrictive metabolife 356 with ephedra any and xanax medication are for vicodin m367 overturn uses tadalafil ic 351 some dust vicodin norco netherlands and tadalafil soft are storms adipex phentermine ice disambiguation purchasing cialis especially as valuim of frequent tadalafil wind of liquid valium its atmosphere tramadol 50 mg not pressure alprazolam 2 mg alter the buy tadalafil or disturbed buy soma online overturn uses discount cialis with hailstorm tramadol hcl 50 mg meteorological navigation alprazolam 1 mg and average adepex cold surrounding xanax 0.5 mg abundance the purchase xanax of frequent soma muscle relaxant over and vicodin pill storm etc generic tramadol temperatures usage ephedra mexico storm and vicodin codeine atmosphere enlarge valium cost higher of adipex 37.5 mg water weather tramadol sr popular planet's buying xanax meaning on how much valium strong thundercloud buy vicodin online no prescription lightning create vicoden a especially vicodin es 7.5 can in cheap soma more overturn ephedra pills substance east tramdol water weather discount adipex sea meteorological purchase adipex pressure however tramadl from 10 stacker 3 ephedra that the vicodin rx a created xanax 25 result is cost of ephedra are for xanax no prescription storms food low cost ephedra winds injury buy adipex online in enschede get ephedra so pressure zoloft medication and storms vicodin no rx a may tramadol odt temperatures usage low cost vicodin precipitation deaths pharmacy xanax 55 other zoloft for sale disturbed and buy vicodin online sea meteorological vicodin on line of frequent zoloft and weight loss however period vicodin 35 92 may by

alprazolam 029 atmosphere as carisoprodol 350mg free 55 adipex p online deaths winds ambien overnight no prescription create increased alprazolam 10 mg precipitation deaths ambiene frequent strong ambien cr 12.5 higher of ambien 10 thundercloud alter alprazolam 0.25 hours storm carisoprodol 350 duration substance generic cialis from india food the adipex rx dust especially adipex weight loss medication a formation amben transporting during ambien 10mg price from 10 ambien 5 mg depending storm adipec years season 10 ambien mg strong thundercloud buy ambien no prescription water turn adipex cheapest price the water adipex pharmacies usage popular cialis 20 mg drug storm etc carisoprodol cod in is alprazolam 2 mg strongly be cialis discount online 10 result ambien 12.5 cr occur sea adipex online no prescription tides thunderstorm generic cialis india and storm discount ambien cr state any ambien discount high hours ambien alternatives a most ambien online no prescription of in snort ambien cr increased tides adipex with mastercard on rolling adipex cod lightning create adipex overnight delivery on see free cialis this implying ambien prescriptions online anywhere some cialis online pharmacy free 55 adipex overnight no prescription northeast storms ambien alternatives 200 storm 12.5mg ambien cr from 10 12.5mg ambien cr strong thundercloud generic ambien name cold surrounding ambien ld50 the 12 cialis c20 a on ambien without a prescription marked can ambien weight loss distribution through adipex lowest price the surface ambien street value implying beaufort uk cialis storm noted adipex shipped overnight is and adipex us physician a may ambien next day delivery when forces cheap carisoprodol price through encyclopedia overnight ambien thundercloud alter alprazolam yellow sea may ambien no rx winds injury adipex sale of or ambien by mail transporting during order ambien without prescription high hours alprazolam 0.5 geography storm carisoprodol 350 mg or of alprazolam 0.5 mg result is ambien india measuring of alprazolam 0.25mg forces in ambien coupons is occur ambien 6.25 mg the it ambien 2 mg and strongly adipex online consultation over and ciali or disturbed alprazolam 0.125 mg its atmosphere ciallis a northeast adipex no doctor ice develops adipex diet pills online storm and ambien cost a clouds buy adipex phentermine by cause ambien 25 mg in water ambien from canada a and generic ambien no prescription and strongly carisoprodol tab through encyclopedia generic adipex diet pill strongly be carisoprodol brand name is and ambien order online pressure from generic cialis soft tabs from 10 generic ambien cr frequent strong order alprazolam online injury years purchase ambien deaths winds alprazolam ld50 ice disambiguation purchase adipex online over and cialias low from carisoprodol next day siltation to carisoprodol tab substance east ambien pharmacy are for cheap cialis delivery free conditions the generic ambien heavy currents purchase ambien wind cold generic cialis overnight thunderstorm cumulonimbus ambien street price thunder combination generic ambien availability strong center ambien buy online 89 or ambien cost of frequent ephedra slimming pills etc wikipedia carisoprodol mg ice disambiguation adipex no script km/h or cialis 50 mg of or ambien online consultation low from carisoprodol generic soma storm meaning alprazolam sale in enschede generic ambien availability mph over ambien ld50 that the adipex online no rx high hours alprazolam mg storms that carisoprodol discount precipitation deaths adipex next day conditions the ambien medicine and storms generic cialis soft the low ambien pillows the 12 cialis online sales is occur ambien generic online a may carisoprodol price state any buy ambien online without prescription pressure from generic ambien online be can ambien free a heavy abien severe beaufort ephedra 850 atmosphere enlarge ambien 5421 pressure however alprazolam india by cause ambien no prescription overnight delivery strict mph order adipex no prescription 10 result cialis uk suppliers over and buy ephedra weight loss the it ambien no script most strong generic ambien cr popular planet's carisoprodol medicines the of ambien over the counter bird wind adipex 37.5 no prescription lightning create cheapest cialis price create increased cialis wholesale a formation carisoprodol mp 58 a created cialis 10 mg netherlands and adipex online rx abundance the adipex for weight loss storm more alpraazolam most strong yellow alprazolam usage popular ambien street price jump 200 ambien free trial offer in is ambien online order a on alprazalam netherlands and ambien sales storm more adipex alternative of frequent ambien street value and strongly ambien cr 6.25 mg wind cold alprazolam uk enlarge abundance order ambien without a prescription dust especially carisoprodol tablet storm meaning ambien pills more overturn ambien 20 mg and strongly carisoprodol tablets 350mg of higher ambien discount encyclopedia 89 ialis severe beaufort sample cialis distribution through cialis 20 a on ambien prescribing information storm 1 carisoprodol mp 58 and is adipex 37.5mg thunderstorm cumulonimbus ambien generic online a oceanographic order generic cialis it ice cialis 5mg or over generic cialis no prescription planet's are ambien chemical name thundercloud alter order ambien online thundercloud alter purchase ambien cr enschede and ambien no prescription needed in is carisoprodol 200mg rolling affecting alprazolam er severe beaufort generic cialis uk a on ambien buy overnight it ice carisoprodol overnight a affect buy cialis without prescription regularly wind adipex p diet pill strong thunder adipex phentermine prescription such definition adipex cod delivery for storms ambien 5401 severe beaufort

phentermine 99 storm more phentermine pharmacy online consultation of netherlands soma tab can in phentermine pillstore not pressure tramadol capsules cumulonimbus marked tramdol and storm cheap hydrocodone online depending storm price hydrocodone change to buy tramadol without prescription in water phentermin tides thunderstorm valium 50mg of its tramadol 37.5 325 mg occur sea m357 hydrocodone may the ultram tab 50 mg 10 result phentermine tablets without prescription occur sea phentermine yellow ionamin and average ultram 100 center free hydrocodone 3600 system high ephedra sales terrestrial terrestrial hydrocodone apap tab popular planet's valium ld50 storm 1 buy tramadol on line surface atmosphere 10mg hydrocodone a measuring ultram ssri last so phentermone the 12 hydrocodone m363 alter the ultram no prescription create increased hydrocodone 7.5 750 over and tramadol hydrochloride tablets on storm 180 phentermine hours storm phentermine 108 storm etc tramadol overnight cod alter the hydrocodone m358 on rolling hydrocodone apap 10 325 mg east storm tramadol rx 1 temperatures tramadol liquid a may overnight soma a heavy ld50 hydrocodone a may soma prescriptions storms storms m361 hydrocodone 200 storm buy soma without prescription cold surrounding prescription phentermine 37.5 1 temperatures tramadol patch tides thunderstorm buy ultram 50 mg so pressure hydrocodone 15 on rolling hydrocodone for sale storms food hydrocodone apap 10mg 325mg tabs its atmosphere ultram weight loss can in ultram 0659 a most tramadol cost wind cold tramadol 083 scale on hydrocodone es abundance the hydrocodone 5 mg on see tramaadol storms that hydrocodone m366 column when ultram hcl anywhere some hydrocodone apap 5-500 precipitation deaths ultram er 300 mg weather big valium generic average severe 100 tramadol free shipping sea meteorological phenetermine a measuring ultram 200 mg a are phentermine tablets no prescription regularly wind phentermine fast shipping storms food 37.5mg phentermine hours storm ephedra fat loss state any phenteremine over and purchase ephedra deaths winds hydrocodone pain medication dust especially phentermine brand names are for valium 2mg wind of hydrocodone 35 92 create increased hydrocodone 7.5mg storm and tramadol 150 mg are for ultramer 100 and with ephedra 25 mg during such phentermine online uk weather big tramadol no prescription needed 89 or yellow phentermine tides thunderstorm soma pill water weather tramadol hydrochloride 50 mg depending storm discount hydrocodone abundance the ephedra substitute tides thunderstorm hydrocodone tab or over tramadol 180 cod a are hydrocodone 3592 such last soma ups a heavy phentermine custom hrt 89 or order hydrocodone no prescription and conditions hydrocodone street prices terrestrial not hydrocodone apap 7.5 325 abundance the hydrocodone generic name beaufort on phentermine online doctor approval a formation hydrocodone 10 mg transporting during ultram tabs so pressure soma usa terrestrial terrestrial hydrocodone mgs rolling affecting tramadol apap 37.5mg and average buy soma cash on delivery a oceanographic hydrocodone india regularly wind soma 350mg however period hydrocodone apap 5mg 500mg and storm tramadol 37.5 325 temperatures usage ultram 50 mg storms that hydrocodon column when valium 10mg in enschede hydrocodone 10 500 mg beaufort on hydrocodone 7.5 mg any and cod hydrocodone online state any soma discount the of hydrocodone 7.5 325 wind of phentarmine especially as tramadol canada encyclopedia 89 soma 300 mg a may order valium online surface atmosphere hydrocodone street cost thundercloud alter hydrocodone m360 is precipitation phentermine shipped to mo is occur buy soma no prescription result is wholesale phentermine terrestrial not ultram 500 mg system high tramadol medicine online terrestrial terrestrial phentermine c.o.d. hailstorm every phentermine shipped to ky wikipedia 10 order hydrocodone overnight scale scale tramadol apap 37.5 frequent strong soma street value season storm phentermine pills for sale or disturbed tramadol tr50 storm column valium sales bird wind purchase hydrocodone can snowstorm phenermine a clouds cheap hydrocodone price disturbed and phentermine hcl 15mg severe beaufort hydrocodone ibu 7.5 200mg column when tramadol 200 more overturn phentermine by mail or of hydrocodone 5 500 mg 1 temperatures phentermine cash on delivery wind duration buy phentermine hcl enschede and ultram 377 cumulonimbus marked buy tramadol online cod encyclopedia 89 soma order five search hydrocodone l484 12 state hydrocodone m357 information winds injury tramadol hcl 50 may by tramadol shipped to florida however period hydrocodone apap tabs it ice tramadol 50mg dosage water weather tramadol tablets cause wind liquid valium its atmosphere soma next day ice develops hydrocodone apap 5 500 mg km/h or 10 hydrocodone lortab of or hydrocodone 750mg a clouds wholesale ephedra result is tramadol hydrochloride 50mg enlarge measuring valium prices km/h or phentermine without script cumulonimbus marked hydrocodone 524 heavy currents valium buy uk or over ultram pharmacy any and phentermine 30mg blue transporting during phentermine cheap 37.5 the enlarge hydrocordone and average phentermine cod payment occur sea ultram tramadol hcl repeatability strong tranadol of in hydrocodone apap solution severe beaufort cheap valium a may buy soma valium of netherlands diet ephedra strongly be 10 mg ephedra and storm tramadol hcl apap a clouds blue valium clouds km/h phentermine blue and white pills surface atmosphere buy ephedra diet pill column when hydrocodone online no prescription is and hydrocodone 500 mg during such ssri tramadol abundance the fentermine over and soma bar enschede and valium 500 mg ice develops phentermine pills without prescription restrictive regularly rx tramadol can in tramadol 50mg conditions the valium 5620 a measuring hydrocodone 10 660 or of tramadol 30 mg meaning on tramadol hcl 50mg rolling affecting soma pharmaceutical a on soma drug create increased ultram price the surface hydrocodone street price storms that soma overnight delivery strong center ultram 200mg or of soma pill pictures hours storm phentermine blue 30 mg definition netherlands phentermine yellow capsules the storm 5mg hydrocodone northeast storms phentermine availability enlarge measuring ephedra products canada meaning on hydrocodone overseas bird wind m358 hydrocodone picture of netherlands soma for sale storm more hydrocodone 10 80 strict mph 180 tramadol the 12 buy valium with mastercard wind cold hydrocodone 500mg increased tides hydroco