Distributable Educational Material Markup LanguageTM


First Alpha version of schema published.

Though it is still rough and only covers the fundamental constituents of a DEMML™ topic, the DEMML_0.1 schema is available for viewing here.

Created DEMML™ blog site.

It took me a while to get around to creating a blog but it is finally up. (Updated July 8, 2009)
click here...

Added new Features and Benefits page.

DEMML is truely unique but I seem to have a hard time getting people to see that. Hopefully this will help. (Updated Dec. 10, 2007)
full story...

New Powerpoint about Communications Systems

full story...


How DEMML™ was Invented

Necessity truly is the mother of invention.
full story...

Structure of a sample DEMCS™ code number

Now that you are familiar with the basics of what went into the design of the DEMCS™ classification codes, its time to take a look at a specific example. (Please note that this is just an example and not a specific code that is already in use. The specific codes for all the topics have not yet been worked out. There is still quite a bit of work that needs to be done before this goal can be realized.)

Diagram with code and under-brackets indicating parts of the code.

LCC section

The first part of the DEMCS™ code is the base LCC classification number. Remember, only the first part of the LCC number is used. The letters in this section are upper-case just like in LCC. Notice that the third piece of this section consists of 3 characters. This is because each character of that piece does not represent a new level in the hierarchical tree within the LCC system. The LCC often assigns a range of numbers to a specific subject in an attempt to make the best use of the limited set of different values that can be expressed in that system. Another point to notice is that 154 represents General Algebra in LCC whereas "QA" represents all of Mathematics. In the final DEMCS™ hierarchical tree of knowledge it is possible that only the "QA" part of the LCC number would be used. Then we would use the tree of all mathematical educational material generated by the math associations to go from there using DEMCS codes. How much of the LCC number is used for each major subject will depend on how much of the tree is or can be defined by the associations for the different academic disciplines.

Diagram showing the same LCC number with under-brackets indicating the hierarchical levels.

There is another difference between the way LCC numbers are normally written and how they are used in DEMCS™. LCC numbers are normally written in sections, called "cutters", separated by carriage returns, spaces, or periods. Each of those cutters may actually represent one or more levels in the LCC hierarchical tree. The system is designed so that, once an LCC number is assigned to a book, all one needs to do is sort the numbers alphabetically to find the correct location for the book. There is no reason to clutter up the number by indicating the divisions between each level. In LCC the above number would be written simply as shown at left.

In DEMCS™ each level in the classification tree is also a level in a computer file-system folder structure. This means that the path-name must have slashes in between the parts of the code for each level in the tree. Since we want the DEMCS™ code numbers to exactly parallel the file-system path-name, we will also use the slashes in the code number itself. While this does make the code number longer and a little more difficult to read, it also removes all ambiguity. This also means that people can copy a path-name directly from their file browser, and get the exact code number to paste anywhere they need it. They can also copy a code number and paste it into the address bar of their file browser or web browser and instantly go to the correct part of their personal collection of DEMML™ content or to the correct part of any DEMML™ distribution server.

DEMCS™ Section

Where the LCC system does not provide the necessary detail and granularity to specify an exact, very-specific topic, DEMCS™ picks up the slack. The code for this example is derived from a rather loose interpretation of the "Core Subject Taxonomy for Mathematical Sciences Education" on the "Mathematical Sciences Conference Group on Digital Educational Resources" web site at ""   As described earlier, the DEMCS™ coding system allows an infinite amount of granularity while allowing infinite growth in depth and breadth of the hierarchical tree of knowledge.

Topic Name

With all these code numbers you may have been wondering how in the world anyone is supposed to know what topics those darn codes actually represent. Just as with any other classification system, it can be pretty difficult to learn all the different codes. But, also just like any other classification system, regular users have no need to learn all the codes. They just look them up and use them. However, with DEMCS™ there is some built in help.

Remember how the actual content files are stored in special folders referred to as "stems" in the tree metaphor? Well, as you can see, those folders have actual human readable names. The first character is always an exclamation point so that the stem folders will sort up at the top of the list. The next two or three characters are the language code as defined by the ISO 639-2 specification. Then a dash followed by the name of the topic in the appropriate language.

Here is a list of similar codes but in different languages:

When looking at an expanded tree of folders it will always be possible to see the name of the topic referred to by a specific code simply by looking at the first few folders directly under it as can be seen in the directory listings below.

Snapshot of sample tree showing topic names at each level.
All the main science subject and topic folders. The Mathematics subject folder with additional subject and topic folders for all the major Math subjects.

Next: Creating the Hierarchical Tree of Knowledge...

First Published: May 15, 2007 — Last Modified: May 15, 2007
DEMML Logo  About Us | Contact Us | ©2010 Grant Sheridan Robertson