Skip to content Skip to navigation

Connexions

You are here: Home » Content » Advanced CNXML using Edit-in-Place

Navigation

Content Actions

  • Download module PDF
  • Add to ...
    Add the module to:
    • My Favorites
    • A lens
    • An external social bookmarking service
    • My Favorites (What is 'My Favorites'?)
      'My Favorites' is a special kind of lens which you can use to bookmark modules and collections directly in Connexions. 'My Favorites' can only be seen by you, and collections saved in 'My Favorites' can remember the last module you were on. You need a Connexions account to use 'My Favorites'.
    • A lens (What is a lens?)

      Definition of a lens

      Lenses

      A lens is a custom view of Connexions content. You can think of it as a fancy kind of list that will let you see Connexions through the eyes of organizations and people you trust.

      What is in a lens?

      Lens makers point to Connexions materials (modules and collections), creating a guide that includes their own comments and descriptive tags about the content.

      Who can create a lens?

      Any individual Connexions member, a community, or a respected organization.

    • External bookmarks
  • E-mail the author

Recently Viewed

This feature requires Javascript to be enabled.

Advanced CNXML using Edit-in-Place

Module by: Elizabeth Gregory Based on: The Advanced CNXML by Ricardo Radaelli-Sanchez

Summary: This document explains and elaborates on CNXML tags that you can insert into a Connexions document using Edit-in-Place.

Para

When working in Edit-in-Place, notice that the first item of the "Add Here" drop-down menu is "Paragraph". When you select this item and click Add Here, a text box will appear. You can now insert text in the white box, including inline tags. Note the id="element-143" in the upper left hand part of the blue box in Figure 1. element-143 is the paragraph's unique ID, which you can use to refer to the paragraph directly using a cnxn tag. Also, you can find some helpful tips in the upper right-hand corner of the blue box: "Help editing <para>".

Figure 1: When you click "Add Here", a box like this should appear.
A Paragraph Box
para.png

Example 1: Submitted by J. Cameron Cooper

<para id='intro'>
  Working on trees or bushes can generate a lot of limbs and branches to
haul away. If you just carry them, it'll take all day. Instead, make a
sledge. 
</para>
<para id="intro2">
  Find a large, complex branch to make the base of your sledge. It should
be relatively flat, and broad and long enough to make a decent pile;
that is, as big or bigger than anything else you need to haul away.
Green branches from hardwoods are best. Place it with the cut end
pointing the way you want to go. If no single branch is good enough, two
can be used. Just place their cut ends a couple feet apart.
</para>
<para id="intro3">
  Then pile on the remaining branches. Most will naturally weave together;
if not, give 'em a little help. Once the pile it a few layers deep,
smaller waste, like weeds or maybe even leaves can be added to the pile.
If it gets unstable, another big branch will help.
</para>
<para id="intro4">
  When you're done, grab the cut end of the bottom branch, and maybe the
base of one of the other big branches in the pile, and drag the thing
where you want to go. You'll be surprised how much one person can drag!
</para>
<para id="intro5">
  If you have a lot of leaves or similar small stuff to move, you can use
a similar technique. Get a tarp, toss the leaves and weeds and whatnot
in the middle, and then drag the whole thing away.
</para>	      

which displays as the following:

Working on trees or bushes can generate a lot of limbs and branches to haul away. If you just carry them, it'll take all day. Instead, make a sledge.

Find a large, complex branch to make the base of your sledge. It should be relatively flat, and broad and long enough to make a decent pile; that is, as big or bigger than anything else you need to haul away. Green branches from hardwoods are best. Place it with the cut end pointing the way you want to go. If no single branch is good enough, two can be used. Just place their cut ends a couple feet apart.

Then pile on the remaining branches. Most will naturally weave together; if not, give 'em a little help. Once the pile it a few layers deep, smaller waste, like weeds or maybe even leaves can be added to the pile. If it gets unstable, another big branch will help.

When you're done, grab the cut end of the bottom branch, and maybe the base of one of the other big branches in the pile, and drag the thing where you want to go. You'll be surprised how much one person can drag!

If you have a lot of leaves or similar small stuff to move, you can use a similar technique. Get a tarp, toss the leaves and weeds and whatnot in the middle, and then drag the whole thing away.

List

You can select two different types of list from the "Add Here" drop-down menu: enumerated and bulleted. As with adding a paragraph, adding a list will insert a blue box, with the list's unique ID in the upper left-hand corner and a helpful link in the upper right-hand corner.

Figure 2
Lists Available in Edit-in-Place
Enumerated List
Subfigure 2.1: When you add an enumerated list, this blue box will appear with item tags to help you get started.
enumerated-list.png
Bulleted List
Subfigure 2.2: When you add a bulleted list, this blue box will appear with item tags to help you get started.
bulleted-list.png

Note that the only differences between Subfigure 2.1 and Subfigure 2.2 are the lists' unique IDs and their types. Also, notice that premade tags have been inserted into the text area. The item tag separates the items of your list and can contain inline tags. Optionally, you can also add a name tag to give your list a name, as shown in Example 2.

Example 2: Enumerated List

<list id='sledge' type='enumerated'>
  <name>Making a Sledge</name>
  <item>
    Find a large, complex branch to make the base of your sledge. 
It should be relatively flat, and broad and long enough to make a 
decent pile; that is, as big or bigger than anything else you 
need to haul away. Green branches from hardwoods are best. Place 
it with the cut end pointing the way you want to go. If no single 
branch is good enough, two can be used. Just place their cut ends 
a couple feet apart.
  </item>
  <item>
    Then pile on the remaining branches. Most will naturally 
weave together; if not, give 'em a little help. Once the pile it 
a few layers deep, smaller waste, like weeds or maybe even 
leaves can be added to the pile. If it gets unstable, another 
big branch will help.
  </item>
  <item>
    When you're done, grab the cut end of the bottom branch, and 
maybe the base of one of the other big branches in the pile, and 
drag the thing where you want to go. You'll be surprised how 
much one person can drag!
  </item>
</list>
The resulting list will look like:

Making a Sledge

  1. Find a large, complex branch to make the base of your sledge. It should be relatively flat, and broad and long enough to make a decent pile; that is, as big or bigger than anything else you need to haul away. Green branches from hardwoods are best. Place it with the cut end pointing the way you want to go. If no single branch is good enough, two can be used. Just place their cut ends a couple feet apart.
  2. Then pile on the remaining branches. Most will naturally weave together; if not, give 'em a little help. Once the pile it a few layers deep, smaller waste, like weeds or maybe even leaves can be added to the pile. If it gets unstable, another big branch will help.
  3. When you're done, grab the cut end of the bottom branch, and maybe the base of one of the other big branches in the pile, and drag the thing where you want to go. You'll be surprised how much one person can drag!

Example 3: Bulleted List

<list id="ex-bulleted-list" type="bulleted">
  <item>branches</item>
  <item>leaves</item>
  <item>sweat</item>
  <item>lemonade</item>
</list>
  • branches
  • leaves
  • sweat
  • lemonade

Equation

The equation tag is used to set off and number equations in CNXML documents. If you have MathML enabled for your document, you will only be able to place MathML equations within the equation tags. Otherwise, to write the actual equations, you can use ASCII or images.

note:

Connexions strongly encourages the use equation with MathML tags when displaying math.
If you look at Figure 3, you will find the equation's unique ID in the upper left-hand corner and a helpful link in the upper right-hand corner.

Figure 3
Adding an Equation
equation.png
Figure 4: MathML is enabled on module creation unless you uncheck the box!
Enabling MathML
mathml-enabled.png

As with lists, you can add an optional name at the beginning of each equation.

Example 4: Using Images as Equations

<equation id="eqn14">
  <media type='image/gif' src='euler.gif' />
</equation>

displays as:

euler.gif (1)

Example 5: ASCII equations

<equation id='eqn15'>
  <name>Simple Arithmetic</name>
    11+27=38
</equation>

This equation will display as:

Simple Arithmetic

11+27=38 (2)

Exercise

The exercise tag allows authors to add practice problems into their documents. When you initially add an exercise, you will see the familiar blue box, with the unique ID and the helpful link in the top corners. However, also notice that new tags have been premade in your text box: problem and solution.

Figure 5
Adding an Exercise
exercise.png

To continue utilizing edit-in-place to edit your exercise, press the Save button (see Figure 6). You can now add various block tags to your problem and solution, including paragraphs and lists!

Figure 6: If you save immediately after creating a new exercise, you can continue to edit the exercise using the familiar edit-in-place interface.
A New Exercise after Saving
exercise-eip.png

To create more complex exercises, such as multiple-choice, multiple-response, ordered-response, and free-response questions, QML (Questions Markup Language) may used in place of the problem and solution tags. For more information, please see the information about QML.

Example 6

<exercise id='hyd_test'>
  <problem>
    <para id='hyd_testp1'>
      The color of a hydrangea changes with the pH of the soil.  
      What color would the hydrangea be if the soil were highly 
      acidic?  Highly basic?  Neutral?
    </para>
  </problem>
  <solution>
    <para id='hyd_sol1p1'>
      Highly acidic soil produces blue flowers.  Highly basic soil 
      produces pink flowers. Neutral soil produces very pale cream 
      flowers.
    </para>
  </solution>
</exercise>

This code will display as:

Problem 1

The color of a hydrangea changes with the pH of the soil. What color would the hydrangea be if the soil were highly acidic? Highly basic? Neutral?

Solution 1

Highly acidic soil produces blue flowers. Highly basic soil produces pink flowers. Neutral soil produces very pale cream flowers.

Figure

The figure tag provides the structure for creating a figure within a document. They can contain either two or more subfigure tags, or a single media, table, or code tag.

Figure 7: Adding a figure will create this familiar blue box, with a helpful link in the upper right corner and the figure's unique ID in quotes in the upper left corner.
Adding a Figure
figure.png

The optional first tag of the figure tag is name which is used to title a figure.

The name tag is followed by any of the tags listed above; however, the most commonly used tag is media, which is used to include any sort of media such as images, video, music, or java applets. For more information on what media you can add to your content, and how to add it, see Adding Multimedia to Your Connexions Content.

The final tag is the optional caption which is used to add a small caption to the figure.

Example 7: Example of a Figure

<figure id='blossom'>
   <name>Momosa Blossom</name>
  <media type="image/jpeg" src="alb_jul_flo_1.jpg"/>
  <caption>
    Picture taken by Jenn Drummond (CC Attribution).
  </caption>
</figure>

This code will display as:

Figure 8: Picture taken by Jenn Drummond (CC Attribution).
Momosa Blossom
Momosa Blossom (alb_jul_flo_1.jpg)

Code

As seen in Using Basic CNXML in Edit-in-Place, you can add inline code to your document; edit-in-place also allows you in insert a block of code, separate from text.

Figure 9: Note that a block of code does not have a unique ID like most of the previous tags.
Adding a Block of Code
code.png

If you need to use the > and < symbols in your block of code, you must either use the unicode for these characters (&gt; and &lt;, if you have MathML enabled), or use the CDATA method. To utilize the CDATA method, insert <![CDATA[ before your code and ]]> after it, as seen in Example 8.

Example 8: A Block of Code, Using CDATA

Figure 10
Using CDATA in a Code Block
code_cdata.png

When saved, Figure 10 will display as:

<para id='copy'>
  In a unix terminal the command to copy a file is <code
  type='inline'>cp original copy</code>.
</para>

Note

As mentioned in Using Basic CNXML in Edit-in-Place, the note tag creates an "out of line" note to the reader. You can also insert a note using the drop-down box in Edit-in-Place; however, unless you edit the full source, the type of note will be set to the default.

Figure 11: As with code, notes do not have a unique ID.
Adding a Note using Edit-in-Place
note_block.png

Example 9

<note>
  Gardening requires a lot of intense physical exertion.  Please 
  drink plenty of water to avoid dehydration!
</note>     

The above markup will display as:

Note:

Gardening requires a lot of intense physical exertion. Please drink plenty of water to avoid dehydration!

Example

As is often the case in textbooks, authors will include examples in the middle of a chapter or section. For this reason CNXML provides the example tag that allows an author to include examples in a document.

Figure 12
Adding an Example Using Edit-in-Place
example.png

Example 10

Here is the code for Example 9:

<example id="notexamp">  
  <code type="block">
    <note>
      Gardening requires a lot of intense physical exertion.  Please 
      drink plenty of water to avoid dehydration!
    </note>   
  </code>
  <para id="notep2">
    The above markup will display as: 
  </para>
  <note>
    Gardening requires a lot of intense physical exertion.  Please 
    drink plenty of water to avoid dehydration!
  </note>
</example>

CALS Table

The final element you can add using Edit-in-Place is table. To learn more about adding and editting tables using Edit-in-Place, see CALS Table. For a more complete description of the CALS Table consult the CALS Table Spec.

Comments, questions, feedback, criticisms?

Send feedback