Taiwan Dog

Taiwan Dog
Other names Formosan Mountain Dog (福爾摩莎犬), National Dog (國寶犬), Takasago Dog (高砂犬), Taiwan Canis, Taiwanse Canis.
Country of origin Taiwan, Republic of China (中華民國)
Traits
Weight Male 14–18 kg (31–41 lb)
Female 12–16 kg (26–36 lb)
Height Male 48–52 cm (18–21 in)
Female 43–47 cm (16–19 in)
Coat Smooth and oily
Color Black, earthly yellow, or yellow.
Litter size 10-12 pups
Life span 10-13 years
Notes Breed provisionally accepted, not eligible for the CACIB. This breed is recognized with a pedigree from the Taiwan Kennel Club.
Dog (Canis lupus familiaris)

The Taiwan Dog (Chinese: 台灣犬) is a breed or landrace of small or medium dog indigenous to Taiwan. These dogs are also known as Taiwanese Canis, Taiwanese Native Dog (Chinese: 台灣土狗) or Takasago Dog (Chinese: 高砂犬). They are well-adapted to the uneven and thickly forested terrain of Taiwan, having become a semi-wild breed prior to the arrival of several colonial reigns and foreign powers. Notwithstanding these adaptations, Formosans retained the potential to be trained, and are now used as hunting dogs, guard dogs, stunt dogs, rescue dogs, or simply as companions.[1][2] Formosans are classified into one medium type and two small types.[3] However, now the pureblood Formosan Mountain Dog is still close to extinction due to limited conservation efforts of the Taiwanese and their government. Native Dog (Chinese: 土狗) is the common name in Taiwan nowadays to indicate that the dog is an offspring of Formosan with foreign dogs, it is commonly confused with Taiwan Native Dog (Chinese: 台灣土狗).

Description

Appearance

A close-up of a Taiwanese Dog face showing the upright ears, almond eyes, triangular face, black nose, and the black coating on the tongue.
Young Taiwan dog in Seattle, WA USA
There are two small types of the Formosan Mountain Dog; one is about 40 centimetres (16 in) tall at the shoulder, and the other is around 30 centimetres (12 in). However, the latter one was not found during the research conducted by Dr. Sung Yung-yi (宋永義) in 1976. The medium type of the Formosan Mountain Dog has a shoulder height under 50 centimetres (20 in), with a firm and fit body, slim waist, big chest, and half-covered ears. The most common type of these three in recent years is the medium-sized dog. Its color can range from black to earthy yellow or yellowish brown, and the nose is black. Black coating on the tongue is one of the most distinguished traits of the Formosan Mountain Dog.[3]

Dr. Sung of National Taiwan University and Mr. Ming Jie, Xu of Formosan Dog & Guard Dogs Breeding Center (台灣犬護衛犬繁殖中心) described a typical Formosan as having almond eyes, firm jaw strength, black coating on the tongue, a triangular face, thin prick ears, and a sickle tail. The tail is upright or curved with a thick fur coat, but the belly is hairless; the tail is used to warm the belly, and may even be long enough to protect the snout from insects. The dog is also well known for being well-balanced.[4][5]

Movement

Formosan dogs are particularly agile; they are known for their hopping skill, especially when they are hunting small animals, such as rats. When they are startled or trying to intimidate their target, they will hop sideways back and forth. Unlike Rottweilers and German Shepherds, Formosan dogs do not hold their bite on their target. This habit is adopted and may be traced back to early boar hunting. Taiwanese aborigines used 5-6 Formosan dogs to circle a wild boar, and each dog would work to wound the boar. They would release their bite once they had attacked it and wait for the next attack again and again until the boar was exhausted enough for their master to move in for the final kill.[6]

Temperament and behaviour

The Formosan is a high energy, loyal, affectionate, and intelligent breed that learns very quickly. In unfamiliar situations, they tend to be wary of strangers and sounds, and they can become fear-aggressive. In new situations where the dog is fear-aggressive, it can take a few days before the dog will calm down.

If comfortable and well-trained, the Formosan will be friendly to people and other animals, though they tend to be a bit aloof or suspicious of strangers once they have bonded with their owner. Once bonded, they are extremely loyal and affectionate to their owners.

Due to the breed's alertness, these dogs can make great guard dogs; if not well-trained, the Formosan can become overly protective and aggressive toward strangers.

Standard

Taken by British photographer John Thomson at Taiwan, in 1871
  • Proportions
    • Depth of chest:height at withers = 4.5:10 to 4.7:10
    • Height at withers:length of body = 10:10.5, bitches can be slightly longer.
    • Length of muzzle:length of skull = 4.5:5.5.
  • Size & weight
    • Height: Dogs: 48–52 cm (19–20 in) Bitches: 43–47 cm (17–19 in)
    • Weight: Dogs: 14 to 18 kg (31 to 40 lb) Bitches: 12 to 16 kg (26 to 35 lb)
  • Head
    • Cranial Region:
    • Forehead: Broad and roundish, without wrinkles.
    • Skull: The skull is slightly longer than the muzzle.
    • Stop: Well defined with a slight furrow.
  • Facial Region :
    • Nose: Moderate size. Wide nostrils. Black in color, but can be slightly lighter in all colors except for the ones with black fur.
    • Muzzle: Flat nasal bridge. Tight lips, without flews. The muzzle tapers a little from the base to the nose, but it is not pointed at the tip.
    • Jaws/teeth: Jaws are strong. Scissors bite, teeth are set square to the jaws.
    • Cheeks: Well developed and slightly protruding.
    • Eyes: Almond in shape. Dark brown in colour. Brown is also acceptable, but yellow or light eyes should be avoided.
    • Ears: Pricked, set on sides of the skull at an angle of 45 degrees. Inside of the outline is straight, while outside of the outline is slightly rounded.
  • Neck: Muscular, strong, good length, slightly arched. Without dewlap.
  • Body:
    • General: Sinewy and muscular, nearly square in shape.
    • Back: Straight and short. Withers well developed.
    • Loin: Firmly muscled.
    • Croup: Broad. Flat or very slightly sloping and short.
    • Chest: Fairly deep yet not reaching the elbow. Forechest slightly protruding. Ribs are well sprung.
    • Belly: Well tucked up.
  • Tail: In the shape of a sickle, set on high, carried erect, active, with the tip curving forward.
  • Limbs:
  • Forequarters:
    • Shoulders: Well muscled. Shoulder blades are laid back. They should meet the upper arms at an angle of 105-110 degrees.
    • Elbows: Close to the body.
    • Forearms: Straight and parallel to each other.
    • Metacarpus (Pasterns): Firm.
  • Hindquarters: Hindlegs should be slender, with good bone, well muscled and parallel to each other. The rear angulation should be in balance to the front.
    • Upper thighs: Broad, sloping and well bent at the stifle.
    • Lower thighs: Should be in balance with upper thighs.
    • Metatarsus (Rear pastern): Perpendicular to the ground.
  • Feet turning neither in nor out. Pads are firm and thick. Nails are black in colour, but lighter colors are acceptable in all colors except for those with black coats.
  • Gait/movement: Powerful gait with reaching stride. Agile enough to easily turn 180 degrees quickly.
  • Coat/hair: Short and hard, lying tight to the body. Length is between 1.5 and 3 cm (0.6 and 1.2 in).
  • Color: Black, brindle, fawn, white, white and black, white and fawn, white and brindle.[7]

History

Four catastrophes

There are four catastrophic events described by Dr. Sung Yung-yi that have been critical in the development of the Formosan Mountain Dog: the Dutch settlement of Formosa, the Japanese rule, World War II, and the Kuomintang era.[5]

The Dutch settlement

Dutch, Spanish, and Han Colonization in the 17th century with sketch of the "Flying Dog." Many Dutchmen kept dogs to help in the hunt. Detail from "Landdag Ceremony on Taiwan", drawing by Caspar Schmalkalden in 1652.
Hunting Deer: Before this piece was drawn, the natives hunted for subsistence, calling the act "stepping onto the grass". When the grass grew lush in spring, the tribes harkened to the call for the hunt, bringing all tools and hunting dogs, Formosan Mountain Dog. Painted in 1746.

In 1624, the Dutch established a commercial base at Tayoan, the colonial capital (present-day Anping in Tainan). After the Dutch made Taiwan a colony, they began to import workers from Fujian and Penghu (Pescadores) as laborers, many of whom settled.

The Dutch military presence was concentrated at a stronghold called Castle Zeelandia.[8] The Dutch colonists imported a hunting dog (known as the "Flying Dog." Traditional Chinese: 飛狗) to Taiwan and started to hunt the native Formosan Sika deer (Cervus nippon taioanus) that inhabited Taiwan. Dutch East India Company, established a trading post whose main business was the export of sika skins to Europe. During the six decades of Dutch activity two to four million sika skins were exported to Europe.[9][10] Contributing to the eventual extinction of the subspecies on the island.[11] The "Flying Dog" was thought to be Greyhound or Pointer.[12]

Exporting was reduced when the Dutch were forced out of Taiwan in 1684, but continued throughout the Qing period with a switch to Japan as the major export market.[13]

During the settlement, the Dutch hunting dog started cross-bred with the Formosan Mountain Dog; this was the first time that foreign breeds had influenced the Formosan Mountain Dog. Furthermore, the Dutch prohibited native tribes from owning dogs, slaughtering large numbers of indigenous dogs.[14]

Japanese rule

The Qing Empire was defeated in the First Sino-Japanese War of 1894-95. When the Treaty of Shimonoseki was signed on April 17, 1895, Taiwan was ceded to Japan, which sought to transform Taiwan into the supply-end of an extremely unequal flow of assets (Gold 1986:36). The Japanese made efforts to exert full control over the Aborigines, the first time this had ever been carried out. The means of accomplishing this goal took three main forms: anthropological study of the natives of Taiwan, attempts to reshape the Aborigines in the mould of the Japanese, and military suppression. During Japanese occupation, Taiwanese aboriginals were under repressive rule, and the Formosan Mountain Dog was intensively cross-bred with Japanese dogs, due to the Japanese government relocating many remote high-mountain villages closer to administrative control (Takekoshi 1907:210–219). Furthermore, Japanese immigrants massively explored the east coast, currently called Hualien and Taitung Counties. The east coast expeditions further provided a chance of cross-breeding Japanese dogs with the Formosan.
This is a photograph of an aboriginal hunting party in Ba̍k-sa, by John Thomson, 1871: "A Native Hunting Party Baksa Formosa 1871" 木柵原住民的狩獵祭典. with Formosan dog at the bottom right corner.
This is a collection from National Geographic photos ca.1939, taken by Japanese photographer Katsuyama (幽芳勝山), at Saisiyat tribe (賽夏族).

World War II

At the end of World War II, for military purposes and preventing US Army landing on the east coast of Taiwan, Japan started to build the Central and Southern Cross-Island Highway. During the construction, there were military dogs traveling with the highway workers, the German Shepherds. This led to cross-breeding between the Formosan and the military dog. If it were not for these strategic constructions, the Formosan may have had a chance to preserve their bloodline high in the mountains. Furthermore, during this period, there was evidence showing that the Japanese military launched a massacre to reduce the population of the Formosan Mountain Dog. However, the true reason for this may not be known.

Dr. Sung Yung-yi told a New Taiwan journalist: "Formosan dogs are very smart and agile, but they are more primitive animal, and do not want to be caged. For example, during birth period, they will find a cave and usually will not return until few months later with their puppies. Another example will be the masters do not need to provide a lot of foods for them, they have the habit of finding their own foods. These were the reason Formosan was called the "barbarian dog," by Japanese. Using sanitation as an excuse, Japanese military launched a large-scale massacre of Formosan to reduce the local dog population."

During the time when the Japanese military was building the Central and Southern Cross-Island Highway, they were constantly encountered by the aborigines. The aborigines launched numerous assaults to the Japanese military bases. During the assaults, Formosan dogs also gathered and hunted down Japanese military dogs, leaving a bloody scene in the morning. For revenge, the Japanese military killed every Formosan dog they saw to reduce the Formosan population.[15]

Kuomintang Era

Dr. Sung Yung-yi believes that the true reason that led to Formosan Mountain Dog's extinction is the dog-eating culture. It was brought in along with the Chinese Nationalist Party's retreat in 1945, due to the loss to the Soviet-supported Communist Party of China (led by Mao Zedong) at the end of the Second Sino-Japanese War in 1945.[16]

Furthermore, after Kuomintang occupied Taiwan, the son of Chiang Kai-shek, Chiang Ching-kuo successfully reformed Taiwan to an economic little dragon (Four Asian Tigers), he was credited for the Taiwan economic miracle, and has served as role model for many developing countries.[17][18][19] Nevertheless, great economic comes with great price, with economic development and open society, businessmen from around the world start to introduce high-priced foreign dogs and Japanese dogs into Taiwan. With lack of conservative and pet care knowledge, many foreign dogs were abandoned and start crossbreeding with Formosan Dogs. Dr. Sung Yung-yi believes that these are the two true reason that affect Formosan Mountain Dog's living space and the space for existence.[5]

Threat

Crossbreeding

The introduction of a variety of foreign dogs to Taiwan in the past was also a big threat to preserving the blood line of the Formosan. A lot of dogs non-native to Taiwan were brought over during the "Kuomingtang" Era, and many were released into the wild. These began mating with the native Formosan, making pure bred Formosans harder and harder to find in the wild.

Breeding problems

The Formosan Mountain Dog was originally kept by aboriginal Taiwanese as hunting dogs, but now purebred Formosans are extremely rare and valuable. Since pure Formosans are extremely rare, there is a high risk of genetic disorder and unstable behavior due to the shallow gene pool. For this reason, crossing Foromosans with other breeds occurred often due to the lack of pure females with steady traits. This is one of the major reasons modern Formosans look different, compared to old photos or documents from the early days. Some insist it is a natural change which does not affect the whole breed, while others actively fight to preserve the "pure" bloodline. Nevertheless, this breed is now popular all across the island as a watch and companion dog.

Dog meat

Dog meat is known as "fragrant meat" (香肉 xiāng ròu) in Taiwan. Dog meat was never commonly eaten in general, and when it was eaten, it was usually only eaten during winter. But those that did partake in eating dog meat would frequently consume the meat of the black Formosan. In Traditional Chinese Medicine, dog meat was claimed to help retain body warmth. In 2004 though, consuming dog meat was banned by the Taiwanese government, due to both pressure from domestic animal-welfare groups and a desire to improve international perceptions, although there were some protests to the ban.[20][21] It is still possible to find dog meat in some rural areas, but this is becoming increasingly rare.

Study

Taiwan Dogs are originally native Taiwanese dogs, descendants of the South Asian hunting dogs called the "Pariah dog" which ancient local inhabitants used to live with in the central mountainous districts. This breed was the loyal companion of the ancient hunter in the wild forest. In 1980, a cooperative study was carried out by the National Taiwan University, Japanese Gifu University, and Dr. Ota Keming's(太田克明) research team from Nagoya University. Scholars targeted native Taiwan dogs as their subject, by visiting twenty-nine tribes of local inhabitants. As a result, it was confirmed that the present Taiwan Dog is a descendant of the South Asian hunting dogs. This project was originally Dr. Ota's idea, as he was tracing the origin of Japanese indigenous dog, so he sought Dr. Sung Yung-yi's help in completing his research project.

Of the 46 purebloods that Dr. Sung found during 1976-1980, blood tests showed that they were related to dogs found in Southern Japan and that they were descendants of the International Canine Organization.

Current

Conservation status

Since 1976, many Taiwanese United Nations, as the animal was close to extinction.

Dr. Sung told the New Taiwan News that, to this day, people in Taiwan do not have a strong respect for biodiversity. Dr. Sung believed that a Formosan Mountain Dog rehabilitation program should be encouraged by government efforts and carried out by careful planning. Currently, reproduction is the most urgent task. He believes, every Formosan Dog should be registered to a household, which specified mating. In recent years, Taiwan's government had not taken any action in protecting these indigenous Formosan Dogs. Dr. Sung also said that after learning how Taiwan's government handled the Formosan Sika Deer Rehabilitation Project, he was discouraged, and did not dare have any thoughts on launching a conservation project for Formosan Dog. He said, "For a developed country, Taiwan currently is not one yet."[5]

Security/Guard Dog

Currently, the ROC Air Force is considering the Formosan Dog for military purposes. At this time the ROC Air Force is using German Shepherds for security, but German Shepherds have some downsides. For instance, it was often found that German Shepherds who perform intensive security duties on a daily basis will suffer from serious bruising on their paws. Furthermore, they found that many German Shepherds' guarding mechanism towards strangers was not quite at the desired sensitivity. In many cases, strangers will need to get close for the dog to react. These factors caused the ROC Air Force to look to replace German Shepherds.

After half a month of testing, the ROC Air Force concluded that the Formosan Mountain Dog's sense of smell, hearing, dexterity, and alertness towards strangers were all more suitable for the purpose of guarding their fighter jets. More importantly, the Formosan Mountain Dog does not suffer from the bruising of the paws as the German Shepherds do. For this reason, it is likely that the ROC Air Force will replace German Shepherds with Formosan Mountain Dogs. The only concern for the ROC Air Force is that the Formosan Mountain Dog is physically less intimidating than a German Shepherd. Recently, the feasibility of replacing German Shepherds with Formosan Mountain Dogs has been tested.[22]

Breeder

Most of the foundation stock owners and breeders are hesitant to make public appearances. They stay behind the scenes and sell only males to those who have Formosan dog kennels and attend local dog shows. The most well-known and high-profile breeder is Ming Nan Chen. Like many born in the 1950s, Chen owned a Formosan as a child. In the 1980s he started a business dedicated to creating a pure-bred Formosan close to the one in his childhood memory, beginning with a single puppy that he purchased for NT$30,000 (about US$910.00) from an aborigine man.[23]

However, some argue that credit must be given to those breeders, as they are the ones who are keeping the bloodline pure. After two or three decades of breeding, training, improving, and purification, it is now unable to fully distinguish the indigenous and the new breed. Further, it is also due to the subjective preferences of breeders and their belief of what the pureblooded Formosan should look like, which they created different trend of the "pure-blood." Many claim that their Formosan Mountain Dogs are pureblood. Such breeders also applied the "new type" of Formosan Mountain Dogs to the FCI to develop a "standard", which may be very different from what it originally should have looked like.

Breeders also created a conflict in debating for the future of the Formosan Mountain Dogs, as maintaining its purity or modifying through hybridizing it into a new type. For breeders who support purity, they believe that there is no need in improving the breed through hybridization. However, breeders who support modifying believe that, since Formosan Mountain Dogs have been accidentally cross-bred for centuries and it is not possible to identify and maintain its purity, then we should seek a "new type" of Formosan Mountain Dog with improvements. These two different points of view are still an ongoing debate and remain controversial.require('Module:No globals')

local p = {}

-- articles in which traditional Chinese preceeds simplified Chinese local t1st = { ["228 Incident"] = true, ["Chinese calendar"] = true, ["Lippo Centre, Hong Kong"] = true, ["Republic of China"] = true, ["Republic of China at the 1924 Summer Olympics"] = true, ["Taiwan"] = true, ["Taiwan (island)"] = true, ["Taiwan Province"] = true, ["Wei Boyang"] = true, }

-- the labels for each part local labels = { ["c"] = "Chinese", ["s"] = "simplified Chinese", ["t"] = "traditional Chinese", ["p"] = "pinyin", ["tp"] = "Tongyong Pinyin", ["w"] = "Wade–Giles", ["j"] = "Jyutping", ["cy"] = "Cantonese Yale", ["poj"] = "Pe̍h-ōe-jī", ["zhu"] = "Zhuyin Fuhao", ["l"] = "literally", }

-- article titles for wikilinks for each part local wlinks = { ["c"] = "Chinese language", ["s"] = "simplified Chinese characters", ["t"] = "traditional Chinese characters", ["p"] = "pinyin", ["tp"] = "Tongyong Pinyin", ["w"] = "Wade–Giles", ["j"] = "Jyutping", ["cy"] = "Yale romanization of Cantonese", ["poj"] = "Pe̍h-ōe-jī", ["zhu"] = "Bopomofo", }

-- for those parts which are to be treated as languages their ISO code local ISOlang = { ["c"] = "zh", ["t"] = "zh-Hant", ["s"] = "zh-Hans", ["p"] = "zh-Latn-pinyin", ["tp"] = "zh-Latn", ["w"] = "zh-Latn-wadegile", ["j"] = "yue-jyutping", ["cy"] = "yue", ["poj"] = "hak", ["zhu"] = "zh-Bopo", }

local italic = { ["p"] = true, ["tp"] = true, ["w"] = true, ["j"] = true, ["cy"] = true, ["poj"] = true, } -- Categories for different kinds of Chinese text local cats = { ["c"] = "", ["s"] = "", ["t"] = "", }

function p.Zh(frame) -- load arguments module to simplify handling of args local getArgs = require('Module:Arguments').getArgs local args = getArgs(frame) return p._Zh(args) end function p._Zh(args) local uselinks = not (args["links"] == "no") -- whether to add links local uselabels = not (args["labels"] == "no") -- whether to have labels local capfirst = args["scase"] ~= nil

        local t1 = false -- whether traditional Chinese characters go first
        local j1 = false -- whether Cantonese Romanisations go first
        local testChar
        if (args["first"]) then
                 for testChar in mw.ustring.gmatch(args["first"], "%a+") do
          if (testChar == "t") then
           t1 = true
           end
          if (testChar == "j") then
           j1 = true
           end
         end
        end
        if (t1 == false) then
         local title = mw.title.getCurrentTitle()
         t1 = t1st[title.text] == true
        end

-- based on setting/preference specify order local orderlist = {"c", "s", "t", "p", "tp", "w", "j", "cy", "poj", "zhu", "l"} if (t1) then orderlist[2] = "t" orderlist[3] = "s" end if (j1) then orderlist[4] = "j" orderlist[5] = "cy" orderlist[6] = "p" orderlist[7] = "tp" orderlist[8] = "w" end -- rename rules. Rules to change parameters and labels based on other parameters if args["hp"] then -- hp an alias for p ([hanyu] pinyin) args["p"] = args["hp"] end if args["tp"] then -- if also Tongyu pinyin use full name for Hanyu pinyin labels["p"] = "Hanyu Pinyin" end if (args["s"] and args["s"] == args["t"]) then -- Treat simplified + traditional as Chinese if they're the same args["c"] = args["s"] args["s"] = nil args["t"] = nil elseif (not (args["s"] and args["t"])) then -- use short label if only one of simplified and traditional labels["s"] = labels["c"] labels["t"] = labels["c"] end local body = "" -- the output string local params -- for creating HTML spans local label -- the label, i.e. the bit preceeding the supplied text local val -- the supplied text -- go through all possible fields in loop, adding them to the output for i, part in ipairs(orderlist) do if (args[part]) then -- build label label = "" if (uselabels) then label = labels[part] if (capfirst) then label = mw.language.getContentLanguage():ucfirst(

References


-- Module:Hatnote -- -- -- -- This module produces hatnote links and links to related articles. It -- -- implements the and meta-templates and includes -- -- helper functions for other Lua hatnote modules. --


local libraryUtil = require('libraryUtil') local checkType = libraryUtil.checkType local mArguments -- lazily initialise Module:Arguments local yesno -- lazily initialise Module:Yesno

local p = {}


-- Helper functions


local function getArgs(frame) -- Fetches the arguments from the parent frame. Whitespace is trimmed and -- blanks are removed. mArguments = require('Module:Arguments') return mArguments.getArgs(frame, {parentOnly = true}) end

local function removeInitialColon(s) -- Removes the initial colon from a string, if present. return s:match('^:?(.*)') end

function p.findNamespaceId(link, removeColon) -- Finds the namespace id (namespace number) of a link or a pagename. This -- function will not work if the link is enclosed in double brackets. Colons -- are trimmed from the start of the link by default. To skip colon -- trimming, set the removeColon parameter to true. checkType('findNamespaceId', 1, link, 'string') checkType('findNamespaceId', 2, removeColon, 'boolean', true) if removeColon ~= false then link = removeInitialColon(link) end local namespace = link:match('^(.-):') if namespace then local nsTable = mw.site.namespaces[namespace] if nsTable then return nsTable.id end end return 0 end

function p.formatPages(...) -- Formats a list of pages using formatLink and returns it as an array. Nil -- values are not allowed. local pages = {...} local ret = {} for i, page in ipairs(pages) do ret[i] = p._formatLink(page) end return ret end

function p.formatPageTables(...) -- Takes a list of page/display tables and returns it as a list of -- formatted links. Nil values are not allowed. local pages = {...} local links = {} for i, t in ipairs(pages) do checkType('formatPageTables', i, t, 'table') local link = t[1] local display = t[2] links[i] = p._formatLink(link, display) end return links end

function p.makeWikitextError(msg, helpLink, addTrackingCategory) -- Formats an error message to be returned to wikitext. If -- addTrackingCategory is not false after being returned from -- Module:Yesno, and if we are not on a talk page, a tracking category -- is added. checkType('makeWikitextError', 1, msg, 'string') checkType('makeWikitextError', 2, helpLink, 'string', true) yesno = require('Module:Yesno') local title = mw.title.getCurrentTitle() -- Make the help link text. local helpText if helpLink then helpText = ' (help)' else helpText = end -- Make the category text. local category if not title.isTalkPage and yesno(addTrackingCategory) ~= false then category = 'Hatnote templates with errors' category = string.format( '%s:%s', mw.site.namespaces[14].name, category ) else category = end return string.format( '%s', msg, helpText, category ) end


-- Format link -- -- Makes a wikilink from the given link and display values. Links are escaped -- with colons if necessary, and links to sections are detected and displayed -- with " § " as a separator rather than the standard MediaWiki "#". Used in -- the template.


function p.formatLink(frame) local args = getArgs(frame) local link = args[1] local display = args[2] if not link then return p.makeWikitextError( 'no link specified', 'Template:Format hatnote link#Errors', args.category ) end return p._formatLink(link, display) end

function p._formatLink(link, display) -- Find whether we need to use the colon trick or not. We need to use the -- colon trick for categories and files, as otherwise category links -- categorise the page and file links display the file. checkType('_formatLink', 1, link, 'string') checkType('_formatLink', 2, display, 'string', true) link = removeInitialColon(link) local namespace = p.findNamespaceId(link, false) local colon if namespace == 6 or namespace == 14 then colon = ':' else colon = end -- Find whether a faux display value has been added with the | magic -- word. if not display then local prePipe, postPipe = link:match('^(.-)|(.*)$') link = prePipe or link display = postPipe end -- Find the display value. if not display then local page, section = link:match('^(.-)#(.*)$') if page then display = page .. ' § ' .. section end end -- Assemble the link. if display then return string.format('%s', colon, link, display) else return string.format('%s%s', colon, link) end end


-- Hatnote -- -- Produces standard hatnote text. Implements the template.


function p.hatnote(frame) local args = getArgs(frame) local s = args[1] local options = {} if not s then return p.makeWikitextError( 'no text specified', 'Template:Hatnote#Errors', args.category ) end options.extraclasses = args.extraclasses options.selfref = args.selfref return p._hatnote(s, options) end

function p._hatnote(s, options) checkType('_hatnote', 1, s, 'string') checkType('_hatnote', 2, options, 'table', true) local classes = {'hatnote'} local extraclasses = options.extraclasses local selfref = options.selfref if type(extraclasses) == 'string' then classes[#classes + 1] = extraclasses end if selfref then classes[#classes + 1] = 'selfref' end return string.format( '
%s
', table.concat(classes, ' '), s )

end

return p-------------------------------------------------------------------------------- -- Module:Hatnote -- -- -- -- This module produces hatnote links and links to related articles. It -- -- implements the and meta-templates and includes -- -- helper functions for other Lua hatnote modules. --


local libraryUtil = require('libraryUtil') local checkType = libraryUtil.checkType local mArguments -- lazily initialise Module:Arguments local yesno -- lazily initialise Module:Yesno

local p = {}


-- Helper functions


local function getArgs(frame) -- Fetches the arguments from the parent frame. Whitespace is trimmed and -- blanks are removed. mArguments = require('Module:Arguments') return mArguments.getArgs(frame, {parentOnly = true}) end

local function removeInitialColon(s) -- Removes the initial colon from a string, if present. return s:match('^:?(.*)') end

function p.findNamespaceId(link, removeColon) -- Finds the namespace id (namespace number) of a link or a pagename. This -- function will not work if the link is enclosed in double brackets. Colons -- are trimmed from the start of the link by default. To skip colon -- trimming, set the removeColon parameter to true. checkType('findNamespaceId', 1, link, 'string') checkType('findNamespaceId', 2, removeColon, 'boolean', true) if removeColon ~= false then link = removeInitialColon(link) end local namespace = link:match('^(.-):') if namespace then local nsTable = mw.site.namespaces[namespace] if nsTable then return nsTable.id end end return 0 end

function p.formatPages(...) -- Formats a list of pages using formatLink and returns it as an array. Nil -- values are not allowed. local pages = {...} local ret = {} for i, page in ipairs(pages) do ret[i] = p._formatLink(page) end return ret end

function p.formatPageTables(...) -- Takes a list of page/display tables and returns it as a list of -- formatted links. Nil values are not allowed. local pages = {...} local links = {} for i, t in ipairs(pages) do checkType('formatPageTables', i, t, 'table') local link = t[1] local display = t[2] links[i] = p._formatLink(link, display) end return links end

function p.makeWikitextError(msg, helpLink, addTrackingCategory) -- Formats an error message to be returned to wikitext. If -- addTrackingCategory is not false after being returned from -- Module:Yesno, and if we are not on a talk page, a tracking category -- is added. checkType('makeWikitextError', 1, msg, 'string') checkType('makeWikitextError', 2, helpLink, 'string', true) yesno = require('Module:Yesno') local title = mw.title.getCurrentTitle() -- Make the help link text. local helpText if helpLink then helpText = ' (help)' else helpText = end -- Make the category text. local category if not title.isTalkPage and yesno(addTrackingCategory) ~= false then category = 'Hatnote templates with errors' category = string.format( '%s:%s', mw.site.namespaces[14].name, category ) else category = end return string.format( '%s', msg, helpText, category ) end


-- Format link -- -- Makes a wikilink from the given link and display values. Links are escaped -- with colons if necessary, and links to sections are detected and displayed -- with " § " as a separator rather than the standard MediaWiki "#". Used in -- the template.


function p.formatLink(frame) local args = getArgs(frame) local link = args[1] local display = args[2] if not link then return p.makeWikitextError( 'no link specified', 'Template:Format hatnote link#Errors', args.category ) end return p._formatLink(link, display) end

function p._formatLink(link, display) -- Find whether we need to use the colon trick or not. We need to use the -- colon trick for categories and files, as otherwise category links -- categorise the page and file links display the file. checkType('_formatLink', 1, link, 'string') checkType('_formatLink', 2, display, 'string', true) link = removeInitialColon(link) local namespace = p.findNamespaceId(link, false) local colon if namespace == 6 or namespace == 14 then colon = ':' else colon = end -- Find whether a faux display value has been added with the | magic -- word. if not display then local prePipe, postPipe = link:match('^(.-)|(.*)$') link = prePipe or link display = postPipe end -- Find the display value. if not display then local page, section = link:match('^(.-)#(.*)$') if page then display = page .. ' § ' .. section end end -- Assemble the link. if display then return string.format('%s', colon, link, display) else return string.format('%s%s', colon, link) end end


-- Hatnote -- -- Produces standard hatnote text. Implements the template.


function p.hatnote(frame) local args = getArgs(frame) local s = args[1] local options = {} if not s then return p.makeWikitextError( 'no text specified', 'Template:Hatnote#Errors', args.category ) end options.extraclasses = args.extraclasses options.selfref = args.selfref return p._hatnote(s, options) end

function p._hatnote(s, options) checkType('_hatnote', 1, s, 'string') checkType('_hatnote', 2, options, 'table', true) local classes = {'hatnote'} local extraclasses = options.extraclasses local selfref = options.selfref if type(extraclasses) == 'string' then classes[#classes + 1] = extraclasses end if selfref then classes[#classes + 1] = 'selfref' end return string.format( '
%s
', table.concat(classes, ' '), s )

end

return p
  1. ^
  2. ^
  3. ^ a b
  4. ^ Republished on dogs.com.tw.
  5. ^ a b c d
  6. ^
  7. ^ Republished on http://taiwandog.myweb.hinet.net/a01.html
  8. ^
  9. ^ 江樹生。 1985。梅花鹿與台灣早期歷史關係之研究, 第3-62頁。台灣梅花鹿復育之研究七十四年度報告。內政部營建署墾丁國家公園管理處
  10. ^
  11. ^
  12. ^
  13. ^ The Plight of the Formosan Sika
  14. ^
  15. ^
  16. ^ Cook, Chris Cook. Stevenson, John. [2005] (2005). The Routledge Companion to World History Since 1914. Routledge. ISBN 0-415-34584-7. p 376.
  17. ^
  18. ^
  19. ^
  20. ^
  21. ^
  22. ^ Republished on dogs.com.tw.
  23. ^ Republished on dogs.com.tw.

External links

Media related to Taiwan Dog at Wikimedia Commons

  • Formosan Dogs website
  • Taiwanese Dogs website
This article was sourced from Creative Commons Attribution-ShareAlike License; additional terms may apply. World Heritage Encyclopedia content is assembled from numerous content providers, Open Access Publishing, and in compliance with The Fair Access to Science and Technology Research Act (FASTR), Wikimedia Foundation, Inc., Public Library of Science, The Encyclopedia of Life, Open Book Publishers (OBP), PubMed, U.S. National Library of Medicine, National Center for Biotechnology Information, U.S. National Library of Medicine, National Institutes of Health (NIH), U.S. Department of Health & Human Services, and USA.gov, which sources content from all federal, state, local, tribal, and territorial government publication portals (.gov, .mil, .edu). Funding for USA.gov and content contributors is made possible from the U.S. Congress, E-Government Act of 2002.
 
Crowd sourced content that is contributed to World Heritage Encyclopedia is peer reviewed and edited by our editorial staff to ensure quality scholarly research articles.
 
By using this site, you agree to the Terms of Use and Privacy Policy. World Heritage Encyclopedia™ is a registered trademark of the World Public Library Association, a non-profit organization.