text:
MapleStory/Glossary

Here is a list of common acronyms and shortforms used when discussing MapleStory.

A

 * AB: - Bowman Skill
 * AC: Auto-Clicker. Before Wizet's implementation of GameGuard, these programs were one of the most popular way to gain entrance into the Kerning City and Ludibrium Party Quests. Wizet now prohibits their use. Despite the ban, they still are very popular today.
 * AE: - Sniper Skill
 * AFK : Away From Keyboard; typically suggests that a player is currently inactive, but still logged on.
 * AFMS: Away From Maple Story
 * AR: - Ranger Skill
 * Aqua Road

 * ATM: Short for "at the moment".
 * Asi, Asia, Asianic: - Bowman Bow

B

 * Bagged: Death by another player's summoning bag.
 * Banditsin: A rogue that maxes Lucky 7 and will make the job advancement as a bandit.
 * BB: - Bowman Skill
 * Bye Bye
 * Bathroom Break
 * Black Bandana

 * BC: Black Crystal (usually the ore)
 * Bomb: - Hunter Skill
 * Booster: Weapon booster skill - Most classes have a skill to boost their attack speed.
 * BRB: Be Right Back - Player must leave, but will be right back.
 * "B>": Shorthand used to mean "Buying".

C

 * CB: - Bowman Skill
 * Chief Bandit - third job for Bandits

 * CC: Change channel(s). Considered very rude to most people. To change channels means to leave a map (presumably to another channel) that someone is training on to avoid Kill Stealing them.
 * CC Plz: Change channel(s) please. Another way people use "CC".
 * CE: Curse Eyes, found around Sleepywood and Ellinia.
 * Cold Eyes, found deep in the Dungeon.

 * Clean: An equipment with all of its slots remaining.
 * Coolies: The Coolie Zombies in the Forest of Dead Trees maps deep in El Nath.
 * CP5: Cloud Park 5, a popular training spot.
 * CRog: Crimson Balrog - One of the most powerful monsters in the game.
 * CS: - Bowman Skill
 * Cash Shop
 * Cursed Sanctuary, the map where Jr. Balrog spawns.

D

 * Dark YnP: Dark Yeti & Dark Pepe combined - Enemy found in Dangerous Cliff
 * DC: Disconnected (also written as D/C)
 * Dark Crystal (usually the ore)

 * Defamer: Player defame others who does not do anything bad. Defamers may defame for fun, lossing a game, jeaious others level up or more powerful.
 * Dit: Bandit
 * DK: Dragon Knight - third job of the Spearman.
 * DMT: Drake's Meal Table - Map in the dungeon, contains Cold Eyes, Cargos, and Drakes.
 * DR: Dark Ritual - Level 75 Magician staff
 * DS: - Bowman Skill
 * - Thief Skill
 * Devil's Sunrise - Level 90 two-handed sword

 * DSG: Dark Stone Golem - Monster found in Sleepywood Dungeon III, IV, V and Golem Temple 3
 * DT: Death Teddies - Monster found in Forgotten Path of Time 3
 * DW: Don't worry.

E

 * EE: Evil Eye - Monster found in the Dungeon
 * EEC(1-4): Evil Eye Caves 1-4.
 * ER: - Dragon Knight Skill
 * - Priest Skill

 * ET: Evil Tale - Level 58 Magician Wand
 * EW: Evil Wing - Level 65 Magician Staff
 * EXP: Experience, usually mean current EXP %

F

 * FA: - Bowman & Warrior Skill
 * Fire Arrow - Skill for Fire Wizards

 * Fame: Fame - Required to begin certain quests and wear specific equipments.
 * Farrow: Fire Arrow - Skill for Fire Wizards
 * Fizard: Fire Wizard - 2nd Job for Magicians
 * FJ: - Hermit Skill
 * FM: Free Market

G

 * GC: - Bowman Crossbow
 * GG: Good Game
 * GJ: Good Job
 * GK: Gatekeeper - A powerful monster found within the Warped Passage.
 * GM: Game Master - The employees of Wizet who strive to maintain order in Maple Story. Easily identifiable by the GM symbol above their heads.
 * Grim: Grim Phantom Watches, high-level monsters that are found in Ludibrium.

H

 * HA: - active skill available only for magicians, specifically clerics, in which a 'holy' or 'divine' arrow is fired at any surrounding enemies and foes. This inflicts a great deal of damage upon undead monsters, when this skill has been maxed.
 * HB: - Spearman Skill
 * HHG: Henesys Hunting Grounds - The first map to the left of Henesys.
 * HP: Health/Hit Point(s) - the amount of life, or health, a player may have. Acquiring damage may result in the decreasing of health/hit points, while consuming any type of health-providing products may result in the increasing of health/hit points. HP is indicated by a medium-sized red bar that is located at the very bottom of the screen right to the left of the MP bar.
 * HS: - Priest Skill
 * Hidden Street - www.hidden-street.net

 * Hybrid: A spearman who uses both spears and polearms, or a bandit that uses luck and str daggers.

I

 * IA: - Bowman Skill
 * IDC: I don't care.
 * IDK: I don't know.
 * IGN: In-Game Name - Used when requesting another person's character name when not in the game
 * I/L: Ice-Lightning Wizard/Mage.

J

 * Jaeger: Gross Jaeger - Level 70 Crossbow
 * Jeti, J Yeti: Jr. Yeti - Enemy found east of El Nath
 * JQ: Jump Quest
 * Jr.Rog: Jr. Balrog

K

 * KB: Knockback - Ability to knock an enemy back by doing more than a certain amount of (monster dependant) damage.
 * Kittens, Kitties: Jr. Cellions/Jr.Lioners/Jr. Grupins - Enemies found in Garden area of Cloud Park.
 * KS: Kill Steal - Kill steal is when one user kills a monster that another user is fighting, or is about to fight. It is usually depreciated by users.

L

 * L7: - Thief Skill
 * Lawl: Replacement for LOL due to similar pronunciation, with identical meaning.
 * Lizzard: Lightning Wizard - 2nd Job for Magicians
 * LMAO: Laugh/Laughing my a** off - used when somone says something really funny.
 * LMFAO: Laugh/Laughing my f**king ass off - used when somone says something extremely funny.
 * LOL: Laugh Out Loud
 * LOWB (2): Land of the Wild Boar - located just to the right of Perion, in a Hidden Street, or Land of the Wild Boar II, located in a Hidden Street at the East Domain of Perion.
 * Ludi: Short for the Ludibrium area of Ossyria, or the town with the same name.
 * lvl: Level
 * Lycan/Lyco: Lycanthrope - Enemies found in Wolf Territory III and IV

M

 * Macis: Tauromacis - An enemy found on the way to Jr. Balrog
 * Mass Defame: The act of defaming a character multiple times by either using alternate characters, or calling upon one's friends to defame the character.
 * MB: - Ranger and Sniper Skill
 * MC: - Magician Skill
 * Magic Composition: Mage Third job Skill

 * MDT: Master Death Teddies - Monster found in Lost Time, a Hidden Street off Forgotten Path of Time 3
 * ME: - Chief Bandit Skill
 * MG: Mix Golem
 * Magic Guard(mage)
 * Meso Guard(chief Bandit)

 * MM: Mushmom - Boss monster found in 'Someone Else's House' <--(Hidden Street located near taxi cab of Henesys.)
 * MP: Mana/Magic Point(s) - A type of substance that enables a player to cast and perform magic, as in skills. MP is indicated by a medium-sized bar that is light-blue in color, located at the very bottom of the screen right beside the HP bar, while one is running the MapleStory program.
 * MS: MapleStory

N

 * Newbie: A new player to the game.
 * Noob: Common insult used for describing experienced players who behave like newbies.
 * NPC: Non-Player Character. (Shop/Quest characters)
 * Act of selling an item to a shop NPC instead of to another player.

 * Nub: Another form of noob.

O

 * Oly: - Bowman Bow
 * OMFG: Oh my f**king god.
 * OMG: Oh My God
 * Oh My Gosh
 * "OMG Spear": Omega Spear, level 80 item

 * OS: Omega Sector
 * Ossy: Ossyria
 * Owned: Term used for describing that a player has either killed a monster with ease or been killed by a monster.

P

 * Pang: White Pang - A monster found outside El Nath, commonly in Wolf Territory 3-5
 * PC: Price Check, used to get a feel for what the price of a (usually rare) item is.
 * PG: - Fighter and Page skill
 * Pizard: Poison Wizard - Fire/Poison Wizard who uses pure Poison. Very uncommon build.
 * PKB: - Hunter and Crossbowman skill.
 * Pls, Plz, Pl0x: Please - common for noobs to say, especially when someone wants you to change channels.
 * Poly: Bowman Polyfeather Hat
 * PQ: Party Quest
 * PS: - Warrior Skill
 * PT: Party. Party members can share part of EXP gained from other members (as known as Training). All memebers can pick up any mesos or items dropped by monsters killed by other memebers.
 * PT Leech: Party Leech(PTL) is who join a party do not kill but gain EXP from party.
 * Pwned: Common, intentional mispelling of 'owned', with same meaning.

R

 * R>: A short way of saying "Recruiting" (as in recruiting guild members).
 * Rawr: An alternative spelling of "roar"
 * Repot: Buying potions from the nearest store (usually a town).
 * Rest-Kill: Rest-Kill (RK) is other player induces or knock-back monsters to attack you when you are resting.
 * ROFL: Rolling On the Floor Laughing - used when someone says something so funny, you are literally on the floor laughing.
 * ROFLMFAO:Rolling On the Floor Laughing My F***ing Ass off - used when someone says something so funny, you are literally on the floor laughing and your ass is falling off.
 * Rog: Jr. or Crimson Balrog.
 * Rush: Exitting a PQ with the intention of re-entering immediately. Usually done after Kerning PQ's Bonus stage.

S

 * SA: - Bowman Skill
 * Sader: Shortened and common name to refer to Crusaders.
 * Sanc: Sanctuary Entrance series of maps.
 * SB: - Warrior Skill
 * - Bandit Skill

 * SC: - Bowman Crossbow
 * Sin: Assassin character class
 * Sleepy: Sleepywood
 * Sniping: Attacking a monster from range to prevent taking damage.
 * Soul: - Bowman Skill
 * SP: - Hermit Skill
 * sp?: Signifies that the persion is not certain of a word's spelling. Ex. That was one wierd (sp?) monster.
 * Spears: Taurospear - Enemy found on the way to Jr. Balrog.
 * SR: - Priest Skill
 * STFU: Shut the fuck up
 * SW: Sleepywood - The town or the web site www.sleepywood.net
 * "S>": Shorthand used to mean "Selling".

T

 * TMI: Too much info, used when someone says too much info causing them to feel uncomfortable.
 * Track: Repeatedly using the /find command on a player to follow their movement, often used in PQs to determine a current party's location.
 * Train: If somebody ask for train, it means who want to party with players in higher level and gain much EXP from it. For an effective training, it is suggested to party with player at least 5 level higher than you. But you should note that if the trainer kills monster not for your level, you may not gain any EXP.
 * Transfer: Using the storage feature to move items from one character to another on the same world/account.
 * "T>": Shorthand used to mean "Trading"

U

 * U: You.

V

 * V2k: - Bowman Bow
 * Vac: Vaccum Hacks, brings all monsters to a specific location. Wizet bans players who do this.
 * Vending: Going AFK while using a Shop Permit to sell items while inactive. (i.e. overnight)
 * Vic: Victoria Island
 * Vikings: Spirit Vikings, high-level Ludibrium monsters.
 * Gigantic Spirit Vikings, high-level Ludibrium monsters near Spirit Vikings.

 * Viper: - Bowman Bow

W

 * WB: Welcome Back
 * W/G or WG: Work Gloves
 * WK: White Knight - The Third Job for page
 * WOMG: Whoa Oh My God - Another variant of OMG.
 * WTC: What The Crap (uncommon)
 * WTF: What The F**k
 * WTH: What The Hell/Heck
 * WW: Werewolf - Enemy found in Wolf Territory I and II

X

 * XBow: Crossbow
 * XBowman: Crossbowman - Archer who specializes in Crossbows.

Y

 * Y: Why
 * Yepe, Yepi, YnP: Yeti & Pepe combined - Enemy found in Ice Valley II in Ossyria.

Z

 * Z(1-4): Refers to a specific Forest of Dead Trees map, from I to IV.
 * ZB: Zombie.
 * ZHelm: Short for Zakum Helm, an untradable item dropped by a boss.
 * ZLupins: Zombie Lupins.
 * ZS, ZShroom: Zombie Mushroom
 * Zombies: Coolie Zombies in the Forest of Dead Trees maps deep in El Nath.
 * Minor Zombies just after the Forest of Dead Trees maps, in the Dead Mine maps.

 * ZOMG: Zoh My God - Another way of saying OMG

title: MapleStory/Glossary


text:
MINC/Tutorials/Programming03

A fully functional and useful example
There are two programs that can be found inside the conglomerate package: print_volume_value and print_world_value. To use them you specify a minc volume and xyz coordinates in either voxel (volume) or world space, and it returns the real value at that location. Here we will combine that functionality into a single minc2 program.

The code is presented in its entirety below, with commentary at the end of this page. The usage is the following: > minc2_tutorial3 input.mnc v|w c1 c2 c3

Where v or w specify whether world or voxel coordinates are specified inside c1 c2 c3.

Most of this code you've seen in the two previous examples. There are a few additional minc library calls - the first is miconvert_voxel_to_world, which does the reverse of miconvert_world_to_voxel. There are also two functions that deal with dimensions. The first, miget_volume_dimensions, places the dimensions associated with the specified minc volume into a midimhandle_t variable. There are several arguments to this function; for the moment it is sufficient to note that the defaults used above will be fine for most cases (and the details will be discussed in a later tutorial). The next function is crucial - miget_dimension_sizes returns the number of elements in each dimension. This is crucial information for looping over voxels as will be illustrated later.

As stated above this code reproduces functionality that exists in print_volume_value and print_world_value. It does, however, illustrate one advantage of minc2 over volume_io (the older library used by those two programs): it is much faster, by as much as an order of magnitude for this example.

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/

title: MINC/Tutorials/Programming03


text:
MapleStory

MapleStory. A dream, a fantasy, a life fulfilled. Be prepared to dash about! Kill Stone Golems, slay Yetis, and even take on a raging Crimson Balrog! Wave your wand silently through the air using spells and incredibly detailed magic. Or relentlessly chop and swing with your cold steel axe, fighting the bitter wind of El Nath as you stab wildly. Try whisking arrows through the air as you best the darkest areas of the Cursed Sanctuary. Fling shiny throwing stars and be amazed at the graphics. Consider slicing and dicing enemies with killer bandit combos. Maybe you wish to choose the glorious path of the Magician, or the tough but rewarding road of the Warrior, maybe the action-packed adventures of the Thief, or even the skillful life as the Bowman! Whatever you choose, remember this: it's your story!

What is this game like?
MapleStory is an online computer game first developed by the South Korean company Wizet in 2002. MapleStory is a side-scrolling, 2D MMORPG (Massively Multiplayer Online Role-Playing Game). It is client-based, which means that you must download the software in order to play the game. The software can be downloaded at the official MapleStory website.

MapleStory is one of the most popular online games on the Internet today. The game does not contain any gross violence or extremely frightening monsters. In some ways, it remotely resembles Pokémon. The game is suitable for young children, and it is popular among middle school, high school, and college students alike. Beginners find that the game is not dark or violent, and that the environment is actually a sunny, friendly place with small snails and mushrooms as monsters. MapleStory is completely free to register and play, although there is a "Cash Shop" where players can use authentic money to buy cash-only items that aren't available through the in-game currency, Mesos.

Several versions of the game are available for specific countries or regions, and each is published by various companies. Within each version are various "worlds" that characters exist in. Players may create up to three characters in each world. Characters, items, and Mesos are not transferrable between worlds. The various versions and worlds are:
 * KoreaMS: Stius, Bellocan, Demethos, Yellonde, Kastia, Elnido, Windia, Scania, Bera, Broa, Khaini, Zenith, Croa, Mardia, Plana, Arkenia, Juidis, Khadia, Galicia, and Beta world - Tespia.
 * JapanMS: Keyaki, Popura, Sumomo, Khalin, Sakura, Momiji, Kaede, and Anzu.
 * ChinaMS
 * Gateway 1: Pepe, Yeti, Curse Eye, Wild Cargo, Hector, Small White Rabbit, Copper Drake, Fire Boar, Ligator, Orange Mushroom, Blue Snail, Shroom, Slime, Pig, Jr. Necki, Lorang, Tortie, Octopus, Lupin, and Star Pixie.
 * Gateway 2: Emerald, Black Crystal, Diamond, Topaz, Sapphire, Amethyst, Aquamarine, and Opal.
 * Gateway 3: Rina and Alex.
 * TaiwanMS: Yeti, Orange Mushroom, Star Pixie, Ribbon Pig, Blue Snail, Slime, Octopus, Stump, Evil Eye, Fierry, and Jr. Balrog.
 * ThailandMS: Scania, Bera, Broa, and Windy.
 * GlobalMS: Scania, Bera, Broa, Windia, Khaini, and Bellocan.
 * MapleSEA: Aquila, Bootes, and Cassiopeia.
 * EuropeMS (Beta): Khadia.

Overall, gameplay is fairly simple: attack monsters, gain levels, attack stronger monsters. As you level up, you can equip new weapons and clothes, you gain more Mesos, and possibly make new friends.

Although beginners may at first think the game is all about leveling up and hunting monsters, MapleStory is also a place to socialize. With the Maple Messenger, buddy lists, and guilds, MapleStory is a typical MMORPG, where users don't always have to hunt, train, and level up; they can take a break and chat whenever they like.

As with any MMORPG, there are many players that try to scam or rip-off beginners. On rare ocassions, users will get hacked. While uncommon, it is a problem in the game where you login and see all your items gone. Most of these incidents are friends stealing accounts from their friends, so keep a good password and (in GlobalMS) PIN number, and be sure not to give either away to anyone, even real life friends.

Author's Note
Everyone is welcome to help contribute to this book. There are many great challenges in MapleStory, and there are many who need help overcoming some of these challenges. However, with any large project, there are plenty of errors and omissions that appear. Every reader of this book can help fill in any gaps and fix mistakes. Everyone is encouraged to be bold when editing since any edits can be undone. So don't be worried about making a mistake as there are many people who are willing and able to help.

If you are just passing through and want to help out a bit, check out the glossary and perhaps add a few short terms you know. Or, if you have a question that hasn't been answered anywhere, check out the FAQ page and post it there. There are many experienced MapleStory players editing this book who would be happy to help.

Finally, it would be a great deal of help to register a name here if you plan to contribute a lot of material. This is a great site to read and learn from. Registering will also let you login from different computers and keep all your edits under your name.

title: MapleStory


text: User talk:75.144.80.177

title: User talk:75.144.80.177


text: User talk:130.184.93.44

title: User talk:130.184.93.44


text:
User talk:116.90.230.238

Wikibooks cannot accept copyrighted content

 * If you contribute more copyrighted content you will be blocked from editing. – Mike.lifeguard  | talk 18:11, 10 October 2007 (UTC)

title: User talk:116.90.230.238


text:
User talk:67.121.112.251

– Mike.lifeguard  | talk 18:13, 10 October 2007 (UTC)

title: User talk:67.121.112.251


text:
User:Xjtubenben

Hello world!

title: User:Xjtubenben


text: User talk:61.14.7.34

title: User talk:61.14.7.34


text:
User talk:Xjtubenben

Come introduce yourself at the new users page. If you have any questions, you can ask there or contact me personally.– Mike.lifeguard  | talk 20:02, 10 October 2007 (UTC)

title: User talk:Xjtubenben


text:
User talk:Psimonovsk

Come introduce yourself at the new users page. If you have any questions, you can ask there or contact me personally.– Mike.lifeguard  | talk 20:04, 10 October 2007 (UTC)

title: User talk:Psimonovsk


text:
User talk:Piercetheorganist

Come introduce yourself at the new users page. If you have any questions, you can ask there or contact me personally.– Mike.lifeguard  | talk 20:46, 10 October 2007 (UTC)
 * Feel free to do another recipe for Crème Brûlée at Cookbook:Crème Brûlée 2 or on Cookbook:Crème Brûlée ''but without removing the recipe that was there before. – Mike.lifeguard  | talk 20:46, 10 October 2007 (UTC)

title: User talk:Piercetheorganist


text: User talk:156.110.91.252

title: User talk:156.110.91.252


text:
User talk:Sounny

Your account will be renamed
Hello,

The developer team at Wikimedia is making some changes to how accounts work, as part of our on-going efforts to provide new and better tools for our users like cross-wiki notifications. These changes will mean you have the same account name everywhere. This will let us give you new features that will help you edit and discuss better, and allow more flexible user permissions for tools. One of the side-effects of this is that user accounts will now have to be unique across all 900 Wikimedia wikis. See the announcement for more information.

Unfortunately, your account clashes with another account also called Sounny. To make sure that both of you can use all Wikimedia projects in future, we have reserved the name Sounny~enwikibooks that only you will have. If you like it, you don't have to do anything. If you do not like it, you can pick out a different name.

Your account will still work as before, and you will be credited for all your edits made so far, but you will have to use the new account name when you log in.

Sorry for the inconvenience.

Yours, Keegan Peterzell Community Liaison, Wikimedia Foundation 23:43, 17 March 2015 (UTC)

title: User talk:Sounny


text:
User talk:206.47.202.53

– Mike.lifeguard  | talk 21:12, 10 October 2007 (UTC)

title: User talk:206.47.202.53


text:
User talk:206.116.44.192

– Mike.lifeguard  | talk 21:12, 10 October 2007 (UTC)

title: User talk:206.116.44.192


text:
User talk:24.251.155.132

Is there some reason you're editing a userpage which doesn't belong to you? – Mike.lifeguard  | talk 21:24, 10 October 2007 (UTC)

title: User talk:24.251.155.132


text:
MATLAB Programming/Phase Vocoder and Encoder

The following phase vocoder and its corresponding spectral encoding routine was written for a MATLAB clone compiler, and it might work in GNU Octave. For background information, please consult:
 * Phase vocoder on the English Wikipedia;
 * Laroche, J. and Dolson, M. (1999) "Improved Phase Vocoder Time-Scale Modification of Audio" IEEE Transactions on Speech and Audio Processing 7(3):323-32;
 * Miller Puckette (1995) "Phase-locked Vocoder" [PostScript file] Proc. IEEE ASSP Conf. on Applications of Signal Processing to Audio and Acoustics (Mohonk, New York: 1995) — pioneered phase coherence propagation by phase-locking adjacent spectral bins and frames during resynthesis;
 * Axel Röbel (2003) "A new Approach to Transient Processing in the Phase Vocoder" Proc. 6th Int'l Conf. on Digital Audio Effects (London: Sept. 8-11, 2003); and
 * MATLAB Programming wikibook, where this code is given as an example.

Source code
The following code, comments, and related commentary are hereby released by the author into the public domain, or if that is not possible, permission is granted for everyone to use this material for any purpose.

% fs.m - synthesis from frequency spectra. %    [output: waveform] = fs(freqresp: series of spectra) % % James Salsman, 1999-2000 % % Note: sometimes this produces data outside the (1,-1) range, even when % run with input from that smaller domain given to af.m. It is safe to % clamp outlying values to the extrema of the corresponding input domain. % If the resulting signal sounds clipped, it is NOT because of clamping % domain outliers of the range (e.g., 1.2, -1.3) to the domain edges (1,-1).

% To improve the quality, try increasing the length of the fft; if that % doesn't work, then try increasing the sampling rate. To improve the speed, % rewrite it in C; fftPrep is the only complex vector, and the call to 'sort' % is only for the ordering of the dot-product magnitudes, not the sorting.

function [output] = fs(freqresp)

samplingRate = 16000;                 % changed from 8000 frameRate   = 100;                    % should be even, maybe try 160 windowStep  = samplingRate/frameRate; % 16000/100 = 160, shall be even % windowSize  = samplingRate/40;        % must be even; use 256 for 11k/s rate windowSize  = windowStep*2;           % this is better [2002]

[rows, cols] = size(freqresp);        % input dimensions origFFtSize = rows*2;                 % should be power of two

% Allocate (preextend) all space needed for output array and helpers. % output    =  zeros(cols*windowStep + (windowSize - windowStep), 1); FFtPrep   =  zeros(1, origFFtSize) + 0*i;  % complex ifft input iFFtReal  =  zeros(1, origFFtSize);        % real ifft output phases    =  zeros(1, origFFtSize/2);      % resynthesis phase array newPhases =  zeros(1, origFFtSize/2);      % uses "-1" for unassigned phases transInd  =  zeros(1, origFFtSize/2);      % index into bins by magnitude ignore    =  zeros(1, origFFtSize/2);      % sort values unused but can't hurt

for n = 1:origFFtSize/2,             % Initialize synthesis phases. phases(n) = pi*mod(n, 2);        % Each starting phase 180 deg's apart end;                                 %   from the next one.

% pre-calculate phase transition from one frame to the next for base 2nd bin % phaseFactor = 2*pi*samplingRate/(frameRate*origFFtSize);

% resynthesis COLA window should be Portnoff (sinc) because iFFT will % shape like the window it was taken from % wind = sinc((-windowSize/2:windowSize/2-1)/(windowSize/2)); % pure sinc

for c = 1:cols,                      % iterate over columns first = (c-1)*windowStep + 1;    % output index last = first + windowSize - 1;   %   boundaries for b = 2:origFFtSize/2,         % iterate over bins

% prepare resynthesis %       [re, im] = pol2cart(phases(b), freqresp(b, c)); % polar to cartesian FFtPrep(b) = re + i*im;      % rectangular to complex FFtPrep(origFFtSize - b+2) = conj(FFtPrep(b)); % the conjugates count

end; iFFtReal = real(ifft(FFtPrep));  % resynthesize output(first:last) = output(first:last) ... % note: column vector (') + (iFFtReal( origFFtSize/2 - windowSize/2 : ...                   origFFtSize/2 + windowSize/2 - 1  ) .* wind )';  % COLA

if c < cols,                     % figure out the next set of phases newPhases = ones(1, origFFtSize/2)*-1; % "-1" for unassigned phase

% set transInd to index the least-to-greatest transitioning magnitudes %       [ignore, transInd] = sort(freqresp(:,c)' .* freqresp(:,c+1)');

% iterate downwards such that indexed bin will be greatest mags first %       for idx = origFFtSize/2:-1:1, % step by -1 from greatest to least b = transInd(idx);       % get bin from index

if b-1 > 0,              % adjacent lower neighboring bin lower = newPhases(b-1); else lower = -1;          % nonexistent = unassigned end;

if b+1 < origFFtSize/2,  % adjacent higher neighboring bin higher = newPhases(b+1); else higher = -1;         % nonexistent = unassigned end;

if (lower == -1) & (higher == -1),   % both unassigned: propagate newPhases(b) = mod(phases(b) + (b-1)*phaseFactor, 2*pi); elseif lower == -1,                  % make 180 degs from higher newPhases(b) = mod(higher + pi, 2*pi); elseif higher == -1,                 % make 180 degs from lower newPhases(b) = mod(lower + pi, 2*pi); else                                 % both neighbors assigned avgAng = (lower + higher)/2;     % Mean will be 180 deg off if abs(lower - higher) > pi,     %   when the angles are that avgAng = avgAng + pi;         %   far apart; if so, adjust end;                             %   180 degs from mean angle. newPhases(b) = mod(avgAng + pi, 2*pi); end;

end;

phases = newPhases;  % replace array for next iteration

end; % if -- skips last iteration

end;

Here is the corresponding encoder:

% af.m - frequency spectrum analysis. %  [freqresp: sequence of spectra] = af(input: waveform) % % James Salsman, '99-2000; adapted from Malcolm Slaney's mfcc.m [from his % "Auditory Toolbox" at www.interval.com.] % % Also works when samplingRate is 8000 or fftSize is 256, but I haven't tried % both together.

function [freqresp] = af(input)

samplingRate = 16000;               % samples/sec frameRate = 100;                    % started at 100/sec, maybe use 160 later windowStep = samplingRate/frameRate; % 16000/100 = 160; shall be even windowSize = 400;                   % large, but from ETSI standard ES 201108 windowSize = samplingRate/40;       % must be even; use 256 for 11k/s rate fftSize = 512;                      % larger better but slower; usually 2^int.

[rows, cols] = size(input);         % sanity-check input dimensions if (rows > cols)                    % if there are more rows than columns input=input';                    % then transpose end

% hamming window shapes input signal % hamWindow = 0.54 - 0.46*cos(2*pi*(0:windowSize-1)/windowSize);

% how many columns of data we will end up with % cols = ceil((length(input) - windowSize)/windowStep);

% Allocate (preextend) all the space we need for the output arrays. % freqresp =  zeros(fftSize/2, cols); fftData  =  zeros(1, fftSize); fftMag   =  zeros(1, fftSize);

for c = 1:cols,                            % for each column of data

first = (c-1)*windowStep + 1;          % determine last = first + windowSize - 1;         %   endpoints % shape the data with a hamming window %   fftData(1:windowSize) = input(first:last).*hamWindow;

% find the magnitude of the fft %   fftMag = abs(fft(fftData));             % keep only real magnitudes

freqresp(:, c) = fftMag(1:fftSize/2)'; % emit

end;


text:
TI-Basic 89 Programming/Output

Disp
Disp, I/O(F3):2 is a command which will display a number, string, equation or other type of variable/literal given as arguments. Disp can accept an unlimited number of arguments separated by commas (although it recommended to keep the number of arguments under 7 because after seven, for each consecutive argument the screen pushes everything else up passed the top of the screen, even the seventh pushes the first line up a slight amount), and will display each argument following the previous line.

Ex: Display Lines
Assuming you have stored the value 5 into x (via 5→x) and a blank I/O screen and you executed this program,

you would have the following on your I/O screen:

Pause
Pause, Control(F2):Transfers(8):1 displays an argument, then pauses execution afterwards.

Output
Output, I/O(F3):6 allows the display of an argument in a location other than the next line. The item to be displayed is outputted to the specified coordinates supplied to the function. It is useful for formatted display.

Return
Return, Control(F2):Transfers(8):2 displays an argument on the home screen, or just returns to the home screen if no argument is supplied.

Ex: Return
Let's say you stored the value 5 in x (using 5→x) before executing the function. For the sake that this can only be used in a function, the appropriate tags and a name are supplied for this example.

title: TI-Basic 89 Programming/Output


text: Subject:Constructed languages

title: Subject:Constructed languages


text: Subject:Visual languages

title: Subject:Visual languages


text: Category:Book:Google Services And Products


text: User talk:68.229.95.28

title: User talk:68.229.95.28


text: User talk:24.107.169.35

title: User talk:24.107.169.35


text:
User talk:Skizzerz

Come introduce yourself at the new users page. If you have any questions, you can ask there or contact me personally.– Mike.lifeguard  | talk 23:10, 10 October 2007 (UTC)

title: User talk:Skizzerz


text:
User talk:Kath 57

Thanks for reverting vandalism!

Come introduce yourself at the new users page. If you have any questions, you can ask there or contact me personally.– Mike.lifeguard  | talk 23:10, 10 October 2007 (UTC)

title: User talk:Kath 57


text:
User talk:JasonLerch

Come introduce yourself at the new users page. If you have any questions, you can ask there or contact me personally.– Mike.lifeguard  | talk 23:11, 10 October 2007 (UTC)

title: User talk:JasonLerch


text:
User talk:Djclarke

Come introduce yourself at the new users page. If you have any questions, you can ask there or contact me personally.– Mike.lifeguard  | talk 23:11, 10 October 2007 (UTC)

title: User talk:Djclarke


text:
User talk:Mogaio

Come introduce yourself at the new users page. If you have any questions, you can ask there or contact me personally.– Mike.lifeguard  | talk 23:13, 10 October 2007 (UTC)

title: User talk:Mogaio


text: User talk:Koreanclass101

title: User talk:Koreanclass101


text:
Designing a Training Manual

Training manuals are particularly useful in the following situations:
 * Trainees can use the manuals for reviewing the subject after training.
 * It lets the trainee concentrate on and partake in the training during the training session instead of taking detailed notes.
 * It can serve as a reference document in the work place.

Developing a training manual is an important part in designing a formal training program. A formal training manual ensures consistency in the presentation of the training program. Another major advantage is that all the training information on skills, processes, and other information necessary to perform the tasks is together in one place. Training manuals should support the training objectives.

Manuals are generally developed using the most commonly used instructional design models - the "ADDIE" model.
 * "A" stands for Analysis of the audience, and of training needs;
 * "D" stands for Design of training, its objectives, sequencing of tasks, etc.
 * "D" represents Development of training/instructional materials, that are consistent with the design requirements.
 * "I" means Implementation of the training, and
 * "E" is Evaluating the training.

Training manuals can be designed to be used as:
 * Work books – often used in training sessions. It provides basic information, examples and exercises.
 * Self-paced guides: designed for trainees to work through on their own.
 * Reference manuals: for containing detailed information on processes and procedures.
 * Handouts: provide general information to support training done during the session.
 * Job aids: provide step-by-step instructions to be used in the work place.

Designing the manual
A well designed training manual, that is kept up to date, can become a valuable source of information to the organization. An effective manual:
 * Is easy to read and has easy to follow instructions;
 * Has an attractive design;
 * Uses illustrations to enhance understanding;
 * Can be used for future reference.

The following should be taken in consideration when designing the manual:
 * Content – topics, tasks, procedures and other information arranged in a logical sequence and broken down into small units;
 * Audience – their reading skills, previous work experience;
 * How the manual is to be used during the training session, afterwards (for revision) and/or as a reference in the work place.

The training manual can have different versions for the trainer/presenter and the trainees. The version for the trainer would include the basic text, prompts for discussions and demonstrations or other activities. It could also include information or checklists on preparation for the session. The trainee’s version will have the basic text, examples and exercises, as well as space for making further notes.

Writing the manual
Once the purpose for the manual has been established and attention has been given to the preliminary design, the main task of writing is the next step. First, organize the contents into a logical sequence of topics. Break down the topics into smaller segments that describe a task, procedure or concept. Include an overview on how to use the manual. As preparation for the training session give a list of key points or a summary of what is going to be covered at the start of each chapter.

What are the key elements of a Training Manual
The Training Manual may contain the following elements

 * A Cover page with plain or graphic with Title clearly written
 * A Blank page after the cover page
 * Table of contents
 * An Introduction page on What-How-Who - "What the Manual is about", "How to use the Manual" & "For whom the Manual is meant"
 * A Navigational Tips page with visually catchy icons which will be used throughout the manual
 * Expanding the Table of contents - Objectives / Description of each topic / Section Summary
 * Placeholders for graphics
 * Placeholders for work sheets
 * Page for Conclusion
 * Page for Further Reading
 * Page for Bibliography / References / Citations
 * A Blank page prior to closure
 * Closing Cover page

The following advice has been given by many authors:
 * Write in plain English: Avoid using technical terms, unless it is part of the work place vocabulary. In that case make sure technical terms are explained in simple language/terms. Spell out or explain acronyms and abbreviations.
 * Use the active voice: It is concise.
 * Be consistent in the use of terminology, tone and style of writing.
 * Long sentences and paragraphs can be confusing. Use short sentences and phrases. Numbered steps are easier to follow than long paragraphs.
 * Include illustrations (graphs, flow charts, tables, pictures, screen displays, examples of finished tasks) where appropriate to clarify concepts and enhance understanding. It also adds visual interest. Illustrations should be in proper proportion to nearby text.
 * Write a detailed table of contents that include chapter headings as well as the next level of subheadings.
 * Write a detailed index, including cross-references, to make it easy to find information. A good index makes the manual usable as a reference work for future use.
 * Check spelling and grammar.

After the completion of the first draft get feedback from trainers/presenters and other key personnel. Implement any suggestions if appropriate.

The title page, table of contents, a glossary of terms (if used) and the index are prepared last. On the title page the following should appear: Name of the manual, author(s), company name, publishing date. A copyright notice can be included, as well as acknowledgement of contributors if appropriate.

Presentation
An attractive appearance and ease of use can motivate the trainees to use the manual and thus reinforce learning. Good page layout increase readability and make the information more accessible. The organization of the material on the page guides the eye of the reader – which areas get attention and in what order.

Graphic design principles

 * Proximity: Group related pieces of information and other items together to form a cohesive unit, e.g. illustrations should appear on the same page as the related text. That is part of organizing the content in a logical order. Avoid too many separate elements on the page. Use close proximity to indicate unity between items. Use white space to separate unrelated items
 * Alignment: The alignment of text and graphics is another technique in organising the page. All the elements (text and graphics) should appear unified and interrelated by their placement on the page.
 * Repetition/Consistency: Consistency in the style of the elements (headings, graphics, arrangement) gives visual clues to the reader. It also unifies the different part of the manual and creates visual interest.
 * Contrast: Creating contrast between sections visually organise the page, leading the eye in a logical flow from one section to the next. Contrast is created by the use of fonts, line thickness, colours, shapes and space. Create a strong contrast to be effective.
 * Fonts (or type): Avoid using more than two or three fonts in a document. Fonts can be in italic, bold, light, heavy, or condensed versions. Avoid all uppercase – it is difficult to read – use bold, italic or other versions of the font for emphasis. Titles, headings and subheadings should be in a larger size font than the body of the text. When combining different fonts, use fonts that are clearly distinct to create contrast. It is often recommended to use a sans serif font for headings and a serif font for the body of the text.
 * Colour: It could be used in text for emphasizing and in graphics where appropriate. When used judiciously it increases learning and retention. Avoid overuse of colour as it loses its interest value.

Ease of use
Another consideration apart from the page layout is the collation of the manual to make the final product easy to use. The following techniques might be helpful:
 * Section dividers that extend beyond the page width make it easy to find sections, especially if it has the topics printed on the tabs. This is especially appropriate for a bulky manual that is to be used over several sessions.
 * A detailed table of contents at the beginning of sections, in addition to the main table of contents at the front of the manual makes it more accessible.
 * Allow wide enough margins to accommodate the type of binding used, as well as space for users to make key notes.
 * When considering binding, use a method that would allow easy replacement of pages. The manual can be updated easily, which adds to its reference value.

Lastly, be aware of copyright and other legal issues before reproducing the manual.

Example 1: based on the training checklist
This manual is used during on the job training and is available for reviewing between training sessions. This format is based on the checklist, which consists of a lists of tasks/skills to be taught, with extra columns where the trainer date and signs as the trainee progresses through the checklist.

Comment: This format works well in the on-the-job training situation where step-by-step instructions are given for fairly simple tasks. As it follows the checklist it makes reviewing easy while training is ongoing. Illustrations are difficult to incorporate in the text, which have been handled as handouts to overcome this restriction. Some of the handouts lend themselves to appendices, such as the 'OSH guidelines' in the example. Since this manual has only three main sections with all the handouts filed after each section, it is still easy to handle, especially with the detailed index in the front of the manual. If it had more sections, then this format would be cumbersome to use. Although a detailed index would enhance its reference value in the workplace, this isn't the ideal format to use for future reference.

Example 2: Text book style manual
Discharge of returned items All returned items are handled at this desk. When borrowers return their items, the items are discharged, resulting in the removing of the items form the borrower's record. Once the discharging is done, the displayed message will indicate what must be done with the discharged item. Discharging is done in Circulation Services (no. 2 on the main Circulation menu). To set the system up for discharging type in '2' at the command prompt (indicated by '>>'). Different commands will be displayed on the Circulation Services screen.
 * 1) Introduction:
 * 1) Setting screen up for discharging:

Illustration: Circulation Services screen.

To display the discharge screen type 'DI' at the command prompt. The date for discharging will be displayed and the system is now ready for discharging items.

Illustration: Discharge screen.

Before discharging check that the settings of the scanner are correct: It must be set on 'discharge' and the sensitiser must be switched on.
 * 1) Discharging books

Illustration: Scanner set up for discharging books

Stack books face down to a maximum height of 20 cm. Be careful to stack the books in a way that will prevent injuries - see the Occupational Safety & Health (OSH) guidelines (Appendix 1, p--). Slide the book past the scanner to wand in the barcode number of the book. Read the message on the screen and place the discharged book in the appropriate place.

Comment: This is the more traditional format which most people are familiar with. The illustrations are at the appropriate places which makes it easy to follow the text. The text tend to be 'wordier' than in the succinct bulleted style of the previous example. This format is good for future reference in the work place. It is also suited for describing more complex tasks and concepts. To assist navigation, a detailed index is essential, especially when it contains many sections.

title: Designing a Training Manual


text:
User talk:Duncharris~enwikibooks

Come introduce yourself at the new users page. If you have any questions, you can ask there or contact me personally.– Mike.lifeguard  | talk 23:22, 10 October 2007 (UTC)
 * If you want to use Wikipedia content as a basis for a book here, please request an import (transwiki) of the page(s) at WB:RFI or WB:AA so that we don't lose the edit history when the content migrates here. I've imported and history merged this – Mike.lifeguard  | talk 23:22, 10 October 2007 (UTC)

Your account will be renamed
Hello,

The developer team at Wikimedia is making some changes to how accounts work, as part of our on-going efforts to provide new and better tools for our users like cross-wiki notifications. These changes will mean you have the same account name everywhere. This will let us give you new features that will help you edit and discuss better, and allow more flexible user permissions for tools. One of the side-effects of this is that user accounts will now have to be unique across all 900 Wikimedia wikis. See the announcement for more information.

Unfortunately, your account clashes with another account also called Duncharris. To make sure that both of you can use all Wikimedia projects in future, we have reserved the name Duncharris~enwikibooks that only you will have. If you like it, you don't have to do anything. If you do not like it, you can pick out a different name.

Your account will still work as before, and you will be credited for all your edits made so far, but you will have to use the new account name when you log in.

Sorry for the inconvenience.

Yours, Keegan Peterzell Community Liaison, Wikimedia Foundation 23:07, 17 March 2015 (UTC)

Renamed
 This account has been renamed as part of single-user login finalisation. If you own this account you can |log in using your previous username and password for more information. If you do not like this account's new name, you can choose your own using this form after logging in: . -- Keegan (WMF) (talk) 04:54, 19 April 2015 (UTC)

title: User talk:Duncharris~enwikibooks


text: Subject:Dance

title: Subject:Dance


text: Category:Book:International Latin Technique


text: Subject:Languages of Europe

title: Subject:Languages of Europe


text: Subject:Languages of Asia

title: Subject:Languages of Asia


text: Subject:Languages of North America

title: Subject:Languages of North America


text: Subject:Languages of Oceania

title: Subject:Languages of Oceania


text: Subject:Languages of Africa

title: Subject:Languages of Africa


text:
XForms/Supply and Demand

Motivation
You want to create a simple illustration of a concept using a dynamic graph. You want to use a range control to change in input and see the impact of that change on an output.

Sample Program
This is not working yet with the range control. I wrote it with just SVG and JavaScript and I am in the process of porting it to XForms. I also need to use CSS to clean up the markup.

           Price and Demand   <line x1="0" x2="0" y1="200" y2="0" style="fill:none;stroke:black;stroke-width:1;" marker-end="url(#startMarker)"/> P 		<line x1="0" x2="200" y1="200" y2="200" style="fill:none;stroke:black;stroke-width:1;" marker-end="url(#startMarker)"/> Q 		<path id="demmand_curve" style="stroke:red; stroke-width:3" d="M0,0 200,200"/> <text x="120" y="-10" transform="rotate(45)">Demand <circle id="newPrice" cx="0" cy="100" r="4" style="stroke:blue; fill:blue"/> <text id="priceLabel" x="163" y="20" style="text-anchor:end">Input: Price = <text id="priceText" x="163" y="20">100 <text id="quantityLabel" x="163" y="35" style="text-anchor:end">Output: Quantity = <text id="quantityText" x="163" y="35">100 <line id="vertLine" x1="100" y1="100" x2="100" y2="200" style="stroke-dasharray: 1, 4;stroke:black;stroke-width:1; "/> <line id="horizLine" x1="0" y1="100" x2="100" y2="100" style="stroke-dasharray: 1, 4;stroke:black;stroke-width:1; "/> <g id="explanation" transform="translate(0 260)"> Adjust price by moving the slider. Note that as the input (price) changes. the quantity sold also changes. At high prices a low quantity is sold. At low prices a high quantity is sold. </g> <g id="slider" transform="translate(0 220)" xoffset="30"> <rect x="0" y="0" width="210" height="20" style="fill:#c0c0c0"/> <line style="stroke:black;stroke-width:2;" x1="5" y1="6" x2="205" y2="6"/> <line style="stroke:white;stroke-width:2;" x1="5" y1="8" x2="205" y2="8"/> <path style="stroke:black;fill:none;" d="M5,16 5,20 M25,16 25,20 M45,16 45,20 M65,16 65,20 M85,16 85,20 M105,16 105,20 M125,16 125,20 M145,16 145,20 M165,16 165,20 M185,16 185,20 M205,16 205,20"/> <g id="thumb" transform="translate(100 0)"> <path style="stroke:none;fill:#c0c0c0;" d="M1,2 1,12 5,15 9,12 9,2 Z"/> <path style="stroke:white;fill:none;" d="M9,1 1,1 1,11"/> <path style="stroke:black;fill:none;" d="M5,16 10,12 10,2"/> </g> <g id="explanation" transform="translate(20 230)"> Note that as the input (price) moves, the quantity sold changes. At high prices a low quantity is sold. At low prices a high low quantity is sold. </g> </g> </g> <![CDATA[ // == Slider object based on version by Dr. Stefan Goessner at http://www.mecxpert.de/svg/slider.html var slider=null, thumb=null, sliderActive = false; var newPrice=null, priceText=null, quantityText=null, vertLine=null, horizLine=null; // --- function SliderDown(event) {  sliderActive = true; } function SliderUp(event) {  sliderActive = false; // window.status = "slider is inactive"; } function SliderMove(event) {  var value = event.getClientX - parseFloat(slider.getAttribute("xoffset")) - 4; if (sliderActive && value > 0 && value < 200) {     thumb.setAttribute("transform", "translate(" + (value) + " 0)"); SliderCallback(value); } }

function SliderClick(event) {  var value = event.getClientX - parseFloat(slider.getAttribute("xoffset")) - 4; if (value > 0 && value < 200) {     thumb.setAttribute("transform", "translate(" + (value) + " 0)"); SliderCallback(value); } }

function SliderCallback(val) { // this is where we change the values newPrice.setAttribute("cy", val); horizLine.setAttribute("y1", val); horizLine.setAttribute("y2", val); horizLine.setAttribute("x2", val); vertLine.setAttribute("x1", val); vertLine.setAttribute("x2", val); vertLine.setAttribute("y1", val); priceText.firstChild.nodeValue=(200-val); quantityText.firstChild.nodeValue=(val); //= Math.round((val*1000)/1000); window.status = "price is " + (val); }

function OnLoadEvent(event) // called, when svg file is loaded (s. onLoad=..) .. {  var doc = event.getTarget != null ? event.getTarget.getOwnerDocument : null; if (doc != null) {     slider = doc.getElementById("slider"); thumb = doc.getElementById("thumb"); newPrice = doc.getElementById("newPrice"); priceText = doc.getElementById("priceText"); quantityText = doc.getElementById("quantityText"); vertLine = doc.getElementById("vertLine"); horizLine = doc.getElementById("horizLine"); slider.addEventListener("mousedown", SliderDown, false); slider.addEventListener("mouseup", SliderUp, false); slider.addEventListener("mousemove", SliderMove, false); slider.addEventListener("click", SliderClick, false); } } ]]> <xf:model> <xf:instance xmlns=""> </xf:instance> </xf:model> <xf:range ref="price" start="0" end="200" step="1"> <xf:label>Price: </xf:label> </xf:range> <xf:output ref="price" > <xf:label>Price: </xf:label> </xf:output>

title: XForms/Supply and Demand


text:
User talk:Dead6900

Welcome message
Hello, and welcome to Wikibooks!

Here are some tips to help you get started:
 * To learn the wiki-markup-language syntax, see Help:Editing.
 * You should sign your name on Talk and vote pages using four tildes, like this: ~~~~
 * There is a box at the top of the edit window that will insert this, too; it looks like part of a signature.
 * Remember to conduct any editing experiments in the sandbox.
 * You can tell the community something about yourself in your userpage.
 * You can get to this page by clicking the tab at the top of the page labeled with your registered username.
 * If you are a Wikipedian, see Wikibooks for Wikipedians for a primer on how things work here (it's a little different).
 * If you want to base your work here on materials from Wikipedia, please use WB:RFI (requests for importation) to bring the material over in compliance with the GFDL.
 * If you're an instructor and plan on using Wikibooks for a class project, see Guidelines for class projects
 * Please say hello at the Staff Lounge with any questions or ideas.
 * Eventually, you might want to read the Manual of Style and Policies and Guidelines.
 * Please take a look at Naming policy before starting a new book.
 * Remember to maintain a Neutral point of view.
 * Explore, be bold in editing pages, and have fun!

You will find more resources in Community Portal. If you want to ask a question, visit the Study help desk, the Staff lounge, IRC channel or ask me personally on my talk page. For site news, see the Bulletin board. It might be a good idea to add this page to your "watchlist" so that you can see when any new information is posted there. You can do that by clicking the tab labeled "watch" at the top of the page.

Good luck! --Panic 04:08, 11 October 2007 (UTC)

title: User talk:Dead6900


text:
User talk:Ptauriki

Welcome message
Hello, and welcome to Wikibooks!

Here are some tips to help you get started:
 * To learn the wiki-markup-language syntax, see Help:Editing.
 * You should sign your name on Talk and vote pages using four tildes, like this: ~~~~
 * There is a box at the top of the edit window that will insert this, too; it looks like part of a signature.
 * Remember to conduct any editing experiments in the sandbox.
 * You can tell the community something about yourself in your userpage.
 * You can get to this page by clicking the tab at the top of the page labeled with your registered username.
 * If you are a Wikipedian, see Wikibooks for Wikipedians for a primer on how things work here (it's a little different).
 * If you want to base your work here on materials from Wikipedia, please use WB:RFI (requests for importation) to bring the material over in compliance with the GFDL.
 * If you're an instructor and plan on using Wikibooks for a class project, see Guidelines for class projects
 * Please say hello at the Staff Lounge with any questions or ideas.
 * Eventually, you might want to read the Manual of Style and Policies and Guidelines.
 * Please take a look at Naming policy before starting a new book.
 * Remember to maintain a Neutral point of view.
 * Explore, be bold in editing pages, and have fun!

You will find more resources in Community Portal. If you want to ask a question, visit the Study help desk, the Staff lounge, IRC channel or ask me personally on my talk page. For site news, see the Bulletin board. It might be a good idea to add this page to your "watchlist" so that you can see when any new information is posted there. You can do that by clicking the tab labeled "watch" at the top of the page.

Good luck! --Panic 04:08, 11 October 2007 (UTC)

title: User talk:Ptauriki


text:
Talk:A Textbook of Community Medicine/History of Community Medicine

I am the copyright holder


text:
XForms/Template

Motivation
Why are you creating this example? Should start with "You want to..."

Screen Image
A sample screen image. Many people do not have the ability to run the examples so this is critical.

Use this format:

Make SURE you label all images with a license. Please use creative commons share alike with attribution if you can.

Sample Code

 * Please make the default namespace xhtml.
 * Please use the xf as the namespace prefix for all XForms elements.
 * Use spaces to indent, not tabs. Wikimedia and browsers use different setting for tab-stops.  This can not be changed.
 * Wrap your source code using the source element to give the code syntax highlighting:

Sample XForms Template
   Message:

Auto navigation macro
Please place the following macro at the end of each example:

This allows readers to just page through the examples without using the back button.

Discussion
Some analysis of the more difficult or unusual sections of the example. Any long complex XPath expressions should be explained on a step-by-step basis.

Credits
Make sure you give credits to other examples that people have done. Our license is Sharealike with Attribution so we want to also give other developers attribution if they started some examples. Give a URL to the original author's code if you can.

title: XForms/Template


text:
Template:Adventist Youth Honors Answer Book/Series & Skill Level

Skill Level  Honors
 category=Adventist Youth Honors Answer Book/ category=Adventist Youth Honors Answer Book/Skill Level order=ascending namespace=0

/Templates


text: User:Sjjupadhyay

title: User:Sjjupadhyay


text:
User talk:Mike.lifeguard/Archive 5

AWB run through what links here pages
Could you run AWB through all "what links here" pages of the templates located in Category:User warning templates and subst any use of the template on user talk pages? There are a lot of them. --dark lama  23:35, 3 October 2007 (UTC)
 * Good idea. In progress. – Mike.lifeguard  | talk 00:37, 4 October 2007 (UTC)

 * Not every single template in existence needs to be subst'ed. I rolled back some of your bot's subst of unsigned on pages I got in my watchlist, but there are probably a million other places unsigned is too used. --dark lama  18:04, 4 October 2007 (UTC)
 * I thought it made sense to substitute - should it not be? If there's some functionality that's broken by substituting it, I'll undo all those edits. I apologize if substituting that template was a mistake. Were any others substituted that should not have been? – Mike.lifeguard  | talk 20:46, 4 October 2007 (UTC)
 * I guess we disagree there. Thats the only one that I saw that I thought didn't need to be done and didn't serve any purpose in doing. I don't think its normally substited. I know I never have. --dark lama  21:35, 4 October 2007 (UTC)

Bot Flag
Just to let you know, i've given your bot an emergency flag for the duration of your job. Let me know when you are finished so I can take it off again. We can start a discussion on RFA about getting you the flag on a more permanent basis, especially now that we've seen a demonstration of what it is capable of. --Whiteknight (Page) (Talk) 01:29, 4 October 2007 (UTC)
 * Sure thing. – Mike.lifeguard  | talk 01:32, 4 October 2007 (UTC)

 * Thanks! you did a good job tonight, you and your bot are a formidable team! When are you going to get back to work? If there is a lot more to do and you intend to get back to it soon, maybe you should keep the flag for a little bit longer. No sense cluttering the logs unnecessarily if you are just going to be getting it back anyway. --Whiteknight (Page) (Talk) 02:09, 4 October 2007 (UTC)
 * I'll probably finish tomorrow afternoon after my tutorial. I'll keep it till after that run than? – Mike.lifeguard  | talk 04:00, 4 October 2007 (UTC)

Got time for another run on WV?
A bigger one this time :).
 * 1) Following v:Category:BCP/SEPA/1, please replace with
 * 2) Following v:Category:BCP/SEPA/3, please replace with
 * 3) Following v:Category:BCP/SEPA/4, please replace with
 * 4) Following v:Category:BCP/SEPA/5, please replace with
 * 5) Following v:Category:BCP/SEPA/6, please replace with
 * 6) Following v:Category:BCP/SEPA/7, please replace with
 * 7) Following v:Category:BCP/SEPA/8, please replace with
 * 8) Following v:Category:BCP/SEPA/9, please replace with

The templates are currently set to re-categorize all those pages into v:Category:BCP/SEPA/temp, so you can track progress by checking to see if the numbered categories are empty.
 * 1) Following v:Category:BCP/SEPA/GP, please replace with
 * 2) Following v:Category:BCP/SEPA/NP, please replace with
 * 3) Following v:Category:BCP/SEPA/IP, please replace with

(There are no plants in v:Category:BCP/SEPA/2, and v:Category:BCP/SEPA/10 already uses a template)

I'll be mostly AFK for the next few days, so if there's a problem, I might take a bit to get back to you. Thanks in advance! -- SB_Johnny | PA! 10:55, 5 October 2007 (UTC)
 * ✅ – Mike.lifeguard  | talk 00:47, 6 October 2007 (UTC)

query notice
I like it Mike but could we make the name shorter? I can type qr-em blindfold but maybe not a longer one!! Cheers -- Herby talk thyme 15:55, 6 October 2007 (UTC)
 * Feel free to rename leaving a redirect, or create a redirect from whatever you want. I prefer things that are easy to remember, which usually means full words. – Mike.lifeguard  | talk 15:57, 6 October 2007 (UTC)

Deleted?
Hello. I'm sorry if I am bugging you, but why was "Skateboarding" deleted? I don't see how that is not suitable for Wikibooks. Fruit Boy 01:19, 7 October 2007 (UTC)
 * It certainly doesn't look like a topic that could ever form a textbook. I've restored it for you; please lay out the organizational structure of the book to clarify it's scope, audience etc. Please review WB:WIW to guide the process so you can create a textbook as opposed to an encyclopedia article. – Mike.lifeguard  | talk 01:40, 7 October 2007 (UTC)

copyright problems...
hi, I got a few mails from you concerning copyright problems of some pictures I uploaded on: http://en.wikibooks.org/wiki/Cognitive_Psychology_and_Cognitive_Neuroscience/Reasoning_and_Decision_Making

I just changed the picture information of the pictures and I hope this is allright now. please write me back if there are still problems with any of the pictures on this site...thank you. —The preceding unsigned comment was added by Maltewoest (talk • contribs) 12:43, October 7, 2007.

Same book as mentioned above: Thanks a lot for changing the image into a wikitable.... I didn't know how to do that. Nevertheless, we also got a "permission" by the Author of the book we refer to, although he does not hold the copyrights. greets Jherding 15:36, 13 October 2007 (UTC)
 * FYI: Permission must come from the copyright holder. If you need other images of text converted to tables etc. just let me know. Also, if any images with unknown license information get deleted, leaving redlinks in your book, that were text, please let me know so I can rebuild the content. – Mike.lifeguard  | talk 15:41, 13 October 2007 (UTC)

ETC
Might be a class project I think - cheers -- Herby talk thyme 18:00, 7 October 2007 (UTC)
 * Thx. I'll keep an eye on it & will give some extra time – Mike.lifeguard  | talk 18:02, 7 October 2007 (UTC)

Re:mbox
Fixed the problem through a little sluthing. On wikiversity, the "metadata" CSS class was defined as "display: none" To solve the problem, i simply removed the metadata class from the template. Should work fine now, but you may want to double-check that all the images used by the template are properly uploaded to wikiversity (or new images be specified). --Whiteknight (Page) (Talk) 02:56, 8 October 2007 (UTC)
 * Yes, images were next on my list to check. Thanks for the debug. – Mike.lifeguard  | talk 02:58, 8 October 2007 (UTC)

Re:Image
No, i never was able to get concrete information about this particular image. Here is what I do know: The image was licensed for use in the online ebook. Before being donated to Wikibooks, I told the owners of that ebook to ensure all text and images were released under a suitable license. They told me this has happened, and they uploaded the text and images. However, I have not received any "evidence" that this particular image has been released by it's author for use on Wikibooks (especially since this same image is listed as being copywritten on another website). I dont know what to make of it, we could assume it is properly licensed (which it very well may be), or we can assume it is not licensed because we have no proof of it. --Whiteknight (Page) (Talk) 20:42, 10 October 2007 (UTC)
 * Well it's not being used anyways, so I'm deleting it. If it is licensed appropriately, they can re-upload it with the info. – Mike.lifeguard  | talk 20:44, 10 October 2007 (UTC)

What do you mean?
Are you saying I should put more on the page before submitting it? What do you mean? I don't exactly understand "big words" yet. —The preceding unsigned comment was added by Fruit Boy (talk • contribs) 22:15, October 10, 2007.
 * I deleted it initially because it's not a textbook, and I don't think it ever will be. As it stands now, it could be speedily deleted. Please give an organizational structure (outline) for the book so I know whether what you're planning fits within project scope. This is all explained on your talk page already, and uses no "big words." Please remember to sign your posts with 4 tildes ( ~ ) – Mike.lifeguard  | talk 01:18, 11 October 2007 (UTC)
 * Sorry, I contribute to wikiHow, so It's hard getting used to the way everyone contributes here. But I think I understand it now. Fruit Boy 18:09, 13 October 2007 (UTC)

Next victims... :)
It's New Hampshire's turn... the templates are turning out to be much better than the categories. Not as many months or plants this time, but here's the list: I'll turn off the categorization in the templates for now so the bot doesn't get false positives. You can check results using v:Category:BCP/Flora of New Hampshire. Thanks again!
 * 1) Following v:Category:BCP/NHAMP/7, please replace with
 * 2) Following v:Category:BCP/NHAMP/8, please replace with
 * 3) Following v:Category:BCP/NHAMP/9, please replace with
 * 4) Following v:Category:BCP/NHAMP/10, please replace with

BTW, I'll flag your account here now (as bot, not as sysop), as there don't seem to be any strong objections. -- SB_Johnny | PA! 09:06, 11 October 2007 (UTC)
 * Thanks. This will have to wait till later today; I have an exam I need to cram for :P – Mike.lifeguard  | talk 14:37, 11 October 2007 (UTC)
 * ✅ - I needed a break. Please double-check BCP/Hamamelis virginiana & BCP/Prunella vulgaris, as I did those by hand. – Mike.lifeguard  | talk 15:55, 11 October 2007 (UTC)

Wikimedia How To Book
Hello Mike.lifeguard!

Thanks for your help, but I think that you misunderstood me.

I was trying to make a clever subtitle to clarify my meaning, but obviously it didn't work.

I was making a request for a wikibook about advanced template usage. Yes I know that you have a page on this topic. I was asking for a book because it is a different format than a wiki and I thought that it would be easier to understand than to surf for content.

However if it isn't in Wikibook's policy to make wikibooks about wikimedia, then forget about it. Thanks RH Rozzychan 21:48, 11 October 2007 (UTC)
 * I did misunderstand you. We have a book here you may be interested in contributing to. – Mike.lifeguard  | talk 22:00, 11 October 2007 (UTC)

Hardcore vandals
If someone is leaving swastikas all over the place, please block them indef. That guy hit a number of other projects too... your friendly neighborhood checkusers are on the prowl now. -- SB_Johnny | PA! 00:02, 12 October 2007 (UTC)
 * Only too happy to do just that! – Mike.lifeguard  | talk 00:03, 12 October 2007 (UTC)
 * OK. Keep in mind that if someone obviously knows what they're doing and is up to no good, it's better to just be rid of them. Not that they won't be back shortly with another account, but you'd feel awfully silly if someone came back from a brief block and went at it again :). When it's an attack account like that, you might also want to send an email to me or herby for cross-wiki tracking. -- SB_Johnny | PA! 00:15, 12 October 2007 (UTC)
 * Sure thing. As well, would you educate me on the open proxies thing at meta? I see these links all over the block logs, but the page linked doesn't really explain anything useful. – Mike.lifeguard  | talk 00:17, 12 October 2007 (UTC)

I would suggest reading WB:DWV to understand when it may be a good idea to block indef or not. --dark lama  00:20, 12 October 2007 (UTC)

UNDP-APDIP images
I do not have permission notification to provide you regarding the popealien image. However, as per my discussion with Whiteknight, he placed a message in my user profile that enables me to upload information using the Creative Common Attributes license. I believe this would enable me to use the copyright image as the publications are the property of the owner (i.e. UNDP-APDIP)? Thanks. —The preceding unsigned comment was added by Sjjupadhyay (talk • contribs) 23:29, October 11, 2007.
 * That declaration is fine. I'll undelete the image imminently. – Mike.lifeguard  | talk 02:31, 12 October 2007 (UTC)

Categorization Script
I see you're trying out my categorization script. All my scripts are works in progress, so let me know if there is a problem, or a missing feature, or anything else. --Whiteknight (Page) (Talk) 14:17, 12 October 2007 (UTC)
 * The only thing I can think of (which may or may not be possible/feasible) is to create a tool to put books onto Subject: pages. It would have to run off a list of current pages in that namespace somehow, so you don't try to put it on nonexistent pages. You'd choose a top-level subject, then follow it down into the hierarchy (along multiple paths, since many/most books belong on multiple Subject: pages) and choose pages for it to show up on. Then the output would be, which can then get added to the bottom of the book page. – Mike.lifeguard  | talk 15:25, 12 October 2007 (UTC)

User block
Looking around Mike you may want to make that indef. Vandal source across wikis and accounts created on books before for vandalism - up to you - cheers -- Herby talk thyme 17:09, 12 October 2007 (UTC)

Blocking guideline
You should publicize the vote on the Reading Rooms and change the required pages to mirror the new status of the proposal, by moving to enforce I take it you wish to make the guideline a policy (you should probably word it clearly). I have added information on the version you are moving to enforce on the talk page. --Panic 17:56, 12 October 2007 (UTC)
 * Thanks for the reminder. I added a notice at WB:BB. This is a proposed guideline, and, if enforced, would be a guideline (not a policy) as is clearly stated in the template on page's title and in my move to enforce. – Mike.lifeguard  | talk 18:06, 12 October 2007 (UTC)

 * See Policies and guidelines/Vote also... It would have been probably more productive ,if you had asked first for any objection before starting the pool again. I haven't checked yet your changes yet, did you address some of the points raised earlier ? (I voted in favor last time)   --Panic 18:26, 12 October 2007 (UTC)

 * Yes, I saw that. That's why I took a look at the proposed guideline, made 1 minor change and moved to enforce it. I think all the concerns have already been addressed on the talk page, including those in the archive. The only outstanding issue I could envision being a sticking point is that of sock puppets. In that case, there seems to be a consensus that a)this is a guideline, so there's room for leeway and b)blocking would apply to bad faith sockpuppets of the type mentioned - those used for astroturfing, evading blocks, violating policies or guidelines in some other way. As well, the wording on "be bold" seems reasonably clear - blocking is not a place to be bold. Admins should not change another admin's block with the usual exceptions. Finally, a guideline on cross-wiki vandalism was added, which addresses the issue nicely, IMHO. I'd rather see discussion of the proposal take place on it's talk page instead of here, however. If you have concerns with it, make them known in the appropriate location. – Mike.lifeguard  | talk 18:36, 12 October 2007 (UTC)

 * Even if you don't intent to use the other location, shouldn't you indicate more or less the same information (especially the very important end date for the voting) ? --Panic 19:27, 12 October 2007 (UTC)
 * What end date? – Mike.lifeguard  | talk 19:29, 12 October 2007 (UTC)
 * For the pool and confirming the outcome... --Panic 19:35, 12 October 2007 (UTC)

reset I assume you mean that there should be some particular end date for voting and discussion? I don't think that's the case. If you like, add some end date, but I intend to discuss and make changes toward achieving consensus until we succeed or fail - not until some arbitrary deadline. Decision making makes no mention of deadlines, so I see no need. – Mike.lifeguard  | talk 19:39, 12 October 2007 (UTC)

 * It is not so black and white. But check out the the previous votes to see how we have done them so far, setting a limiting date is useful to determine non opposition or force people to get involved and take action if the decission is pending against their wishes. --Panic 19:45, 12 October 2007 (UTC)
 * Then be bold. – Mike.lifeguard  | talk 19:46, 12 October 2007 (UTC)
 * Done. --Panic 19:59, 12 October 2007 (UTC)

Image:Game theory.JPG
I don't understand, what do you expect me to do with these images? --Derbeth talk 10:40, 13 October 2007 (UTC)
 * You had restored them so license info could be added "to create a free-licensed equivalent". I wanted to double-check with you before deleting them. – Mike.lifeguard  | talk 15:14, 13 October 2007 (UTC)
 * I have just deleted them. User, who wanted to create such equivalents, hasn't made any edits for a long time. --Derbeth talk 09:25, 14 October 2007 (UTC)

Poor little lost Gregorovitch
Read the note on Withinfocus' page. I've marked that speedy, and am now in the process of creating a real page in the Muggles' Guide for Gregorovitch. Chazz (talk) 18:59, 13 October 2007 (UTC)

title: User talk:Mike.lifeguard/Archive 5


text:
Java Persistence/Embeddables

=Embeddables=

In an application object model some objects are considered independent, and others are considered dependent parts of other objects. In UML a relationship to a dependent object is considered an aggregate or composite association. In a relational database this kind of relationship could be modeled in two ways, the dependent object could have its own table, or its data could be embedded in the independent object's table. Which is another word to say the dependent data is included in the independent object's table.

In JPA a relationship where the target object's data is embedded in the source object's table is considered an embedded relationship, and the target object is considered an Embeddable object. Embeddable objects have different requirements and restrictions than Entity objects and are defined by the  annotation or   element.

An embeddable object cannot be directly persisted, or queried, it can only be persisted or queried in the context of the source object in which it is embedded. An embeddable object does not have an id or table. The JPA spec does not support embeddable objects having inheritance, although some JPA providers may allow this. Relationships from embeddable objects are supported in JPA 2.0.

Relationships to embeddable objects are defined through the  annotation or   element. The JPA 2.0 spec also supports collection relationships to embeddable objects.

Example of an embedded relationship XML
=Advanced=

Embedding more than one Instance of the same embeddable Type
Instances of an embeddable object can be embedded in the same parent entity more than once. However, without additional measures this creates a naming conflict, because it would require to have two or more columns with the same name in a table, which is not possible. The columns of all (except one of) the embedded instances of the same type need to be renamed to ensure unique column names. This renaming is done through the @AttributeOverride annotation, the  element, the @AssociationOverride annotation, or the   element.

 * @AttributeOverride is used to rename a basic mapping.
 * @AssociationOverride is used to rename the mapping for an entity relationship.
 * For example, @AssociationOverride is needed for an attribute in the embeddable class which is a @ManyToOne relation or a @OneToOne relation. I.e. when the embeddable class holds a foreign key.

@AttributeOverride and @AssociationOverride annotations are grouped together with @AttributeOverride s and @AssociationOverride s annotations respectively (note the plurals).

Sharing
An embeddable object can be shared between multiple classes. Consider a  object, that both an   and a   contain. Both  and a   have their own tables, with different column names that they desire to store their name in. Embeddables support this through allowing each embedded mapping to override the columns used in the embeddable. This is done through the @AttributeOverride annotation or  element.

Note that an embeddable cannot be shared between multiple instances. If you desire to share an embeddable object instance, then you must make it an independent object with its own table.

Embedded Ids
An  is an embeddable object that contains the   for an entity.

See: Embedded Id

Nulls
An embeddable object's data is contained in several columns in its parent's table. Since there is no single field value, there is no way to know if a parent's reference to the embeddable is. One could assume that if every field value of the embeddable is, then the reference should be  , but then there is no way to represent an embeddable with all   values. JPA does not allow embeddables to be, but some JPA providers may support this.

 * TopLink / EclipseLink : Support an embedded reference being .  This is set through using a   and the     API.

 * Hibernate : When loading an entity, embedded references are set to  if all of the columns in the embeddable are null.

Nesting
A nested embeddable is a relationship to an embeddable object from another embeddable. The JPA 1.0 spec only allows  relationships in an embeddable object, so nested embeddables are not supported, however some JPA products may support them. Technically there is nothing preventing the  annotation being used in an embeddable object, so this may just work depending on your JPA provider (cross your fingers).

JPA 2.0 supports nested embeddable objects.

 * TopLink / EclipseLink : Support embedded mappings from embeddables. The existing   annotation or   element can be used.

A workaround to having a nested embeddable, and for embeddables in general is to use property access, and add get/set methods for all of the attributes of the nested embeddable object.

Inheritance
Embeddable inheritance is when one embeddable class subclasses another embeddable class. The JPA spec does not allow inheritance in embeddable objects, however some JPA products may support this. Technically there is nothing preventing the  annotation being used in an embeddable object, so this may just work depending on your JPA provider (cross your fingers). Inheritance in embeddables is always single table as an embeddable must live within its' parent's table. Generally attempting to mix inheritance between embeddables and entities is not a good idea, but may work in some cases.

 * TopLink / EclipseLink : Support inheritance with embeddables. This is set through using a   and the.

Relationships
A relationship is when an embeddable has a  or other such mapping to an entity. The JPA 1.0 spec only allows  mappings in an embeddable object, so relationships from embeddables are not supported, however some JPA products may support them. Technically there is nothing preventing the  annotation or other relationships from being used in an embeddable object, so this may just work depending on your JPA provider (cross your fingers).

JPA 2.0 supports all relationship types from an embeddable object.

 * TopLink / EclipseLink : Support relationship mappings from embeddables. The existing relationship annotations or XML elements can be used.

Relationships to embeddable objects from entities other than the embeddable's parent are typically not a good idea, as an embeddable is a private dependent part of its parent. Generally relationships should be to the embeddable's parent, not the embeddable. Otherwise, it would normally be a good idea to make the embeddable an independent entity with its own table. If an embeddable has a bi-directional relationship, such as a  that requires an inverse   the inverse relationship should be to the embeddable's parent.

A workaround to having a relationship from an embeddable is to define the relationship in the embeddable's parent, and define property get/set methods for the relationship that set the relationship into the embeddable.

Example of setting a relationship in an embeddable from its parent
One special relationship that is sometimes desired in an embeddable is a relationship to its parent. JPA does not support this, but some JPA providers may.

 * Hibernate : Supports a  annotation in embeddables to define a relationship to its parent.

A workaround to having a parent relationship from an embeddable is to set the parent in the property set method.

Collections
A collection of embeddable objects is similar to a  except the target objects are embeddables and have no. This allows for a  to be defined without a inverse , as the parent is responsible for storing the foreign key in the target object's table. JPA 1.0 did not support collections of embeddable objects, but some JPA providers support this.

JPA 2.0 does support collections of embeddable objects through the  mapping. See, ElementCollection.

 * EclipseLink (as of 1.2) : Supports the JPA 2.0  mapping.

 * TopLink / EclipseLink : Support collections of embeddables. This is set through using a   and the.

 * Hibernate : Supports collections of embeddables through the  annotation and JPA 2.0   mapping.

 * DataNucleus : Supports the JPA 2.0  mapping.

Typically the primary key of the target table will be composed of the parent's primary key, and some unique field in the embeddable object. The embeddable should have a unique field within its parent's collection, but does not need to be unique for the entire class. It could still have a unique id and still use sequencing, or if it has no unique fields, its id could be composed of all of its fields. The embeddable collection object will be different than a typical embeddable object as it will not be stored in the parent's table, but in its own table. Embeddables are strictly privately owned objects, deletion of the parent will cause deletion of the embeddables, and removal from the embeddable collection should cause the embeddable to be deleted. Embeddables cannot be queried directly, and are not independent objects as they have no.

Querying
Embeddable objects cannot be queried directly, but they can be queried in the context of their parent. Typically it is best to select the parent, and access the embeddable from the parent. This will ensure the embeddable is registered with the persistence context. If the embeddable is selected in a query, the resulting objects will be detached, and changes will not be tracked.

Example of querying an embeddable
/Mapping

title: Java Persistence/Embeddables


text:
User:AdamStevenson

This is my talk page. To email me, send an email to a(dot)l(dot)stevenson(at)gmail(dot)com.

title: User:AdamStevenson


text:
MINC/Tutorials/Programming04

Writing a minc volume to file, with an aside on slice scaling
The code in this tutorial reads a MINC file, adds 1 to every voxel, and then writes the modified volume back to file.

Two notes before getting to the code: (1) this will overwrite the file passed as the first argument, so be careful if you actually try the code, and (2) this is a slow way of accomplishing the task - see the next tutorial for a much more sensible way of accomplishing the same goal.

On to the code:

Nothing new up to this point - the variables are declared, the volume is read (though note the second argument to miopen_volume - it now allows for both reading and writing of this volume).

Here the first new minc function crops up: miget_slice_scaling_flag. It performs a very simple operation, asking whether the volume uses slice scaling or global scaling, placing the output into the boolean type miboolean_t.

Scaling is one of the key concepts in MINC, and is introduced here: MINC/Tutorials/Tutorials01 (scroll down to the data-types section). Our program needs to know whether slice scaling is being used for the following reason: the range represented in the volume is usually set to follow the actual range of values present in the volume. This means that if we increment all voxels by 1, we have to make sure that the range of values allowed in the volume is updated as well. As you will see below, updating the range is different depending on whether the scaling is set for the global volume or independently for every slice.

On to more source code:

We obtain the dimension sizes once again ...

... and then proceed to the first part of the scaling issue. If there is no slice scaling, we just need to change the global scaling, which is done by getting the volume maximum using miget_volume_max, and setting it to the previous max+1 using miset_volume_max. There are similar functions for volume_min, which we could reasonably have updated here as well.

This is the core of the code - we loop over all voxels using dimension size information to know when to terminate each loop, get the real value at each voxel, increment it by one, and write it back to the volume using miset_real_value. The first dimension is the slice dimension - so if this volume uses slice scaling we get the slice maximum using miget_slice_max, increment it by one and write it back using miset_slice_max.

Once we've looped over all voxels we close the volume using miclose_volume. And that's it, we're done. The file read in as the first argument should now have all of its values incremented by one. Keep in mind that this was the slow way of doing it - see the next tutorial for a much more sensible version.

title: MINC/Tutorials/Programming04


text:
Template:Genetics/Exercise

EXERCISE • •

SOLUTION • •

Genetics/Exercise

title: Template:Genetics/Exercise


text: User talk:208.122.85.217

title: User talk:208.122.85.217


text:
User talk:84.178.246.80

– Mike.lifeguard  | talk 17:01, 11 October 2007 (UTC)

title: User talk:84.178.246.80


text:
User:Prince Kassad~enwikibooks

m:wikt:User:Prince Kassad

title: User:Prince Kassad~enwikibooks


text:
User talk:Prince Kassad~enwikibooks

Come introduce yourself at the new users page. If you have any questions, you can ask there or contact me personally.– Mike.lifeguard  | talk 17:53, 11 October 2007 (UTC)

Deletions
Your deletion of Technology Integration In K12 Education/Technology in Early Childhood and similar pages might be worth a second look... I think you'll find these could be class project pages with a stub ("write here") created by the facilitator or teacher. Just something to watch out for next time. Thanks. QU TalkQu 23:37, 24 November 2010 (UTC)
 * Actually, this very page was already deleted before by another sysop with a similar text, so I felt safe in this regard. -- Prince Kassad (talk) 15:52, 25 November 2010 (UTC)

Your account will be renamed
Hello,

The developer team at Wikimedia is making some changes to how accounts work, as part of our on-going efforts to provide new and better tools for our users like cross-wiki notifications. These changes will mean you have the same account name everywhere. This will let us give you new features that will help you edit and discuss better, and allow more flexible user permissions for tools. One of the side-effects of this is that user accounts will now have to be unique across all 900 Wikimedia wikis. See the announcement for more information.

Unfortunately, your account clashes with another account also called Prince Kassad. To make sure that both of you can use all Wikimedia projects in future, we have reserved the name Prince Kassad~enwikibooks that only you will have. If you like it, you don't have to do anything. If you do not like it, you can pick out a different name.

Your account will still work as before, and you will be credited for all your edits made so far, but you will have to use the new account name when you log in.

Sorry for the inconvenience.

Yours, Keegan Peterzell Community Liaison, Wikimedia Foundation 23:37, 17 March 2015 (UTC)

Renamed
 This account has been renamed as part of single-user login finalisation. If you own this account you can |log in using your previous username and password for more information. If you do not like this account's new name, you can choose your own using this form after logging in: . -- Keegan (WMF) (talk) 05:23, 19 April 2015 (UTC)

title: User talk:Prince Kassad~enwikibooks


text:
User talk:Xaven~enwikibooks

Welcome message
Hello, and welcome to Wikibooks!

Here are some tips to help you get started:
 * To learn the wiki-markup-language syntax, see Help:Editing.
 * You should sign your name on Talk and vote pages using four tildes, like this: ~~~~
 * There is a box at the top of the edit window that will insert this, too; it looks like part of a signature.
 * Remember to conduct any editing experiments in the sandbox.
 * You can tell the community something about yourself in your userpage.
 * You can get to this page by clicking the tab at the top of the page labeled with your registered username.
 * If you are a Wikipedian, see Wikibooks for Wikipedians for a primer on how things work here (it's a little different).
 * If you want to base your work here on materials from Wikipedia, please use WB:RFI (requests for importation) to bring the material over in compliance with the GFDL.
 * If you're an instructor and plan on using Wikibooks for a class project, see Guidelines for class projects
 * Please say hello at the Reading Room with any questions or ideas.
 * Eventually, you might want to read the Manual of Style and Policies and Guidelines.
 * Please take a look at Naming policy before starting a new book.
 * Remember to maintain a Neutral point of view.
 * Explore, be bold in editing pages, and have fun!

You will find more resources in Community Portal. If you want to ask a question, visit the Study help desk, the Staff lounge, IRC channel or ask me personally on my talk page. For site news, see the Bulletin board. It might be a good idea to add this page to your "watchlist" so that you can see when any new information is posted there. You can do that by clicking the tab labeled "watch" at the top of the page.

Good luck! --Panic 17:53, 11 October 2007 (UTC)

Your account will be renamed
Hello,

The developer team at Wikimedia is making some changes to how accounts work, as part of our on-going efforts to provide new and better tools for our users like cross-wiki notifications. These changes will mean you have the same account name everywhere. This will let us give you new features that will help you edit and discuss better, and allow more flexible user permissions for tools. One of the side-effects of this is that user accounts will now have to be unique across all 900 Wikimedia wikis. See the announcement for more information.

Unfortunately, your account clashes with another account also called Xaven. To make sure that both of you can use all Wikimedia projects in future, we have reserved the name Xaven~enwikibooks that only you will have. If you like it, you don't have to do anything. If you do not like it, you can pick out a different name.

Your account will still work as before, and you will be credited for all your edits made so far, but you will have to use the new account name when you log in.

Sorry for the inconvenience.

Yours, Keegan Peterzell Community Liaison, Wikimedia Foundation 23:52, 17 March 2015 (UTC)

Renamed
 This account has been renamed as part of single-user login finalisation. If you own this account you can |log in using your previous username and password for more information. If you do not like this account's new name, you can choose your own using this form after logging in: . -- Keegan (WMF) (talk) 05:39, 19 April 2015 (UTC)

title: User talk:Xaven~enwikibooks


text:
User talk:SRoiXIV

Come introduce yourself at the new users page. If you have any questions, you can ask there or contact me personally.– Mike.lifeguard  | talk 18:04, 11 October 2007 (UTC)

title: User talk:SRoiXIV


text:
User talk:Bluebell123

Come introduce yourself at the new users page. If you have any questions, you can ask there or contact me personally.– Mike.lifeguard  | talk 18:05, 11 October 2007 (UTC)

title: User talk:Bluebell123


text:
User talk:Bluekangaroo~enwikibooks

Come introduce yourself at the new users page. If you have any questions, you can ask there or contact me personally.– Mike.lifeguard  | talk 18:06, 11 October 2007 (UTC)

Your account will be renamed
Hello,

The developer team at Wikimedia is making some changes to how accounts work, as part of our on-going efforts to provide new and better tools for our users like cross-wiki notifications. These changes will mean you have the same account name everywhere. This will let us give you new features that will help you edit and discuss better, and allow more flexible user permissions for tools. One of the side-effects of this is that user accounts will now have to be unique across all 900 Wikimedia wikis. See the announcement for more information.

Unfortunately, your account clashes with another account also called Bluekangaroo. To make sure that both of you can use all Wikimedia projects in future, we have reserved the name Bluekangaroo~enwikibooks that only you will have. If you like it, you don't have to do anything. If you do not like it, you can pick out a different name.

Your account will still work as before, and you will be credited for all your edits made so far, but you will have to use the new account name when you log in.

Sorry for the inconvenience.

Yours, Keegan Peterzell Community Liaison, Wikimedia Foundation 22:59, 17 March 2015 (UTC)

Renamed
 This account has been renamed as part of single-user login finalisation. If you own this account you can |log in using your previous username and password for more information. If you do not like this account's new name, you can choose your own using this form after logging in: . -- Keegan (WMF) (talk) 04:40, 19 April 2015 (UTC)

title: User talk:Bluekangaroo~enwikibooks


text: User talk:155.239.144.239

title: User talk:155.239.144.239


text:
MINC/Tutorials/Programming05

Working with hyperslabs
The previous tutorial stepped through every voxel of a volume, added 1 to it, and wrote the output back to the same volume. Here we will improve on that example: the output will be written to a new volume, and we will use hyperslabs for the data processing.

A hyperslab is a central concept in minc. It allows you to pull an arbitrary (but contiguous) chunk of data out of a volume, do something to it, and write it back to the volume. This is a lot faster than individually getting each voxel; it does, however, require more memory.

So on to the example: this code takes a volume, creates a copy of it the same in every way except for adding 1 to each voxel. The new volume will also always use global scaling, regardless of whether the input had slice scaling or not.

So far, so good - none of this code should be new to you. Do note the creation of two new variables for the new volume and new dimensions.

Here we allocate memory for the dimensions of the new volume, and copy the dimension definitions from the old volume.

The memory for the hyperslab is allocated and the hyperslab obtained - in this case the hyperslab is the entire volume. The key function is miget_real_value_hyperslab, which takes five arguments: the minc volume handle, the type you want the data to be in, an array of starts (all zeroes in this case), an array of counts( the volume sizes), and the address of where to write the data.

And now we loop over every voxel in the hyperslab (note how it is dealt with as a one-dimensional array), making sure to keep the modified image min and max.

We then create the actual volume using micreate_volume. It takes seven arguments: the filename, the number of dimensions, an array of the actual dimensions (created through the copy operation above), the data type (set to unsigned byte here), the data class, special volume properties (set to NULL here), and the address of the volume handle.

Now we make sure that the data is created inside the minc volume handle using micreate_volume_image.

We then set the valid range - from 0 to 255 since this is unsigned byte data - and the volume range, which was determined by keeping track of the min and max when looping over voxels. The hyperslab is the placed back into the volume using miset_real_value_hyperslab, which takes the exact same arguments as miget_real_value_hyperslab.

And finally we close the volumes, free the allocated memory, and exit.

title: MINC/Tutorials/Programming05


text:
Cookbook:Lemon Rice

Lemon rice is a specialty of the South Indian coastal state of Tamil Nadu.

Ingredients

 * 4 cups cooked white rice
 * 1 tsp mustard seeds
 * 3 tbsp sesame oil (also called til/gingely oil or NaLEnnai)
 * 2 tbsp split peas
 * 2 tbsp groundnuts (peanuts)
 * ½ tsp asafoetida (heengh/perungayum)
 * 3–4 dry red chillies, broken into pieces
 * 4–5 curry leaves
 * 2 lemons, juiced, or 4 tbsp lemon concentrate
 * 1 tsp turmeric powder
 * ¾ tbsp salt

Procedure

 * 1) Heat the oil in a pan.
 * 2) Add groundnuts and split-peas, and fry until golden brown.
 * 3) Add mustard seeds, asafoetida, curry leaves, and red chillies. Wait until the mustard seeds sputter.
 * 4) Mix in a little salt, turmeric powder and lemon concentrate.
 * 5) Let it boil and reduce.
 * 6) Remove pan from stove, add to the rice, and mix well.

Notes, tips, and variations

 * Add a little oil to the raw rice before cooking it. This gives it a better texture.
 * Serve with potato chips or pickles.
 * 1 tsp sesame seeds can be roasted and added for more taste.

title: Cookbook:Lemon Rice


text:
MINC/Tutorials/Programming06

Hyperslabs part 2
Onto more hyperslabs: we will once again do the same trick of adding one to every voxel. We'll do it slightly differently: this time we will get and set the hyperslab at every slice, using much less memory. And, for even more mincy goodness, we will use slice scaling for the output.

This code is unchanged from the last tutorial.

This time we create the volume before we start messing with the actual data. We also set slice scaling using miset_slice_scaling_flag - note that this has to come before micreate_volume_image. The rest is the same as before.

The loop over the data has become more complicated. We now allocate data for a hyperslab big enough to hold one slice, and we reuse the same array for every slice. We then get the hyperslab for every slice, do the same manipulation of the voxels while keeping track of slice specific min and max, and set the slice range. Then we put the modified hyperslab into the new volume, and move on to the next slice.

And we finish up in the same way as before.

title: MINC/Tutorials/Programming06