text:
Ktorrent/introduction

Chapter 1. Introduction
KTorrent is an application for KDE which allows you to download files by making use of the BitTorrent protocol. It enables you to run multiple torrents at the same time and comes with extended features to make it a full-featured client for BitTorrent.

Key features of KTorrent include the following:

 * Queuing of torrents
 * Global and per-torrent speed limits
 * Previewing of certain file types (video and audio)
 * Importing of partially or fully downloaded files
 * File prioritization for multi-file torrents
 * Selective downloading for multi-file torrents
 * Kick/ban peers with an additional IP Filter dialog for list/edit purposes
 * UDP tracker support
 * Support for private trackers and torrents
 * Directory scanner to automatically load torrents from certain directories
 * Support for µTorrent's peer exchange
 * Support for protocol encryption (compatible with Azureus)
 * Support for creating trackerless torrents
 * Support for distributed hash tables (DHT, the Mainline version)
 * Support for UPnP to automatically forward ports on a LAN with dynamic assigned hosts
 * System tray integration
 * Tracker authentication support
 * Connection though a proxy

In addition to the built-in functionality, the following plug-ins are available for KTorrent:

 * Searching for torrent files with popular search engines
 * Web interface to support the control from a web browser
 * RSS to keep up with new released torrents
 * Bandwidth scheduling
 * IP Blocking filter
 * Infowidget which shows you seeders/leechers, a file selection part, webseed tab with edit functionality, chunks information and a trackers tab also with edit purposes.
 * Logviewer to get up with the protocol and networking messages

So you see KTorrent can be configured by enabling or disabling plug-ins which extend KTorrent. We hope these plug-ins will help provide freedom for our users. Experienced users but also new users should feel at home with KTorrent.

Our goal is to make KTorrent...(guys?)

If you are uncertain about something, or just have random questions, you may always submit a question on the KTorrent forums (http://ktorrent.org/forum/).

KTorrent's homepage can be found at http://ktorrent.org. You will also find some frequently asked questions on the web site and some packages for different GNU/Linux distributions.

Please report any problems or feature requests to the KDE Bug Tracking system (http://bugs.kde.org) or alternatively to the KTorrent forums (http://ktorrent.org/forum/).

We hope you will enjoy using KTorrent!

Would you like to make a comment or contribute an update to this page? Send feedback to the KDE Docs Team

title: Ktorrent/introduction


text: User:TrulyShruti

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

title: User:TrulyShruti


text:
XRX/Subset Generator

Motivation
You have multiple XML documents and you want the semantics and business rules for all the shared data elements to be driven from a single model.

Method
We will use two types of XML Schemas. A semantic schema or subset schema is a sequence of all of the elements of a document exchange including the meaning of the enumerated values of the elements. A constraint schema or exchange schema will import the semantic schema and include the document constraints such the order, grouping and what cardinality each of the elements in the document.

We will leverage many of the concepts of ISO/IEC 11179 metadata registry. We will use a single XQuery that takes in a wantlist and generates a semantic subschema from this registry. This assures that all leaf-level elements in a family of XML Schemas have consistent datatypes and precise semantic definitions that all refer back to the metadata registry. This automatic generation of structures from a central data model is known as model-driven design.

Background on Subset Generation
Subset generation techniques were first developed by the Georgia Institute of Technology in support of the GJXDM and NIEMstandards. The tools took the form of a web site that allowed a user to shop for data elements in the registry and keep a list of those data elements in a file called a wantlist. This wantlist was then used to generate a subset of the GJXDM system that is guaranteed to be consistent with the GJXDM. These tools were carried forward for use in the National Information Exchange Model as well as the Minnesota Department of Revenue subschema generators.

Method
A subset generator is part two of a three part process.

 * Step one: Use a metadata shopping cart to shop for data elements in your registry and to create a wantlist. A shopping cart tool with an integrated search function allows non-programmers to take an active role in schema creation.
 * Step two: is to generate a Subset Schema that conforms to the Liskov Substitution Principle using the wantlist generated in part one as the input.
 * Step three: Import that subset XML Schema into a Constraint Schema. This can be done my referencing the REST parameters to the wantlist directly in the import or it can be done by saving the subset into a discrete file.

Wantlist
A Wantlist is a simple enumeration of all the data elements you will place at leaf-elements in your XML Schema. Wantlists do not contain any cardinality (number for repetitions) or complex branch structures. They are much like the grocery list you take shopping in which the quantities of items are not specified.

GTRI Wantlist XML Schema

Sample Wantlist
The following is a sample wantlist generated from the US NIEM metadata shopping cart tool. Not only is the three-part property specified (ObjectClass, Property, Representation Term) but the isReference indicators are also available.

This wantlist can be saved from the web-shopping-cart tool to your local file system and then reloaded at a future date. In our example, any wantlist can be saved on the eXist server and passed as a parameter to a subset generator. This allows developers to reuse and version wantlists in addition to other XML Schema components.

XQuery Based Subschema Generator
This XQuery takes as a single argument a wantlist file name stored in a wantlist collection. It iterates through each element in the wantlist and generates the appropriate XML Schema types.

The format of the URL for the Query is:

[WEBSERVER]/db/wantlists/subset.xq?wantlist=WANTLISTNAME

In this case the .xml file extension can be omitted.

Using an XML Schema to validate your XForms
Some XForms systems allow you to use an XML Schema to validate your form. For example, with Orbeon forms you can do the following:

Back: Metadata Shopper • Next: XForms Generator

title: XRX/Subset Generator


text:
Ktorrent/bittorrent

Chapter 2. What is BitTorrent?
BitTorrent is a protocol allowing you to download files quickly by allowing other people downloading the file to upload (distribute) parts of it at the same time. BitTorrent is often used for distribution of very large and freely available files, as it is a lot cheaper, faster, and more efficient to distribute files using BitTorrent than a regular download.

For more information on the BitTorrent protocol visit the web site (http://www.bittorrent.org/introduction.html).

title: Ktorrent/bittorrent


text:
Ktorrent/download1

Chapter 3. How do I download files using BitTorrent?
Just like visiting a URL (e.g. kickass2.nz) to a web site and downloading a file, you will need a ".torrent file" (often referred to as a "torrent") to download content using BitTorrent. Most of the time, you will download torrent files from a web site, although you could also get the torrent from a friend or a CD. Many web sites offer torrents as an additional method of downloading files. For example, OpenOffice.org, a free office suite, can be downloaded using BitTorrent. Sites that offer torrent downloads are just repositories of torrents and usually do not actually create any of the content available. Once you have obtained the torrent file from wherever, you simply need to import it into your BitTorrent client. There are several ways of doing this with KTorrent.

Opening a New Torrent
There are several ways to open a torrent in KTorrent, depending on your computer's configuration. The following methods of opening a torrent file into KTorrent are listed— choose your preferred method.

 * Double-click the torrent file on the desktop (only works if .torrent files are associated with KTorrent), or…
 * Right-click the torrent file on the desktop, choose Open With, and select KTorrent in the list (if KTorrent is not listed, select Open with Other Application to locate where KTorrent is installed), or…
 * In KTorrent, click File, then Open… (or press CTRL+O) and locate the torrent file, or…
 * In KTorrent, click File, then Paste Torrent URL, paste the torrent URL into the text box and click OK.

Importing a Torrent With Existing Data (a partial download)

 * In KTorrent, click File, then Import Torrent. Fill in the Torrent: text box with the location of torrent file and fill the Data: text box with the location of the existing downloaded data.
 * Do it without the torrent importer and just open the torrent file in the folder of the partially downloaded data by any of the methods described in Opening a New Torrent. KTorrent will automatically recognize the existing downloaded data by file name and start rehashing the data to verify the data integrity.

title: Ktorrent/download1


text:
Chess Opening Theory/1. e4/1...c5/2. Nf3/2...d6/3. d4/3...cxd4/4. Qxd4

=Chekhover Sicilian= White captures the pawn with the Queen. This move is not uncommon among amateur players. Black has the possibility of playing Nc6 at some stage and if so White could pin it.

Theory table
.

1.e4 c5 2.Nf3 d6 3.d4 cxd4 4.Qxd4


text:
Ktorrent/configure

Chapter 4. Configuring KTorrent
So you have already read that KTorrent comes with plug-ins to enable or disable features. You can find the KTorrent preferences dialog by clicking Settings-> Configure KTorrent.

Queue Manager
Looking at the Downloads tab, you will find the section Queue Manager. Effectively, this section allows you to put a limit on the maximum number of active downloads or uploads when torrents are driven by the Queue Manager. The idea behind the Queue Manager is that it provides you a way to configure which torrent should start downloading (or uploading) after another torrent switches its status. Switching from a status can mean:
 * a torrent (automatically) switches from downloading to seeding
 * a torrent (automatically) switches from seeding to seeding completed
 * an active torrent driven by queue manager gets stopped manually by user interaction
 * an active torrent driven by queue manager gets removed from the queue manually to a user-driven state by the user

The Queue Manager always takes the torrent highest in queue when it starts another torrent. The queue manager is a nice tool to automatically start queued torrents, and while doing so, it gives you a method to dedicate your bandwidth on a few torrents. If you do not want to make use of the queue manager, you are free to disable it by setting the max uploads and max downloads to 0.

The queue manager threads two different torrents— torrents in user-driven state and torrents in queue manager driven state.

Every torrent in a user-driven state will be excluded by the restrictions of the Queue Manager, until the torrent is put back in queue manager state by the user. The benefit of user-driven torrents is that it is an easy way to go over the limit of maximum running torrents if you want.

While loading a torrent in KTorrent, it will start in the queue manager and be set to the lowest priority of torrents which are already in the queue.

If you manually stop the torrent, the torrent will get changed from queue-driven to user-driven and will be excluded from the max downloads/uploads limitation.

There are three ways of changing the state of a torrent:
 * open the Queue Manager, select the torrent to change, and select Controlled by Queue Manager or Controlled by User
 * right click a torrent and choose Enqueue/Dequeue
 * select a torrent and click the queue icon in the tool bar

There are also two possibilities to view whether a torrent is driven by Queue Manager or by the user:
 * open the Queue Manager and look in the column, Controlled By
 * clicking the icon Groups on the side panel to the left of the screen, and select the appropriate filter.

Preferences
The preferences section is where you can configure the main preferences of KTorrent.

Maximum connections per torrent
With max connections per torrent, you can set how many peers KTorrent will allow you to connect to per torrent.

Having too many established connections can make the response time on your internet connection a lot slower. For this reason, it is wise to have a limit for connections.

Normally, 45 to 65 maximum connections per torrent is enough for running a single torrent, though some people who have a fast connection can configure this higher (together with a higher number of upload slots and a higher upload speed). Note it is possible to have good results with setting the per torrent limit to a 25-35 range (this really depends on the overall speed and health of a swarm you are in).

In practice, you should see what works best for you. Do *NOT* assume high settings will automatically improve your download speeds. Speed is more dependent on the health of the swarm and your own upload behavior than the number of connections.

Maximum connections global
Global Connection Limit is a setting you can configure for the maximum number of peers KTorrent should connect to over all running torrents combined.

The same rules apply here as with the maximum number of connections per torrent above. Keep in mind that this setting ideally should be high enough for the amount of torrents you want to run, while still trying to avoid losing responsiveness of your internet connection or even worse— capping your own bandwidth.

Maximum upload rate
With Maximum Upload Rate, you can configure the maximum speed KTorrent should upload at. Generally, it is safe to set this somewhere at 85-90% of your upload ability. Depending on the quality of your internet connection, you can set this a little high, but if you set this too high, it might compromise your download speed.

Do not be confused if your configured maximum upload speed is not always reached. This is normal practice; when downloading with peer to peer technologies, the uploads and downloads always depend on the "peer", or other user connected (e.g. Maybe the other peer is already downloading at full speed, there might not be any peers to upload to, or maybe there are "leechers" (those who already have all the files completed they requested).

Maximum download rate
With maximum download rate, you can configure KTorrent's maximum download speed. This can be useful if you want to use a web browser while running KTorrent, or maybe there are other users on your LAN who would like to claim some of the bandwidth too.

Just like with the upload speed, the download speed will depend on the other side and overall health in the swarm.

Port
You can configure which port KTorrent should use to listen for incoming connections from other peers in the swarm.

Normally, it is okay to leave the port number as it is. Some internet providers however, do not like traffic on known p2p ports, and have either blocked them or made the use of these ports less comfortable in other ways. Because of this, there are trackers that have banned known p2p ports and only allow you to use other ports. It is advisable to read the FAQ section of the tracker so you know whether you need to change the ports. Ports which are generally OK to use are numbers in the range 49152 to 65535. This range is also known as unregistered, dynamic, and/or private. There are no known programs registered to use these ports, so anyone should be able to use these ports freely without having to worry whether another program has already been assigned to it.

BitTorrent connections are established in one direction only. That is, peer A only tries to connect to peer B once, and if it fails in doing so, peer A must wait until peer B announces others may connect.

Because of this mechanism of connecting in BitTorrent (not a flaw of the protocol!), there are two reasons why one should be connectable:

 * If two peers want to do business with each other, but both do not accept outside connections, they will find themselves not being able to share any data at all.

 * If peer A is accepting connections, loads a torrent, and tries to connect to a firewalled peer B, he/she would have to wait until peer B announces a free connection. Before data would be able to transfer, there would be time wasted. Of course, in that time you could potentially have had a re-transmission of data between the two.

It is advisable to forward your ports so others can connect easily. It improves the speed and health of a swarm.

UDP tracker port
The UDP tracker port is a port for the communication with trackers that support the UDP transmission protocol. Communicating with a tracker on the UDP protocol is more efficient, although the amount of trackers which support UDP is not that high. The torrent file should include an URL which looks like udp://tracker-url.com:port/announce, instead of the normal variant http://tracker-url.com:port/announce (used with TCP). The port for UDP trackers is the only port which does not need to be forwarded if you are located behind a router or software firewall.

Number of upload slots
You can set KTorrent to how many peers per torrent it requires to give away an upload slot. It is essential to not set this option too high or too low because if you, do your download speed will regress. Use the following two rules as a guide:

A. If you really can not upload a lot because of a bandwidth limitation, then try to keep the upload limit at least 12kbit/s with at least 2kbit/s per peer. This is recommended because you have to try and maintain a number of upload slots for other peers. The 2kbit/s minimum is to lower the chance that another peer will choke you, and 12kbit/s is to keep 6 peers happy.

B. If you have a larger upload bandwidth on your connection, it is generally good and logical to assign more speed per peer. This can improve the efficiency of the data flow in swarm, and it stimulates the peers you are uploading to give something back (they will be more interested in you due to your higher upload speed).

In practice, example B would start with raising the maximum upload speed setting while keeping the amount of upload slots the same. Then if you think you are uploading too much per peer, you can raise this number a little (i.e. 5000kbit/s maximum upload speed for 6 upload slots in a large swarm would not stimulate the swarm to upload to you, whereas if you would have set it to 20 upload slots).

Max share ratio
Max share ratio is a setting which is automatically applied to each torrent file you open in KTorrent. It tells KTorrent to automatically stop a completed torrent when it has reached a certain configured share ratio. This setting is useful if you do not want to upload too much data for a particular reason. An example of this would include a data limitation on your internet connection or if you prefer to distribute your share ratio over all seeding torrents as quickly as possible.

You can also configure the share ratio of each torrent separately. This can be done from the status panel, to the right of where it says max ratio.

Keep seeding after download is finished
This setting is enabled by default. Normally, you would not want to disable this setting, since BitTorrent is a sharing protocol. It is important that peers who have completed all the data they have requested keep seeding to a certain level. This option can be changed and is useful if you have a very low data limit for your internet connection.

Attention/forward port
You should forward your ports if your computer is located behind a router or firewall. Some users might not need to configure anything to ensure their port for BitTorrent is accepting connections. This is because some do not have a software firewall enabled or are not located behind any router.

How do I know whether my computer will accept BitTorrent connections?

Take a look at the log viewer panel and search for a message which says “Authentication(S) to 99.999.99.99 : ok”. If you can find one such message with the (S) behind authentication, peers are able to establish incoming connections. You can start downloading! If you can not find a single (S) in the log from the time you started the torrent and the first announce, you should forward your ports.

Port forwarding in a router can be done either by using NAT or the UPnP functionality inside the router. You can choose either, although UPnP might be easier if you are stationed in a LAN with dynamic IP address assignments. For the UPnP plug-in to work, you should first check your router documentation to check whether it is supported on your model. If it is supported, login to your router either by a web browser or by telnet and enable it before you load the UPnP plug-in of KTorrent. Check http://portforward.com and search for your router model if you do not know how to login to your router. This site tells you how to enable port forwarding from a router by using NAT as well, if you happen to choose the NAT method. Note that if you have chosen NAT and it is working correctly, you can disable the UPnP plug-in of KTorrent.

If you are unsure whether you are actually located behind a router, you can use the site http://whatismyip.com to find out and compare the IP address listed with your address from the output in the command ifconfig.

title: Ktorrent/configure


text:
Chess Opening Theory/1. Nf3/1...d5/2. g3

2. g3 - King's Indian Attack
White is most likely aiming to establish a King's Indian Attack. The idea is very similar to that of the King's Indian Defence as played by Black. The extra tempo enables White to take a more aggressive approach to the system.

Theory table
.

 * 1. Nf3 d5 2. g3


text:
Ktorrent/general

Folders
Here you can configure where KTorrent should store its files. These files can either be the torrent data you want to download, or the torrent settings and stats KTorrent keeps track of. Downloaded files and torrent profile files will have to be saved in their own folders.

The temporary folder is the folder where KTorrent stores a profile for each torrent which includes information such as the settings for file priority on a multi-file torrent, settings for which files you do not want to download, the torrent file for the torrent itself, and symlinks so that KTorrent knows where the data for a particular torrent should be saved.

The setting “automatically save downloads to” will effectively disable the dialog which requests you to choose a save location after you open a torrent.

System tray icon
The setting, show system tray icon, is for selecting whether you want to have an icon placed in the system tray while KTorrent is running. If you have enabled this option, it will change the function of the quit button from quitting program to only minimizing the window into the system tray. Clicking on the system tray icon will also display a menu to control some of KTorrent's settings. The system tray icon is useful for users who want quick access and control of torrents while using other programs.

The Show speed bar allows you to enable an additional bandwidth indicator on the system tray to easily monitor how fast your torrents are being uploaded and downloaded.

Show system tray pop-up messages is a useful option if you like passive messages to pop up when events such as a torrent getting completed, a torrent reaching its configured share ratio, or a chunk failing the hash test while uploading occur.

Custom IP
You can configure KTorrent to send a fixed IP address or hostname to the tracker. This is useful if you use a proxy.

DHT
Use DHT to get additional peers to enable or disable DHT globally. While using DHT, you can:

 * potentially find more peers for a torrent
 * make use of DHT as a second method for collecting peers, especially if a tracker goes down
 * run KTorrent with trackerless torrents

KTorrent respects the private flag inside torrent files and will automatically exclude private torrents from using DHT.

NOTE: DHT will increase the load on a router. If you are finding that your Internet is bogging down, you can disable DHT to increase the Maximum number of Downloads and Seeds available. The

Encryption
Encryption was introduced by the maintainers of two other BitTorrent clients after some ISPs decided to throttle their customers' internet connections. Throttling was introduced because some ISPs thought it would be a good idea if they could spare themselves costs generated by the use of the BitTorrent protocol. Encryption in BitTorrent was designed to obfuscate BitTorrent traffic so the detection of BitTorrent traffic, and therefore throttling of bandwidth, would fail. The encryption standard used in BitTorrent, RC4, is BY NO MEANS designed to make data secure. It was designed only to get around bandwidth throttling.

screen shot

KTorrent is able to establish both unencrypted and encrypted connections.

Even if your ISP is not throttling your connection, you still may find enabling encryption helps some peers to send data with a proper download bandwidth. Other peers may use BitTorrent applications that do not support encryption, and you will not be able to connect to them. You will need to experiment with the encryption settings to see what works best with the torrent you are trying to download.

title: Ktorrent/general


text: Talk:Chess Opening Theory/1. a3

title: Talk:Chess Opening Theory/1. a3


text:
Talk:Chess Opening Theory/1. Na3

By what metric is 1...d5 better than 1...e5?
I'm sure whoever added that information to the text (I have no idea who, they were an IP editor) had a perfectly logical reason for believing that it was true, but I don't know what that reason could be. As it stands, I'm led to believe the opposite is true.

I spent a while thumbing through different chess game databases. Lichess catalogues five master-level games with 1.Na3 e5 and three with 1.Na3 d5; of the former, White won one, drew two, and lost two, while of the latter, White won all three. The Chess Tempo database, using the set of all games, yields a significantly higher win rate for Black with 1...e5 than with 1...d5: Link. I also looked at Chess.com's database, which lists one game with 1.Na3 e5 (a draw) and nine games with 1.Na3 d5 (four wins for White, a draw, and four wins for Black), but I don't know how helpful that is.

Overall, the evidence seems to suggest that 1...e5 is significantly more successful than 1...d5. Something seems wrong here. ISaveNewspapers (discuss • contribs) 06:22, 27 November 2022 (UTC)

Nb1?
Is there any source for the section on the "Bensaid Variation"? I can find no evidence of this name, the game it is attributed to, or IM Isaac Bensaid. 96.5.246.62 (discuss) 16:36, 4 December 2023 (UTC)

 * The closest I could find to the "Gibraltar Masters 2013" is the Gibraltar Chess Festival 2015, which neither Maxime Vachier-LaGrave nor anyone named Isaac Bensaid attended. I also can find no games on chessgames.com where Na3 and Nb1 were played. I believe this entire section is a hoax. 96.5.246.62 (discuss) 15:34, 5 December 2023 (UTC)

title: Talk:Chess Opening Theory/1. Na3


text: Talk:Chess Opening Theory/1. c3

title: Talk:Chess Opening Theory/1. c3


text: Talk:Chess Opening Theory/1. d3

title: Talk:Chess Opening Theory/1. d3


text: Talk:Chess Opening Theory/1. e3

title: Talk:Chess Opening Theory/1. e3


text: Talk:Chess Opening Theory/1. f3

title: Talk:Chess Opening Theory/1. f3


text: Talk:Chess Opening Theory/1. h3

title: Talk:Chess Opening Theory/1. h3


text: Talk:Chess Opening Theory/1. Nh3

title: Talk:Chess Opening Theory/1. Nh3


text:
Talk:Chess Opening Theory/1. h4

We should write more about 1.h4. It is a great opening.

title: Talk:Chess Opening Theory/1. h4


text:
Ktorrent/advanced

Performance
You can configure some advanced options such as memory usage, interface refresh time, data verification options while uploading, and the type of service field for networking.

In the first row, the setting for memory assignment has options for low, medium, and high. These settings are profiles for how much RAM should be assigned for torrents as they download. It is generally safe to say most users with 512MB RAM will want to set this to medium or high, and users with more than 512MB RAM will want to set it to high. Higher memory usage will help when the chunk size of a torrent is 2MB and higher.

Interface refresh time is to configure how many milliseconds KTorrent should wait before it refreshes the statics display.

Data Checking
Data checking allows you to configure extra functionality which most other BitTorrent clients do not have. This functionality can be best described as an alternative to automated full rehashes on data when a download completes. It was introduced to KTorrent to allow the user to verify the data after a download completes, while trying to avoid the CPU intensive task a normal rehash on data takes. Basically, this feature will continuously verify every chunk a leecher requests on a torrent in uploading mode. Then if a chunk fails the hash verification test, it will be dropped and the torrent will revert to downloading mode to replace the corrupt data. It is recommended to use this feature, because it will continuously try to prevent uploading any bogus data into swarm.

The option Do a data integrity check after x corrupted chunks is an extra function on top of the normal data checking during upload mode. It is there if you want more aggressive prevention of uploading of bogus data.

Networking
I honestly don't know what to tell users about TOS guys, so this i will leave for you.

"Maximum number of connection setups:" identifies ??? and if set too high will bog down other traffic if your router can not handle the number of concurrent open connections it creates. If you are having general performance issues, try setting this number to "10."

title: Ktorrent/advanced


text:
Ktorrent/plugoptions

Plug-in Options
The plug-in tab allows you to load or unload one or more KTorrent plug-ins. As you load or unload plug-ins, configuration tabs are added or removed in the preferences dialog. If memory is an issue on your computer, disabling unused plug-ins will free memory.

title: Ktorrent/plugoptions


text:
Ktorrent/scanfolder

Scan Folder plug-in
The scan folder plug-in can monitor one or more directories for new torrent files to automatically load. One can use this plug-in to monitor any storage location, as long as the user account running KTorrent has read and write permissions to the location where the torrent file is saved.

There are three additional options for the user to choose from— open torrents silently, delete after downloading, and move to loaded directory.

The option Open Torrents Silently will remove the dialog which would normally request you to choose which files you want to download for a multi-file torrent. This option is useful if you want to upload a torrent from another computer with SSH in one of the configured paths and have KTorrent immediately load it.

The option Delete After Downloading is useful if you want to clean up the .torrent files once KTorrent has loaded them. If you like clean directories, you will love this option.

The option Move To Loaded Directory is an alternative to the previous option, of removing the torrent file. It makes an extra folder “loaded” in the monitored path and moves the loaded .torrent file there.

title: Ktorrent/scanfolder


text:
Ktorrent/logview

Log viewer plug-in
The log viewer tab has options to adjust the level of output in the log viewer panel. To adjust the logging output, you can choose from pre-defined profiles which can be set on any of the filters in system or plug-ins.

Use Rich Text For Log is a setting to make some messages to appear in gray. It can make the information inside the log viewer easier to read.

title: Ktorrent/logview


text:
Ktorrent/upnp

UPnP plug-in
The UPnP tab is to forward ports from a router to your computer. Use this option if peers are unable to establish connections to you.

If you do not have a router in use, you do not need to use this plug-in. If you use a router, you have the choice to use either NAT or UPnP. UPnP needs to be activated from inside your router before KTorrent's UPnP plug-in will work.

It is good to note that some users can not use UPnP because their router does not support it. If your router does not support UPnP, the only way for peers to connect to you is to use NAT.

Users without a router in their network do not have to make use of a method to establish port forwarding. Check to make sure your software firewall allows connections to the ports you want BitTorrent to use.

title: Ktorrent/upnp


text:
Ktorrent/iwidget1

Info widget
The info widget tab contains options that allow you to configure how much the info widget should be extended. The three options here extending the info widget panel with tabs for Status, Files, Peers, Chunk, and Trackers.

These last three can be disabled by using the check boxes in the screen shot above.

Users are free to prevent all tabs from displaying by disabling the info widget plug-in from the plug-in tab.

title: Ktorrent/iwidget1


text:
Ktorrent/search

Search plug-in
The search tab allows you to edit, remove, or add search engines to KTorrent. After you add your favorite torrent search engine, you can use the search panel (located to the left of the normal KTorrent interface) to search for torrents using your selected search engine.

The external browser section allows you to configure which browser should be opened by default when you do a search and Open External web browser is set. Use default browser will use your computer's default web browser.

title: Ktorrent/search


text:
Ktorrent/webinterface

Web interface plug-in
The configuration dialog for the web interface plug-in lets you configure if you want to be able to remotely control KTorrent or remotely monitor your download statics with a web browser.

The Port option allows you to configure which port KTorrent should listen to for incoming connections. You can use any port here as long as you know for sure no other program on your computer is (or will be) using it. As a safety precaution, use a port in the range 49152 to 65535.

Forward Port will forward the configured port by using the UPnP plug-in. If your local network does not use a router, or if you only want to make use of the web interface from inside your LAN, you will not need to set the Forward Port.

Session TTL is for configuring how long one should be able to stay logged in while idle.

PHP executable path is where the binary file for PHP is located. If it is not automatically set after KTorrent is installed, launch Konsole or any other terminal program and use the command “which php” to find where the path to PHP is on your computer.

Fill in a Username and Password to allow access to the web interface only after proving your selected Username and Password.

title: Ktorrent/webinterface


text:
Ktorrent/scheduler

Scheduler plug-in
You can disable or enable this plug-in, and with the Edit Schedule button, you can load the current scheduling in a dialog with all the options needed to edit it properly.

title: Ktorrent/scheduler


text:
Ktorrent/ipblock

IP blocking filter
The IP blocking filter tab allows you to configure the IP filter by using a downloaded filter file, converting the downloaded file to a binary file for better performance, and to select the location where the filter file is located.

title: Ktorrent/ipblock


text:
Ktorrent/commands

The Help Menu
Help->KTorrent Handbook (F1)

Starts the KDE Help system and loads the KTorrent help pages (this document).

''Help->What's This? (Shift+F1)''

Changes the mouse cursor to a combination arrow and question mark. Clicking on items within KTorrent with this cursor will open a small tool tip (if one exists for the particular item) explaining the item's function.

Help->Report Bug...

Opens the Bug report dialog where you can report a bug or request a “wishlist” feature.

Help->About KTorrent

This will display the version number of KTorrent installed on your computer and the author information.

Help->About KDE

This displays the KDE version and other basic information.

title: Ktorrent/commands


text:
Ktorrent/credits

Chapter 8. Credits and License
kmyapplication

Program copyright 2005-2006 Joris Guison (... AT ktorrent.org) and Ivan Vasic (... AT ktorrent.org)

Contributors:

 * This is for you to write guys.. (konqui AT kde.org)

 * ... (tux AT linux.org)

Documentation Copyright (c) 2006 Joris Guisson(... AT ktorrent.org) and Ivan Vasic (... AT ktorrent.org)

This documentation is licensed under the terms of the GNU Free Documentation License.

This program is licensed under the terms of the GNU General Public License.

title: Ktorrent/credits


text:
Ktorrent/questions

What is this “port forwarding” I hear about, how do I enable it and why is it clever to use this?
Port forwarding will allow other computers to request a connection from you. In general it allows more connections as your machine is now able to both make and receive “phone calls.” If possible you should enable it, unless your equipment (computer, router, etc.) is adversely affected by the extra open connections.

What are the two most common mistakes by BitTorrent newbies?
The two most common mistakes made by BitTorrent newbies are not forwarding ports and not seeding torrents. If you don't forward your ports and don't allow KTorrent full access on your software/hardware firewall (if you have enabled one), you will not get the most out of BitTorrent. You can get help on port forwarding at portforward.com, and some (slightly technical) information is available at Brian's BitTorrent FAQ and Guide. Seeding is when you leave your BitTorrent client open after your download has finished to help redistribute it (you share the file a little while downloading, but it is even more helpful if you continue to distribute the completed file). It is most likely that most of the data you downloaded was from other seeders, so help give back to the community! KTorrent will begin seeding your torrents once they are completely downloaded, and will continue until the torrent is removed (right click the torrent, then click Remove). Remember that while seeding, KTorrent is uploading using your internet connection, and if your internet service provider limits the amount you may upload, you might want to monitor how much data and for how long you seed your torrents.

How can I check whether I have forwarded my ports correctly?
Check in the log viewer for Authentication(S) messages. If you can spot a single message with (S), you know you can receive incoming connections.

Can I use KTorrent to index and share a folder on my disk without creating a torrent file?
No. KTorrent uses the BitTorrent protocol, which does not use a global network like Kazaa. Instead, BitTorrent uses a separate network for each torrent file. To share a file or folder, you will need to generate a torrent file for the files.

Can I configure KTorrent to use a single port?
Yes. You can use DHT (UDP) on the same port as the normal TCP traffic.

Sometimes I see peers in my peer list with a low score. Are these bad leechers, and should I kick or ban them?
No. KTorrent uses a scoring system to calculate which peers are most worth uploading to. Peers not interested in your data will get a lower score than others.

Why is my download so slow?
The most common reason is that the torrent source is not shared well enough (the swarm is unhealthy). Another reason could be that you are not uploading fast enough yourself.

Why is there only a handful of peers in the swarm?
Every torrent depends on other users who are downloading the same torrent. You might find a torrent which does not have a lot of peers yet. Just let the torrent run and most of the time, it will speed up after a while.

I just added a torrent, but there aren't any seeders or leechers in the swarm. What is wrong?
Check whether the torrent was taken offline by the tracker. Some trackers send a message for this, which you can find in the trackers tab.

Why can't I configure KTorrent to announce every five minutes?
This is against the BitTorrent protocol. Every client should use the announce time supplied by the tracker in the announce response.

Some torrents have a longer announce interval. Is this a bug?
No. KTorrent uses the announce interval given by tracker.

My download speed is horrible! What can I do to improve this?
Every torrent depends on how many peers are in its swarm and how well they are seeding. Make sure you are able to receive incoming connections so others will be able to share the file with you. Also ensure you are seeding well enough yourself. You can check whether the torrent has a good potential by looking at how many leechers and seeders have joined the swarm.

I have generated a torrent file. What now? How do I share my data with a friend?
You will first have to upload a torrent file to a BitTorrent tracker. The torrent file should contain a tracker URL for it to work correctly, and some (private) trackers have a separate URL for each registered account so they can keep track of your traffic. After that, your friend can download the torrent from the tracker.

I have set the max connections to a few thousand, but no matter how many peers connect, the download is not any faster!
Speed does not depend on how many connections are established, but rather on how well peers are sharing a file.

Can I use KTorrent to send a file to my friend without having to share it with other peers?
Yes. Use 127.0.0.1 as your tracker URL and send the torrent to your friend. After that, add your friend's IP manually by right clicking the torrent and choose Add Peers.

I have configured NAT in my router to forward ports to my computer, but once in a while, peers are unable to connect to me. Can I fix this?
Most routers assign IP addresses by using DHCP, and most of them do not lock the IP address. Your computer might be getting another IP address, because another computer in your LAN went online. In this case, your router is still forwarding to the old address, which would be another computer in your LAN! To fix the problem, try using UPnP and the UPnP plug-in if your router supports this, lock DHCP by using your MAC address, or use statically assigned IPs on your network.

When I set my upload rate to a minimum, my download speed drops too. Why is this, and can it be fixed?
BitTorrent, as a file sharing system, depends on users uploading data. When you do not upload enough data to the swarm, other peers will not be willing to share data with you, and your download speeds will drop. If you are able to upload at a faster rate with your internet connection, you should set the upload rate higher and make sure you seed your torrents after they finish downloading.

I have set KTorrent to use 120 upload slots, but my download is only getting slower.
If are not uploading enough, peers will simply ignore you even if you have enough slots. Check that you have set at least 2kbit/s per slot to ensure peers will receive enough data.

Can i download or seed a torrent from my USB stick with KTorrent?
Yes. But, іt can damage your USB flash drive. And the flash drive has a small speed.

I want to seed data from my NTFS partition, is this possible?
Of course. There are no restrictions on the file system at the program level, if the system is supported.

Why does the tracker tab sometimes tells me that I can not add another tracker to the torrent?
because the torrent is private, and you can-t add DHT or another tracker.

I would like KTorrent to seed an existing torrent. How should i do this?
aa

Why does KTorrent not let me download to NTFS and FAT32 partitions?
You need to disable diskspace pre-allocation for this to be possible. NTFS has removed this problem for today.

Why does KTorrent not let me use the zip file from bluetack in the ip filter plug-in?
Kdebase-kio-plugins is required to extract the zip file, so check whether this is installed.

title: Ktorrent/questions


text:
Chess Opening Theory/1. e4/1...c5/2. Nf3/2...Nc6/3. Bb5

=Sicilian-Rossolimo Variation= 3. Bb5

Theory table
1.e4 c5 2.Nf3 Nc6 3.Bb5


text: Talk:Chess Opening Theory/1. e4/1...c5/2. Nf3/2...Nc6


text: Talk:Chess Opening Theory/1. e4/1...c5/2. Nf3/2...Nc6/3. d4


text: Talk:Chess Opening Theory/1. e4/1...c5/2. Nf3


text: Talk:Chess Opening Theory/1. e4/1...c5/2. Nf3/2...d6


text: Talk:Chess Opening Theory/1. e4/1...c5/2. Nf3/2...d6/3. d4


text: Talk:Chess Opening Theory/1. e4/1...c5/2. Nf3/2...d6/3. d4/3...cxd4


text: Talk:Chess Opening Theory/1. e4/1...c5/2. Nf3/2...d6/3. d4/3...cxd4/4. Nxd4


text:
Ktorrent/installation

Note:
KTorrent was last updated Jan 17 2013, and the original website, ktorrent.org, has been abandoned since. As the original website has since been purchased by someone else, all references to it have been removed from this document.

How to obtain KTorrent
KTorrent is part of the KDE project http://www.kde.org/.

KTorrent can be found in the kdenetwork package on ftp://ftp.kde.org/pub/kde/, the main FTP site of the KDE project. Your distribution may also provide packages.

Requirements
In order to successfully use KTorrent, you need KDE 1.1. Foobar.lib is required in order to support the advanced KTorrent features. KTorrent uses about 5 megs of memory to run, but this may vary depending on your platform and configuration.

All required libraries as well as KTorrent itself can be found on The KTorrent home page.

http://www.kde-apps.org/content/show.php/KTorrent?content=26353

You can find a list of changes at http://apps.kde.org/KTorrent.

Compilation and Installation
[Section incomplete, please add what worked for you based upon your build.]

Download
You can find the downloads of all versions of Ktorrent at:
 * Downloads

There are instructions for Mac OS X and additional notes there as well.

Dependencies
You will need several modules installed prior to being able to compile and install Ktorrent.

In general you will need:

make (KT 2.x) or cmake (KT 3.x)

For specific variations of Linux you will need:

For Ktorrent 2.x

For Ktorrent 3.x on KDE 3

Ubuntu, Suse [Please list other flavours]
 * build-essential
 * kdelibs5-dev
 * libqca2-dev
 * libgmp3-dev
 * kdebase-workspace-dev
 * libplasma-dev
 * kdepimlibs
 * libboost-dev

Mandriva [Please list other flavours]
 * gcc
 * gcc-c++
 * gcc-cpp
 * kdebase4
 * mandriva-kde4-config

For Ktorrent 3.x on KDE 4

Compilation
For Ktorrent 2.x

tar -xvjf ktorrent-X.Y.tar.bz2 cd ktorrent-X.Y ./configure make make install

For Ktorrent 3.x

tar -xvjf ktorrent-3.X.Y.tar.bz2 cd ktorrent-3.X.Y mkdir build cd build cmake -DCMAKE_INSTALL_PREFIX=`kde4-config --prefix` .. make sudo make install

For Specific flavours and KT versions:

Howto: Compile 3.2beta1 under Ubuntu-Intrepid (gnome)]

Installation and First Startup
[blank at the moment]

Original Text
[Not sure what to do with it. George, can you review this and delete it as appropriate?]

In order to compile and install kmyapplication on your system, type the following in the base directory of the kmyapplication distribution:

% ./configure % make % make install

Since kmyapplication uses autoconf and automake you should have no trouble compiling it. Should you run into problems please report them to the KDE mailing lists.

title: Ktorrent/installation


text:
User talk:Firedragon Bellios

Hi all

I'm using Blender 2.45 and trying to make a mountain using the proportional edit tool (as per noob to pro tutorial). When I grab the vertex there is no circle surrounding it. I've tried the techniques suggested in the tutorial but getting nowhere. Any suggestions?

title: User talk:Firedragon Bellios


text:
User:Innv

 * ru wikibooks (admin)
 * ru wikisource (admin)
 * ru wiki
 * commons
 * meta-wiki

title: User:Innv


text:
Hebrew/Basic

Unit One

 * Lesson 1: — Greetings, names, welfare, genders.
 * Lesson 2: — Numbers, ages, definite article, personal pronouns.
 * Lesson 3: — Basic grammar: roots and radicals, prefixes, introduction to plurals.
 * Lesson 4: — Place of living, introduction to verb conjugation, questions and interrogative pronouns.
 * Lesson 5: — Directions of travel, modes of transport, qal present tense conjugation, weak radicals.
 * Review 1 — Complete review of Unit One.

Unit Two

 * Lesson 6: — Demonstrative pronouns, possessive pronouns, basic syntax.

title: Hebrew/Basic


text:
Template:Hebrew table

style="text-align: center; background: #ffffff; border: solid 10px #cff2ce" rules="all" ! style="background-color: #cff2ce; height: 50px; text-align: center" colspan="" | Hebrew • Table

title: Template:Hebrew table


text:
Cookbook:Rye Bread Layer Cake

| Cuisine of Denmark | Dessert

Rugbrødslagkage (Danish for "rye bread layered cake") is a cake with whipped cream and layers of grated rye bread. Layered cakes of this type are eaten at birthday parties in Denmark, but this recipe with rye bread is quite rare.

Ingredients

 * 125 g dark rye bread without sunflower seeds etc.
 * 6 eggs
 * 250 g granulated sugar
 * 15 ml (1 tbsp) cocoa powder
 * 15 ml (1 tbsp) potato flour
 * 5 ml (1 tsp) baking powder
 * Butter for greasing baking paper
 * 500 ml cream for whipping

Three days before serving

 * 1) Leave a couple of slices of unwrapped rye bread to dry outside of the fridge.

The day before serving

 * 1) Grate the now-dry rye bread.
 * 2) Turn on oven at 220°C (or 200°C for convection ovens).
 * 3) Separate the eggs and whip the egg whites to stiff peaks.
 * 4) In a separate bowl, whip the egg yolk with sugar, cocoa, potato flour, baking powder, and grated rye bread. Carefully fold in the beaten whites with a spoon.
 * 5) Spread the batter 1 cm thick on buttered baking paper in a cake form. The dough should be enough for 4 or 5 layers. Bake for 10 minutes at 220°C. Only in case of convection oven, more layers can be baked above each other.
 * 6) Let the layers cool completely.
 * 7) Whip two-thirds of the cream, and spread it between the layers. Cover and chill in the fridge overnight.

Just before serving

 * 1) Cover top and sides with whipped cream.

Notes, tips, and variations

 * Leaving the half-done cake in the fridge overnight improves the taste.

title: Cookbook:Rye Bread Layer Cake


text: Talk:Chess Opening Theory/1. e4/1...e5/2. Nf3


text:
Chess Opening Theory/1. e4/1...e5/2. Nf3/2...Qe7

= Gunderam Defence =

Also known as the Brazilian Defense or the Câmara Defense.

2... Qe7
The idea for Black is to transpose into a King's Indian Defence [source needed], but with forceful play this option is not entirely possible.

Black could also play 3...c6,4...d6,5...Bg4 or 5...h6 and develop slowly but surely.

Theory table
.

'''1. e4 e5 2. Nf3 Qe7'''


text:
Chess Opening Theory/1. e4/1...e5/2. Nf3/2...Nc6/3. Nc3/3...Nf6/4. Nxe5

=Halloween Gambit= The Halloween or Müller-Schulze Gambit is an aggressive and complex gambit. White sacrifices a piece with the idea of central pawn storm, with the possibility of gaining time by driving back the black knights.

Theory table
'''1. e4 e5 2. Nf3 Nc6 3. Nc3 Nf6 4. Nxe5'''


text:
MediaWiki:Licenses/ownwork

 * [Your own self-made work]
 * subst:nld|I don't know what license to use
 * self|GFDL|cc-by-sa-3.0,2.5,2.0,1.0|Own work, copyleft. attribution required (Multi-license GFDL, CC-BY-SA 1.0-3.0) RECOMMENDED
 * self|GFDL|cc-by-sa-3.0|Own work, copyleft, attribution required (GFDL, CC-BY-SA-3.0)
 * self|GFDL|cc-by-3.0|Own work, attribution required (Multi-license GFDL and CC-BY 3.0)
 * PD-self|Own work, all rights released (Public domain)

title: MediaWiki:Licenses/ownwork


text:
MediaWiki:Uploadtext/ownwork

Upload your works to Wikimedia Commons so it can be used from any Wikimedia projects including Wikibooks. There is no need to upload files from Wikimedia Commons to Wikibooks in order for works to be used here.

title: MediaWiki:Uploadtext/ownwork


text: User talk:139.80.123.34

title: User talk:139.80.123.34


text:
Parkour/Aesthetic Moves/360 Catleap

Steps

 * 1) Take a few jogging steps toward the wall you are leaping onto and jump
 * 2) Initiate the rotation by tucking your arms in closer to your body and kicking off with your dominant foot as you leave wall one
 * 3) Do not hesitate or you may be seriously injured
 * 4) Spot you hand landing and stick out your feet so as to hit the wall with the balls of your feet ( not your face)
 * 5) Grab onto the wall and either do a muscle up or cat drop its really up to you at this point.

title: Parkour/Aesthetic Moves/360 Catleap


text: User talk:72.159.129.237

title: User talk:72.159.129.237


text:
Parrot Virtual Machine/Optables and Expressions

Optables and Expressions
Top-down parsing has some problems. First, it's slow because it may need to try many alternatives before it finds a match. Each time it fails on a match, it needs to return to the previous rule and try again. Another problem is that parse trees can become very large for statements that have lots of little tokens, operator precedence, and many subrules. Consider a simple mathematical expression "1 * 2 + 5" and the following grammar:

EXPRESSION := TERM ADD_OP TERM TERM := (NUMBER MUL_OP NUMBER) | NUMBER ADD_OP := '+' | '-' MUL_OP := '*' | '/'

Our equation above creates a very complex parse tree:

EXPRESSION TERM NUMBER 2 MUL_OP "*" NUMBER 5 ADD_OP "+" TERM NUMBER 5

For things like a mathematical expression, we would like to use a bottom-up parser instead of a top-down one. A special type of bottom-up parser, called an operator precidence table parser is particularly efficient and well-suited for these tasks. To create an operator precedence table, PGE has a special tool called an.

Creating Optables
An optable is created by creating a rule that. Here is an example:

rule expression is optable { ... }

The  is not an omission, it's part of the rule. If you don't have the  three dots, your rule will not work. This is called the yada yada yada operator, and is used to define a function prototype. PGE will instantiate the function for you, using the options you specify. The keyword  tells the parser to convert to bottom-up mode to parse expressions

Operator Prototypes
In an optable, tokens are specified using the  keyword instead of the   or   keywords. A  definition must define several things: The name and type of the operator, the precidence of the operator, and the PIR code that is used to perform the particular operation. Here are some examples:

proto 'infix:+' is precidence('1') is pirop('add') { ... } proto 'prefix:-' is tighter('infix:+') is pirop('neg') { ... } proto 'postfix:++' is equal('prefix:-') { ... }

These examples show how to parse three common operators: A "+" between two values, a negative value for a negative number (such as "-123") and a post-increment operator ("x++"). There are lots of important keywords here, and this isn't even all the keywords you will need to produce a full expression parser.

Operator Types
There are four types of operator: prefix, postfix, infix, and circumfix. Here are some examples:

Operator Precedence
Bottom-up parsers, as we mentioned before, suffer from a particular problem called shift-reduce conflicts. A shift-reduce conflict occurs when a parser cannot determine whether to shift in a new input token, or reduce the tokens it already has. Here is an example from the C programming language:

-x + 2 * y

We know, because we've been taught about operator precedence since we were children, that the expression is grouped like this:

(-x) + (2 * y)

However, a computer doesn't know this unless we tell it what precedence the operators follow. For instance, without knowing the order in which operators act, a parser might group the expression on a first-come, first-served basis like this:

((-x) + 2) * y

Or maybe it would shift in all tokens and start reducing from the right:

-(x + (2 * y)

The point is, we need to create rules to tell the operator precedence parser how to parse these conflicts. Here are the precedence rules that we can specify:

We didn't show this in the example, but it's also possible to determine whether operators act to the left or to the right. We define this with the  keyword. The following table summarizes these rules:

Operator Actions
There are three ways to specify how an operator behaves. The first is to associate the operator with a PIR opcode. The second is to associate the operator with a PAST node type. The third and final way to specify the actions of an operator is to create a function. The first two methods can be performed with the  and   specifiers, respectively.

Operators
For simple operations, it doesn't make any sense to create and call a function. This is especially true for simple arithmetic operations which can be performed very quickly using PASM opcodes that Parrot already defines. Use the code  to implement an operator as a single opcode.

Operators
Some operators, such as logical operators, can be best implemented using types of nodes that PAST already provides. Use the  form to specify the type of PAST node to use.

Operators as Functions
By default, unless you specify an operator as  or , the operator will default to being a function. Most operators are therefore defaulted to be functions, which is very good for languages which intend to allow operator overloading.

Proto Regexes
We will use the term "Proto", "Proto Regex" or "Protoregex" on occasion in this book, and it is used often in the documentation for Perl 6 as well. Protos are like rules except they offer something similar to multiple dispatch: You can have multiple rules of the same name that depend on the operands passed to it. By declaring an operator as a proto, you are giving it a name and you are also allowing future additions to be made to the language. This is an imporant feature for languages which utilize operator overloading.

Protos are defined with the  keyword. They can be used in either the top-down or bottom-up parser, although because of their most common use as a support mechanism for operator overloading, they are most often used in the bottom-up operator precidence parser. To define a new proto, use the form:

proto NAME OPTIONS { ... }

In this declaration, the  is a literal piece of code: you actually must type the three dots (ellipsis) between the curly brackets. What this does is alerts the parser that this is not an implementation of the rule itself, it is actually just a signature or a forward-declaration for other functions. For instance, we can define a proto MyProto:

proto MyProto { ... }

And in another file we can define functions to implement this:

.sub MyProto # Insert the parameter list and function logic here .sub

.sub MyProto      # Another MyProto! # Insert a different parameter list and different function logic here .end

Parsing Terms
Terms are the values between operators. In the following expression:

1 + 2 * 3

The numbers 1, 2, and 3 are all terms. Terms are parsed using the ordinary rules, and are loaded into the operator precedence table using the following syntax:

proto 'term:' is precedence('1') is parsed(&term) { ... }

Of course, you can set the precedence however you see fit, but it's typically best to make terms parse as tightly as possible. The  attribute specifies that terms are to be parsed using a rule named "term". You can define this term using ordinary rule syntax. The  symbol is the sigil that NQP uses to refer to a subroutine. In this case, the subroutine in question is the grammar method that is intended to parse terms (but it can conceivably be anything else). We will learn more about NQP and sigils in the following chapter.

Terms are the way the parser switches back from bottom-up to top-down parsing.

Expression and Term Methods
Once we've created our parser, we need to create methods associated with them to construct the necessary PAST nodes for the parse tree. Lucky for us, these methods are easy to create, and typically the best option is to use a basic template from another language implementation.

Terms are defined like any other rule, and don't require any special syntax. Expressions, however, do require a little bit of special attention.


text: User talk:78.3.52.255

title: User talk:78.3.52.255


text:
User talk:Reneta Stoycheva

Welcome to Wikibooks, Reneta Stoycheva!

Image:Lab2rs4.jpg is missing license or source information

 * Please check all your uploads - they all have the same problem. – Mike.lifeguard  | talk 17:10, 10 May 2008 (UTC)

title: User talk:Reneta Stoycheva


text:
User talk:Ank1996

Welcome to Wikibooks, Ank1996!

title: User talk:Ank1996


text:
User talk:Elp3668

Welcome to Wikibooks, Elp3668!

title: User talk:Elp3668


text: User talk:216.168.123.29

title: User talk:216.168.123.29


text: User talk:68.0.229.100

title: User talk:68.0.229.100


text:
User talk:Sparrhawk~enwikibooks

Welcome to Wikibooks, Sparrhawk!

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 Sparrhawk. To make sure that both of you can use all Wikimedia projects in future, we have reserved the name Sparrhawk~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:46, 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:31, 19 April 2015 (UTC)

title: User talk:Sparrhawk~enwikibooks


text: User talk:202.56.7.162

title: User talk:202.56.7.162


text:
User talk:Interrobang~enwikibooks

Welcome to Wikibooks, Interrobang!

We have already a book on Using Windows Movie Maker. I have deleted the page you started; please add content to the pre-existing book. Thanks. – Mike.lifeguard  | talk 18:32, 10 May 2008 (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 Interrobang. To make sure that both of you can use all Wikimedia projects in future, we have reserved the name Interrobang~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:14, 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:03, 19 April 2015 (UTC)

title: User talk:Interrobang~enwikibooks


text:
User talk:Nillerdk

Welcome to Wikibooks, Nillerdk!

title: User talk:Nillerdk


text:
Cookbook:Cuisine of Egypt

| African cuisines Egyptian cuisine consists of local culinary traditions such as Ful Medames, Kushari and Molokhia, while sharing similarities with food found throughout the eastern Mediterranean like kebab and falafel.

Most Egyptians perhaps consider Ful Medames, or mashed fava beans, to be the national dish. Ful is also used in making Ta'miyya or Falafel (Arabic: طعمية – فلافل). Bread accompanies most Egyptian meals; local bread is called Eish Masri or Eish Baladi (Egyptian Arabic: عيش).

Ancient Egyptians are known to have used a lot of garlic and onion in their everyday dishes. Fresh mashed garlic with other herbs is used in spicy tomato salad and is also stuffed in boiled or baked aubergines (eggplant). Garlic fried with coriander is added to Mulukhiyya (Arabic: ملوخية), a popular green soup made from finely chopped leaves. Fried onions are added to Kushari (Arabic: كشري), a dish consisting of brown lentils, macaroni, rice, chickpeas and a spicy tomato sauce.

Cuisine and Culture
Although Ramadan is a month of fasting in Egypt, it is usually when Egyptians pay a lot of attention to food in variety and richness, since the whole family would gather on the breakfast table just after sunset. There are several special desserts almost exclusive to Ramadan such as Kanafeh and Atayef (Arabic: كنافة وقطايف). In this month, many Egyptians will make a special table for the poor or passers-by, usually in a tent in the street, called Ma'edat Al Rahman (Arabic: مائدة الرحمن) which translates literally as Table of (God) the Gracious (Merciful).

Christians of Egypt, mainly Copts, observe fasting periods according to the Liturgical Calendar that practically extend to more than two-thirds of the year. The diet is mainly vegan. During this fasting, Copts will usually eat vegetables fried in oil but avoid meat, chicken, and dairy products, including butter.

Dishes
Popular dishes include Kebab and Kofta (Arabic: كباب وكفتة), usually consisting of lamb meat, chops & minced meat on skewers grilled on charcoal. Egyptians are famous for stuffing spicy rice in vegetables like green pepper, aubergines, courgettes and tomatoes to make Mahshi (Arabic: محشي). Mahshi is generally rolled in grapevine leaves, Mahshi Warraq Enab (Arabic: محشي ورق عنب), or in cabbage leaves, Mahshi Koronb (Arabic: محشي كرنب).

Shawerma (Arabic: شاورمة) is a popular sandwich of shredded meat or chicken, usually rolled in pita bread with Tahina sauce.

Dukkah is a dry mixture of chopped nuts, seeds and Middle Eastern spices and flavors.

Some Dishes :

 * Egyptian Lentil Stew
 * Puff Pastry with Nuts and Whipped Cream (Om Ali)

title: Cookbook:Cuisine of Egypt


text: User talk:71.128.148.238

title: User talk:71.128.148.238


text:
Chess Opening Theory/1. e4/1...c5/2. Nf3/2...Nc6/3. d4/3...cxd4/4. Nxd4/4...Nf6/5. Nc3/5...d6

=Classical Sicilian=

5...d6
Black's move 5...d6 protects the recently developed knight from being attacked. A pawn move is thus in order, since both knights are developed to good squares, and the Bishop on c8 now has the option, but not the obligation, to develop to a good square once white makes their intentions known.

Of all the responses for white, Bg5 is perhaps the best, and should be expected from a strong opponent. It pins the king knight, prepares for queenside castling, and it is the prelude to the Richter-Rauzer Attack (named after Vsevolod Alfredovich Rauser ).

Theory table
1.e4 c5 2.Nf3 Nc6 3.d4 cxd4 4.Nxd4 Nf6 5.Nc3 d6


text:
Dutch Empire/Authors

Original Author-Red4tribe

Looking to Expand
I am looking to expand the following sections-

Batavian Republic Kingdom of Holland Surinamese Independence

If you have any useful information at all, either contact me or feel free to add it into the article yourself. Also, if you wish to add your name to this list, you may, and become a full-time contributor to this book.

title: Dutch Empire/Authors


text:
Ancient History/Iran/Achaemenid Empire/The Medes and the Early Achaemenids

 * * Content in this section is copied from the Wikibook on Iranian History.


text:
Ancient History/Iran/Achaemenid Empire/The Seleucids

 * * Content in this section is copied from the Wikibook on Iranian History.


text:
Ancient History/Iran/Sassanian Empire/Qobad I and the Two Khusros 488 - 628 AD

 * * Content in this section is copied from the Wikibook on Iranian History.


text:
Ancient History/Iran/Sassanian Empire/Anarchy and Downfall of the Sassanian Empire

 * * Content in this section is copied from the Wikibook on Iranian History.


text:
Ancient History/Iran/Sassanian Empire/Last Remnants of Sassanian Rule

 * * Content in this section is copied from the Wikibook on Iranian History.


text:
Dutch Empire/Anglo-Dutch Wars

The rise of the Dutch Republic must ever be regarded as one of the leading events of modern times.

First Anglo-Dutch War (1652-1654)
The trading rivalry between the Dutch Republic and England broke out into war in May of 1652. Maarten Tromp, commander of the Dutch Navy, was slow to dip his flag in his salute, an English ship fired warning shots, hitting a Dutch Ship. This led to the Battle of Goodwin Sands and the start of the First Anglo-Dutch War. One Dutch diplomat stated "The English are about to attack a mountain of gold; we are about to attack a mountain of iron." The war would be costly for both sides. At the Battle of Plymouth, the English attempted to destroy the Dutch fleet, however they were beaten back, and pursued by Michiel de Ruyter. It was the beginning of a Dutch legend. Soon after the Battle of Plymouth, the English and Dutch fleets clashed again in the North Sea at the Battle of the Kentish Knock. The English routed the Dutch fleet commanded by Tromp, and mistakenly believing that the Dutch fleet was destroyed, did not pursue.

The English, very confident they had won the war, sent most of their fleet to the Mediterranean. The Dutch then launched a surprise attack on the remaining English Fleet in the North Sea, which gave control of the North Sea and the English Channel back to the Dutch. By spring, the English fleet had returned and defeated the Dutch at the Battle of Portland. Several days later, however, a small portion of each sides' fleets met in the Battle of Leghorn in Italy and the Dutch chased the English out of the Mediterranean. The English fleet won another major victory at the Battle of the Gabbard. The Dutch fleet was too weak to challenge the English and therefore a blockade was put on the Dutch Republic, which crippled the Dutch economy.

The Dutch broke the English blockade at the Battle of Scheveningen, but during the fight Tromp was killed. At this point, both sides were completely exhausted from war and signed the Treaty of Westminster (1654). The treaty failed to resolve the dispute between the two countries, and only set the stage for the next war.

Second Anglo-Dutch War (1665-1667)
The issues that started the First-Anglo Dutch War, still remained and were not resolved by the peace treaty. The English still wanted the Dutch trading routes, and to end the world domination of Dutch trade. As tensions increased the English seized the Dutch colony of New Netherland and took many Dutch trading posts on the coast of Africa. The Dutch quickly responded by sending Michiel de Ruyter to recapture their trading posts in Africa. After recapturing the trading posts, he sailed across the Atlantic, where the Dutch Fleet was attacked and forced to withdraw. Shortly after, on March 4, 1665, England declared war on the Dutch Republic. In June of 1665 the two fleets met in the North Sea. This would result in the Battle of Lowestoft. The English routed the Dutch fleet, destroying 17 Dutch warships at a cost of only one of their own. Even to this day it is the worst defeat in Dutch Naval History. The next conflict between the two sides was a minor encounter in Norwegian Port. At the Battle of Vågen, the English attempted to seize a few Dutch merchant ships. However, the merchant ships were being escorted by war ships and the English attack was driven back.

In June of 1666, the Dutch fleet under the control of De Ruyter, was attacked by the English fleet in the North Sea at the Four Days Battle. It was one of the largest Naval engagements in history, lasting four days (hence the name). After four days of constant engagement, De Ruyter, seeing that he had inflicted considerable damage on the English fleet, ordered his fleet to withdraw. The English lost 10 ships, the Dutch 4.

Later that summer the two fleets would clash again at St. James Day Battle. De Ruyter as once again in control of the Dutch fleet, his goal was to attack the English fleet while it was anchored in the Medway. On his way there, he discovered an English fleet of 89 ships and pursued it. The battle was a clear English Victory, inflicting heavy casualties onto the Dutch, however, De Ruyter was able to withdraw losing only 2 ships, while the results could have been much worse.

The English quickly decided to attack while the Dutch fleet was unable to fight back due to the losses it received in the St. James Day Battle. English Rear-Admiral Robert Holmes, attacked a large fleet of Dutch merchant ships. The English were successful in setting fire to, and destroying, 150 of the merchant ships.

In June of 1667, the Dutch Fleet under De Ruyter, decided to launch a daring attack on the English fleet while it was still docked. De Ruyter ordered an attack on June 10. The Dutch fleet quickly captured the English forts, and defeated the English ships guarding the Medway. On June 13, the whole of the Thames side as far up as London was in a panic — some spread the rumor that the Dutch were launching a full scale invasion of the country. Many citizens fled, taking their possessions with them. On June 14 the Dutch fleet withdrew, but they had sunk 13 English Ships, and captured 2 ships. HMS Unity and HMS Royal Charles, pride and normal flagship of the English fleet, while total losses for the Dutch were eight spent fireships and about fifty casualties. The Battle is now called Raid on the Medway, it was a decisive Dutch victory and is considered the Greatest Naval Victory in Dutch History, and the worst Naval Defeat in English. Commenting on the defeat, Samuel Pepys, English Naval Administrator and member of Parliament, said "The Devil Shits Dutchmen".

After the raid on the Medway, the English fleet was crippled and England was forced to sue for peace. Pepys making another comment about the war, said "Thus in all things, in wisdom, courage, force, knowledge of our own streams, and success, the Dutch have the best of us, and do end the war with victory on their side". During negotiations, the English offered to return New Netherland if the Dutch would return Suriname (which they had seized in 1667). The Dutch declined. On July 31, 1667 the Treaty of Breda (1667) was signed. The Dutch were now at the zenith of their power.

Franco-Dutch War (1672-1678) and the Third-Anglo-Dutch War (1672-1674)
France led a coalition including Münster and England. Louis XIV was annoyed by the Dutch refusal to cooperate in the destruction and division of the Spanish Netherlands. After making a secret agreement with England in 1672, France invaded the Dutch Republic. Today, 1672 is still remembered as Rampjaar in the Netherlands, which means "year of disasters". The French soon marched into the Heart of the Dutch Republic, taking Utrecht. To stop the French advance, the Dutch flooded the countryside (Dutch Water Line) which stopped the French advance. At this time, Prince William III of Orange is assumed to have had the leading Dutch politician Johan de Witt deposed and murdered and was acclaimed stadholder.

On the western front, where the Dutch had been attacked by Munster, the Dutch defeated Munster at the Siege of Groningen. After the Dutch victory the Dutch liberated some territory and drove Munster out of the country.

Meanwhile, the sea war with England was going much better for the Dutch than the land war. The Dutch, lead by De Ruyter, defeated the English and French fleets at the Battle of Solebay and Schooneveld. The French and English then came up with a plan to invade the Republic by Sea. However, after their fleet was defeated at the Battle of Texel, they were unable to land troops. The war was becoming very unpopular at home in England, thus, the English withdrew signing the Treaty of Westminster (1674). In the treaty the Dutch agreed to return New Orange (formerly New Netherland) to England, which they had seized in 1673.

In 1673 Spain joined the war on the side of the Dutch. De Ruyter sailed the Dutch Fleet into the Mediterranean to destroy the French naval supremacy there. The Dutch were victorious in the Battles of Stromboli and Mt. Etna (1676); however, Admiral de Ruyter was mortally wounded in the latter. Respect for De Ruyter extended far beyond the borders of the Republic. When his body was shipped home, the late Lieutenant-Admiral-General was saluted by cannon shots fired on the coasts of France, by the direct orders of the French King Louis XIV.

The War was not only in Europe, it extended to Canada. Jurriaen Aernoutsz, a navy captain from Curaçao, captured the French colony of Acadia in 1674. A Dutch fleet attacked, but failed to take Martinique 1674. In May 1676 Dutch Admiral Jacob Blinck took Cayenne and Tobago. The French would soon retake these possessions. In December 1676 French Vice-Admiral Jean d'Estrees retook Cayenne. The French also recaptured Tobago in 1677. In Europe, the French had begun a slow withdrawal from the Republic. Negotiations began in 1676, and the Treaty of Nijmegen was signed in 1678. The war had been very costly for the Republic, but they had defended their land and kept all of their territory across the world.

Fourth Anglo-Dutch War (1781-1784)
Britain declared war before the Dutch could join a group of neutral countries sworn to mutual assistance. The direct cause of the war was the discovery of a secret trade treaty proposed by the city of Amsterdam to the Americans. The Dutch had not at all expected such a severe reaction; they had given the British a perfect pretext to reduce Dutch power even more. This Fourth Anglo-Dutch War (1780–1784) proved a disaster for the Netherlands, particularly economically.

Dutch naval power had been in decline since 1714. The Dutch navy, now having only twenty ships of the line, was no match for the British navy. Britain had already gained supremacy of the high seas over France long before, in the Seven Years' War. The Dutch fought a minor skirmish with the British at the Battle of Dogger Bank, but had to avoid any other fighting. The Dutch had already hastily embarked on a major shipbuilding project of 84 warships between 1777 and 1789. Due to all kinds of misfortune (storms, collisions, strandings), about a third of the Dutch fleet sank between 1782 and 1784. Coordination with its war allies, France and Spain, was poor. The new ships were not ready in time to prevent Britain from taking effective control of the Dutch colonies and making William V a puppet, only able to rule with Prussian military assistance in the Triple Alliance (1788). The Republic joined a cease fire between Britain and France in January 1783. The signing of the Treaty of Paris (1784) made Negapatnam, in India, a British colony. Ceylon, though taken, was nominally given back. The British gained the right of free trade with part of the Dutch East Indies.

title: Dutch Empire/Anglo-Dutch Wars


text:
XRX/Glossary Term Editor

Motivation
You want a tool to manage your organization-specific business terms including definitions, acronyms, synonyms, broader/narrower terms, see-also terms, definition sources, approval history, versions, and traceability and mappings to ISO/IEC 11179 data elements.

Method
Create a tool that manages individual business terms using a vocabulary similar to the W3C Simple Knowledge Organization SKOS draft standard. Use one XML file in an eXist collection for each term and have the server assign an ID number as each term is created. Allow each term to belong to one synonym set. We will associate each term with broader terms and use XQuery reports to infer narrower terms.

Design Steps
To build the glossary we can create an XML Schema for each term and generate an XForms application to manage the Term data. We can then hand-edit the generated form to add specific functionality.

XForms Application
This is an XQuery that when run with a parameters of new=true or an id=123 will generate an XForms application. It will need to be in the same folder as a new-instance.xml and it will need a save.xq and an update.xq to do the work of saving new instances (with the ids assigned) and updating existing instances, respectively. The update.xq will be responsible for versioning and archiving old values. The update script can also be responsible for creating log files of who changed what files and when.

Note: I have not fixed this yet to use the new pathnames for the Approval and DataElement containers.

      {if ($new='true') then  else }     {cms:header} Metadata Registry > Glossary Manager {if ($new='true') then ('Create New') else ('Update')} Project Glossary Term {$form} - {$form-version} - File: {$file} <xf:group ref="instance('my-term')"> <xf:label class="group-label">Glossary Term</xf:label> <xf:input ref="TermName" class="TermName"> <xf:label>Term Name:</xf:label> <xf:hint>The name of a term in the glossary.</xf:hint> </xf:input> <xf:input ref="Acronym"> <xf:label>Acronym:</xf:label> <xf:hint>The acronym or abbreviation for this term.</xf:hint> </xf:input> <xf:input ref="SynonymID"> <xf:label>Synonym Set ID:</xf:label> <xf:hint>A link to the Synonym Set Editor.</xf:hint> </xf:input> <xf:textarea class="Definition" ref="Definition"> <xf:label>Definition:</xf:label> <xf:hint>A short, precise, non-circular definition for this term that clearly differentiates this term from other terms.</xf:hint> </xf:textarea>

<xf:group> <xf:label class="group-label">See Also</xf:label> <xf:repeat id="see-also-repeat" nodeset="instance('my-term')/SeeAlso"> <xf:input ref="." class="SeeAlso inline-delete" id="see-also-input"> <xf:label>See Also (non-synonym):</xf:label> <xf:hint>A related term in the glossary that is not a synonym.</xf:hint> </xf:input> <xf:trigger bind="see-also-delete-trigger" class="inline-delete"> <xf:label>Delete See Also</xf:label> <xf:delete nodeset="instance('my-term')/SeeAlso[index('see-also-repeat')]" ev:event="DOMActivate"/> </xf:trigger> </xf:repeat> <xf:trigger> <xf:label>Insert New "See Also" Term</xf:label> <xf:action ev:event="DOMActivate"> <xf:insert nodeset="instance('my-term')/SeeAlso" at="last" position="after"/> <xf:setvalue ref="instance('my-term')/SeeAlso[index('see-also-repeat')]" value=""/> <xf:setfocus control="see-also-input"/> </xf:action> </xf:trigger> </xf:group>

<xf:input ref="instance('my-term')/Broader"> <xf:label>Broader Term:</xf:label> <xf:hint>A term that is more general in meaning.</xf:hint> </xf:input> <xf:group> <xf:label class="group-label">Definition Sources</xf:label> <xf:repeat id="source-repeat" nodeset="instance('my-term')/PrimarySourceCode"> <xf:select1 ref="." class="inline-delete" id="source-select"> <xf:label>Definition Source:</xf:label> <xf:hint>The source of information about the term and its defintion.</xf:hint> <xf:itemset nodeset="instance('code-tables')/CodeTable[CodeTableName='SourceCode']/item"> <xf:label ref="label"/> <xf:value ref="value"/> </xf:itemset> </xf:select1> <xf:trigger bind="tag-delete-trigger" class="inline-delete"> <xf:label>Delete Source</xf:label> <xf:delete nodeset="instance('my-term')/PrimarySourceCode[index('source-repeat')]" ev:event="DOMActivate"/> </xf:trigger> </xf:repeat> <xf:trigger> <xf:label>Add New Source</xf:label> <xf:action ev:event="DOMActivate"> <xf:insert nodeset="instance('my-term')/PrimarySourceCode" at="last" position="after"/> <xf:setvalue ref="instance('my-term')/PrimarySourceCode[index('source-repeat')]" value=""/> <xf:setfocus control="source-select"/> </xf:action> </xf:trigger> </xf:group> <xf:group ref="instance('views')/other-source"> <xf:input ref="instance('my-term')/PrimarySourceOtherText"> <xf:label>Other Source: </xf:label> </xf:input> </xf:group>

<xf:group> <xf:label class="group-label">Projects</xf:label> <xf:repeat id="project-repeat" nodeset="instance('my-term')/ProjectCode"> <xf:select1 ref="." class="inline-delete" id="project-select"> <xf:label>Project:</xf:label> <xf:hint>A code for classifying all the data elements.</xf:hint> <xf:itemset nodeset="instance('code-tables')/CodeTable[CodeTableName='ProjectCode']/item"> <xf:label ref="label"/> <xf:value ref="value"/> </xf:itemset> </xf:select1> <xf:trigger bind="tag-delete-trigger" class="inline-delete"> <xf:label>Delete Project</xf:label> <xf:delete nodeset="instance('my-term')/ProjectCode[index('project-repeat')]" ev:event="DOMActivate"/> </xf:trigger> </xf:repeat> <xf:trigger> <xf:label>Add New Project</xf:label> <xf:action ev:event="DOMActivate"> <xf:insert nodeset="instance('my-term')/ProjectCode" at="last" position="after"/> <xf:setvalue ref="instance('my-term')/ProjectCode[index('project-repeat')]" value=""/> <xf:setfocus control="project-select"/> </xf:action> </xf:trigger> </xf:group> <xf:select1 ref="instance('my-term')/AssignedToCode"> <xf:label>Assigned to Facilitate Approval:</xf:label> <xf:itemset nodeset="instance('code-tables')/CodeTable[CodeTableName='AssignedToCode']/item"> <xf:label ref="label"/> <xf:value ref="value"/> </xf:itemset> </xf:select1> <xf:select1 ref="instance('my-term')/ApprovalStatusCode"> <xf:label>Approval Status:</xf:label> <xf:item> <xf:label>Initial Draft</xf:label> <xf:value>initial-draft</xf:value> </xf:item> <xf:item> <xf:label>Assigned for Review</xf:label> <xf:value>assigned-to-review-team</xf:value> </xf:item> <xf:item> <xf:label>Program Approved</xf:label> <xf:value>program-approved</xf:value> </xf:item> </xf:select1> <xf:group ref="instance('views')/approved"> <xf:select1 ref="instance('my-term')/ApprovedByCode"> <xf:label>Approved By:</xf:label> <xf:hint>The person or organization that approved this term.</xf:hint> <xf:itemset nodeset="instance('code-tables')/CodeTable[CodeTableName='ApprovedByCode']/item"> <xf:label ref="label"/> <xf:value ref="value"/> </xf:itemset> </xf:select1> <xf:input ref="instance('my-term')/ApprovalDate"> <xf:label>Approval Date:</xf:label> <xf:hint>The date that this term was approved.</xf:hint> </xf:input> </xf:group> <xf:input ref="instance('my-term')/GroupStarredItemIndicator"> <xf:label>Starred Item:</xf:label> <xf:hint>An indication by the group that this item needs attention.</xf:hint> </xf:input> <xf:group> <xf:label class="group-label">Classifiers</xf:label> <xf:repeat id="classifier-repeat" nodeset="instance('my-term')/ClassifierCode"> <xf:select1 ref="." class="inline-delete" id="classifier-select"> <xf:label>Classifier (Filter) Code:</xf:label> <xf:hint>A code for classifying all the data elements.</xf:hint> <xf:itemset nodeset="instance('code-tables')/CodeTable[CodeTableName='ClassifierCode']/item"> <xf:label ref="label"/> <xf:value ref="value"/> </xf:itemset> </xf:select1> <xf:trigger bind="tag-delete-trigger" class="inline-delete"> <xf:label>Delete Classifier (Filter)</xf:label> <xf:delete nodeset="instance('my-term')/ClassifierCode[index('classifier-repeat')]" ev:event="DOMActivate"/> </xf:trigger> </xf:repeat> <xf:trigger> <xf:label>Add New Classifier (Filter)</xf:label> <xf:action ev:event="DOMActivate"> <xf:insert nodeset="instance('my-term')/ClassifierCode" at="last" position="after"/> <xf:setvalue ref="instance('my-term')/ClassifierCode[index('classifier-repeat')]" value=""/> <xf:setfocus control="classifier-select"/> </xf:action> </xf:trigger> </xf:group> <xf:group> <xf:label class="group-label">Tags</xf:label> <xf:repeat id="tag-repeat" nodeset="instance('my-term')/Tag"> <xf:input ref="." class="Tag inline-delete" id="tag-input"> <xf:label>Tag (Keyword):</xf:label> </xf:input> <xf:trigger bind="tag-delete-trigger" class="inline-delete"> <xf:label>Delete Tag (Keyword)</xf:label> <xf:delete nodeset="instance('my-term')/Tag[index('tag-repeat')]" ev:event="DOMActivate"/> </xf:trigger> </xf:repeat> <xf:trigger> <xf:label>Append New Tag (Keyword)</xf:label> <xf:action ev:event="DOMActivate"> <xf:insert nodeset="instance('my-term')/Tag" at="last" position="after"/> <xf:setvalue ref="instance('my-term')/Tag[index('tag-repeat')]" value=""/> <xf:setfocus control="tag-input"/> </xf:action> </xf:trigger> </xf:group> <xf:textarea class="Notes" ref="instance('my-term')/TermNoteText"> <xf:label>General notes:</xf:label> <xf:hint>Any related notes about this term.</xf:hint> </xf:textarea> <xf:input ref="instance('my-term')/DataElement/DataElementIndicator"> <xf:label>Candidate Data Term:</xf:label> <xf:hint>This term has a mapping to a registered data element.</xf:hint> </xf:input> <xf:group ref="instance('views')/data-element"> <xf:input ref="instance('my-term')/DataElement/DataElementDerivedIndicator"> <xf:label>Data Element Derived:</xf:label> <xf:hint>This data element is derived from other data elements.</xf:hint> </xf:input>

<xf:group ref="instance('views')/data-element-derived"> <xf:textarea class="large-textarea" ref="instance('my-term')/DataElement/DataElementDerivationRuleText"> <xf:label>Derivation Rules:</xf:label> <xf:hint>Any rules used to derive this data element from other data elements.</xf:hint> </xf:textarea> </xf:group> <xf:input ref="instance('my-term')/DataElement/DataElementIdentifierIndicator"> <xf:label>Data Element Identifier:</xf:label> <xf:hint>This data element is use to identify data sets.</xf:hint> </xf:input> <xf:textarea class="large-textarea" ref="instance('my-term')/DataElementEnumerationsText"> <xf:label>Enumerations (Valid Codes):</xf:label> <xf:hint>A listing of all valid values and definitions for the possible values of this data element.</xf:hint> </xf:textarea>

<xf:textarea class="large-textarea" ref="instance('my-term')/DataElement/DataElementValidationRulesText"> <xf:label>Validation Rules:</xf:label> <xf:hint>Any rules used to validate this data element.</xf:hint> </xf:textarea>

<xf:input ref="instance('my-term')/DataElement/DataElementName" class="DataElementName"> <xf:label>Data Element Name:</xf:label> <xf:hint>ISO name for this data element including the ObjectClass, Property and Representation Term using an UpperCamelCase notation.</xf:hint> </xf:input>

</xf:group> <xf:submit submission="save"> <xf:label>Save</xf:label> </xf:submit> </xf:group> Feedback )

Search Application
Back: Selection List Generator • Next: FAQ Manager

title: XRX/Glossary Term Editor


text:
Dutch Empire/Wars With Sweden

We cannot forget that our flag received its first foreign salute from a Dutch officer, nor that the Province of Friesland gave to our independence its first formal recognition.

Dutch-Swedish War
The Dutch-Swedish War began with the 1658 Swedish invasion of Denmark, during which Copenhagen was put under siege. The Dutch, worried about their trade in the Baltic, sent a fleet of 75 ships to break the siege resulting in the Battle of the Sound. The Danish ships were unable to help their Dutch allies due to unfavorable wind conditions. The Dutch fleet sunk 4 Swedish ships and forced the Swedish to abandon the siege of the city. In 1659, the Dutch, led by Michiel De Ruyter, liberated the other Danish isles under Swedish control, once more guaranteeing the essential supply of grain, wood, and iron from the Baltic region.

Scanian War
The Dutch were drawn into the Scanian War in 1676, when France asked for Swedish help in the Franco-Dutch War (see Anglo-Dutch Wars). In reply, the Dutch asked for Danish help. Denmark agreed and launched an invasion of Sweden.

At the Battle of Bornholm(1676), the Dutch-Danish fleet, half the size of the Swedish fleet, attacked and forced the fleet to retreat. The Dutch admiral Cornelis Tromp, with a squadron of 16 warships pursued the Swedish navy. The Swedish withdrew and tried to make it back to various Swedish ports but Tromp found the Swedish fleet near Öland. 14,000 Dutch-Danish troops were released from the ships and attacked the Swedish fortresses. At sea, the Swedish Navy was once again forced to withdraw. The Dutch and Danish troops soon captured the cities of Helsingborg and Landskrona, while taking other Swedish fortresses in the area within a month. These two battles gave control of the Baltic to the Dutch-Danish Navy.

After the Franco-Dutch war ended in 1678, the Dutch had a reduced role in the war. A French-dictated peace was negotiated at the Treaty of Fontainebleau on August 23, 1679, stipulating that all territory lost by Sweden be returned. Thus the terms formulated at the Treaty of Roskilde remained in force. It was reaffirmed by the Treaty of Lund, signed by Denmark-Norway and Sweden themselves.

title: Dutch Empire/Wars With Sweden


text:
Chess Opening Theory/1. e4/1...c5/2. Nf3/2...e6/3. d4/3...cxd4/4. Nxd4/4...Nc6

=Sicilian - Taimanov= This is the initial position at the start of the Taimanov or Taimanov system, developed by Russian GM Mark Taimanov. It can be thought of as a mirror to the position leading to most variations such as the Dragon, with the c6 knight developed rather than the f6 one and the e6 pawn developed rather than the d6 one.

White responding with 5. Nxc6 is a mistake, as it gives black immediate equality after 5... bxc6 6. Nc3 d5. Otherwise, black will most likely follow up with a6 and Qc7, with other moves depending on White's setup, which most often involves either Qf3-g3, Be3 and Qd2, a Maroczy Bind, or Nc3 and Bb5. Black's main idea of a6 and b5, however, is a constant in many of these variations.

Theory table
1.e4 c5 2.Nf3 e6 3.d4 cxd4 4.Nxd4 Nc6


text:
Radiation Oncology/Supportive care/Nausea

Supportive Care for Nausea and Vomiting

Ematogenicity Potential

 * ASCO 2020 PMID 28759346 --Antiemetics: American Society of Clinical Oncology Clinical Practice Guideline Update (Hesketh PJ, J Clin Oncol. 2017 Oct 1;35(28):3240-3261. doi: 10.1200/JCO.2017.74.4789. Epub 2017 Jul 31.)
 * Classification of chemotherapy regimens
 * Classification of radiation therapy regimens:
 * High Risk: Total Body Irradiation => Odansetron / Granisetron + Dexamethasone
 * Moderate Risk: Upper abdomen, Craniospinal => Odansetron / Granisetron / Topisetron + Dexamethasone
 * Low Risk: Brain, H&N, Thorax, Pelvis => Odansetron/Granisetron PRN, Dexamethasone PRN, Prochlorperazine / Metoclopramide PRN

 * ASCO; 1997 PMID 8996130 -- "Proposal for classifying the acute emetogenicity of cancer chemotherapy." (Hesketh PJ, J Clin Oncol. 1997 Jan;15(1):103-9.)
 * Review of clinical trials. Chemotherapy agents divided into 5 levels

5-HT3 antagonists

 * Ondansetron (Zofran)
 * Granisetron (Kytril)
 * Dolasetron (Anzemet)
 * Palonosetron (Aloxi) - IV, 0.25 mg

 * Umea; 1996 (Sweden) PMID 8879372 -- "A randomised placebo controlled study with ondansetron in patients undergoing fractionated radiotherapy." (Franzen L, Ann Oncol. 1996 Aug;7(6):587-92.)
 * Randomized. 111 patients, abdominal RT, at least 10 fractions. Used [EORTC C30] questionnaire
 * Outcome: complete control of emesis ondansetron 67% vs. placebo 45% (SS). Number of emetic episodes on worst day 1.4 vs. 3.1 (SS), also fewer days with emesis for ondansetron. Benefit during week 1-3, not after
 * Conclusion: Prophylactic ondansetron effective in preventing N/V in abdominal RT

NK-1 antagonists

 * Aprepitant (Emend) - PO

 * Aprepitant Protocol 052
 * 2003 PMID 14559886 -- "The oral neurokinin-1 antagonist aprepitant for the prevention of chemotherapy-induced nausea and vomiting: a multinational, randomized, double-blind, placebo-controlled trial in patients receiving high-dose cisplatin--the Aprepitant Protocol 052 Study Group." (Hesketh PJ, J Clin Oncol. 2003 Nov 15;21(22):4112-9. Epub 2003 Oct 14.)
 * Randomized. 530 patients, receiving cisplatin >=70 mg/m2 for first time. Arm 1) standard therapy (ondansetron + dexamethasone) vs. Arm 2) aprepitant + standard therapy. N/V episodes recorded in diary. CR defined as no emesis on days 1-5
 * Outcome: CR standard 52% vs. aprepitant + standard 73% (SS)
 * Conclusion: Addition of aprepitant provided superior protection against chemotherapy-induced nausea and vomiting


text:
User talk:Cadip92

== CADIP 92 ==

Hello wikiusers this is cadip 92. My name is Adwait. I m an INDIAN & live in Mumbai. I m studying in diploma 2nd Yr EXTC. I would be glad if U assist me by providing info on my career. Thank You. Yours Sincerely, Cadip 92

title: User talk:Cadip92