2010-08-12 7 views
6

Załóżmy, że mamCzy istnieje sposób na umieszczenie jednego fragmentu kodu w innym?

  • fragment
  • fragment B
    gdziesnippetzawierafragmentu kodu B n razyzn> 1 .

Teraz mam skopiowane treści fragmencie B do snippet A. Ma to tę wadę, że gdy zmieniam snippet B, muszę dodatkowo zmienić snippet A. W związku z tym moje pytanie brzmi, czy istnieje jakieś oświadczenie, aby osadzić jeden fragment w innym?
np.
<externalsnippet src=".\snippetB.snippet" />
lub coś podobnego.

+0

Czy kiedykolwiek to wymyśliłeś? – Daryl

Odpowiedz

1

można użyć zewnętrznego przetwarzanej jednostkę zadeklarować encji do krótkiego opisu B a następnie wykorzystać go n liczbę wewnątrz od krótkiego opisu A.

Gdy fragment A jest analizowany, odniesienia jednostka zostanie rozszerzony, a treść z fragmentu B zostanie dołączona w każdym miejscu, w którym użyto encji.

Na przykład załóżmy, że masz plik o nazwie snipppetB.xml:

<snippetB> 
    <foo>Content goes here</foo> 
</snippetB> 

i plik do snippet ogłosił podmiot zwany snippetB przedstawieniu snippetB.xml i wykorzystał je czterokrotnie :

<!DOCTYPE snippetA [ 
    <!ENTITY snippetB SYSTEM "./snippetB.xml"> 
]> 
<snippetA> 
<a>&snippetB;</a> 
<b>&snippetB;</b> 
<c>&snippetB;</c> 
<d>&snippetB;</d> 
</snippetA> 

Kiedy snippetA.xml jest analizowany zawartość XML będzie l ook w ten sposób:

<snippetA> 
<a> 
<snippetB> 
    <foo>Content goes here</foo> 
    </snippetB> 
    </a> 
<b> 
<snippetB> 
    <foo>Content goes here</foo> 
    </snippetB> 
    </b> 
<c> 
<snippetB> 
    <foo>Content goes here</foo> 
    </snippetB> 
    </c> 
<d> 
<snippetB> 
    <foo>Content goes here</foo> 
    </snippetB> 
    </d> 
    </snippetA> 
Powiązane problemy