-
ኤማላ (XML) ሃቴማላን (HTML) መተካት ይችላል?
ኤማላ በቁም ሃቴማላን መተካት አይችልም። ነገር ግን
ሃቴማላን መፍጠር ይችላል። ከዚህ አባባል አንጻር ፥
አዎ መተካት ይችላል ብሎ ለመከራከር ይቃጥ ይሆናል።
ይሁን እንጂ ኤማላ አራቢ ቋንቋ መሆኑን አንዘንጋ።
ለኤማላ ፥ ሃቴማላ ለአቅመ-ሥራ የደረሰ ፍሬ
ነው። ለምሳሌ ኤክስ/ኤች/ቲ/ኤም/ኤል (XHTML)
በኤማላ የተፈጠረ ቋንቋ ነው። ተግባሩና ዓላማው
እንደ ሃቴማላ ሲሆን ግን በህግ አጥባቂነቱና አስከባሪነቱ
ይለያል።
-
ኤማላ ከመማሬ በፊት ኤስ/ጂ/ኤም/ኤል (SGML)
ወይም ሃቴማላን ማወቅ አለብኝ?
የለም። በቀጥታ ከኤማላ መጀመር ይቻላል።
ነገር ግን ፥ ሁኔታው ከፈቀደ ፥ ከሃቴማላ
መነሳቱ ምናልባት ይረዳ ይሆናል።
የገላጭ ቋንቋ በሥራ ላይ ምን እንደሚመስል
ባጭሩና በቀላሉ ያሳያል።
-
የኤማላ ሰነድ ምን ይመስላል?
ይዘቱ አማርኛ የሆነ ፥ ቀላል ምሳሌ ይኸን
ይመስላል።
|
|
|
<?xml version="1.0">
<parks>
<park>
<place>ምዕራብ ኢትዮጵያ</place>
<name>ኦሞ ብሔራዊ ፓርክ</name>
</park>
<park>
<place>ምሥራቅ ኢትዮጵያ</place>
<name>አዋሽ ብሔራዊ ፓርክ</name>
</park>
<park>
<place>ደቡብ ኢትዮጵያ</place>
<<name>ነጭ ሳር ፓርክ</name>
</park>
</parks>
|
|
|
የሚቀጥለው ምሳሌ የተወሳሰበና ብዙ ነገሮችን
ያካተተ ነው።
|
|
|
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE titlepage SYSTEM "
http://www.foo.bar/dtds/typo.dtd"
[<!ENTITY % active.links "INCLUDE">]>
<titlepage id="BG12273624">
<white-space type="vertical" amount="36"/>
<title font="Baskerville" size="24/30"
alignment="centered">Hello, world!</title>
<white-space type="vertical" amount="12"/>
<!-- In some copies the following decoration is
hand-colored, presumably by the author -->
<image location="http://www.foo.bar/fleuron.eps"
type="URL" alignment="centered"/>
<white-space type="vertical" amount="24"/>
<author font="Baskerville" size="18/22"
style="italic">Vitam capias</author>
<white-space type="vertical" class="filler"/>
</titlepage>
|
|
|
-
በሰነዴ ውስጥ የምከታቸውን ክፍት
ቦታዎች ኤማላ እንዴት ያስተናግዳቸዋል?
ኆኅያት (white space) መልክ የሌላቸው
(ሆሄያት) ፊደላት ናቸው። ለምሳሌ ፟ባዶ ቦታ፠ ፥
፟ታብ፠ (tab) እና ፟አዲስ መስመር፠ ኆኅያት ናቸው።
ባዶ ቦታ (ሁለት ነጥብ) ቃላቶች ይለያያል ፤
አዲስ-መስመር ንባቦች በመስመር ይከፋፍላል ፤
ታብ የተመጠኑ ባዶ ቦታዎች ይጽፋል።
የኤማላ ሰነድ ስናዘጋጅ ፥ ኆኅያትን ከላይ ለተጠቀሱት
ተግባራት እናስገባለን። አጠቃቀማችን በሁለት
ይከፈላል-ለንባብና ይዘት። ሰነዱን በቀላል እናነብ
ዘንድ የምነሰካቸው ኆኅያት ይዘቱን በምንም አይነት
መንገድ አይበክሉም። ነገር ግን ይዘቱ ውስጥ
የምንጠቀማቸው ፥ የይዘቱ አካል ይሆናሉ።
የኤማላ ፓርሰሮች (parsers) ኆኅያትን
አይጥሉም። ፓርሰሮች የኤማላ ሰነድ በልተው
(ሸንሽነው) ለተጠቃሚው ፕሮግራም የሚያቀርቡ
የኮምፕዩተር ፕሮግራሞች ናቸው። ለምሳሌ ፥
የመቃኛ ፕሮግራም አንድ የኤማላ ሰነድ ዌብ
ገጽ ላይ ለማሳየት ፥ ይዘቱን መንጥሮ
የሚያወጣለት የፓርሰሩ ፕሮግራም ነው። ስለዚህ
ማንኛውንም ለአቅመ-ሥራ የደረሰ የኤማላ ሰነድ
ለሥራ ስናሰመራ ፥ የመጀመሪያው ሂደት በፓርሰሩ
በኩል ማለፍ ነው።
ፓርሰሮች ኆኅያትን አይጥሉም። ስለዚህ ኆኅያቱ
ምን ትርጉም እንዳለቸው የሚወስነው በተጠቃሚው
ፕሮግራም ነው። ለምሳሌ መቃኛ ፕሮግራም።
-
የትኛው የሰነድ ክፍል ኬዝ-ሴንሲቲቭ
(case sensitive) ጠባይ አለው?
የኤማላ ሰነዶች በሙሉ ኬዝ-ሴንሲትቭ
(case sensitive) ናቸው። ይህ ህግ
በቀጥታ የሚመለተው እንደ ላቲን ፥ ግሪክ ያሉትን
ሥርዓተ-ፊደላት ነው። ኬዝ-ሴንሲቲቭ ሲባል
በትልቁ ፟A፠ እና በትንሹ ፟a፠ መካከል ልዩነት
አለ ለማለት ነው። ለምሳሌ ፟Afar፠ እና
፟afar፠ ሁለት የተለያዩ ቃላቶች ይሆናሉ ፤
በትልቁ ፟A፠ እና በትንሹ ፟a፠ ምክንያት።
ፕሮግራሞች ሁለቱን ቃላት ሲያወዳድሩ ፥
በልዩነታቸው የተነሳ እኩል አይደሉም ይላሉ።
አንድ የኤማላ ሰነድ ለመፍጠር ፥ አንዱ አማራጭ
በመጀመሪያ የራሳችን ገላጭ/መታወቂያ ቋንቋ ማውጣት
ነው። የምንፈጥረው ገላጭ ቋንቋ ለብቻው በፋይል
ከቀረበ ወይም ከሰነድ ጋር ከተጣመረ ፥ የሰነድ አይነት
ደንጋጊ (ሰአደ) Decument Type
Definiton ይባላል።
ሰአደ ውስጥ የምናወጣቸው መጠሪያዎች በላቲን
ወይም በተመሳሳይ ሥርአተ-ፊደል ከሆነ
የትልቁና የትንሹ ፊደል አመራረጣችን
እንደምንጠቀምበት መንገድ መሆን አለበት።
ለምሳሌ Name ብለን እዚህ መጠሪያ ካወጣን በኋላ ፥
ሰነድ ስናዘጋጅ name ብለን ያንን ቃል ልንጠቅስ
ብንሞክር ስህተት ይሆናል። ምክንያቱም
በትልቁ ፟N፠ እና በትንሹ ፟n፠ መካከል ልዩነት
ስላለ።
የኢትዮጵያ ፊደል ፥ እንደ ላቲን ወይም ግሪክ
፟ትልቁ፠ እና ፟ትንሹ፠ የሚባሉ ፊደሎች የለቱም።
ብዙዎቹ ሥርዓተ-ፈደላት እንደዚሁ።
ስለሆነም ከችግሩ ነፃ ናቸው። በነገራችን ላይ
ኤማላ 1.0 የኢትዮጵያን ፊደል ስለማይደግፍ ፥
ባማርኛ ወይም ሌሎች ቋንቋዎች መጠሪያ ቃላት
ማውጣት አንችልም።
በላቲን ፊደል መጠሪያ ቃላት
ስናወጣ በጥብቅ መከተል ያለብን ህግጋት የሚከተሉት
ናቸው፦
-
የአብይ-አንቀጽ ስሞች ትንሹና ትልቁ ፊደላት
ልዩ ናቸው ይላሉ ፤ ማለትም ኬዝ-ሴንሲትፍ
(case-sensitive) ናቸው።
የታወጁበት ስም ፥ በሰነዶች ዘንድ
መከበር አለበት።
-
የጠባየ-አንቀጽ ስሞች ትንሹና ትልቁ ፊደላት
ልዩ ናቸው ይላሉ ፤ ማለትም ኬዝ-ሴንሲትፍ
(case-sensitive) ናቸው።
የታወጁበት ስም ፥ በሰነዶች ዘንድ
መከበር አለበት።
-
የቃለ-አንቀጽ ስሞች ትንሹና ትልቁ ፊደላት
ልዩ ናቸው ይላሉ ፤ ማለትም ኬዝ-ሴንሲትፍ
(case-sensitive) ናቸው።
የታወጁበት ስም ፥ በሰነዶች ዘንድ
መከበር አለበት።
-
ሰአደ የማይጠቀም የኤማላ ሰነድ ፥
ነገር ግን ቅርጹ የተሟላ ፥ የሚይዛቸው
ያንቀጽ ስሞች መጀመሪያ በሠፈሩበት
ስም ይወሰዳሉ። ይገመገማሉ።
-
አሁን ያለኝን የሃቴማላ ሰነድ እንዴት
አድርጌ ነው በኤማላ መልክ እንዲሠራ
የማደርገው?
የሃቴማላ ፋይሎቻችንን ወደ ኤማላ የመቀየሩ
ሥራ ውስጥ ራሳችንን ከማስመጣችን በፊት ፥
ጥቅሙንና ጉዳቱን መመዘን ተገቢ ነው።
ለመቀየር የማንገደድ ከሆነ ፥
ጊዜያችንን ለበለጠ ጉዳይ መቆጠቡ ይመረጣል።
ባጠቃላይ ጀረጃ ፥ የሃቴማላ ሰነዶቻችንን ወደ
ኤማላ ብንቀይር ጥቅሞቹ የሚከተሉት ናቸው፦
-
በሰነዶቹ ውስጥ ያሉት መረጃዎች ፥
ይዘቶች ግልጽና የማያሻማ ትርጉም
ሊኖራቸው ይችላል። መታወቂያ ወይም
መለያ ስም በመስጠት።
-
ሰነዶቹ ከሃቴማላ ዝርክርክነት ነፃ ከመሆናቸው
የተነሳ ፥ ለፕሮግራሞች ዓይን ቀላልና አመቺ
ይሆናሉ።
-
ሰነዶቹ ፥ ካንድ ግዑዝ መልክ ቁራኛነት
ይወጣሉ። በመሆኑም በልዩ ልዩ መልክ
ላንባቢው ማቅረብ ይቻላል። አንድን ሰነድ ወደ
ኤማላ ስንቀይር ባቀራረቡና በይዘቱ መካከል
የማያሻማ ልዩነት እንደምናበጅ አንዘንጋ።
-
ሰነዶቹ ፥ እንደማንኛውም የኤማላ ሰነድ
ለተለያዩ ዓላማዎች ዝግጁ ይሆናሉ።
የዓላማዎቹ ርቀትና ቅርበት እንዳዘጋጁ ነው።
አዎ ፥ ጠቀሜታው ያመዝናል ባይ ፥ የቅየራውን
ተግባር ለማከናወን ፥ ከዚህ በታች የተጠቀሱትን
ነጥቦች ባንክሮ ሊመረምራቸው ይገባል።
-
የግል ፟ሰአደ፠ ማውጣትና በሱ ተመርኩዞ
ለውጡን ማካሄድ፤
-
ውጭ ካሉ ሰአዶች መካከል አንዱን
መምረጥና በሱ ተመርኩዞ ለውጡን ማካሄድ፤
-
ከዝርክርነት ነፃ የሆነ ፥ ነገር ግን
ሃቴማላነቱን የጠበቀ ውጤት ለማግኘት ፥
የXHTML ሰአደ
መርጦ ፥ በሱ የተመረኮዘ ለውጥ ማካሄድ።
ቅየራውን በየትኛው መንገድ ማካሄድ እንዳለበት
አዘጋጁ ካለበት ሁኔታ አንጻር መወሰን
ይኖርበታል። ከብዙ በጥቂቱ አማራጮቹ እነሆ።
-
በእጅ መቀየር፤
በጅ መቀየር የሚያስገድዱ ሁኔታዎች አሉ።
ለምሳሌ ፥ የሃቴማላውን ሰነድ መለወጥ
የተፈለገው በግል የወጣ ፟ሰነድ አይነት
ደንጋጊ፠ ላይ የተመሠረተ ከሆነ ፤ የሃቴማላው
ሰነድ ፥ ከሞላ ጐደል ቃለ-ምልክቶቹ የተስተካከሉና
ወደ XHTML ለመቀየር የቀረው ሥራ አነስተኛ
ከሆነ ፤ የሃቴማላው ሰነድ ከደንብ ውጭ የሆኑ
ቃለ-ምልክቶችን ካቀፈ ፤ በጅ ማድረጉ ምናልባት
የመጀመሪያ አማራጭ ነው።
-
መቀየሪያ ፕሮግራም መጠቀም፦
አዘጋጁ ሁኔታውን መዝኖ ፕሮግራም ለመጠቀም
ከወሰነ ፥ በዴቪድ ራገት (Dave Raggett)
የተጻፈ ፕሮግራም ፥ ታይዲ (Tidy) ተብሎ
የሚጠራ መጠቀም ይችላል። ታይዲ በነፃ የሚሰራጭ
ፕሮግራም ሲሆን የሚሰጠው ግልጋሎት ከመጠን
ያለፈ ነው። የሃቴማላን ሰነድ ወደ XHTML ወይም
XML መልክ የመቀየር ፥ ስህተቶች የማረም ፥
በኆኅያት የንባቦችን አቀማመጥ ማሳመርና የመሳሰሉትን
ይፈፅማል። የታይዲ ፕሮግራም ፥ ያሠራር ማብራሪያ ፥
እንዲሁም የፕሮግራሙ ጥሬ ኮድ
ከዚህ ገጽ ይገኛሉ።
-
ሁለቱንም መንገዶች መፈፀም፦
የቅየራውን ተግባር በጅ እንዲሁም በታይዲ አማካኝነት
ማካሄዱ እንደሁኔታዊ ሳይበጅ አይቀርም። አሁንም
ችግሩን አጢኖ ማለፊያ መንገድ መምረጥ ያለበት
አዘጋጁ ነው። ያም ሆነ ይህ ፥ ሁለቱንም መንገዶች
ለመጠቀም ራስን ሙሉ በሙሉ ማንቃት ተገቢ ነው።
ለማከል ያህል ፥ የሃቴማላ ሰነድ ወደ XHTML ሲቀየር
የሚከተሉት መመሪያዎች እንከተል።
-
የDOCTYPE ቃል ወደ ኤማላ <?xml
version="1.0" standalone="yes"
encoding="iso-8859-1"?> ይቀየር።
የDOCTYPE ቃል ባይኖርም ጭምር።
-
ቃለ-ምልክቶች በሙሉ በትንሹ ፊደል ይጻፉ።
-
ይዘተ-አልባ አንቀጾች በሙሉ መግጠሚያ ይግባላቸው።
ለምሳሌ ፥ የ<hr> ቃለ-ምልክት አግዳሚ መስመር
ይሠራል። በሃቴማላ በኩል ገጣሚ ቃለ-ምልክት (</hr>)
የለውም። በXHTML ዘንድ ገጣሚ ቃለ-ምልክት የግድ
ስለሆነ ፥ እንደ <hr/> ወይም <hr></hr>
ሆኖ ይጻፍ።
-
በስህተት ያልተገጠሙ ክዳኖች ይገጠሙ።
-
ልዩ ልዩ ምልክቶች ፥ እንደ < ፥
> ፥ &
እና የመሳሰሉት በቅጽል ስማቸው ይወከሉ።
ለምሳሌ ፥ < እንዲወጣ
< ፥ >
እንዲወጣ > ይሠፍራል።
-
ለጠባየ-አንቀጾች የሚሰየሙ ዕሴቶች በድርብ ጥቅስ
ምልክት ይታጠሩ። ለምሳሌ ፥
<p align="center">...</p>።
ለalign የተደለደለው ዕሴት center ሲሆን ፥
በድርብ ጥቅስ ምልክት ተጠቅሷል።
-
የሃቴማላ (HTML) አምሳል የሆነ ኤማላ (XML) አለ?
አዎ። XHTML ወይም ኤክስ/ኤች/ቲ/ኤም/ኤል
ይባላል። የተደነገገው በኤማላ 1.0
ቋንቋ ሲሆን ፥ ሃቴማላ 4.01
የሚያደርገውን ሁሉ ነገር ይፈጽማል።
መጨረሻ የወጣው ሃቴማላ (HTML)
ቁጥር 4.01 ነው። እንደሚታመነው
ከሆነ ሃቴማላ በዚሁ ቁጥሩ እንደረጋ
ይኖራል ይባላል። የወደፊት ሥራዎች
ከሃቴማላ ይልቅ በኤክስ/ኤች/ቲ/ኤም/ኤል
ረገድ ይቀጥላሉ ነው።
-
ኤማላ ፥ የኤስ/ጂ/ኤም/ኤል
ንኡስአካል ከሆነ የኤማላ ሰነዶች ላይ
የኤስ/ጂ/ኤም/ኤልን ፕሮግራሞች መጠቀም
እችላለሁ?
አብዛኛዎቹ የኤስ/ጂ/ኤም/ኤል ፕሮግራሞች ፥
ባሁኑ ጊዜ ፥ ከኤማላ ሰነዶች ጋር መሥራች
ይችላሉ።
ሊነሱ የሚችሉ አንዳንድ ችግሮችን
ለመቋቋም ይረዳ ዘንድ የኤማላውን
ሰነድ በኤስ/ጂ/ኤም/ኤል የሰነድ አይነት
ደንጋጊ ላይ መመሥረቱ የበለጠ ውጤት
ያመጣል። የኤስ/ጂ/ኤም/ኤል ፕርግራሙ
ስለ WebSGML ንቃት ካለው የኤማላን
ሰነድ የመቀበሉ ዕድል ከፍተኛ ነው።
-
የሃቴማላ ዌብ ሰነዶችን የምጽፍና
የማዘጋጅ ነበርኩ ፤ አሁን ኤማላን
በቃላሉ መማር እችላለሁ?
አዎ። በቀላሉ መማር ይቻላል።
ኤማላ ፥ በምርቶቹ ላይ ከዝርክርክነት
ነፃ የሆነ የማያሻማ መዋቅርና ጥብቅ
ህግ አክባሪነትን ይጠይቃል።
የኤማላ ሰነዶች የተስተካከለ ቅርፅ
እንዲኖራቸው ይፈለጋልና።
የኤማላ ሰነዶች ስንገነባ ፥ የቃለ-ምልክቶች
አስካክ ፥ ከሞላ ጐደል ከሃቴማላ
ጋር በፍጽም ይመሳሰላል። የኤማላ
ሰነድ ለያንዳንዱ ከፋች ቃለ-ምልክት የግድ
ገጣሚ ምልክት መኖር አለበት ይላል።
የምልክቶች መዛነፍ ፥ ሰነዱን ያጐድፋል።
-
ኤማላ ላቲን ያለሆኑ ፊደላት ይጠቀማል?
ኤማላ ፥ በማያሻማ ሁኔታ
የአይ/ኤስ/ኦ 10646(ISO-10646)
ሆህያትን ይደግፋል። የአይ/ኤስ/ኦ 10646
ደንብ አብዛኛዎቹን ያላም ቋንቋዎች (የሚነገሩትንና
የማይነገሩትን ጭምር) ያቅፋል።
ዩኒኮድ
የዚህ ደንብ ንኡስ-አካል ሆኖ ይሠራል።
እያንዳንዱ
የአይ/ኤስ/ኦ 10646 ሆሄ የሚወስደው
ቦታ 4 ኦክቴት (ባይቶች እንደማለት)
ሲሆን የዩኒኮድ ግን 2 ኦክቴት ነው።
አሁንም ቢሆን የኮምፕዩተሮች መስክ በአስኪ
(ASCII) ርስት ተቀፍድዶ የተያዘ ነውና ፥
ዩኒኮድን ያለብርቱ መሳናክል መጠቀም ይቻል
ዘንድ ፥ መሸጋገሪያ-ኮዶች መገልገል አንዱ
መፍትሄ ነው። ሁለቱ ከፍተኛ ተቀባይነት ያላቸው
መሸጋገሪያ-ኮዶች (encoding) ዩ/ቲ/ኤፍ-8
እና ዩ/ቲ/ኤፍ-16 (UTF-8, UTF-16)
ናቸው። ዩ/ቲ/ኤፍ-8 የእያንዳንዱን ዩኒኮድ ሆሄ
ወደ አስኪ ወደፊትና ወደኋላ የመቀየር ችሎታ አለው።
ለምሳሌ ፥ በዩኒኮድ የተዘጋጀ ሰነድ ዌብ ገጽ
ማቅረብ ቢፈለግ ፥ ወደ ዩ/ቲ/ኤፍ-8 መቀየር
ይኖርበታል። አለበላዛ ፥ መቃኛ ፕሮግራሞች
በትክክል አይረዱትም። የኤማላ ሰነዶች ፥
የዩኒኮድ ይዘት ካላቸው ፥ የትኛውን የመሸጋገሪያ-ኮድ
(encoding) እንደሚጠቀሙ ፥ ከመጀመሪያውኑ
የመጥቀስ ግዴታ አለባቸው። ፓርሰሮች ፥ ያንን ቃል
ካላገኙ ፥ ዩ/ቲ/ኤፍ-8ን እንደተመረጠ አድርገው
ይወስዳሉ። ዩ/ቲ/ኤፍ-16 ከአስኪ ጋር
አይጣጣምም ፤ ምክንቱም እያንዳንዱን ሆሄ
ለመወከል ሁለት ኦክቴት ስለሚይዝ።
ሆሄያትን ሰነዶች ውስጥ በዩኒኮድ ቁጥራቸው
ስም መጻፍ እንችላለን ፤ በዴሲማል ወይም
በሄክሳዴስማል። በዴስማል መልክ ፟ሀ፠ን
ለመጻፍ ሀ ሲሆን በሄክሳዴሲማል
ደግሞ ሀ ይመጣል። በየትኛውም
የቁጥር ስልት ሆሄያትን ብንጽፍ ኤማላ ይቀበላል።
ምንም እንኳን ፥ ኤማላ ዩኒኮድን መደገፉ ኡፍ
የሚያሰኝ ቢሆንም ፥ በዩኒኮድ 2.0 ቁራኛ መሆኑ ፥
እንደ ኢትዮጵያ ፊደላት ላሉት መሰናክል ፈጥሯል።
የኢትዮጵያ ፊደልና ጥቅቲ ሌሎች በዩኒኮድ
ተቀባይነት አግኝተው የታተሙት በቁጥር 3.0 ነው።
ስለሆነም ፥ ኤማላ 1.0 ተጠቅሞ ያማርኛ ፥
የኦሮምኛ ፥ የትግርኛ ወይም የጉራጊኛ መግለጫ
ቋንቋ (markup language) መደንገግ
አይቻልም። ፓርሰሮች የኤማላን ህግ ማክበር አብይ
ግዴታቸው ስለሆነ ፥ የኋላ እንኳን በር የለም።
ይኸን ችግር ለመፍታት ፥ አዲስ ውጥን ወጥቷል።
ይህ ስሙ ፟ሰማያዊ-እንጆሪ፠ የተባለው ውጥን
ለህዝብ ውይይት
የW3C ገጽ
ላይ ወጥቷል። ለተጨማሪ ማብራሪያ ያንን ገጽ
ይመልከቱ።
የሆሄያት ደንቦችንና እነሱን የሚመለከቱ የተለያዩ
ቃላቶችና ስሞች አሉ። ለነሱ ጉዳይ የታነጹ አያሌ
ዌብ ገጾች አሉ።
የማይክ ብራውን (Mike Brown)
ገጽ ከዚህ ጋር አብሮ ይሄዳል።
-
የሰነድ አይነት ደንጋጊ (ሰአደ) (DTD)
ምንድን ነው? ብፈልግ ፥ አንድ የት አገኛለሁ?
ሰአደ ፥ የገላጭ ቋንቋ የምንመሠርትበት
ቦታ ነው። አብዛኛውን ጊዜ ፥ ሰአደ በራሱ
ፋይል ውስጥ ይኖራል። ተጠቃሚው ሰነድ
ሊያገኘው እስከቻለ ድረስ የትም ይሰፍራል።
ያዲሱ ቋንቋ ቃላት ፥ መዋቅር ፥ አሰካክ
እንዲሁም አኅጽሮተ-ቃል በሰአደ ውስጥ
ይታወጃል። ሰአደ ሁልጊዜ ከግድፈት ነፃ
መሆኑን ማረጋገጥ አለብን። ለዚህ ይረዱን
ዘንድ ፥ ማረጋገጫ ፕሮግራሞች አሉ።
ሰአደ ሦስት ያንቀጽ አይነቶች መያዝ ይችላል።
-
አብይ-አንቀጽ፦ ያንድን ተናጠል ይዘት
መጠሪያ ፥ የይዘት አይነት ፥ እንዲሁም
በክልሉ መስፈር ያለባቸውን ሌሎች አንቀጾች
ይመሠርታል። ለምሳሌ፦
<!ELEMENT periodic-table (element)+>
-
ጠባየ-አንቀጽ፦ ያንድን አብይ አንቀጽ
ጠባዮች ይደነግጋል።
-
ቃለ-አንቀጽ፦ አኅጽሮተ-ቃላትንና ቅጽል
ስሞችን ይመሠርታል።
<!ENTITY aau "Addis Ababa University">
ሰአደ ማውጣትና ኤማላ ሰነድ መፍጠር
በጣም ቀላል ነው። እስከዚህ አስቸጋሪ
አይደለም። በርግጥ ትላልቅ ውጥኖች ፥
የዛኑ ያህል ጥረት ይጠይቁ ይሆናል። ከዚህ
ቀጥለን እንደምሳሌ ያገለግለን ዘንድ ፥ የኤማላ
ሰነድ ከሰአደው ጋር አቅርበናል።
ይህ የሰአደ ይዞታው ነው።
|
|
|
<!ELEMENT periodic-table (element)+>
<!ELEMENT element (name, atomic-number, symbol)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT atomicnumber (#PCDATA)>
<!ELEMENT symbol (#PCDATA)>
|
|
|
ይህ ደግሞ ከላይ በተቀመጠው ሰአደ ላይ
ተመርኩዞ የተዘጋጀ የኤማላ ሰነድ ነው።
|
|
|
<?xml version="1.0"?>
<periodic-table>
<element>
<name>Hydrogen</name>
<atomic-number>1</atomic-number>
<symbol>H</symbol>
</element>
<element>
<name>Oxygen</name>
<atomic-number>?</atomic-number>
<symbol>O</symbol>
</element>
</periodic-table>
|
|
|
-
የራሴን የሰነድ አይነት ደንጋጊ (ሰአደ) (DTD) እንዴት እፈጥራለሁ?
ሰአደ (DTD) የምንፈጥርበት ምክንያት
በምንፈለግው መንገድ ፥ ራሳቻውን
ገላጭ የሆኑ ሰነዶች መፍጠር ስንሻ ነው።
ሰአደ የሰነዶቹን ክፍል ፥ መዋቅርና
አንቀጽ ስለሚወስን ፥ በቅድሚያ ያንን
ጠንቅቆ መንደፍ ተፈላጊ ነው።
አንድ ሰአደ ሦስት የአንቀጽ አይነቶች
ማቀፍ ይችላል፦ አብይ-አንቀጽ ፥
ጠባየ-አንቀጽና ቃለ-አንቀጽ ናቸው።
ከዚህ በታች ያለው ምሳሌ ፥
የአብይ-አንቀጽ ይጠቀማል።
|
|
|
<!ELEMENT courses (course)+>
<!ELEMENT course (name, number)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT number (#PCDATA)>
|
|
|
ይህ ቀላል ሰአደ ፥ ያንድን ሰነድ ክፍሎች
ስምና መላያ ቁጥር በዝርዝርና
ሥነ ሥርዓት እንድንገነባ ይረዳናል።
ቀጥሎ ያለው የኤማላ ሰነድ ይዚህን
ሰአደ አጠቃቀም ባጭሩ ያሳያል።
|
|
|
<?xml version="1.0"?>
<!DOCTYPE Course-Description SYSTEM "shoplist.dtd">
<courses>
<course>
<name>C++</name>
<number>CS101</number>
</course>
<course>
<name>Java</name>
<number>CS102</number>
</course>
</courses>
|
|
|
-
ለመሆኑ ፥ ኤማላ የራሴን ቃለ-ምልክት
እንዳወጣ ይፈቅድልኛል?
፟ቃለ-ምልክት፠ ሲባል በሃቴማላ መንፈስ
ከፋች ቃለ-ምልክት (open tag) ብቻ ፥
ወይም ከፋችና ገጣሚ ቃለ-ምልከት (open
and close tag) ሊሆን ይችላል።
ለምሳሌ ፥
<img src="omo.jpg">
የሚለው ቃል ፥ በሃቴማላ በኩል ትክክልና
ህግን ያከበረ ነው። ነገር ግን ፥ እንዲህ
አይነቱ ቃል ፥ በኤማላ ዘንድ ተቀባይነት
የለውም። ምክንያቱም የኤማላ አብይ-አንቀጽ
ሁልጊዜ ከፋችና ገጣሚ ቃለ-ምልክት ያስገድዳልና።
በኤማላ ዘንድ ቃለ-ምልክት ያንድ አብይ-አንቀጽ
አካል ነው። ያንቀጹ ይዘት
ከመሥፈሩ በፊት ፥ በቃለ-ምልክት ይጀመርና
ያንቀጹ ይዘት ከሠፈረ በኋላ በሌላ ቃለ-ምልክት
ይዘጋል። የመጀመሪያው ምልክት ፟ከፋች ቃለ-ምልክት፠ ፥
የኋለኛው ደግሞ ፟ገጣሚ ቃለ-ምልከት፠
ተብሎ ይጠራል። ምሳሌ እነሆ።
አብይ-አንቀጽና ቃለ-ምልከት አንድ
ነገር አይደሉም። ቃለ-ምልከት
የአብይ-አንቀጽ ንኡስ-አካልና አገልጋይ
ነው። በሃቴማላ ዓይን ፥ ከፋች ብቻ
ቃለ-ምልከት ሊኖር ይችላል። ይህ
የኤማላን መሠረታዊ መርሕ ይሠብራል ፤
ያም ማንኛውም የተከፈተ ቃለ-ምልከት ፥
በሥነ ሥረዓት መዘጋት አለበት።
-
ከሰአደ የተለየ አማራጭ አለ
ሲባል እስማለሁ ፥ ነገርየው ኤማላ እስኪማ
(XML Schema) ከሆነ ፥ ልዩነቱ
ምንድን ነው?
የሰነድ አይነት ስንደነግግ ፥ ስለይዘቶች
ምንና ማንነት ፥ ማለትም ቁጥር መሆን
ወይም አለመሆን የማንጨነቅ ከሆነ ፥
ሰአደ (DTD) ተገቢ አገልግሎት ይሠጠናል።
የለም ፥ ይዘቶችን በዴታ አይነታቸው
ፈርጀን መቆጣጠር እንፈልጋለን የምንል
ከሆነ ፥ ሰአደ ያ ችሎታ የለውም። ለሱ ፥
ይዘቶች በሙሉ አንድ የዴታ አይነት ናቸው ፤
ንባብ። ይህ የሰአደ አብይ ድክመት ነው።
ኤማላ-እስኪማ (XML Schema)
እንዚህን ድከመቶች በሙሉ ይወጣል።
መሠረታዊ ተብለው የሚጠቀሱትን የዴታ
አይነቶች ይቀበላል። ቀንን እንደ ቀን ፥
ቁጥርን እንደ ቁጥር ፥ ንባብን እንደ ንባብ ፥
ሁሉኑም በይቅጡ ለመቆጣጠር። ስለዚህ
በያንዳንዱ አንቀጽ ሥር የሚጠለል የይዘት
አይነት ግልጽ ነው። ጐደሎ ቁጥር ፥
ሙሉ ቁጥር ፥ ትንሽ ቁጥር ፥ ግዙፍ
ቁጥር ፥ ቀን ፥ ሆሄ ፥ ወይም ንባብ
ሊሆን ይችላል።
በአስኪማ ፥ የቁጥሮችን ከእስከ መወሰን
ይቻላል። በተጨማሪ የይዘቶች አሰካክና
አደራደር ፥ ለምሳሌ የቀኖች አጻጻፍ ፥
የስልክ ቁጥሮች አቀማመጥ ፥ ያድራሻ
አሠፋፈርና የመሳሰሉት በማያሻማ መንገድ
መንደፍ ይቻላል።
ሰአደ በይዘቶች ላይ ቁጥጥር ለማበጀት
የሚያስችል ኃይል የለውም። እስኪማ
ይህንን ድከመት በማረም ብቻ ሳይወሰን ፥
ሰአደ የሚለግሣቸውን ግልጋሎትች ለመስጠት
ጭምር ራሱን ያሠለፈ ሆኖ ይታያል።
የዓለም
አቀፍ ዌብ ኮንሰርሽየም (W3C)
እስኪማን አጽድቆ በማውጣት
በሥራ እንዲውል እያበረታታ ነው።
ጸሐፊዎችና አዘጋጆች ፥ እንደተፈላጊነቱ ፥
ሰአደንና እስኪማን በተናጠል ወይም
በሕብረት የመጠቀም እድላቸው አለ።
ለተጨማሪ ምንጮች እንዚህን ገጾች
ይጐብኙ።
ስለኤማላ-እስኪማ ተደጋጋሚ ጥያቄና ምላሽ።
እንዲሁም ለተለያዩ ምንጮች ፥
http://www.schema.net/
-
ኤማላ የሆነ ነገር ፥ እንዴት ነው
ከዴታቤዝ የማወጣው ? እንዴትስ
እከታለሁ?
ይህ ጥያቄ በቀጥታ እያንዳንዱን
የዴታቤዝ ሁኔታ ይመለከታል። አንድ
ዴታቤዝ ስልት ስለኤማላ ያለውን
ድጋፍ ለማወቅ አምራቹን መጠየቅ
ሁነኛ ነው። ሁሉም እንኳን ባይሆኑም ፥
ብዙዎቹ ዴታቤዝ ስልት አምራቾች ፥
የኤማላ ይዘት ወደ ዴታቤዝ ማስገቢያና
ማስወጪያ ፕሮግራሞች አሏቸው።
ለማጥበቅ ያህል ፥ ኤማላና ዴታበዝ
ስልቶች በፍጹም ልዩ መሆናቸውን
አንዘንጋ። በርግጥ ፥ ዴታቤዝ ስልቶች
ዴታን የሚያደራጁት በሠንጠረዥ መልክ
ነው። በዚህ የተነሳ አንዳንድ ሠንጠረዦቹ
ከኤማላ ሰንዶች ጋር ተመሳሳይ መዋቅር
ሊኖራቸው ይችላል። ምናልባት ይህ
ተመሳሳይነት በሁለቱ ነገሮች ላይ ያለንን
አስተሳሰብ በመጠኑ ሊበርዘው ይቃጥ
ይሆናል። ነገር ግን በሁለቱ መካከል
ባቀራረብም ሆነ በቴክኒካል ረገድ ሰፊ
ልዩነት አለ።
ባሁኑ ጊዜ ኤማላን ራሱን በቀጥታ
እንደ ዴታ መዋቅር የሚጠቀሙ
የዴታቤዝ ስልቶች
እየወጡ ናቸው። ያን ገጽ ቢያነቡ
የበለጠ ማብራሪያ ያገኛሉ።
-
ሰነዶቼ ባገናኝ-ቃል የተቀጣጠሉ ከሆነ ፥
ኤማላ እንዴት ይመለከታቸዋል?
እንደ ሃቴማላ ሰነድ ሁሉ ፥ የኤማላ
ሰነድ ባካል ወይም በቦታ የተራራቁ
አካሎች ሊኖሩት ይችላል። እንደተባለው ፥
ሰነዱ ካንድ በላይ አካሎች ካሉት ፥
ባገናኝ-ቃል ይገጣጥማቸዋል ፤
ያስተሳስራቸዋል። ለተጠቃሚው የሰነዱ
እይታ አንድ ወጥ ነው ፤ አገነባቡ
ከተለያዩ አካሎች ቢሆንም ቅሉ።
የሃቴማላ (HTML) አገናኝ-ቃል
ግልጽና የማያሻም ሥራ አለው ፤
ባንድ ቦታ የተቀመጡ ወይም በልዩ
ልዩ ቦታ የሠፈሩ የዌብ ሰነዶች ወይም
አካሎች ማገጣጠም/ማገናኘት።
ኤማላ የሃቴማላን አገናኝ-ቃል ያከበራል።
ይሁን እንጂ ፥ የሃቴማላ አገናኝ-ቃል
ብርቱ ድክመት አለበት። አገናኝነቱ ባንድ
አቅጣጫ ብቻ የተወሰነ ሲሆን ፥ አንድ
ብቸኛ አገናኝ-ቃል ካንድ አካል በላይ
ማስተሳሰር አይችልም። በተጨማሪ
አገናኝ-ቃሉ ራሱን ከሚሠራው ተግባር
አንጻር የመግለጽ አቅም የለውም።
የኤማላ ሰነዶች በማገናኘት ረገድ
የበለጠ ግልጋሎት ሰጪ ቢኖር ፥
የኤክስ/ሊንክ (XLink: XML
Linking Language) ነው።
ይህ ቋንቋ የኤማላ ውላጅ ነው።
የአገናኝ-ቃልን ሥራ በብዙ መንገድ
ያዳብራል። ምንም እንኳን ባሁኑ ሰዓት ፥
ሰፊ ተጠቃሚ ያለቸው መቃኝ ፕሮግራሞች
ሙሉ በሙሉ ባይደግፉትም ፥
ባገልግሎቱ እስካሁን ካሉት ያገናኝ-ቃላት
በብዙ እጅ እንደሚልቅ ጥርጥር የለውም።
የኤክስ/ሊንክ (XLink) አገናኝ-ቃል
ራሱን የመግለጽ ችሎታ አለው።
በሚደረገው ግንኙነት ተሳታፊዎች መካከል ፥
በሁለቱም አቅጣጫ ግንኙነት እንዲኖር
ይፈቅዳል። አንድ ብቸኛ ያገናኝ-ቃል አንድ
ወይም ብዙ ሰነዶችን ማመልከት ይችላል።
የኤክስ/ሊንክ አገናኝ-ቃል ሥራ ባካል
በማይገናኙ ሰነዶች ብቻ አይወሰንም።
ማንኛውም የኤማላ ሰነድ በራሱ የተለያዩ
ክፍሎች መካከል ግንኙነት እንዲፈጥር
ይፈቀድለታል። ይህ ራስበራስ ግንኙነት
ተጨማሪ ቋንቋ ይጠቃመል--
ኤክስ/ፖይንተር
(XPointer: XML Extended Pointer)።
ኤክስ/ሊንክ በሁለት የተከፈሉ አሠራሮችና
ጥቅሞች አሉት። አንደኛው ፥ ከሃቴማላ
አገናኝ-ቃል ይመሳሰላል ፤ ባገልግሎቱም
ጭምር። ሁለቶኛው ግን ሰፊና ካላይ
ተጠቀሱትን ጥቅሞች ይለግሳል።
የዓለም አቀፍ የዌብ ኮንሰርሽየም
ኤክስ/ሊንክ 1.0 (XLink 1.0)
እአአ ሰኔ ፥ 2001
አውጥቶ በሥራ እንዲውል ማበረታት ጀምሯል።
-
በኤማላ የሂሳብ ሥራዎች መሥራት እችል ይሆን?
አዎ። ይቻላል። ነግር ግን ሁኔታዎቹ
ቃላል አይደሉም።
ሁለት መንገዶች አሉ። አንደኛው ፥
MathML ነው። ይህ ቋንቋ
የኤማላ ውላጅና በዓለም አቀፍ ዌብ
ኮንሰርሹየም የወጣ ነው።
ሁለቱ ሰፊ ተጠቃሚ ያላቸው የመቃኝ
ፕሮግራሞች ፥ ማለትም አይ/ኢ (IE) እና
ሞዚላ (Mozzila) እሱን
ለመደገፍ ፍላጐት እንዳላቸው ገልጸዋል።
በሞዚላ ረገድ ሥራው እየተካሄደ ሲሆን ፥
እስካሁን ባለው እርምጃ በተወሰነ ደረጃ
በMathML ሰነድ ላይ ተመሥርቶ
ማቴማቲካዊ ፎርሙላዎችን ማሳያት
ይችላል።
በዓለም አቀፍ ዌብ ኮንሰርሽየም
ሥር የሚወጣው መቃኛ ፕሮግራም ፥
አማያ (Amaya) ተብሎ የሚጠራው ፥
MathML በተሻለ ሁኔታ ይደግፋል።
ቢሆንም ቅሉ ፥ አማያ ለሙከራና
ለጥናት እንጂ ፥ ለምርት ሥራ የተዘጋጀ
አይደለም።
አይ/ቢ/ኤም (IBM) Techexplorer
ብሎ የሚጠራው ከናቭጌተርና አይ/ኢ
(Navigator and IE)
እንዲሁም ሌሎች ፕሮግራሞች ጋር
ተዳብሎ የሚሠራ ሶፍትዌር አለው።
ይህ ፕሮግራም MathML ከመደገፍ በላይ
የTeX እና የLaTeX
ሰነዶችን ሁሉ ለእይታ ማቅረብ ይችላል።
አይ/ቢ/ኤም
ሁለት የስርጭት መንገድ አለው ፤
በነፃና በግዥ።
ከመቃኛ ፕሮግራም ውጭ የሆኑ ፥ አያሌ
ሶፍትዌሮች MathMLን የሚደግፉ አሉ።
ለምሳሌ ማቴማቲካ እና የመሳሰሉት።
ሁለተኛው መንገድ ፥ በግል ወይም ውጭ
ባሉ ሰአደ ላይ የተደገፈ የኤማላ ሰነድ
መፍጠር ነው። ችግሩ የኤማላ ሰነድ
መፍጠሩ ሳይሆን ፥ ሰነዱን ተርጉሞ ማቴማቲካዊ
ፎርሙላዎችን ለእይታ አቅራቢው ላይ ነው።
-
ሜታዴታን ፥ ኤማላ በምን መንገድ ይመለከታል?
ሜታዴታ ሲሉ ፥ ባጭሩ የመረጃዎች
መረጃ ወይም የዴታዎች ዴታ ለማለት ነው።
ዌብ ገጾች ሜታዴታ ይጠቀማሉ።
ስለገጾቻቸው ምንና ማንነት በነጠረ
ቃል ይገልጻሉ። ይህን የሚያደርጉት
አንባቢዎች ፟በአሰሳ ኢንጅኖች፠
አማካኝነት ገጾቻቸውን በቀላል እንዲያገኙ ነው።
ኤማላ ስለሜታዴታ የሚለግሰው ልዩ
የሆነ ነገር የለውም። ለሜታዴታ ቴክኖሎጂ
ፍላጐት ያላቸው ፥ የሚከተሉትን ልዩ
ልዩ መፍትሄዎች ቢመለከቱ ጠቃሚ
ሆነው ሊያገኟቸው ይችላሉ።
-
ጃቫን ፥ አክቲቭ/ኤክስ እና
የመሳሰሉትን በኤማላ ፋይሎች ውስጥ
መጠቀም እችላለሁ?
በፕሮግራም መጻፊያ ቋንቋዎችና
በኤማላ መካከል ሥር-ነቀል ልዩነት
አለ። የጃቫን ፕሮግራሞች ወይም ሌሎችን
በይዘት መልክ ኤማላ ሰውነት ውስጥ
በባይነሪ (binary) መልክ መክተት
በፍጹም የተከለከለ ነው።
ተፈላጊነቱ ያ ከሆነ።
ያም ሆነ ይህ ፥ ሁለቱም የራሳቸው
ዓላማና አሠራር አላቸው። የፕሮግራሞች
ተግባር ፥ ኮምፕዩተሮችን መመሪያ መስጠት
ሲሆን ፥ የኤማላ ደግሞ ለመረጃዎች
መታወቂያ/መግለጫ ማውጣትና ማደል ነው።
ስለዚህ ፥ ፕሮግራሞችን የኤማላ ሰነድ ውስጥ
በሠራተኛነት መልክ መክተት አንችልም ፤
በይዘት መልክ እንጂ።
-
ጃቫን በመጠቀም የኤማላን ሰነዶች መፍጠርና
መንከባከብ እችል ይሆን?
በማንኛውም የፕሮግራም ቋንቋ በተጻፈ ፥
የኤማላ ሰነድ መፍጠርና ወይም
የተዘጋጁ ሰነዶች ላይ ተግባሮችን መፈጽም
ይቻላል።
የጃቫ ቋንቋ ለኤማላ በተፈጥሮው
አመቺ ከመሆኑም በላይ ባሁኑ ሰዓት
የኤማላን ሰነዶች ለተለያዩ ተግባራት
ለማከናወን ከፍተኛ ድጋፍ ይሠጣል።
ኤማላን በሚመለከት ፥ በጃቫ ረገድ
እየተደረጉ ያሉትን ጥረቶች በቅርብ
ለመጐብኘት እነዚህን ገጾች ይመልከቱ።
-
እንዴት አድርጌ ነው የኤማላ ሰነድ
ወደ ሥራ የማሰመራው?
ኤማላ አዲስ የምልክት (መታወቂያ ፥
መግለጫ) ቋንቋ መፍጠሪያ ነው። የኤማላ
ሰነድ ደግሞ ፥ የሱ ምርት ነው።
የኤማላ ሰነዶች ራሳቸውን በተፈለገው
መልክ ገልጻሉ። እንደ
ፕሮግራሞች ወደሥራ መሠማራት
አይችሉም። ፕሮግራሞች ኮምፕዩተሮችን
የሚያንቀሳቅሱ መመሪያዎች ፥ የኤማላ
ሰነዶች ግን ንባቦች የሚያቅፉ
መሆናቸውን አንዘንጋ።
-
የኤማላን ሰነዶች እይታ እንዴት ማዘጋጀት እችላለሁ?
የኤማላ ሰነዶች ይዘታቸውን ለሞኒተር
እይታ ወይም ለእተማ ሥራ የማቅረብ
ችሎታ የላቸውም። የሃቴማላን ሰነዶች
በመቃኛ ፕሮግራሞች አማክኝነት ማየትና
ማተም ከቻልን ፥ የኤማላን ሰነዶች
ለምን ይሣነናል ብሎ መጠየቁ መልካምና
ተገቢ ነው። የሃቴማላ ሰነዶች
የሚወስዷቸው ቃለ-ምልክቶች
በዓለም አቀፍ የዌብ ኮንሰርሽየም በቅድሚያ
የተደነገጉና ተቀባይነት ያገኙ
ከመሆናቸውም በላይ ፥ አብይ
ተግባራቸው ይዘቶች በገጽታ ውስጥ
ምን መስለው መታየት እንዳለባቸው
ማስታወቅ ነው። በኤማላ ረገድ ግን ፥
ቃለ-ምልክቶችን የምናወጣና የምንሰይም
እኛ ነን። የቃለ-ምልክቶቹ ትርጉምና
ዓላማ ካዘጋጅ አዘጋጅ ይለያያል። የኛ
ቃለ-ምልክቶች ለመቃኛ ፕሮግራሞች
ባዕድ ናቸው። በመሆኑም የእይታው ችግር።
የኤማላን ሰነዶች ለእይታ ለማዘጋጀት ሁለት
መፍትሄዎች አሉ።
አንደኛው፥
ሲ/ኤስ/ኤስ (CSS: Cascading Stylesheet Specification)
ሰነዶችን ለእይታና ለእተማ ማዘጋጂያ
ቋንቋ ነው። በሲ/ኤስ/ኤስ የኤማላ
ሰነዶች እየታ/ገጽታ መወሰን ይቻላል።
በመቃኛ ፕሮግራሞችም ዘንድ ያለው
ድጋፍ ብርቱ ነው።
ሁለተኛው ፥ ምናልባት ፥ ከረጅም
ጊዜ አንጻር ፥ ተመራጭ የእይታ ቋንቋ ቢኖር
ኤክስ/ኤስ/ኤል (XSL: Extensible Stylesheet Language) ነው።
በርግጥ እንደሌሎቹ ሁሉ ኤክስ/ኤስ/ኤል (XSL)
አዲስና ገና በዕድገት ላይ ያለ
መሆኑን አንርሳ። ኤክስ/ኤስ/ኤል
ሦስት አካሎች አሉት።
ሀ)
XSL Transformations (XSLT) ፤
ለ)
XML Path Language (XPath) ፤
ሐ)
XSL Formatting Objects ናቸው።
በደፈናው ኤክስ/ኤስ/ኤል (XSL) ፥
የኤማላ ሰነዶችን ወደ ሃቴማላ ወይም
ወደ ሌላ የገጽታ ቋንቋ መተርጐሚያ
ነው። በተለያየ ሁኔታ ውስጥ በሥራ
እየዋለ ነው። ለምሳሌ ፥ የኤማላ ሰነዶች
መቃኛ ፕሮግራም ዘንድ ከመድረሳቸው
በፊት ፥ በኤክስ/ኤስ/ኤል (XSL)
አማካኝነት ወደ ዌብ ገጽ ይቀየራሉ።
ይህ ሥራ የሚካሄደው በሰርቨሩ
(server-side) ጐን ነው። የገጹ
አንባቢ ስለዚህ ሂደት የሚያውቅበት
ወይም የሚያይበት መንገድ የለውም።
ምን ፋይዳስ አለው?
መቃኛ ፕሮግራሞች የኤክስ/ኤስ/ኤል
(XSL) ፋይሎችን የመተርጐምና
ለገጽታ የማቅረብ ችሎታቸው እጅግ
ውስን ነው። ትንሽ ሳንጠብቅ አንቀርም።
ላይ ከተሰጡት ምንጮች በተጨማሪ
በደቪድ ፓውሰን የተጠናቀረውን
ለኤክስ/ኤስ/ኤል/ (XSL)
ተደጋጋሚ መጠይቅና ምላሽ ፥ የሚከተለውን
ገጽ ይመልከቱ።
XSL Frequently Asked Questions
-
ኤማላ ሰነድ ውስጥ ግራፊክሶችን እንዴት
መጠቀም እችላለሁ?
አንደ ሃቴማላ ሁሉ ፥ ከኤማላ
ሰነዶች ወደ ግራፊክስ ፋይሎች
ቅጥያ ማበጀት ይቻላል። ቅጥያው
በኤከስ/ሊንክ (XLink) ከሆነ ፥
ግራፊክሶችን በልዩ ልዩ አማራጭ መንገዶች
ላንባቢው ለማስተናገድ እድል
ይሠጣል። ኤማላ ስለ ግራፊክስ
ፋይሎች ፥ ለምሳሌ GIF ፥ JPG ፥
TIFF ፥ PNG እንዲሁም CGM ፥
አይነትና ቅርጽ ምንዳ የለውም። እንዚህ
ግራፊክስ-ነክ የሆኑ ነገሮች የሱ አካል
መሆን የሚችሉት በቅጥያነት ብቻ ነው።
እንዚህን የግራፊክስ አይነቶች
የኤንቲቲ (Entity) አንቀጽ
ተጠቅሞ ፥ ቅጥያ መፍጣር አንዱ
አማራጭ ነው። የትኛው መንገድ
እንደሚሻል መወሰን ያለበት
አዘጋጁ ነው።
ከላይ የተጠቀሱት የግራፊክስ
አይነቶች ቢትማፕ (bitmap)
ናቸው። ለቬክተር ግራፊክስ ሥራ ፥
አዲሱ የዓልም አቀፍ ዌብ ኮንሰርሽየም
ኤስ/ቪ/ጂ (SVG: Scaler Vector Graphics)
የማያወላዳ አማራጭ ነው።
ኤስ/ቪ/ጂ አይነቱ ኤማላ ሲሆን
ልዩ ልዩ ሥዕሎችን ለመሳል በጣም
ቀላልና አመቺ ነው። ሥዕሎቹን
ከዌብ ገጾች ጋር ማዋሀድ ወይም
ከተለያዩ ሥራዎች ጋር ማጠናቀር
ይቻላል። ባሁኑ ሰዓት ፥ ከኤስ/ቪ/ጂ
(SVG) ጋር የተያያዙ ሁለት አይነት
ፕሮግራሞች አሉ። አንደኛው ወገን
ኤስ/ቪ/ጂ ሥዕሎች ለመፍጠር
ሲሆን ሌላኛው ወገን ደግሞ ኤስ/ቪ/ጂ
ሥዕሎችን ለእይታ ማቅረብ ነው።
መቃኛ ፕሮግራሞች በዚህ ረገድ ትንሽ
ወደኋላ ናቸው። ሆኖም ፥
የአዶቢን ኤስ/ቪ/ጂ ሥዕል ማሳያ ፕሮግራም
ከመቃኛ ሶፍትዌሮች ጋር
በማዳበል ዌብ ላይ ያሉትን
የኤስ/ቪ/ጂ ሥዕሎች የመመልከት
ዕድል አለ።
የአዶቢን የኤስ/ቪ/ጂ ፕሮግራም
ኮምፕዩተራችን ላይ ተክለን
የሚከተለውን የኤስ/ቪ/ጂን ሥዕል
ባለን መቃኛ ፕሮግራም ብንከፍት ፥
የዚህን ቴክኖሎጂ አመቺነትና
ኃያልነት ለመገንዘብ ብዙ
አይወስድብንም። ይህን ንባብ
ethiopic.svg የሚል ፋይል
ውስጥ ይከተቱና በመቃኛ ፕሮግራም
ይሞክሩት።
|
|
|
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg width="400px" height="400px" viewBox="0 0 400 400"
xmlns="http://www.w3.org/2000/svg">
<title>Ethiopic</title>
<desc>Ethiopic</desc>
<rect x="50" y="50" width="300" height="300"
fill="none" stroke="red" stroke-width="1"/>
<text font-size="72px" fill="black" x="65" y="211">
Ethiopic
</text>
<text font-size="72px" fill="red" x="65" y="211"
transform="translate(2, 2)">
Ethiopic
</text>
</svg>
|
|
|
ለተጨማሪ ማብራሪያና ረዳት ሰነዶች
እንዚህን ገጾች ይጐብኙ።
SVG Frequently Asked Questions፥
Integration by Parts: XSLT, XLink and SVG።