text:
Short introduction to the use of sewing machines

This book is a very short introduction to sewing machines descriptions and use of sewing, starting from zero knowledge about the topic.

The sewing machines that this book works with are made by Japanese manufacture Brother, the models worked with are:

 * XR7700
 * CS70001
 * C55055PRW

Chapter 1: Introduction
This guide will begins with keyword for sewing arts, types of sewing machines and parts of sewing machines.

Section 1: Keywords
The following words are required to be known prior starting the course.

Textile arts: Are arts and crafts that use plant, animal, or synthetic fibers to construct practical or decorative objects.

Sewing: Is the craft of fastening or attaching objects using stitches made with a sewing needle and thread, and currently with the help of sewing machines.

Fabric or textile: It is an umbrella term that includes various fiber-based materials, including fibers, yarns, filaments, threads, different fabric types, etc.

Thread: Is kept at the Bobbin winder and is extended towards the bobbin while it is hold through the needle and when the singer is in motion its sew 2 textiles together.

Stitch (textile arts): It is single turn or loop of thread, or yarn. There are many Types of machine stitches and many Types of hand stitches. The stitches could use one thread, but in sewing machines the stitches use 2 threads, they can be secured at the begining, the end or at any time in the sewing process.

Bobbin (also called spool): It is the part of a sewing machine on which the lower thread is wound.

Section 2: Types of sewing machines
1.- Mechanical sewing machines 2.- Electro-Mechanical sewing machines

3.- Electronic sewing machines 4.- Computerized sewing machines

5.- Sewing and embroidery machine.

6.- Overlockers.

Section 3: Sewing machine Parts
1. Bobbin and bobbin case:

2 Slide plate or bobbin cover

3 Presser foot: Types of feet: Feet and Shanks (High shank, low shank, blant slank)

4 Needle and needle clamp

5 Throat plate

6 Feed dogs

7 Tension regulator.

8 Take up level

9 Bobbin winder tension disk

10 Bobbin winder: Is where the supply of yarn or thread is kept.

11.- Thread Guides

12.- Spool Pin

13.- Flywheel

14.- Stitch Selector

15.- Stitch-Length Selector

16.- Stitch Width-Selector

17.- Menu Screen, if the sewing machine has a menu screen.

18.- Reverse-Stitch Button

19.- Foot Controller

Chapter 2: Getting the machine ready
Uncover the machine

Connect the machine to electricity source.

Turn on using the switch.

Connect the pedal.

Section 1.- Choose a thread and use it to load the bobbin with thread
Choose a thread of any type or desired color

Choose any empty bobbin

Put the thread in the spool pin.

Follow the instructions for loading the bobbin described in the diagram at the top of the machine, read the diagram that shows how to put to connect the thread to the bobbin, before pressing the pedal.

Take thread in a straight line and pass it around the circular and metallic hook as indicated.

Pass the extreme of the thread trough one of the holes of the bobbin, and surround the bobbin a few times with it.

Put the bobbin in the bobbin pin and move it to the left towards he bobbin presser to fix the bobbin as indicated in the diagram.

Turn on the machine and press the pedal to wind the bobbin and charge it with the thread, until the amount the thread on the bobbin is enough according the use for the day, practice or work.

Cut the thread, after this section is completed we have a thread and a bobbin charged with thread, both will be used to make one stitch that use both thread sources, these thread sources can be of the same or different color.

Notes:

Sewing machines use 2 threads to make a stitch...

one upper thread (the thread originally selected), this one will be kept in the thread pin at the top of the machine... and one lower thread (the one that was loaded into the bobbin or spool and will be located in the bobbin case at the base of the sewing machine)... Those 2 threads will make one stitch, after they are put in their place and the pedal is pressed, it will pick up the bottom thread and start to make the stitch in the fabric or paper used.

Now we have an upper thread and also a bobbin charged with thread that will become the lower thread.

Section 2 - Get the upper thread ready
Using the original thread located on the thread pin (not the one in the bobbin)in the top of the machine, follow the diagram

Take the upper thread out of the circular metallic hook and place it in the flat hook that is beside it as instructed in the diagram, this hook has a small metallic filament allowing the thread be in its place and also keeps it in place.

Follow the diagram and pass it through right space in the front of the machine, then pass the thread upwards in the space beside the first space, there is a metallic hook in the middle of that space, pass the thread on the left of that hook all the way to the upper part of the space and then pass it to downwards so it can be hold by the hook as indicated in the diagram, that extreme of the thread will be put later on the needle hole.

This upper thread now will be hold in the small hook besides the needle, and finally thread the needle passing the thread through the needle hole and get around five inches of the thread and place it on the left side.

Section 3 - Get the lower thread ready
Take the bobbin loaded with thread.

Uncover the bobbin case, for this press to the right the grey square beside the cover of the bobbin case.

Take the bobbin cover out

Put the bobbin loaded in its place and follow the instructions of how to put the thread out of the bobbin case this step will kept that extreme out of the bobbin case before it the stitch is started, after it the extreme will be in the stitch itself, when a step is finished it can be cut and put both upper and lower thread at the back of the sewing machine. This step does not need to be clock or anti clock wise as long as the diagram is followed.

put it up in the next hole and hang it in the metal in the upper part then put it down and put the thread on the needle and give 12 inches distance?

The foot should be up to prevent accidentally use the machine if the pedal was pressed by accident. If the foot is up the pedal will not move the needle..

Cover the bobbin case cover.

With this step complete the lower thread is ready to use and be picked up by the needled after it the needle is threaded and ready to use.

Section 4 - Thread the needle
This step will use both the upper thread and lower thread, to start, lift up the presser foot lifting its control, this will prevent the needle to move.

Move the machine dial (hand-wheel) located in the left side of the machine towards, until the central reach the upper part of the dial, this will lift the needle to the upper area, allowing to easily threading the thread trough it.

Use enough upper thread to allow pass it through the metallic hook located beside the needle as indicated (but not in excess)

Pass the thread trough the needle hole and take the thread to the left of the machine a few inches.

Tricks: Use a small piece of white paper behind the needle to see clearly the needle and its hole, also lift the needle with the dial, if desired, the foot presser can also be removed to allow extra focus.

Notes: The foot should be up to prevent accidentally use the machine if the pedal was pressed by accident. If the foot is up the pedal will not move the needle..

Take a practice sheet and put it under the presser foot, press the foot down pressing the "pressing foot level" upwards, assuring that the practice sheet or fabric is aligned with the desired line to thread through.

Turn on the sewing machine and press the pedal, this will allow the upper thread to pick up the lower thread and will start the stitch on the fabric.

For safety reasons the machine can be switched off when not used to prevent accidents for example, pressing by mistake the pedal.

With this step completed the needle is threaded and stitches can be made in a practice sheet or to unite two different textiles to make a piece.

Use practice sheets for improving speed and precision and testing new options.

Section 5 - Securing the thread
Using the reverse button will secure the sewing process at the beginning, at the end or at any part of the sewing, after it, put the machine in normal mode.

Section 6 - Completing a piece and cutting a thread
When a sewing step is completed, lift feed dog, move needle up, and pull the paper or fabrics towards oneself and cut the thread (composed by upper and lower threads) and put them in the back of the machine to continue using in the next steps if needed.

Section 7 - Starting a new section or piece
Hold the threads at the back of the machine allow up to 4 inches, to prevent the threads to be pulled into the bobbins, preventing machine damage.

Put the textile or practice sheet paper in place and align it properly,

Start the material not passing 5/8 sign, can also switch the side of the material or sheets,

Push down the presser foot control to allow the feed dog to be in place.

Only hold the threads at the beginning of sewing... then hold the fabrics with both hands all the time.

Turn the machine on.

Press the pedal, this will make the upper thread pick up the thread in the bobbin and create the stitch.

Chapter 3 - Changing the presser foots and type of stitches
Presser foots are attachments used with sewing machines to hold fabric flat as it is fed through the machine and stitched, three principal types of presser feet are the high-shank foot, the low-shank foot, and the slant-shank foot.

Feed dogs are a movable plates that pulls fabric through a sewing machine in discrete steps between stitches, different feed dogs allow to create different stitches patterns.

Some sewing machines allow to use more feed dogs and create more stitch patters.

Section 1 - Feed dogs
Feed dogs names use letters of the alphabet, some examples are J, N, among others.

Each feed dog allow to use a limited amount of stitch patterns.

Section 2 - Stitch patterns
In order to be able to use a specific stitch pattern, first has to be used the proper feed dog.

Each sewing machine has a limited number of stitch patters to select, in some the number goes form 00 to 69, in others machines this number or options is higher.

Section 3 - Changing the feed dog
Move the handwheel upwards to allow the needle go up.

Push the "pressing foot level" up.

Move the feed dog towards oneself put back button to reach Put new foot on

Now the new stitch options can be selected if allowed to be use by the new feed dog choosen.

And reverse the previous steps: Put the pressing foot down.

Section 4 - Selecting stitches patterns in the screen menu
Screen menu: In some sewing machines the menu has 2 controls in others 4 controls:

T, this option allows to choose tens numbers, for example, 2, if the stitch is 28. N, this option allow to choose the units or first digits, for example, 8 if the stitch is the number 28.

Length of stitch Wide of stitch

The stitches can be changed changing the stitch number, but the proper feed dog has to be chosen first.

Some sewing machines have 00 to 49 stitches, others 00 to 79 different stitches options.

Chapter 4 - Tension control and its use
Tension in the stitches can be higher, middle or lower, numerated 1, 2 and 3. If the material is strong the tension can be higher.

Chapter 5 - Speed control and its use
The speed can be controlled in three level of speeds, slower, medium and faster, in some machines this is included as part of the menu control, in others it has three controls for it )> >> >>>) and in other machines this option is controlled by the pressure on the foot pedal.

When the tension is higher is recommended to leave more than 4 inches of threads to the back of the machine, this will prevent it to be pulled into the bobbin.

Chapter 6 - Working with Textiles or fabrics
After practicing enough to sew in paper sheets start practicing with one or more pieces of fabrics.

Choose two pieces of textiles and use a pins kept in the pins holders and hold both pieces together with a one or more pins.

Start sewing, and take out the first pin before the needle reach to it, continue sewing and take the other pins before are reached by the needle to prevent damage in the needles or the sewing machine.

Chapter 7 - Thread jam
The thread can be jammed in the machine because of the following reasons:

Because there is not enough tread and it goes into the bobbin case at the beginning of the process.

Because there is too much tension, etc.

When this happen, If the thread is jammed into the bobbins, stop pressing the bobbin stop pedaling and take the thread and bobbin out and thread the needle again.

When the thread is jammed into the bobbin, just take out the needle in the bobbin an put it in its original position, the upper thread does not need to be adjusted or thread into the needled hole, then press the pedal, it will thread both threads together and the sewing process can be continued.

If the thread is jammed into the fabric, cut the thread, take the thread out of the fabric and start the process one more time.

Final steps
Clean the space

Turn off the machine

Unplug the machine electric cable

Put cover over the machine

Clean the rest of materials.


text:
User talk:2600:8800:1613:7D00:3889:B4CB:D67B:A13

--Xania   talk 03:16, 18 May 2023 (UTC)

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


text: Category:Book:SNK vs. Capcom: The Match of the Millennium


text: Category:Seaweed recipes

title: Category:Seaweed recipes


text:
Module:Message box/imbox.css

/* */ .imbox { margin: 4px 0; border-collapse: collapse; border: 3px solid #36c;   /* Default "notice" blue */ background-color: #fbfbfb; box-sizing: border-box; }

/* For imboxes inside imbox-text cells. */ .imbox .mbox-text .imbox { margin: 0 -0.5em; /* 0.9 - 0.5 = 0.4em left/right. */	/* TODO: Still needed? */	display: block; /* Fix for webkit to force 100% width. */ }

.imbox-speedy { border: 3px solid #b32424;   /* Red */ background-color: #fee7e6;   /* Pink */ }

.imbox-delete { border: 3px solid #b32424;   /* Red */ }

.imbox-content { border: 3px solid #f28500;   /* Orange */ }

.imbox-style { border: 3px solid #fc3;      /* Yellow */ }

.imbox-move { border: 3px solid #9932cc;   /* Purple */ }

.imbox-protection { border: 3px solid #a2a9b1;   /* Gray-gold */ }

.imbox-license { border: 3px solid #88a;      /* Dark gray */ background-color: #f7f8ff;   /* Light gray */ }

.imbox-featured { border: 3px solid #cba135;   /* Brown-gold */ }

.imbox .mbox-text { border: none; /* @noflip */ padding: 0.25em 0.9em; width: 100%; }

.imbox .mbox-image { border: none; /* @noflip */ padding: 2px 0 2px 0.9em; text-align: center; }

.imbox .mbox-imageright { border: none; /* @noflip */ padding: 2px 0.9em 2px 0; text-align: center; }

/* An empty narrow cell */ .imbox .mbox-empty-cell { border: none; padding: 0; width: 1px; }

.imbox .mbox-invalid-type { text-align: center; }

@media (min-width: 720px) { .imbox { margin: 4px 10%; } }

title: Module:Message box/imbox.css


text:
Category:CS1 errors: parameter link

__HIDDENCAT__

title: Category:CS1 errors: parameter link


text:
Talk:Public International Law/Approaches/Positivism

Review: May 29, 2023
Dear Basak and Alex,

Thank you for this important chapter! Please find my detailed comments in the text. Some overall points: - I find the chapter quite demanding for students. Would it maybe be possible to introduce some basic concepts in simpler words, and maybe use more examples to illustrate? - What I missed is the role of the rise of positivism in the development of international law (abandonment of natural law concepts etc.) - It would be great if you could systematically insert links to the other chapters (consent, enforcement, sources etc.)

Best, Raffaela

Review: May 19, 2023
Your chapter contains well-structured outline promises an engaging and essential exploration of positivist approaches to international law. I find this chapter to be a valuable resource for students and teachers. One of the commendable aspects of the written part of your chapter is its section that provide a historical context for positivism, particularly in relation to non-positivist approaches. By elucidating the distinguishing features of positivism, the chapter enables students to form their own perspectives on the topic. The explanations are clear and concise, making it easier for students to grasp the nuances and implications of positivist approaches to international law.

To further enhance the chapter's clarity, I would recommend the addition of a paragraph addressing the relationship between positivism and doctrinal approaches. As positivism and doctrinal approaches are often conflated, a dedicated paragraph on this topic would be highly beneficial.

You will also find some comments in your chapter in which I elaborate on something more specifically. To view these comments, just open you chapter page and click on "Edit" in the top-right menu bar.

Some minor things:

 * Some parts of the chapter are still missing. It would be great if you could finish the chapter by mid-June at the latest. The sooner you finish, the better we can review your chapter and the more time you have to use our comments to improve the chapter. Be prepared to edit your chapter at very short notice if you hand it in late.
 * There are some issues with the formatting of the footnotes, which are not always consistent with the OSCOLA citation style. To ensure the chapter is fully compliant with OSCOLA, you should review the formatting of the footnotes and make necessary corrections.
 * Note also that the following parts are still missing: required knowledge, learning objectives, further readings, conclusion
 * You could add some links to other chapters of the textbook.
 * Note that I have made some linguistic improvements to the text

Max Milas (discuss • contribs) 08:48, 19 May 2023 (UTC)


text:
Talk:Public International Law/Approaches/TWAIL

Review: May 29, 2023
This promises to become a great chapter. A more thorough review follows once the chapter is finalised. One small note at this stage: Please bear in mind the word count! The current structure looks more extensive than what we are able to submit to the publisher.

--Raffaela Kunz (discuss • contribs) 14:51, 29 May 2023 (UTC)

Review: May 19, 2023
Your chapter provides a comprehensive and well-structured explanation of TWAIL as an approach to international law. You adeptly outline the essential concepts associated with TWAIL, ensuring that students have a clear understanding of its history and concepts. The overall structure of the chapter is commendable, and the outlined content promises an engaging and essential contribution to the textbook.

You will also find some comments in your chapter in which I elaborate on something more specifically. To view these comments, just open your chapter page and click on "Edit" in the top-right menu bar.

Some minor things:

 * Some parts of the chapter are still missing. It would be great if you could finish the chapter by mid-June at the latest. The sooner you finish, the better we can review your chapter and the more time you have to use our comments to improve the chapter. Be prepared to edit your chapter at very short notice if you hand it in late.
 * There are some issues with the formatting of the footnotes, which are not always consistent with the OSCOLA citation style. To ensure the chapter is fully compliant with OSCOLA, you should review the formatting of the footnotes and make necessary corrections.
 * Note also that the following parts are still missing: required knowledge, learning objectives, further readings, conclusion
 * You could add some links to other chapters of the textbook.
 * Note that I have made some linguistic improvements to the text

Max Milas (discuss • contribs) 09:36, 19 May 2023 (UTC)


text:
Talk:Public International Law/Approaches/Marxism

Review: 30th May 2023
Dear Kanad, This is a brilliant chapter. I don't have much to add other than the small comments I left in the text and in addition one small remark here: I think it would be incredibly useful to simplify the chapter a little bit. Please keep in mind that the audience are mainly students who might be entirely unfamiliar with all they read. For me, the chapter reads more like a journal or handbook article for an expert audience and might be a bit difficult to follow for students. Best, Raffaela --Raffaela Kunz (discuss • contribs) 14:19, 30 May 2023 (UTC)

Review: 21 May 2023
Dear Kanad,

I love this chapter so much! I cannot help but imagine how many intellectual detours I would have been spared if I had encountered such a chapter in my first introductory textbook on international law and am excited about the prospects of students getting to engage with international law through a Marxist lens from the beginning of their studies. Overall, if you add a few links to other chapters (I have indicated in comments within the text where I think these would be most helpful) and a few more examples and references like Max said, this chapter is good to go. Regarding the 'required knowledge' section: You can link to the general introduction to the 'Approaches' Chapter (https://en.wikibooks.org/wiki/Public_International_Law/Approaches), which will hopefully be written within the next few days.

Warmly, Sué

Sué González Hauck (discuss • contribs) 10:16, 21 May 2023 (UTC)

Review: May 19, 2023
One of the notable strengths of your chapter is its clear and structured presentation. You adeptly guides students through the foundational concepts of Marxism, ensuring that students can grasp the core principles with ease. Furthermore, you seamlessly integrates these Marxist concepts into the realm of international law, allowing readers to understand their application within this specific context.

While your chapter effectively introduces the key concepts of Marxism, I would suggest enhancing it by providing additional examples that demonstrate how doctrinal international law can be viewed from a Marxist perspective. By illustrating specific instances in which Marxist approaches can be applied to the analysis of international law, students will gain a deeper understanding of how to employ Marxist frameworks in their own examinations. It is encouraging to see that you have already incorporated this approach in some sections, and expanding upon it throughout the chapter would greatly benefit students' learning experience.

You will also find some comments in your chapter in which I elaborate on something more specifically. To view these comments, just open your chapter page and click on "Edit" in the top-right menu bar.

Some minor things:

 * There are some issues with the formatting of the footnotes, which are not always consistent with the OSCOLA citation style. To ensure the chapter is fully compliant with OSCOLA, you should review the formatting of the footnotes and make necessary corrections.
 * Note also that the following parts are still missing: required knowledge, learning objectives, further readings, conclusion
 * You could add some links to other chapters of the textbook.
 * Note that I have made some linguistic improvements to the text

Max Milas (discuss • contribs) 14:51, 19 May 2023 (UTC)


text:
User:Stanisavinopotoce1800

Welcome on my user page. I will write pages on Christian,other Religious topics, Slavic topics, Social, Natural, Historic and programming ones. Especially important topic is reconstruction relations between various communities..the ways how we can live better and together with satisfaction, joy and mutual gratitude not with suspicion each other.

title: User:Stanisavinopotoce1800


text:
User:Alex Julián Martínez

Hi guys! Welcome to my user page.

title: User:Alex Julián Martínez


text:
Talk:Public International Law/State Responsibility

Review: 4 June 2023
Dear Walter, I agree with my two colleagues that this chapter needs a bit more material. I also found it too descriptive and missed more examples and also your personal voice, guiding students and emphasising the legal questions that you find important. Also a stronger conceptualisation and contextualisation is needed and more references to the relevant case-law and literature.

I left my comments in the text.

Best, Raffaela--Raffaela Kunz (discuss • contribs) 08:29, 4 June 2023 (UTC)

Review: 26 May 2023
I agree with Max and commend you on providing a clearly structured introduction to the doctrines students will need to know to pass exams, participate in moot courts etc. It may be hard to get students excited about the field of state responsibility and foster their curiosity due to the lack of specific examples and also due to the lack of contextualisation on why these rules matter, how they came about, what effect they have in the world etc. Given that - unlike many other chapters - this chapter is still well below the word count, you could still add both more examples and more historical, political and theoretical context. I also think that you need to include more sources, not only to increase the academic credibility and quality of the chapter, but also so that students can see where they can look for more elaborate accounts of what you are saying. Allow me to suggest some sources, which would also provide some inspiration for examples or contextualisations you could offer. I don't want to impose the critical stance some of these sources adopt on you, but I would love it if you could at least engage with some of their arguments, and I also think this would make the chapter fit better into the overall concept of the book as expressed in our guideline on didactics. Some additional sources I would suggest are: Creutz, Katja, State Responsibility in the International Legal Order Giuffrée, Mariagiulia, State Responsibility Beyond Borders
 * Allott, Philip, State Responsibility and the Unmaking of International Law
 * Aust, Helmut Philip, Complicity and the Law on State Responsibility
 * Brown Weiss, Edith, Invoking State Responsibility in the 21st century
 * Brunnée, Jutta, International legal accountability through the lens of the law of state responsibility
 * Caron, David, The ILC Articles on State Responsibility: The Paradoxical Relationship Between Form and Authority
 * Chimni, B.S:, The Articles on State Responsibility and the Guiding Principles of Shared Responsibility: A TWAIL Perspective
 * Greenman, Kathryn, Aliens in Latin America: Intervention, Arbitration and State Responsibility for Rebels, 31 Leiden J. Int’l L. 617 (2018).
 * Knox, Robert and Tzouvala, Ntina, International Law of State Responsibility and COVID-19: An Ideology Critique
 * Koskenniemi, Martti, Solidarity Measures: State Responsibility as a New International Order
 * Paparinskis, Martins, The Once and Future of State Responsibility
 * Perkins, John A., The Changing Foundations of International Law: From State Consent to State Responsibility
 * Proulx, Vincent-Joel, Institutionalizing State Responsibility (OUP 2016)
 * Rapp, Kyle, Social media and genocide: the case for home state responsibility
 * Sander, Barrie, Democracy under the influence
 * Shelton, Dinah, Righting Wrongs
 * Tzakanopoulos, Antonios, State Responsibility for Targeted Sanctions
 * Voigt, Christina, State Responsibility for Climate Change Damages
 * Wong, Meagan, The Law of State Responsibility and COVID-19
 * Lanovoy, Vladyslav, The Guiding Principles on Shared Responsibility
 * Quintana, Francisco José, and Uriburu, Justina, Modest International Law
 * M. Yakub Aiyub Kadir, Siti Nurhaliza, State Responsibility of Afghanistan Under Taliban Regime

I hope you find some of these sources helpful as you revise your chapter.

With best wishes, Sué González Hauck (discuss • contribs) 15:59, 26 May 2023 (UTC)

Review: May 20, 2023
Your chapter's clear structure provides an excellent learning resource for students seeking to understand the intricacies of state responsibility. One commendable aspect of the chapter is its potential usefulness for case studies and moot courts. The comprehensive coverage and systematic approach facilitate the application of legal principles to practical scenarios, making it an ideal resource for students engaged in these questions.

However, while discussing the attribution of acts, your chapter predominantly relies on legal provisions without delving into the interpretation of key terms. It would greatly enhance the chapter's content if you included additional explanations, such as clarifying when "direct control" can be established or outlining the circumstances in which a state can be held responsible for another state's violation of international law.

Another area that would benefit from improvement is the scarcity of footnotes and references. Including more citations and sources would enhance the chapter's academic credibility and assist students in further exploring the subject matter.

Furthermore, it would be beneficial to incorporate case law from the ICJ into the chapter. Integrating relevant precedents from the ICJ's jurisprudence would provide students with practical examples and illustrate the application of state responsibility in real-world situations. This would also be helpful for students engaged in moot courts.

You will also find some comments in your chapter in which I elaborate on something more specifically. To view these comments, just open your chapter page and click on "Edit" in the top-right menu bar.

Some minor things:

 * There are some issues with the formatting of the footnotes, which are not always consistent with the OSCOLA citation style. To ensure the chapter is fully compliant with OSCOLA, you should review the formatting of the footnotes and make necessary corrections.
 * Note also that the following parts are still missing: required knowledge, learning objectives, further readings, conclusion
 * You could add some links to other chapters of the textbook.
 * Note that I have made some linguistic improvements to the text

Max Milas (discuss • contribs) 07:42, 20 May 2023 (UTC)


text: Talk:Planet Earth/7h. Soil: Living Dirt

title: Talk:Planet Earth/7h. Soil: Living Dirt


text:
Talk:I Ching/The Moving Line

Translation wrongly attributed.
It appears that the translation is wrongly attributed to Legge. This seems to be Wilhelm/Baynes. Shaman hill (discuss • contribs) 12:50, 20 May 2023 (UTC)

title: Talk:I Ching/The Moving Line


text:
Talk:Public International Law/Diplomatic Relations

Review: 4 June 2023
Dear Walter,

I agree with my two colleagues and only added very few additional comments in the text. I also missed in particular some elaborations on diplomatic and consular protection (Avena cases, LaGrand etc.) and a reference to the fact that historically, the status of the individual in IL was mediated by the state through diplomatic protection which is indeed a significant shift.

Best, Raffaela --Raffaela Kunz (discuss • contribs) 16:25, 4 June 2023 (UTC)

Review: 27 May 2023
Dear Walter,

Thank you for contributing this important chapter to the book. I agree with Max, however, in that it requires significant revision in the sense of restructuring and adding more details. Some 'classical' topics, which are missing, are the field of diplomatic protection, which is the context in which textbooks also usually discuss the Nottebohm case. The chapter on individuals as subjects and actors in international law makes ample reference to the LaGrand case, so it would be great if you would cover the basics relating to consular law in this chapter. Also, the chapter would greatly benefit from a more detailed discussion both of the historical development and context of the law on diplomatic relations and from some examples of currently discussed issues (e.g., diplomatic immunities, domestic staff working for diplomats and labour law). The chapter also requires a lot more references in order both to meet academic standards of good scholarship and to provide students with an entry-point for diving deeper into the literature if they so wish. Here is a list of works you could use in order to add more details, nuance, context, and academic credibility to your chapter. The Peace Palace Library Research Guide on Diplomacy contains a long list of sources you could use.

With best wishes, Sué Sué González Hauck (discuss • contribs) 10:32, 27 May 2023 (UTC)

Review: May 20, 2023
In my opinion, this chapter on diplomatic law in the textbook requires some revisions. I would suggest starting with the key concepts derived from the VCDR and the VCCR. The chapter's structure needs to be adjusted accordingly. Currently, many sections assume that students already possess a basic understanding of the essential points in diplomatic law. However, we should bear in mind that this textbook primarily targets students who have no prior knowledge of diplomatic law.

This would be my suggestion for revised structure:

 * 1) Historical Development of Diplomatic Law
 * 2) Diplomatic and consular missions
 * 3) Immunities and Privileges
 * 4) Functions and Obligations
 * 5) Dispute Settlement
 * 6) Contemporary Issues

From a language perspective, the chapter requires some revisions, such as verb tense, lengthy sentences, and occasionally convoluted phrasing.

It would also be beneficial to incorporate case law from the ICJ into the chapter.

Another area that would benefit from improvement is the scarcity of footnotes and references. Including more citations and sources would enhance the chapter's academic credibility and assist students in further exploring the subject matter.

You will also find some comments in your chapter in which I elaborate on something more specifically. To view these comments, just open your chapter page and click on "Edit" in the top-right menu bar.

Some minor things:

 * There are some issues with the formatting of the footnotes, which are not always consistent with the OSCOLA citation style. To ensure the chapter is fully compliant with OSCOLA, you should review the formatting of the footnotes and make necessary corrections.
 * Note also that the following parts are still missing: summary
 * You could add some links to other chapters of the textbook.
 * Note that I have made some linguistic improvements to the text

Max Milas (discuss • contribs) 13:57, 20 May 2023 (UTC)


text:
Talk:Public International Law/Immunities

Review: 27 May 2023
Dear Beatrice,

I completely agree with Max. This is an outstanding chapter, and I am looking forward to seeing the full draft. Even the parts that are just in bullet points seem really well-developed, and they offer some critical and historical context, which fits very well with the overall approach of the book. Thank you so much! Unfortunately, I also have to remind you to remain within the 9000-word limit, given that we are struggling to keep the book overall under the word count on which we agreed with Routledge.

Warm regards,

Sué

Sué González Hauck (discuss • contribs) 14:00, 27 May 2023 (UTC)

Review: May 20, 2023
Your chapter on immunity law provides a well-structured, comprehensible, and systematic treatment of this subject matter. It offers a thorough discussion of the most relevant issues. The chapter stands out for its excellent and detailed analysis of court decisions related to immunity law. The inclusion of these cases enhances the readers' understanding and provides practical examples to illustrate the concepts discussed. I particularly appreciate the critical perspective presented in certain sections of the chapter. By offering this alternative viewpoint, it encourages students to engage in a deeper analysis of the complexities surrounding immunity law.

While the chapter is already quite lengthy, it is important to ensure that the word count does not exceed the 9,000-word limit. Despite the need for further elaboration in some parts, it is essential to maintain a balance between providing comprehensive content and adhering to the word limit.

You will also find some comments in your chapter in which I elaborate on something more specifically. To view these comments, just open your chapter page and click on "Edit" in the top-right menu bar.

Some minor things:

 * Some parts of the chapter are still missing. It would be great if you could finish the chapter by mid-June at the latest. The sooner you finish, the better we can review your chapter and the more time you have to use our comments to improve the chapter. Be prepared to edit your chapter at very short notice if you hand it in late.

 * There are some issues with the formatting of the footnotes, which are not always consistent with the OSCOLA citation style. To ensure the chapter is fully compliant with OSCOLA, you should review the formatting of the footnotes and make necessary corrections.
 * Note also that the following parts are still missing: required knowledge, learning objectives, further readings, conclusion
 * You could add some links to other chapters of the textbook.
 * Note that I have made some linguistic improvements to the text

Max Milas (discuss • contribs) 14:30, 20 May 2023 (UTC)


text:
Nuclear Energy/Atom components

An atom is the smallest constituent particle of an element, which itself consists of the following particles:

Protons and neutrons form the nucleus, and the mass of each atom goes back to its nucleus The space around the nucleus is surrounded by electrons, and the chemical behavior of each atom is related to its electrons.
 * Proton
 * Neutron
 * Electron

title: Nuclear Energy/Atom components


text:
User:Indian Intellectuals

AC Satapathy IAS Physics Author (India)

Research Physicist (USA, Canada)

GRE- Physics Author(150 countries)

title: User:Indian Intellectuals


text:
Nuclear Energy/nuclear energy

Nuclear energy is the use of thermogenic nuclear processes to generate useful heat and electricity. This term includes nuclear fission, radiation and nuclear fusion. Today, the nuclear fission of actinide elements in the periodic table produces most of the nuclear energy needed by humans using radiation processes, which primarily satisfies human needs in the form of geothermal energy and isotopic heat-electric generators. Nuclear power plants, apart from their share in providing nuclear fission reactors for the Navy, provided about 5.7% of the world's energy and 13% of the world's electricity in 2012. In 2013, the International Atomic Energy Agency reported that there were 437 operating nuclear reactors in 31 countries, although not all reactors produce electricity. In addition, there are more or less 140 naval ships that provide their nuclear propulsion using about 180 reactors. After 2013, achieving a net increase in energy by means of stable nuclear fusion, excluding fusion energy sources such as the Sun, has created an ongoing space for physics and engineering research. Nuclear energy is a type of energy produced by nuclear decay, nuclear fission, or nuclear fusion, and its basis can be described by the equation ΔE = Δm.c².

In each atom, there are particles of hidden energy that are connected by the different parts of the atom, so the nucleus of the atom is considered a source of energy that is released when the atom splits. The energy contained in the nucleus of the atoms of some elements (such as uranium) can be released to do the same thing as burning a lot of oil and gas, which, of course, creates environmental problems and produces a lot of greenhouse gas.

Nuclear power negotiations are ongoing. Proponents such as the World Nuclear Organization, the International Atomic Energy Agency, and nuclear energy environmentalists claim that nuclear energy is a safe and sustainable energy source that reduces carbon emissions. Opponents such as the World Green Peace Organization and Nuclear Information and Resources Services believe that nuclear energy is a great danger to humans and the environment.

Nuclear and radiation incidents and events include Chernobyl accident (1986), Fukushima 1 nuclear accident (2011) and Three Mile Island accident (1979). Several underwater incidents have happened so far. Examining the loss of life per unit of energy produced, they show that nuclear energy causes fewer deaths than other major energy sources. Energy from coal, oil, natural gas and hydropower cause more deaths per unit of energy produced due to air pollution and energy accidents. The human cost of evacuating populations affected by lost livelihoods is enormous.

Along with other sustainable energy sources, nuclear energy is a low-carbon energy production method for creating electricity, which is similar to other renewable sources in terms of greenhouse gas emissions per unit of energy produced. In this way, since the beginning of the commercialization of nuclear power plants in the 1970s, the production of 64 gigatons of carbon dioxide equivalent has been avoided.

After 2012, according to the International Atomic Energy Agency, 68 nuclear reactors were under construction in 15 countries, with approximately 28 of the newest nuclear reactors belonging to the People's Republic of China. They were connected to Turin Electric after May 2013. This incident happened on February 17, 2013 at the Hengian nuclear power plant in China. In the United States, two new generation three reactors are under construction at Vogtel. Top US nuclear industry officials expect five new reactors to be installed in all existing plants by 2020. In 2013, the four-year-old, non-competitive reactors were permanently decommissioned.

Japan's Fukushima 1 nuclear accident in 2011, which occurred at a reactor designed in the 1960s, prompted a re-examination of nuclear safety and security and nuclear energy policy in many countries. Germany has decided to decommission all its reactors by 2022 and Italy has banned nuclear power. After the Fukushima incident in 2011, the International Atomic Energy Agency has decided to cut nuclear power generation capacity in half by 2035.

title: Nuclear Energy/nuclear energy


text:
Nuclear Energy/Nuclear technology

Nuclear technology refers to the ability to convert naturally occurring uranium into enriched uranium, which is obtained through the fission of atoms, which has a lot of energy. By fissioning the nucleus or the uranium atom, nuclear energy is released in the form of heat and thermal energy, which can be used to generate water vapor and turn electricity generating turbines. Uranium is one of the dense radioactive metals that exist in nature. This metal exists in most areas such as: rocks, soil, deep sea and oceans, so that its presence and distribution is more than gold, silver or mercury. This metal exists in the form of oxide or mixed salts in minerals such as uranite or caronite, and in terms of color; It is silvery white and flexible.

History of nuclear technology About three centuries BC, Democritus, a Greek scientist, after studying things, realized that things are composed of very small and decomposable particles in addition to their appearance. He named these particles "atom" which means "unbreakable". Centuries after this discovery, in 1700 AD, John Dalton, an English scientist, also discovered that atoms can be broken down. But this result remained at the limit of theory. Until in 1927, Albert Einstein, a German American scientist, proved the theory of atomic disintegration in a practical way. After this discovery, the first nuclear test was carried out in the Nevada desert by the United States, and at the end of World War II, it was used to rain bombs on Japanese cities. After the United States, in 1949, the Soviet Union was able to acquire nuclear weapons and put them into action. With the increase in the demand for the production of nuclear weapons by powerful countries such as France and China, the leaders of the countries thought of controlling the production of this destructive weapon and suggested the use of destructive energy for peace. For this purpose, in 1954, US President Eisenhower proposed the "Atoms for Peace" program. Following this proposal, from 1954 to 1956, the organization's statutes were drafted and after that the "Nuclear Energy Agency" was formed. In 1968, the Nuclear Energy Agency approved the "Non Proliferation of Nuclear Weapons Treaty" (Non Proliferation of Nuclear Weapons Treaty) by the United Nations General Assembly and it became effective in 1970. Currently, 189 countries are members of this treaty.

title: Nuclear Energy/Nuclear technology


text:
Nuclear Energy/Nuclear reactor

A nuclear reactor is a nuclear reactor or an atomic reactor, a device for carrying out nuclear reactions in a regulated and controlled manner. This device is used in laboratory sizes for the production of special isotopes of radioactive materials, as well as reactors for the production of electrical energy and the production of neutrons. The size and design of the reactor varies according to its work. The fission process in which a neutron is absorbed by a heavy nucleus (with a large mass) and then splits into two smaller nuclei with the release of energy and a few more neutrons.

title: Nuclear Energy/Nuclear reactor


text:
Nuclear Energy/Nuclear medicine

Nuclear medicine is one of the imaging and diagnostic methods in which small amounts of radioactive material are used to diagnose, evaluate or treat various diseases such as cancer, heart diseases, digestive system problems, endocrine or neurological disorders and other abnormalities. will be Since this method can determine the molecular activity, it has the potential to detect the disease in the early stages. It can also show whether the patient has responded to treatment. In this article, we have introduced and reviewed nuclear medicine, how to diagnose diseases by this method and how to do it.

title: Nuclear Energy/Nuclear medicine


text:
Associative Composition Algebra/Bibinarions

A construction of a doubled algebra was initiated by L. E. Dickson and recounted by A. A. Albert. The method presumes an algebra with conjugate * and produces one of double the dimension and a new conjugation: (u, v)* = (u*, −v) where u* denotes the original conjugation. The new algebra has products given by
 * $$(u,v)\times(w,x) = (uw - vx^*, ux + vw^*).$$

Starting with a field and its conjugation, a sequence of algebras can be so constructed. The division binarions arises when the starting field is the real numbers $$\reals .$$ Since the reals have no conjugation, the identity is substituted, and the conjugation arises as above. Continuing with the construction, using the binarion conjugate, quaternions are obtained as will be seen. However, the binarion conjugation may be forgotten (identity substituted), and bibinarions produced according to the Dickson/Albert method given above.

A bibinarion is then a pair of division binarions (u, v) with conjugation (u, v)* = (u, −v). The norm of a bibinarion is then
 * $$(u,v)(u,v)^* = (u,v)(u, -v) =( u^2 - v(-v),\ u(-v) + vu) =( u^2 +v^2,\ 0) .$$

Notice that this norm is a division binarion, and is not the kind of norm that produces a metric.

Furthermore, with i2 = −1 in C, a bibinarion (u, i u) has zero norm. Such an element is called a null vector. The bibinarions form a split algebra since some elements are null vectors.

The product of two bibinarions is commutative since the generating conjugation is the identity. Most remarkably, there is bibinarion j = (0, i) with j2 = (0, i)2 = (−i2, 0) = +1. The two-dimensional subalgebra of bibinarions on basis {1, j } is called split binarions.

History
The idea of an algebra with two imaginary units that commute was considered in mid-19th century Britain. Hamilton used a commuting h with his biquaternions. James Cockle saw that the square of the product hi of imaginary units was plus one, thus creating "a new imaginary in algebra" as he wrote in Philosophical Magazine in 1848. His use of the letter j,  j2 = +1, has been widely adopted. Although Hamilton provided a vocabulary of vector operations (including the del operator), these explorations preceded set theory, group theory, and the unfolding of mathematical notation. With 1 on the real axis, the two imaginary units h and i, and their product hi, Cockle's commutative algebra T (tessarines) has a real basis of four elements. By the end of the 19th century tessarines and quaternions were referred to as hypercomplex numbers.

In 1892 Corrado Segre introduced bicomplex numbers in Mathematische Annalen (v 40: 455 to 67).

The division binarion basis of this algebra is used in the Dickson-style construction of biquaternions.


text:
Fluid Mechanics/Incompressible Flow

In fluid mechanics, incompressible flow refers to a flow in which the material density is constant within a fluid parcel - an infinitesimal volume that moves with the flow velocity. This means that the volume of the fluid remains unchanged regardless of the pressure changes that the fluid may undergo. In other words, the flow is isochoric. It is important to note that the fluid itself doesn't need to be incompressible, rather the condition of incompressibility is imposed on the flow, and the density remains constant within the fluid parcel that flows. Even compressible fluids can, under the right conditions, be modelled as incompressible flow.

When a fluid flows, the continuity equation for conservation of mass is reduced to div(u) = 0, which describes the constraint that the divergence of the flow velocity is zero. This condition is also known as solenoidal flow velocity field. Incompressibility also implies that the total mass flow rate across any section of the flow must be constant - the mass flow rate must be the same at every point along a streamline.

Incompressible flow is commonly used in fluid dynamics for several reasons. Since the density of the fluid remains constant along the streamline, the flow can be modelled using the Navier-Stokes equations, which simplifies the mathematical computations involved in fluid analysis. Furthermore, incompressible flow is an assumption used while analyzing certain fluid systems to save time and resources. While it is not realistically possible for a flow to be entirely incompressible, an incompressible flow approximation is a good-enough simplification in many instances.

Solutions to the incompressible flow equations require specific mathematical techniques like the finite volume method or the finite element method. Since the equations of incompressible flow are highly stringent, they need more accurate and reliable numerical approximations for solving them.

In conclusion, incompressible flow is used to refer to a flow whose density remains constant within a fluid parcel, even when the pressure varies; this does not mean that the fluid itself is incompressible. The flow can be mathematically modelled with equations that assume continuity and incompressibility and require specific numerical methods. The incompressibility assumption simplifies computations while still providing a good approximation to actual fluid conditions.

Sure, here are some additional details about incompressible flow:

Incompressible flow is typically assumed in situations where the pressure gradients are small and the flow speeds are low to moderate. For example, many fluid systems involving liquids like water, oil, or blood, are often characterized by incompressible flow since the density changes due to compression or expansion effects are negligible in comparison to the other flow parameters.

Incompressible flow is also widely used in aerodynamics studies, particularly for laminar or slow-speed flows. This assumes the fluid behaves similarly to an incompressible one due to negligible compressibility effects. However, as the speed increases to reach above certain threshold values, the density changes can no longer be ignored, and the compressibility effects need to be taken into consideration for accurate modeling.

Some popular examples of incompressible flow applications are seen in fluid dynamics, water quality modeling, and hydraulic engineering. Several other areas where incompressible flow modeling is useful include blood flow analysis in human circulatory systems, water treatment facilities, cooling systems of electrical components, and marine and coastal engineering.

Incompressible flow can also be studied using experimental techniques. Techniques like particle image velocimetry (PIV) are convenient for analyzing and visualizing the fluid flow patterns through images of particle trajectories. This helps in understanding the flow phenomena and in validating the numerical solutions of specific flow problems.

The incompressibility assumption has a significant advantage in that it simplifies the mathematical equations that govern fluid flow. The continuity equation and the Navier-Stokes equations for incompressible flow can be solved using analytical and numerical techniques, allowing engineers and researchers to make predictions about the behavior of fluids under different conditions.

One important implication of incompressible flow is that the speed of sound is infinite within the fluid. This is because sound waves are changes in pressure that propagate through a fluid by compressing and rarefying it. However, in an incompressible fluid, changes in pressure do not cause any corresponding changes in density, and hence the fluid is unable to support sound waves. This means that the fluid behaves somewhat differently than a compressible fluid, and the physics of incompressible flow is unique to this type of fluid flow.

Another important consideration in incompressible flow is the concept of boundary layers. Boundary layers form when a fluid flows over a solid surface. Due to friction between the fluid and the solid surface, the velocity of the fluid at the surface decreases to zero, and the velocity gradient in a thin layer near the surface is high. This layer is called the boundary layer, and its thickness depends on the Reynolds number of the flow. In incompressible flow, the boundary layer can be modeled using the boundary layer equations, allowing researchers to make predictions about the heat transfer and drag on a solid surface.

Incompressible flow is also affected by external forces such as gravity and centrifugal forces. These forces can cause the fluid flow to become unstable, and researchers have developed various theoretical models, such as the Prandtl boundary layer theory, to describe this behavior.

Finally, it is worth noting that while incompressible flow is a simplification of reality in many cases, it is an important concept in fluid mechanics and has numerous practical applications in engineering, physics, and other fields. It is a fundamental concept that underpins much of our understanding of fluid flow, and researchers continue to study and refine models of incompressible flow to improve our understanding of the behavior of fluids in different situations.

title: Fluid Mechanics/Incompressible Flow


text:
Cookbook:Manhattan Clam Chowder II

Ingredients

 * 2 jars (23 ounces) clams or 2 packages (24 ounces) frozen clams
 * 1 cup sliced celery
 * 2 tablespoons chopped parsley
 * ¼ pound salt pork, diced
 * 1 bay leaf
 * 3 medium onions, diced
 * ¼ teaspoon thyme
 * 2 cups chopped tomatoes
 * 2 medium potatoes, diced
 * 1½ quarts water
 * 1 cup diced raw carrots
 * 8–10 soda crackers
 * Salt to taste
 * Pepper to taste

Procedure

 * 1) Strain the clam juice.
 * 2) Put the clams through food chopper, using the coarse blade.
 * 3) Fry pork in a heavy iron pot.
 * 4) Remove pork, and sauté onions in the fat until tender and lightly browned.
 * 5) Add tomatoes and cook for 5 minutes.
 * 6) Add water, carrots, celery, and herbs.
 * 7) Cover pot and gently simmer for 1½ hours.
 * 8) Add clams, strained clam juice, and potatoes; cook until potatoes are tender.
 * 9) Season with salt and pepper to taste.
 * 10) Bring to a boil, pour over crumbled soda crackers in individual plates, and serve at once.

Notes, tips, and variations

 * You can use a low-fat cut of pork to lower the fat and calories of this dish.

title: Cookbook:Manhattan Clam Chowder II


text:
Module:Footnotes

require('strict'); local getArgs = require ('Module:Arguments').getArgs;

--[[--< A R G S _ D E F A U L T >--

a table to specify initial values.

]]

local args_default = { bracket_left = '', bracket_right = '', bracket_year_left = '', bracket_year_right = '', postscript = '', page = '', pages = '', location = '', page_sep = ", p. ", pages_sep = ", pp. ", ref = '', template = 'harv',															-- if template name not provided in use this };

--[[--< T A R G E T _ C H E C K >--

look for anchor_id (CITEREF name-list and year or text from |ref=) in anchor_id_list

the 'no target' error may be suppressed with |ignore-err=yes when target cannot be found because target is inside a template that wraps another template; 'multiple targets' error may not be suppressed

]]

local function target_check (anchor_id, args) local namespace = mw.title.getCurrentTitle.namespace; local anchor_id_list_module = mw.loadData ('Module:Footnotes/anchor_id_list'); local anchor_id_list = anchor_id_list_module.anchor_id_list; local article_whitelist = anchor_id_list_module.article_whitelist; local template_list = anchor_id_list_module.template_list; local whitelist_module = mw.loadData ('Module:Footnotes/whitelist'); local whitelist = whitelist_module.whitelist; local special_patterns = whitelist_module.special_patterns; local DNB_special_patterns = whitelist_module.DNB_special_patterns; local DNB_template_names = whitelist_module.DNB_template_names;

if 10 == namespace then return '';																-- automatic form of |no-tracking=yes; TODO: is this too broad? end

local tally = anchor_id_list[anchor_id];									-- nil when anchor_id not in list; else a tally local msg; local category;

if not tally then if args.ignore then return '';															-- if ignore is true then no message, no category end if article_whitelist and article_whitelist[anchor_id] then				-- if an article-local whitelist and anchor ID is in it			return '';															-- done end local wl_anchor_id = anchor_id;											-- copy to be modified to index into the whitelist if args.year then														-- for anchor IDs created by this template (not in |ref=) that have a date if args.year:match ('%d%l$') or										-- use the date value to determine if we should remove the disambiguator args.year:match ('n%.d%.%l$') or				args.year:match ('nd%l$') then wl_anchor_id = wl_anchor_id:gsub ('%l$', '');				-- remove the disambiguator end end

local t_tbl = whitelist[wl_anchor_id];									-- get list of templates associated with this anchor ID

if t_tbl then															-- when anchor ID not whitelisted t_tbl is nil for _, t in ipairs (t_tbl) do										-- spin through the list of templates associated with this anchor ID				if template_list[t] then										-- if associated template is found in the list of templates in the article return '';													-- anchor ID is whitlisted and article has matching template so no error end end end

for _, pattern in ipairs (special_patterns) do							-- spin through the spcial patterns and try to match if anchor_id:match (pattern) then return ''; end end

for _, dnb_t in ipairs (DNB_template_names or {}) do					-- getting desparate now, are there any DNB templates? DNB_template_names may be nil; empty table prevents script error if template_list[dnb_t] then										-- if the article has this DNB template for _, pattern in ipairs (DNB_special_patterns) do				-- spin through the DNB-specifiec wildcard patterns if anchor_id:match (pattern) then							-- and attempt a match return '';												-- found a match end end end end

msg = 'no target: ' .. anchor_id;										-- anchor_id not found category = '';

elseif 1 < tally then msg = 'multiple targets (' .. tally .. '×): ' .. anchor_id;				-- more than one anchor_id in this article category = 0 == namespace and  or ;								-- only categorize in article space return ' ' .. args.template .. ' error: ' .. msg .. ' (help) ' .. category; end

--	category = 0 == namespace and  or ;	-- only categorize in article space category = 0 == namespace and category or '';								-- only categorize in article space

--use this version to show error messages --	return msg and ' ' .. args.template .. ' error: ' .. msg .. ' (help) ' .. category or ''; --use this version to hide error messages return msg and ' ' .. args.template .. ' error: ' .. msg .. ' (help) ' .. category or '';

end

--[[--< I S _ Y E A R >

evaluates param to see if it is one of these forms with or without lowercase letter disambiguator: YYYY n.d.	nd c. YYYY YYYY–YYYY	(separator is endash) YYYY–YY		(separator is endash)

return true when param has a recognized form; false else

]]

local patterns_date= { '^%d%d%d%d?%l?$', '^n%.d%.%l?$', '^nd%l?$', '^c%. %d%d%d%d?%l?$', '^%d%d%d%d–%d%d%d%d%l?$', '^%d%d%d%d–%d%d%l?$', }

local function is_year (param, args) args.year = '';																-- used for harv error; for _, pattern in ipairs (patterns_date) do		if mw.ustring.match (param, pattern) then args.year = param;													-- used for harv error; return true; end end end

--[[--< C O R E >--

returns an anchor link (CITEREF) formed from one to four author names, year, and insource location (|p=, |pp=, loc=)

]]

local function core( args ) local result; local err_msg = ''

if args.P5 ~= '' then if is_year (args.P5, args) then result = table.concat ({args.P1, ' et al. ', args.bracket_year_left, args.P5, args.bracket_year_right}); else args.P5 = '';														-- when P5 not a year don't include in anchor result = table.concat ({args.P1, ' et al.'});						-- and don't render it		end

elseif args.P4 ~= '' then if is_year (args.P4, args) then result = table.concat ({args.P1, ', ', args.P2, ' & ', args.P3, ' ', args.bracket_year_left, args.P4, args.bracket_year_right});	-- three names and a year else result = table.concat ({args.P1, ' et al.'});						-- four names end

elseif args.P3 ~= '' then if is_year (args.P3, args) then result = table.concat ({args.P1, ' & ', args.P2, ' ', args.bracket_year_left, args.P3, args.bracket_year_right});	-- two names and a year else result = table.concat ({args.P1, ', ', args.P2, ' ', ' & ', args.P3});	-- three names end elseif args.P2 ~= '' then if is_year (args.P2, args) then result = table.concat ({args.P1, ' ', args.bracket_year_left, args.P2, args.bracket_year_right});	-- one name and year else result = table.concat ({args.P1, ' & ', args.P2});				-- two names end else result = args.P1;														-- one name end -- when author-date result ends with a dot (typically when the last positional parameter holds 'n.d.') -- and when no in-source location (no |p=, |pp=, or |loc=) -- and when the first or only character in args.postscript is a dot -- remove the author-date result trailing dot -- the author-date result trailing dot will be replaced later with the content of args.postscript (usually a dot) if ('.' == result:sub(-1)) and ('.' == args.postscript:sub(1)) and ( == args.page) and ( == args.pages) and ('' == args.location) then result = result:gsub ('%.$', ''); end if args.ref ~= 'none' then local anchor_id; if args.ref ~= '' then anchor_id = mw.uri.anchorEncode (args.ref); err_msg = target_check (anchor_id, args); result = table.concat ({, result, }); else anchor_id = mw.uri.anchorEncode (table.concat ({'CITEREF', args.P1, args.P2, args.P3, args.P4, args.P5})); err_msg = target_check (anchor_id, args); result = table.concat ({, result, }); end end

if args.page ~= '' then result = table.concat ({result, args.page_sep, args.page}); elseif args.pages ~= ''then result = table.concat ({result, args.pages_sep, args.pages}); end

if args.location ~= '' then result = table.concat ({result, ', ', args.location}); end

result = table.concat ({args.bracket_left, result, args.bracket_right, args.postscript}):gsub ('%s+', ' ');		-- strip redundant spaces return result .. err_msg; end

--[[--< H Y P H E N _ T O _ D A S H >--

Converts a hyphen to a dash under certain conditions. The hyphen must separate like items; unlike items are returned unmodified. These forms are modified: letter - letter (A - B)	digit - digit (4-5) digit separator digit - digit separator digit (4.1-4.5 or 4-1-4-5) letterdigit - letterdigit (A1-A5) (an optional separator between letter and		digit is supported – a.1-a.5 or a-1-a-5) digitletter - digitletter (5a - 5d) (an optional separator between letter and		digit is supported – 5.a-5.d or 5-a-5-d)

any other forms are returned unmodified.

str may be a comma- or semicolon-separated list

This code copied from Module:Citation/CS1. The only modification is to require Module:Citation/CS1/Utilities so that it has access to the functions is_set and has_accept_as_written

]]

local function hyphen_to_dash( str ) local utilities = require ('Module:Citation/CS1/Utilities');				-- only modification so that this function has access to is_set and has_accept_as_written

if not utilities.is_set (str) then return str; end

local accept; -- Boolean

str = str:gsub ('&[nm]dash;', {['–'] = '–', ['—'] = '—'});		-- replace — and – entities with their characters; semicolon mucks up the text.split str = str:gsub ('-', '-'); -- replace HTML numeric entity with hyphen character

str = str:gsub (' ', ' '); -- replace  entity with generic keyboard space character local out = {}; local list = mw.text.split (str, '%s*[,;]%s*');								-- split str at comma or semicolon separators if there are any

for _, item in ipairs (list) do												-- for each item in the list item, accept = utilities.has_accept_as_written (item);					-- remove accept-this-as-written markup when it wraps all of item if not accept and mw.ustring.match (item, '^%w*[%.%-]?%w+%s*[%-–—]%s*%w*[%.%-]?%w+$') then	-- if a hyphenated range or has endash or emdash separators if item:match ('^%a+[%.%-]?%d+%s*%-%s*%a+[%.%-]?%d+$') or			-- letterdigit hyphen letterdigit (optional separator between letter and digit) item:match ('^%d+[%.%-]?%a+%s*%-%s*%d+[%.%-]?%a+$') or			-- digitletter hyphen digitletter (optional separator between digit and letter) item:match ('^%d+[%.%-]%d+%s*%-%s*%d+[%.%-]%d+$') or			-- digit separator digit hyphen digit separator digit item:match ('^%d+%s*%-%s*%d+$') or								-- digit hyphen digit item:match ('^%a+%s*%-%s*%a+$') then							-- letter hyphen letter item = item:gsub ('(%w*[%.%-]?%w+)%s*%-%s*(%w*[%.%-]?%w+)', '%1–%2');	-- replace hyphen, remove extraneous space characters else item = mw.ustring.gsub (item, '%s*[–—]%s*', '–');				-- for endash or emdash separated ranges, replace em with en, remove extraneous whitespace end end table.insert (out, item);												-- add the (possibly modified) item to the output table end

local temp_str = '';														-- concatenate the output table into a comma separated string temp_str, accept = utilities.has_accept_as_written (table.concat (out, ', ')); -- remove accept-this-as-written markup when it wraps all of concatenated out if accept then temp_str = utilities.has_accept_as_written (str);						-- when global markup removed, return original str; do it this way to suppress boolean second return value return temp_str; else return temp_str;														-- else, return assembled temp_str end end

--[[--< A R G S _ F E T C H >-

Because all of the templates share a common set of parameters, a single common function to fetch those parameters from frame and parent frame.

]]

local function args_fetch (frame, ps) local args = args_default;													-- create a copy of the default table local pframe = frame:getParent;											-- point to the template's parameter table

for k, v in pairs (frame.args) do											-- override defaults with values provided in the #invoke: if any args[k] = v; end args.postscript = pframe.args.postscript or pframe.args.ps or ps; if 'none' == args.postscript then args.postscript = ''; end args.page = pframe.args.p or pframe.args.page or ''; args.pages = pframe.args.pp or pframe.args.pages or ''; args.pages = ( ~= args.pages) and hyphen_to_dash (args.pages) or ; args.location = pframe.args.loc or ''; args.ref = pframe.args.ref or pframe.args.Ref or ''; args.ignore = ('yes' == pframe.args['ignore-false-positive']) or ('yes' == pframe.args['ignore-err']);

for i, v in ipairs ({'P1', 'P2', 'P3', 'P4', 'P5'}) do						-- loop through the five positional parameters and trim if set else empty string args[v] = (pframe.args[i] and mw.text.trim (pframe.args[i])) or ''; end

if args.P5 and not is_year (args.P5, args) then local i = 6;															-- initialize the indexer to the sixth positional parameter while pframe.args[i] do													-- in case there are too many authors loop through the authors looking for a year local v = mw.text.trim (pframe.args[i]);							-- trim if is_year (v, args) then											-- if a year args.P5 = v;													-- overwrite whatever was in args.P5 with year break;															-- and abandon the search end i = i + 1;															-- bump the indexer end end return args; end

--[[--< H A R V A R D _ C I T A T I O N >--

common entry point for: aka aka aka

Distinguishing features (brackets and page separators) are specified in this module's in the respective templates.

]]

local function harvard_citation (frame) local args = args_fetch (frame, '');										-- get the template and invoke parameters; default postscript is empty string

return core (args); end

--[[--< S T R I P _ U R L >

used by sfn and sfnm. This function fixes an issue with reference tooltip gadget where the tooltip is not displayed when an insource locator (|p=, |pp=, |loc=) has an external wikilink that contains a # character

strip uri-reserved characters from urls in |p=, |pp-, and |loc= parameters The researved characters are: !#$&'*+,/:;=?@[] ]]

local function strip_url (pages) local escaped_uri; if not pages or ('' == pages) then return pages; end for uri in pages:gmatch ('%[(%a[%w%+%.%-]*://%S+)') do						-- for each external link get the uri escaped_uri = uri:gsub ("([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" );		-- save a copy with lua pattern characters escaped uri = uri:gsub ("[!#%$&'%(%)%*%+,/:;=%?@%[%]%.%%]", '');				-- remove reserved characters and '%' because '%20' (space character) is a lua 'invalid capture index' pages = pages:gsub (escaped_uri, uri, 1);								-- replace original uri with the stripped version end return pages; end

--[[--< S F N >

entry point for and

]]

local function sfn (frame) local args = args_fetch (frame, '.');										-- get the template and invoke parameters; default postscript is a dot

local result = core (args);													-- go make a CITEREF anchor -- put it all together and then strip redundant spaces local name = table.concat ({'FOOTNOTE', args.P1, args.P2, args.P3, args.P4, args.P5, strip_url (args.page), strip_url (args.pages), strip_url (args.location)}):gsub ('%s+', ' ');

return frame:extensionTag ({name='ref', args={name=name}, content=result});

end

--[[--< S F N M >--

common entry point for and

Distinguishing features (brackets) are specified in this module's in the respective templates.

]]

local function sfnm (frame) local args = args_default;													-- create a copy of the default table local pframe = frame:getParent;											-- point to the template's parameter table local n = 1;																-- index of source; this is the 'n' in na1, ny, etc local first_pnum = 1;														-- first of a pair of positional parameters local second_pnum = 2;														-- second of a pair of positional parameters

local last_ps = 0;															-- index of the last source with |nps= set local last_index = 0;														-- index of the last source; these used to determine which of |ps= or |nps= will terminate the whole rendering

local out = {};																-- table to hold rendered sources local footnote = {'FOOTNOTE'};												-- all author, date, insource location stuff becomes part of the reference's footnote id; added as we go

for k, v in pairs (frame.args) do											-- override defaults with values provided in the #invoke: if any args[k] = v; end while true do		if not pframe.args[table.concat ({n, 'a1'})] and not pframe.args[first_pnum] then break;																-- no na1 or matching positional parameter so done end if pframe.args[table.concat ({n, 'a1'})] then							-- does this source use named parameters? for _, v in ipairs ({'P1', 'P2', 'P3', 'P4', 'P5'}) do				-- initialize for this source args[v] = ''; end

for i, v in ipairs ({'P1', 'P2', 'P3', 'P4', 'P5'}) do				-- extract author and year parameters for this source args[v] = pframe.args[table.concat ({n, 'a', i})] or '';		-- attempt to assign author name if '' == args[v] then											-- when there wasn't an author name args[v] = pframe.args[table.concat ({n, 'y'})] or '';		-- attempt to assign year break;														-- done with author/date for this source end end

else																	-- this source uses positional parameters args.P1 = mw.text.trim (pframe.args[first_pnum]);					-- yes, only one author supported args.P2 = (pframe.args[second_pnum] and mw.text.trim (pframe.args[second_pnum])) or '';	-- when positional author, year must also be positional

for _, v in ipairs ({'P3', 'P4', 'P5'}) do							-- blank the rest of these for this source args[v] = ''; end

first_pnum = first_pnum + 2;										-- source must use positional author and positional year second_pnum = first_pnum + 1;										-- bump these for possible next positional source end args.postscript = pframe.args[table.concat ({n, 'ps'})] or ''; if 'none' == args.postscript then										-- this for compatibility with other footnote templates; does nothing args.postscript = ''; end

args.ref = pframe.args[table.concat ({n, 'ref'})] or '';				-- alternate reference for this source

args.page = pframe.args[table.concat ({n, 'p'})] or '';					-- insource locations for this source args.pages = pframe.args[table.concat ({n, 'pp'})] or ''; args.pages = ( ~= args.pages) and hyphen_to_dash (args.pages) or ; args.location = pframe.args[table.concat ({n, 'loc'})] or ''; args.ignore = ('yes' == pframe.args[table.concat ({n, 'ignore-false-positive'})]) or ('yes' == pframe.args[table.concat ({n, 'ignore-err'})]);

table.insert (out, core (args));										-- save the rendering of this source for k, v in ipairs ({'P1', 'P2', 'P3', 'P4', 'P5'}) do					-- create the FOOTNOTE id			if '' ~= args[v] then table.insert (footnote, args[v]); end end for k, v in ipairs ({'page', 'pages', 'location'}) do					-- these done separately so that we can strip uri-reserved characters from extlinked page numbers if '' ~= args[v] then table.insert (footnote, strip_url (args[v])) end end last_index = n;															-- flags used to select terminal postscript from nps or from end_ps if '' ~= args.postscript then last_ps = n;		end n = n+1;																-- bump for the next one end local name = table.concat (footnote):gsub ('%s+', ' ');						-- put the footnote together and strip redundant space args.end_ps = pframe.args.postscript or pframe.args.ps or '.';				-- this is the postscript for the whole not for the individual sources if 'none' == args.end_ps then												-- not an original sfnm parameter value; added for compatibility with other footnote templates args.end_ps = ''; end

local result = table.concat ({table.concat (out, '; '), (last_index == last_ps) and '' or args.end_ps}); return frame:extensionTag ({name='ref', args={name=name}, content=result}); end

--[[--< S F N R E F >--

implements

]]

local function sfnref (frame) local args = getArgs (frame); local out = {}; for i=1, 5 do																-- get the first five args if there are five args if args[i] then out[i] = args[i]; else break;																-- less than 5 args break out end end if 5 == #out then															-- when we have seen five args there may bemore local i = 6;															-- initialize the indexer to the sixth positional parameter while args[i] do														-- in case there are too many authors loop through the authors looking for a year if is_year (args[i], args) then										-- if a year out[5] = args[i];												-- overwrite whatever was in args[5] with year break;															-- and abandon the search end i = i + 1;															-- bump the indexer end end return mw.uri.anchorEncode ('CITEREF' .. table.concat (out)); end

----< E X P O R T E D  F U N C T I O N S >--

return { harvard_citation = harvard_citation, sfn = sfn, sfnm = sfnm, sfnref = sfnref, };

title: Module:Footnotes