It5-FolioViews-HitpMcs
senso-concept-Mcs

Mcsh-creation:: {2025-09-15}

overview of It5

description::
it5.nfo is part of it.nfo.

name::
* McsEngl.it5.nfo,

CmprLago3 part

lcp.instance.PHP {1995}

_CREATED: {2001-11-07} {2011-05-25}

_Toc#ql:[Level CONCEPT:rl? conceptIt585]#,

name::
* McsEngl.conceptIt585,
* McsEngl.lcpPhp@cptIt585, {2014-02-18}
* McsEngl.PHP@cptIt585,
* McsEngl.plPHP,
* McsEngl.programing-language.PHP,

lcpPhp'DEFINITION

_DESCRIPTION:
PHP is a widely-used general-purpose scripting language that is especially suited for Web development and can be embedded into HTML. If you are new to PHP and want to get some idea of how it works, try the introductory tutorial. After that, check out the online manual, and the example archive sites and some of the other resources available in the links section.
[http://www.php.net/] 2011-05-25
===
PHP is an HTML-embedded scripting language. Much of its syntax is borrowed from C, Java and Perl with a couple of unique PHP-specific features thrown in. The goal of the language is to allow web developers to write dynamically generated pages quickly.
[http://www.php.net/manual/en/faq.general.php]

PHP is an acronym for "Professional Home Pages". PHP is a specialized programming language for the web that allows for the generation of HTML on the fly, mathematical calculations, accessing filesystem(s) and databases, and it allows for cross-server access. There are many other features (not as in MS - bugs) which you'll be able to see for yourself at the PHP home site (http://www.php.net). If your host allows the use of PHP, you'll most likely be convinced that PHP is one of the better languages.
BTW, PHP can be implemented in two diffent methods: 1) as a function of Apache; and 2) as a CGI scripting language.

lcpPhp'GENERIC

_GENERIC:
* scripting-language#cptItsoft512#

lcpPhp'PART

name::
* McsEngl.lcpPhp'PART@cptIt,

If you've any experience with the back end of PHP, you should be aware that it is made up of four parts: lexical analyser, parser, the Zend Engine, and PHP itself. Of these four, the first two are very closely interrelated and are not noticeable from a user perspective, but they form the key to the whole system. The Zend Engine can be thought of as the executor of the code and also the manager of the system, and the PHP core itself is where all the functions lie. To write our own language, we need to have everything but our own version of the Zend Engine, and this is no easy task: a fair amount of theory is involved, although I have done my best to simplify the system for the sake of learning, and you should really not be attempting this example unless you have a fairly complete grasp of the other topics that have been covered.
[http://tuxradar.com/practicalphp/21/5/0]

lcpPhp'ATTRIBUTE

name::
* McsEngl.lcpPhp'ATTRIBUTE@cptIt,

Starting with PHP 5, the object model was rewritten to allow for better performance and more features. This was a major change from PHP 4. PHP 5 has a full object model.

Among the features in PHP 5 are the inclusions of visibility, abstract and final classes and methods, additional magic methods, interfaces, cloning and typehinting.

PHP treats objects in the same way as references or handles, meaning that each variable contains an object reference rather than a copy of the entire object. See Objects and References
[http://www.php.net/manual/en/oop5.intro.php]

lcpPhp'archetype

name::
* McsEngl.lcpPhp'archetype@cptIt,

lcpPhp'archetype'DomainIn

name::
* McsEngl.lcpPhp'archetype'DomainIn@cptIt,
* McsEngl.lcpPhp'Doing@cptIt,
* McsEngl.lcpPhp'DomainIn@cptIt,
* McsEngl.lcpPhp'Usage@cptIt,

_DESCRIPTION:
Anything. PHP is mainly focused on server-side scripting, so you can do anything any other CGI program can do, such as collect form data, generate dynamic page content, or send and receive cookies. But PHP can do much more.
There are three main areas where PHP scripts are used.
* Server-side scripting. This is the most traditional and main target field for PHP. You need three things to make this work. The PHP parser (CGI or server module), a web server and a web browser. You need to run the web server, with a connected PHP installation. You can access the PHP program output with a web browser, viewing the PHP page through the server. All these can run on your home machine if you are just experimenting with PHP programming. See the installation instructions section for more information.
* Command line scripting. You can make a PHP script to run it without any server or browser. You only need the PHP parser to use it this way. This type of usage is ideal for scripts regularly executed using cron (on *nix or Linux) or Task Scheduler (on Windows). These scripts can also be used for simple text processing tasks. See the section about Command line usage of PHP for more information.
* Writing desktop applications. PHP is probably not the very best language to create a desktop application with a graphical user interface, but if you know PHP very well, and would like to use some advanced PHP features in your client-side applications you can also use PHP-GTK to write such programs. You also have the ability to write cross-platform applications this way. PHP-GTK is an extension to PHP, not available in the main distribution. If you are interested in PHP-GTK, visit » its own website.
[http://www.php.net/manual/en/intro-whatcando.php]

_DESCRIPTION:
Any type of data management.
[hmnSngo.2011-09-27]

SPECIFIC

_Alphabetically:
* database-management#ql:php'doing.database_management#,
* suggesting,

lcpPhp'archetype.ARRAY

name::
* McsEngl.lcpPhp'archetype.ARRAY@cptIt,

lcpPhp'array'code

name::
* McsEngl.lcpPhp'array'code@cptIt,
* McsEngl.lcpPhp'code.ARRAY@cptIt,
* McsEngl.lcpPhp'data.Array-datatype@cptIt,
* McsEngl.lcpPhp'array@cptIt,

_GENERIC:
* primitive-datatype#ql:php'primitive_data_type#

_DESCRIPTION:
An array is a datatype that can hold multiple instances of other datatypes. In PHP there are two types of arrays, numerically indexed and associative. The elements of a numerically indexed array are referenced with a numerical index enclosed in [] brackets. For example, $my_array[1] would be the second element in $my_array. Associative arrays are not limited to using numbers for indexing. Instead "keys" in the form of strings are used to reference elements. This can be useful for pairing of data. For example, the names of husbands could be mapped to the names of their wives like this: $couples["Jonathan"] = "Mindy";
Arrays can also be multidimensional. To reference an element in a two-dimensional array, double indexes are used: $my_array[1][2].
[http://www.devguru.com/technologies/php/5896.asp]
===
An array in PHP is actually an ordered map. A map is a type that associates values to keys. This type is optimized for several different uses; it can be treated as an
- array,
- list (vector),
- hash table (an implementation of a map),
- dictionary,
- collection,
- stack,
- queue, and
- probably more.
As array values can be other arrays, trees and multidimensional arrays are also possible.
[http://www.php.net/manual/en/language.types.array.php]
===
A variable is a storage area holding a number or text. The problem is, a variable will hold only one value.
An array is a special variable, which can store multiple values in one single variable.
[http://www.w3schools.com/php/php_arrays.asp]

lcpPhp'array'Creation

name::
* McsEngl.lcpPhp'array'Creation@cptIt,

There are two methods to create a numeric array.

1. In the following example the index are automatically assigned (the index starts at 0):
$cars=array("Saab","Volvo","BMW","Toyota");

2. In the following example we assign the index manually:
$cars[0]="Saab";
$cars[1]="Volvo";
$cars[2]="BMW";
$cars[3]="Toyota";
[http://www.w3schools.com/php/php_arrays.asp]

Associative Arrays

An associative array, each ID key is associated with a value.

When storing data about specific named values, a numerical array is not always the best way to do it.

With associative arrays we can use the values as keys and assign values to them.

Example 1
In this example we use an array to assign ages to the different persons:
$ages = array("Peter"=>32, "Quagmire"=>30, "Joe"=>34);

Example 2
This example is the same as example 1, but shows a different way of creating the array:
$ages['Peter'] = "32";
$ages['Quagmire'] = "30";
$ages['Joe'] = "34";
[http://www.w3schools.com/php/php_arrays.asp]

lcpPhp'array'Resource

name::
* McsEngl.lcpPhp'array'Resource@cptIt,

Complete reference:
* http://www.w3schools.com/php/php_ref_array.asp,

SPECIFIC

name::
* McsEngl.lcpPhp'array.SPECIFIC@cptIt,

_SPECIFIC:
In PHP, there are three kind of arrays:
Numeric array - An array with a numeric index
Associative array - An array where each ID key is associated with a value
Multidimensional array - An array containing one or more arrays
[http://www.w3schools.com/php/php_arrays.asp]

lcpPhp'array.ASSOCIATIVE

name::
* McsEngl.lcpPhp'array.ASSOCIATIVE@cptIt,
* McsEngl.lcpPhp'associative-array@cptIt,
* McsEngl.lcpPhp'data.Key-value@cptIt,
* McsEngl.lcpPhp'key-value-data@cptIt,
* McsEngl.lcpPhp'map@cptIt,

_CODE.PHP:
$ages = array("Peter"=>32, "Quagmire"=>30, "Joe"=>34);
var_dump($ages);
//array(3) { ["Peter"]=> int(32) ["Quagmire"]=> int(30) ["Joe"]=> int(34) }

_DESCRIPTION:
Associative Arrays
An associative array, each ID key is associated with a value.

When storing data about specific named values, a numerical array is not always the best way to do it.

With associative arrays we can use the values as keys and assign values to them.

Example 1
In this example we use an array to assign ages to the different persons:
$ages = array("Peter"=>32, "Quagmire"=>30, "Joe"=>34);

Example 2
This example is the same as example 1, but shows a different way of creating the array:
$ages['Peter'] = "32";
$ages['Quagmire'] = "30";
$ages['Joe'] = "34";
[http://www.w3schools.com/php/php_arrays.asp]

lcpPhp'array.NUMERIC

name::
* McsEngl.lcpPhp'array.NUMERIC@cptIt,

_DESCRIPTION:
There are two methods to create a numeric array.

1. In the following example the index are automatically assigned (the index starts at 0):
$cars=array("Saab","Volvo","BMW","Toyota");

2. In the following example we assign the index manually:
$cars[0]="Saab";
$cars[1]="Volvo";
$cars[2]="BMW";
$cars[3]="Toyota";
[http://www.w3schools.com/php/php_arrays.asp]

_CODE.PHP:
$cars=array("Volvo","BMW","Toyota");
var_dump($cars);
//array(3) { [0]=> string(5) "Volvo" [1]=> string(3) "BMW" [2]=> string(6) "Toyota" }

lcpPhp'array.Example

name::
* McsEngl.lcpPhp'array.Example@cptIt,
* McsEngl.lcpPhp'ex.Array@cptIt,

_CODE.PHP:
_CODE.PHP:
$ages = array("Peter"=>32, "Quagmire"=>30, "Joe"=>34);
var_dump($ages);
//array(3) { ["Peter"]=> int(32) ["Quagmire"]=> int(30) ["Joe"]=> int(34) }
===
$cars=array("Volvo","BMW","Toyota");
var_dump($cars);
//array(3) { [0]=> string(5) "Volvo" [1]=> string(3) "BMW" [2]=> string(6) "Toyota" }
===
<?php
$arr = array("foo" => "bar", 12 => true);

echo $arr["foo"]; // bar
echo $arr[12]; // 1
?>

===
<?php
$arr = array("somearray" => array(6 => 5, 13 => 9, "a" => 42));

echo $arr["somearray"][6]; // 5
echo $arr["somearray"][13]; // 9
echo $arr["somearray"]["a"]; // 42
?>

===
// This:
$a = array( 'color' => 'red',
'taste' => 'sweet',
'shape' => 'round',
'name' => 'apple',
4 // key will be 0
);

$b = array('a', 'b', 'c');

// . . .is completely equivalent with this:
$a = array();
$a['color'] = 'red';
$a['taste'] = 'sweet';
$a['shape'] = 'round';
$a['name'] = 'apple';
$a[] = 4; // key will be 0

$b = array();
$b[] = 'a';
$b[] = 'b';
$b[] = 'c';

// After the above code is executed, $a will be the array
// array('color' => 'red', 'taste' => 'sweet', 'shape' => 'round',
// 'name' => 'apple', 0 => 4), and $b will be the array
// array(0 => 'a', 1 => 'b', 2 => 'c'), or simply array('a', 'b', 'c').

lcpPhp'array.LIST

name::
* McsEngl.lcpPhp'array.LIST@cptIt,
* McsEngl.lcpPhp'data.LIST@cptIt,
* McsEngl.lcpPhp'list-datatype@cptIt,

_DESCRIPTION:
Arrays can contain elements of any type that PHP can handle, including resources, objects, and even other arrays.

lcpPhp'archetype.BOOLEAN (php4)

name::
* McsEngl.lcpPhp'archetype.BOOLEAN (php4)@cptIt,
* McsEngl.lcpPhp'data.Boolean-datatype@cptIt,
* McsEngl.lcpPhp'boolean@cptIt,
* McsEngl.php'boolean-datatype@cptIt,

_DESCRIPTION:
Note: The boolean type was introduced in PHP 4.
[http://www.php.net/manual/en/language.types.boolean.php]

_SPECIFIC:
* lcpPhp'FALSE,
* lcpPhp'TRUE,
===
To specify a boolean literal, use the keywords TRUE or FALSE. Both are case-insensitive.
[http://www.php.net/manual/en/language.types.boolean.php]

lcpPhp'archetype.CONSTANT

name::
* McsEngl.lcpPhp'archetype.CONSTANT@cptIt,

lcpPhp'constant'code

name::
* McsEngl.lcpPhp'constant'code@cptIt,
* McsEngl.lcpPhp'code.CONSTANT@cptIt,
* McsEngl.lcpPhp'constant@cptIt,
* McsEngl.lcpPhp'Constant-code@cptIt,

_GENERIC:
* container-code#ql:php'container_code#,
* codetype#ql:php'codetype#

_DESCRIPTION:
A constant is an identifier (name) for a simple value. As the name suggests, that value cannot change during the execution of the script (except for magic constants, which aren't actually constants). A constant is case-sensitive by default. By convention, constant identifiers are always uppercase.
The name of a constant follows the same rules as any label in PHP. A valid constant name starts with a letter or underscore, followed by any number of letters, numbers, or underscores. As a regular expression, it would be expressed thusly: [a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*
[http://www.php.net/manual/en/language.constants.php]
===
Only scalar data (boolean, integer, float and string) can be contained in constants. It is possible to define constants as a resource, but it should be avoided, as it can cause unexpected results.
[http://www.php.net/manual/en/language.constants.syntax.php]

lcpPhp'constant'Creating

name::
* McsEngl.lcpPhp'constant'Creating@cptIt,

You can define a constant by using the define()-function or by using the const keyword outside a class definition as of PHP 5.3.0. Once a constant is defined, it can never be changed or undefined.
[http://www.php.net/manual/en/language.constants.syntax.php]

lcpPhp'constant'Function

name::
* McsEngl.lcpPhp'constant'Function@cptIt,

_SPECIFIC:
* define,

lcpPhp'constant'name

name::
* McsEngl.lcpPhp'constant'name@cptIt,

Unlike with variables, you should not prepend a constant with a $.
[http://www.php.net/manual/en/language.constants.syntax.php]

lcpPhp'constant'scope

name::
* McsEngl.lcpPhp'constant'scope@cptIt,

Like superglobals, the scope of a constant is global. You can access constants anywhere in your script without regard to scope. For more information on scope, read the manual section on variable scope.
[http://www.php.net/manual/en/language.constants.php]

SPECIFIC

lcpPhp'constant.EXAMPLE

name::
* McsEngl.lcpPhp'constant.EXAMPLE@cptIt,

_CODE.PHP:
const STRCOND_PRE = 0;

define( 'SMW_SQL2_SMWIW_OUTDATED', ':smw' ); // virtual "interwiki prefix" for old-style special SMW objects (no longer used)

lcpPhp'constant.MAGIC

name::
* McsEngl.lcpPhp'constant.MAGIC@cptIt,

Magic constants

PHP provides a large number of predefined constants to any script which it runs. Many of these constants, however, are created by various extensions, and will only be present when those extensions are available, either via dynamic loading or because they have been compiled in.

There are seven magical constants that change depending on where they are used. For example, the value of __LINE__ depends on the line that it's used on in your script. These special constants are case-insensitive and are as follows:

A few "magical" PHP constants
Name  Description
* lcpPhp'LINE_magic, php__LINE__   The current line number of the file.
* lcpPhp'FILE_magic, php__FILE__   The full path and filename of the file. If used inside an include, the name of the included file is returned. Since PHP 4.0.2, __FILE__ always contains an absolute path with symlinks resolved whereas in older versions it contained relative path under some circumstances.
* lcpPhp'DIR_magic, php__DIR__   The directory of the file. If used inside an include, the directory of the included file is returned. This is equivalent to dirname(__FILE__). This directory name does not have a trailing slash unless it is the root directory. (Added in PHP 5.3.0.)
* lcpPhp'FUNCTION_magic, php__FUNCTION__   The function name. (Added in PHP 4.3.0) As of PHP 5 this constant returns the function name as it was declared (case-sensitive). In PHP 4 its value is always lowercased.
* lcpPhp'CLASS_magic, php__CLASS__   The class name. (Added in PHP 4.3.0) As of PHP 5 this constant returns the class name as it was declared (case-sensitive). In PHP 4 its value is always lowercased. The class name includes the namespace it was declared in (e.g. Foo\Bar).
* lcpPhp'METHOD_magic, php__METHOD__   The class method name. (Added in PHP 5.0.0) The method name is returned as it was declared (case-sensitive).
* lcpPhp'NAMESPACE_magic, php__NAMESPACE__   The name of the current namespace (case-sensitive). This constant is defined in compile-time (Added in PHP 5.3.0).
[http://us3.php.net/manual/en/language.constants.predefined.php]

lcpPhp'constant.PREDEFINED

name::
* McsEngl.lcpPhp'constant.PREDEFINED@cptIt,

_DESCRIPTION:
PHP provides a large number of predefined constants to any script which it runs. Many of these constants, however, are created by various extensions, and will only be present when those extensions are available, either via dynamic loading or because they have been compiled in.
There are seven magical constants that change depending on where they are used. For example, the value of __LINE__ depends on the line that it's used on in your script.
[http://www.php.net/manual/en/language.constants.predefined.php]
===
Predefined Constants ¶

The constants below are defined by this extension, and will only be available when the extension has either been compiled into PHP or dynamically loaded at runtime.

DIRECTORY_SEPARATOR (string)
PATH_SEPARATOR (string)
Available since PHP 4.3.0. Semicolon on Windows, colon otherwise.
SCANDIR_SORT_ASCENDING (integer)
Available since PHP 5.4.0.
SCANDIR_SORT_DESCENDING (integer)
Available since PHP 5.4.0.
SCANDIR_SORT_NONE (integer)
Available since PHP 5.4.0.
[http://php.net/manual/en/dir.constants.php]

_ADDRESS.WPG:
* http://www.php.net/manual/en/reserved.constants.php,

lcpPhp'archetype.CLASS

name::
* McsEngl.lcpPhp'archetype.CLASS@cptIt,

lcpPhp'class'code

name::
* McsEngl.lcpPhp'class'code@cptIt,
* McsEngl.lcpPhp'code.CLASS@cptIt,
* McsEngl.lcpPhp'class@cptIt,
* McsEngl.lcpPhp'Class-code@cptIt,

_GENERIC:
* container-code#ql:php'container_code#,
* codetype#ql:php'codetype#,
* unit-of-code#ql:php'unit_of_code#

_DEFINITION:
Class is CODE that holds data and functions.
[hmnSngo.2011-09-27]

_PART:
A class may contain its own constants, variables (called "properties"), and functions (called "methods").
[http://www.php.net/manual/en/language.oop5.basic.php]

lcpPhp'class'creating

name::
* McsEngl.lcpPhp'class'creating@cptIt,

A class is a collection of variables and functions working with these variables. Variables are defined by var and functions by function. A class is defined using the following syntax:

<?php
class Cart {
var $items; // Items in our shopping cart

// Add $num articles of $artnr to the cart

function add_item($artnr, $num) {
$this->items[$artnr] += $num;
}

// Take $num articles of $artnr out of the cart

function remove_item($artnr, $num) {
if ($this->items[$artnr] > $num) {
$this->items[$artnr] -= $num;
return true;
} elseif ($this->items[$artnr] == $num) {
unset($this->items[$artnr]);
return true;
} else {
return false;
}
}
}
?>
[http://www.php.net/manual/en/keyword.class.php]

lcpPhp'class'Member

name::
* McsEngl.lcpPhp'class'Member@cptIt,

_Access:
$this->mTitle
$this->getId()'

_SPECIFIC:
* constant,
* method (function)
* property (variable)
===
* public,
* protected,
* private,

lcpPhp'class'meber-visibility

name::
* McsEngl.lcpPhp'class'meber-visibility@cptIt,

_Visibility
The visibility of a property or method can be defined by prefixing the declaration with the keywords public, protected or private. Class members declared public can be accessed everywhere. Members declared protected can be accessed only within the class itself and by inherited and parent classes. Members declared as private may only be accessed by the class that defines the member.
[http://www.php.net/manual/en/language.oop5.visibility.php]

lcpPhp'private_member (unique-class):
Members declared as private may only be accessed by the class that defines the member.
[http://www.php.net/manual/en/language.oop5.visibility.php]

lcpPhp'protected_member (hierarchy):
Members declared protected can be accessed only within the class itself and by inherited and parent classes.
[http://www.php.net/manual/en/language.oop5.visibility.php]

lcpPhp'public_member (everywhere):
Class members declared public can be accessed everywhere.
[http://www.php.net/manual/en/language.oop5.visibility.php]

lcpPhp'class'Method

name::
* McsEngl.lcpPhp'class'Method@cptIt,
* McsEngl.lcpPhp'member-function@cptIt,
* McsEngl.lcpPhp'method@cptIt,

_DESCRIPTION:
A class may contain its own constants, variables (called "properties"), and functions (called "methods").
[http://www.php.net/manual/en/language.oop5.basic.php]

_SPECIFIC:
* private,
* protected,
* public,
* static protected,
* static public,

lcpPhp'class'name

name::
* McsEngl.lcpPhp'class'name@cptIt,

_DESCRIPTION:
The class name can be any valid label which is a not a PHP-reserved-word#ql:php'keyword#. A valid class name starts with a letter or underscore, followed by any number of letters, numbers, or underscores. As a regular expression, it would be expressed thus: [a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*.
[http://www.php.net/manual/en/language.oop5.basic.php]
===
::class ¶

Since PHP 5.5, the class keyword is also used for class name resolution. You can get a string containing the fully qualified name of the ClassName class by using ClassName::class. This is particularly useful with namespaced classes.

Example#7 Class name resolution

<?php
namespace NS {
class ClassName {
}

echo ClassName::class;
}
?>
The above example will output:

NS\ClassName
[http://www.php.net/manual/en/language.oop5.basic.php]

lcpPhp'class'Parent-keyword

name::
* McsEngl.lcpPhp'class'Parent-keyword@cptIt,
* McsEngl.lcpPhp'parent-keyword@cptIt,
* McsEngl.lcpPhp'self-keyword@cptIt,

_DESCRIPTION:
Two special keywords self and parent are used to access properties or methods from inside the class definition.

Example#2 :: from inside the class definition
<?php
class OtherClass extends MyClass
{
public static $my_static = 'static var';

public static function doubleColon() {
echo parent::CONST_VALUE . "\n";
echo self::$my_static . "\n";
}
}

$classname = 'OtherClass';
echo $classname::doubleColon(); // As of PHP 5.3.0

OtherClass::doubleColon();
?>
[http://www.php.net/manual/en/language.oop5.paamayim-nekudotayim.php]

lcpPhp'class'property

name::
* McsEngl.lcpPhp'class'property@cptIt,
* McsEngl.lcpPhp'attribute-of-class@cptIt,
* McsEngl.lcpPhp'class'variable@cptIt,
* McsEngl.lcpPhp'class'Variable-member@cptIt,
* McsEngl.lcpPhp'property-of-class@cptIt,

_DESCRIPTION:
A class may contain its own constants, variables (called "properties"), and functions (called "methods").
[http://www.php.net/manual/en/language.oop5.basic.php]

_Access:
Within class methods the properties, constants, and methods may be accessed by using the form $this->property (where property is the name of the property) unless the access is to a static property within the context of a static class method, in which case it is accessed using the form self::$property. See Static Keyword for more information.

The pseudo-variable $this is available inside any class method when that method is called from within an object context. $this is a reference to the calling object (usually the object to which the method belongs, but possibly another object, if the method is called statically from the context of a secondary object).
[http://www.php.net/manual/en/language.oop5.properties.php]

_SPECIFIC:
* private,
* protected,
* public,
* static

lcpPhp'class'Resource

name::
* McsEngl.lcpPhp'class'Resource@cptIt,

_SPECIFIC:
* http://net.tutsplus.com/tutorials/php/object-oriented-php-for-beginners//

lcpPhp'class'trait

name::
* McsEngl.lcpPhp'class'trait@cptIt,
* McsEngl.lcpPhp'code.TRAIT@cptIt,
* McsEngl.lcpPhp'trait@cptIt,

_GENERIC:
* code-unit#ql:php'unit_of_code#

_DESCTIPTION:
As of PHP 5.4.0, PHP implements a method of code reuse called Traits.

Traits is a mechanism for code reuse in single inheritance languages such as PHP. A Trait is intended to reduce some limitations of single inheritance by enabling a developer to reuse sets of methods freely in several independent classes living in different class hierarchies. The semantics of the combination of Traits and classes is defined in a way which reduces complexity, and avoids the typical problems associated with multiple inheritance and Mixins.

A Trait is similar to a class, but only intended to group functionality in a fine-grained and consistent way. It is not possible to instantiate a Trait on its own. It is an addition to traditional inheritance and enables horizontal composition of behavior; that is, the application of class members without requiring inheritance.

Example#1 Trait example
<?php
trait ezcReflectionReturnInfo {
function getReturnType() { /*1*/ }
function getReturnDescription() { /*2*/ }
}

class ezcReflectionMethod extends ReflectionMethod {
use ezcReflectionReturnInfo;
/* ... */
}

class ezcReflectionFunction extends ReflectionFunction {
use ezcReflectionReturnInfo;
/* ... */
}
?>
[http://www.php.net/manual/en/language.oop5.traits.php]

SPECIFIC

name::
* McsEngl.lcpPhp'class.SPECIFIC@cptIt,

lcpPhp'class.ABSTRACT

name::
* McsEngl.lcpPhp'class.ABSTRACT@cptIt,

_DESCRIPTION:
PHP 5 introduces abstract classes and methods. Classes defined as abstract may not be instantiated, and any class that contains at least one abstract method must also be abstract. Methods defined as abstract simply declare the method's signature - they cannot define the implementation.
[http://www.php.net/manual/en/language.oop5.abstract.php]

lcpPhp'class.Base

name::
* McsEngl.lcpPhp'class.Base@cptIt,

Often you need classes with similar variables and functions to another existing class. In fact, it is good practice to define a generic class which can be used in all your projects and adapt this class for the needs of each of your specific projects. To facilitate this, classes can be extensions of other classes. The extended or derived class has all variables and functions of the base class (this is called 'inheritance' despite the fact that nobody died) and what you add in the extended definition. It is not possible to subtract from a class, that is, to undefine any existing functions or variables. An extended class is always dependent on a single base class, that is, multiple inheritance is not supported. Classes are extended using the keyword 'extends'.
[http://www.php.net/manual/en/keyword.extends.php]

lcpPhp'class.Example

name::
* McsEngl.lcpPhp'class.Example@cptIt,
* McsEngl.lcpPhp'ex.class@cptIt,

<?php
class SimpleClass
{
// property declaration
public $var = 'a default value';

// method declaration
public function displayVar() {
echo $this->var;
}
}
?>

class foo {
var $bar = 'I am bar-variable.';
}

lcpPhp'class.Extended

name::
* McsEngl.lcpPhp'class.Extended@cptIt,
* McsEngl.lcpPhp'derived-class@cptIt,

Often you need classes with similar variables and functions to another existing class. In fact, it is good practice to define a generic class which can be used in all your projects and adapt this class for the needs of each of your specific projects. To facilitate this, classes can be extensions of other classes. The extended or derived class has all variables and functions of the base class (this is called 'inheritance' despite the fact that nobody died) and what you add in the extended definition. It is not possible to subtract from a class, that is, to undefine any existing functions or variables. An extended class is always dependent on a single base class, that is, multiple inheritance is not supported. Classes are extended using the keyword 'extends'.
[http://www.php.net/manual/en/keyword.extends.php]

lcpPhp'class.FINAL

name::
* McsEngl.lcpPhp'class.FINAL@cptIt,
* McsEngl.lcpPhp'final-class@cptIt,

_DESCRIPTION:
PHP 5 introduces the final keyword, which prevents child classes from overriding a method by prefixing the definition with final. If the class itself is being defined final then it cannot be extended.
[http://www.php.net/manual/en/language.oop5.final.php]

lcpPhp'class.INHERITED

name::
* McsEngl.lcpPhp'class.INHERITED@cptIt,
* McsEngl.lcpPhp'child-class@cptIt,
* McsEngl.lcpPhp'subclass@cptIt,

_DESCRIPTION:
Object Inheritance ¶

Inheritance is a well-established programming principle, and PHP makes use of this principle in its object model. This principle will affect the way many classes and objects relate to one another.

For example, when you extend a class, the subclass inherits all of the public and protected methods from the parent class. Unless a class overrides those methods, they will retain their original functionality.

This is useful for defining and abstracting functionality, and permits the implementation of additional functionality in similar objects without the need to reimplement all of the shared functionality.

Note:
Unless autoloading is used, then classes must be defined before they are used. If a class extends another, then the parent class must be declared before the child class structure. This rule applies to classes that inherit other classes and interfaces.
[http://php.net/manual/en/language.oop5.inheritance.php]

lcpPhp'class.Object (instance)

name::
* McsEngl.lcpPhp'class.Object (instance)@cptIt,
* McsEngl.lcpPhp'archetype.OBJECT@cptIt,
* McsEngl.lcpPhp'class.instance@cptIt,
* McsEngl.lcpPhp'instance-class@cptIt,
* McsEngl.lcpPhp'object@cptIt,
* McsEngl.lcpPhp'object-model@cptIt,

_GENERIC:
* codetype#ql:php'codetype#

_DESCRIPTION:
PHP Objects
An object is a data type which stores data and information on how to process that data.
In PHP, an object must be explicitly declared.
First we must declare a class of object. For this, we use the class keyword. A class is a structure that can contain properties and methods.
[http://www.w3schools.com/Php/php_datatypes.asp]
===
To create an instance of a class, the new keyword must be used. An object will always be created unless the object has a constructor defined that throws an exception on error. Classes should be defined before instantiation (and in some cases this is a requirement).

If a string containing the name of a class is used with new, a new instance of that class will be created. If the class is in a namespace, its fully qualified name must be used when doing this.

Example#3 Creating an instance

<?php
$instance = new SimpleClass();

// This can also be done with a variable:
$className = 'Foo';
$instance = new $className(); // Foo()
?>
In the class context, it is possible to create a new object by new self and new parent.

When assigning an already created instance of a class to a new variable, the new variable will access the same instance as the object that was assigned. This behaviour is the same when passing instances to a function. A copy of an already created object can be made by cloning it.
[http://www.php.net/manual/en/language.oop5.basic.php#language.oop5.basic.new]
===
Starting with PHP 5, the object model was rewritten to allow for better performance and more features. This was a major change from PHP 4. PHP 5 has a full object model.

Among the features in PHP 5 are the inclusions of visibility, abstract and final classes and methods, additional magic methods, interfaces, cloning and typehinting.

PHP treats objects in the same way as references or handles, meaning that each variable contains an object reference rather than a copy of the entire object. See Objects and References
[http://www.php.net/manual/en/oop5.intro.php]

lcpPhp'object'Creating

name::
* McsEngl.lcpPhp'object'Creating@cptIt,

To create a new object, use the new statement to instantiate a class:

<?php
class foo
{
function do_foo()
{
echo "Doing foo.";
}
}

$bar = new foo;
$bar->do_foo();
?>
[http://www.php.net/manual/en/language.types.object.php]

lcpPhp'archetype.COMPOUND

name::
* McsEngl.lcpPhp'archetype.COMPOUND@cptIt,
* McsEngl.lcpPhp'archetype.collection@cptIt,
* McsEngl.lcpPhp'archetype.container@cptIt,
* McsEngl.lcpPhp'data.Compound-datatype@cptIt,
* McsEngl.lcpPhp'compound-datatype@cptIt,
* McsEngl.lcpPhp'composite-datatype@cptIt,
* McsEngl.lcpPhp'non-scalar-datatype@cptIt,

_GENERIC:
* primitive-datatype#ql:php'primitive_data_type#

_SPECIFIC:
Two compound types:
* array
* object
[http://www.php.net/manual/en/language.types.intro.php]

lcpPhp'compound'code

_CREATED: {2012-01-22}

name::
* McsEngl.lcpPhp'compound'code@cptIt,
* McsEngl.lcpPhp'code.CONTAINER@cptIt,
* McsEngl.lcpPhp'Container@cptIt,
* McsEngl.lcpPhp'Container-code@cptIt,
* McsEngl.lcpPhp'Group-of-code@cptIt,

_SPECIFIC:
* class#ql:php'class#,
* constant#ql:php'constant#,
* data-container#ql:lcpphp'container.data#,
* function#ql:php'function#,
* variable#ql:php'variable#

lcpPhp'container.Both

name::
* McsEngl.lcpPhp'container.Both@cptIt,
* McsEngl.lcpPhp'data-and-non-data-container@cptIt,
* McsEngl.lcpPhp'data-and-processing-container@cptIt,
* McsEngl.lcpPhp'mixed-container@cptIt,

_SPECIFIC:
* class#ql:php'class#,
* function#ql:php'function#,
* variable#ql:php'variable#

lcpPhp'container.Data

name::
* McsEngl.lcpPhp'container.Data@cptIt,

_SPECIFIC:
* constant#ql:php'constant#

lcpPhp'container.Processing

name::
* McsEngl.lcpPhp'container.Processing@cptIt,
* McsEngl.lcpPhp'dataNo-container@cptIt,
* McsEngl.lcpPhp'non-data-container@cptIt,

lcpPhp'archetype.COMPOUND.NO

name::
* McsEngl.lcpPhp'archetype.COMPOUND.NO@cptIt,
* McsEngl.lcpPhp'data.CompoundNo-datatype@cptIt,
* McsEngl.lcpPhp'compoundNo-datatype@cptIt,
* McsEngl.lcpPhp'Scalar-datatype@cptIt,

_GENERIC:
* primitive-datatype#ql:php'primitive_data_type#

_DESCRIPTION:
scalar values are values that you can't 'break' into smaller pieces, unlike arrays, for instance
[http://www.php.net/manual/en/language.expressions.php]

_SPECIFIC:
Four scalar types:
boolean
integer
float (floating-point number, aka double)
string
[http://www.php.net/manual/en/language.types.intro.php]

lcpPhp'compoundNo'code

_CREATED: {2012-01-22}

name::
* McsEngl.lcpPhp'compoundNo'code@cptIt,
* McsEngl.lcpPhp'code.CONTAINER.NO@cptIt,
* McsEngl.lcpPhp'ContainerNo-code@cptIt,

_SPECIFIC:
* literal,
* simple-command,

lcpPhp'archetype.FUNCTION (subprogram)

name::
* McsEngl.lcpPhp'archetype.FUNCTION (subprogram)@cptIt,
* McsEngl.lcpPhp'arhetype.subprogram@cptIt, {2014-02-20}

_DESCRIPTION:
Besides the built-in PHP functions, we can create our own functions.
A function is a block of statements that can be used repeatedly in a program.
A function will not execute immediately when a page loads.
A function will be executed by a call to the function.
[http://www.w3schools.com/Php/php_functions.asp]

lcpPhp'function'code

name::
* McsEngl.lcpPhp'function'code@cptIt,
* McsEngl.lcpPhp'code.FUNCTION@cptIt,
* McsEngl.lcpPhp'function@cptIt,
* McsEngl.php'function@cptIt,

_GENERIC:
* container-code#ql:php'container_code#,
* codetype#ql:php'codetype#

_DESCRIPTION:
A function is just a name we give to a block of code that can be executed whenever we need it. This might not seem like that big of an idea, but believe me, when you understand and use functions you will be able to save a ton of time and write code that is much more readable!
[http://www.tizag.com/phpT/phpfunctions.php]
===
PHP has hundreds of base functions and thousands more via extensions. These functions are well documented on the PHP site; however, the built-in library has a wide variety of naming conventions and inconsistencies.[65] PHP currently has no functions for thread programming, although it does support multiprocess programming on POSIX systems.[66]
Additional functions can be defined by a developer:

function myFunction() { //declares a function, this is named myFunction
return 'John Doe'; //returns the value 'John Doe'
}

echo 'My name is ' . myFunction() . '!'; //outputs the text and the return variable of the myFunction, the function is also called
//the result of the output will be 'My name is John Doe!'
[http://en.wikipedia.org/wiki/Php]

lcpPhp'function'Argument

name::
* McsEngl.lcpPhp'function'Argument@cptIt,

_DESCRIPTION:
Information may be passed to functions via the argument list, which is a comma-delimited list of expressions.

PHP supports passing arguments by value (the default), passing by reference, and default argument values. Variable-length argument lists are also supported, see also the function references for func_num_args(), func_get_arg(), and func_get_args() for more information.
[http://www.php.net/manual/en/functions.arguments.php]

lcpPhp'function'Calling

name::
* McsEngl.lcpPhp'function'Calling@cptIt,

lcpPhp'function'Creating

name::
* McsEngl.lcpPhp'function'Creating@cptIt,
* McsEngl.lcpPhp'function-definition@cptIt,

<?php
function foo(&$var)
{
$var++;
}

$a=5;
foo($a);
// $a is 6 here
?>

lcpPhp'function'Name

name::
* McsEngl.lcpPhp'function'Name@cptIt,

Reference, returned from a function, i.e.:

<?php
function &bar()
{
$a = 5;
return $a;
}
foo(bar());
?>
[http://theserverpages.com/php/manual/en/language.references.pass.php]

lcpPhp'function'Resource

name::
* McsEngl.lcpPhp'function'Resource@cptIt,

_SPECIFIC:
* http://www.php.net/manual/en/funcref.php,

lcpPhp'function'Returning-value

name::
* McsEngl.lcpPhp'function'Returning-value@cptIt,

Returning values

Values are returned by using the optional return statement. Any type may be returned, including arrays and objects. This causes the function to end its execution immediately and pass control back to the line from which it was called. See return() for more information.

Note:

If the return() is omitted the value NULL will be returned.

Reference, returned from a function, i.e.:

<?php
function &bar()
{
$a = 5;
return $a;
}
foo(bar());
?>
[http://theserverpages.com/php/manual/en/language.references.pass.php]

SPECIFIC

Function Reference

Tip
See also Extension List/Categorization.

Affecting PHP's Behaviour
APC — Alternative PHP Cache
APD — Advanced PHP debugger
bcompiler — PHP bytecode Compiler
BLENC — Blenc - BLowfish ENCoder for PHP source scripts
Error Handling — Error Handling and Logging
htscanner — htaccess-like support for all SAPIs
inclued — Inclusion hierarchy viewer
Memtrack
OPcache
Output Control — Output Buffering Control
PHP Options/Info — PHP Options and Information
runkit
scream — Break the silence operator
Weakref — Weak References
WinCache — Windows Cache for PHP
Xhprof — Hierarchical Profiler
Audio Formats Manipulation
ID3 — ID3 Tags
KTaglib
oggvorbis — OGG/Vorbis
OpenAL — OpenAL Audio Bindings
Authentication Services
KADM5 — Kerberos V
Radius
Date and Time Related Extensions
Calendar
Date/Time — Date and Time
Command Line Specific Extensions
Ncurses — Ncurses Terminal Screen Control
Newt
Readline — GNU Readline
Compression and Archive Extensions
Bzip2
LZF
Phar
Rar — Rar Archiving
Zip
Zlib — Zlib Compression
Credit Card Processing
MCVE — MCVE (Monetra) Payment
SPPLUS — SPPLUS Payment System
Cryptography Extensions
Crack — Cracklib
Hash — HASH Message Digest Framework
Mcrypt
Mhash
OpenSSL
Password Hashing
Database Extensions
Abstraction Layers
Vendor Specific Database Extensions
File System Related Extensions
Direct IO
Directories
Fileinfo — File Information
Filesystem
Inotify
Mimetype
Proctitle
xattr
xdiff
Human Language and Character Encoding Support
Enchant — Enchant spelling library
FriBiDi
Gender — Determine gender of firstnames
Gettext
iconv
intl — Internationalization Functions
Multibyte String
Pspell
Recode — GNU Recode
Image Processing and Generation
Cairo
Exif — Exchangeable image information
GD — Image Processing and GD
Gmagick
ImageMagick — Image Processing (ImageMagick)
Mail Related Extensions
Cyrus — Cyrus IMAP administration
IMAP — IMAP, POP3 and NNTP
Mail
Mailparse
vpopmail
Mathematical Extensions
BC Math — BCMath Arbitrary Precision Mathematics
GMP — GNU Multiple Precision
Lapack
Math — Mathematical Functions
Statistics
Trader — Technical Analysis for Traders
Non-Text MIME Output
FDF — Forms Data Format
GnuPG — GNU Privacy Guard
haru — Haru PDF
Ming — Ming (flash)
PDF
PS — PostScript document creation
RPM Reader — RPM Header Reading
SWF — Shockwave Flash
Process Control Extensions
Eio
Ev
Expect
Libevent
PCNTL — Process Control
POSIX
Program execution — System program execution
pthreads
Semaphore — Semaphore, Shared Memory and IPC
Shared Memory
Other Basic Extensions
GeoIP — Geo IP Location
JSON — JavaScript Object Notation
Judy — Judy Arrays
Lua
Misc. — Miscellaneous Functions
Parsekit
SPL — Standard PHP Library (SPL)
SPL Types — SPL Type Handling
Streams
Tidy
Tokenizer
URLs
V8js — V8 Javascript Engine Integration
Yaml — YAML Data Serialization
Yaf
Taint
Other Services
AMQP
chdb — Constant hash database
cURL — Client URL Library
Event
FAM — File Alteration Monitor
FTP
Gearman
Gopher — Net Gopher
Gupnp
HTTP
Hyperwave
Hyperwave API
Java — PHP / Java Integration
LDAP — Lightweight Directory Access Protocol
Lotus Notes
Memcache
Memcached
mqseries
Network
RRD — RRDtool
SAM — Simple Asynchronous Messaging
SNMP
Sockets
SSH2 — Secure Shell2
Stomp — Stomp Client
SVM — Support Vector Machine
SVN — Subversion
TCP — TCP Wrappers
Varnish
YAZ
YP/NIS
Search Engine Extensions
mnoGoSearch
Solr — Apache Solr
Sphinx — Sphinx Client
Swish — Swish Indexing
Server Specific Extensions
Apache
IIS — IIS Administration
NSAPI
Session Extensions
Msession — Mohawk Software Session Handler Functions
Sessions — Session Handling
Session PgSQL — PostgreSQL Session Save Handler
Text Processing
BBCode — Bulletin Board Code
PCRE — Regular Expressions (Perl-Compatible)
POSIX Regex — Regular Expression (POSIX Extended)
ssdeep — ssdeep Fuzzy Hashing
Strings
Variable and Type Related Extensions
Arrays
Classes/Objects — Class/Object Information
Classkit
Ctype — Character type checking
Filter — Data Filtering
Function Handling
Object Aggregation — Object Aggregation/Composition [PHP 4]
Quickhash
Reflection
Variable handling
Web Services
OAuth
SCA
SOAP
XML-RPC
Windows Only Extensions
.NET
COM — COM and .Net (Windows)
Printer
W32api
win32ps
win32service
XML Manipulation
DOM — Document Object Model
libxml
qtdom
SDO — Service Data Objects
SDO-DAS-Relational — SDO Relational Data Access Service
SDO DAS XML — SDO XML Data Access Service
SimpleXML
WDDX
XML Parser
XMLReader
XMLWriter
XSL
XSLT (PHP 4)
[http://www.php.net/manual/en/funcref.php]

lcpPhp'function.

name::
* McsEngl.lcpPhp'function.@cptIt,
* McsEngl.lcpPhp'-function@cptIt,

lcpPhp'function.anonymous

name::
* McsEngl.lcpPhp'function.anonymous@cptIt,
* McsEngl.lcpPhp'anonymous-function@cptIt,
* McsEngl.lcpPhp'closure@cptIt,

_DESCRIPTION:
Anonymous functions, also known as closures, allow the creation of functions which have no specified name. They are most useful as the value of callback parameters, but they have many other uses.

Example#1 Anonymous function example
<?php
echo preg_replace_callback('~-([a-z])~', function ($match) {
return strtoupper($match[1]);
}, 'hello-world');
// outputs helloWorld
?>
Closures can also be used as the values of variables; PHP automatically converts such expressions into instances of the Closure internal class. Assigning a closure to a variable uses the same syntax as any other assignment, including the trailing semicolon:

Example#2 Anonymous function variable assignment example
<?php
$greet = function($name)
{
printf("Hello %s<br>", $name);
};

$greet('World');
$greet('PHP');
?>
[http://www.php.net/manual/en/functions.anonymous.php]

lcpPhp'function.Built-in

name::
* McsEngl.lcpPhp'function.Built-in@cptIt,
* McsEngl.lcpPhp'built-in-function@cptIt,
* McsEngl.lcpPhp'internal-function@cptIt,

lcpPhp'function.Example

name::
* McsEngl.lcpPhp'function.Example@cptIt,
* McsEngl.lcpPhp'ex.function@cptIt,

function myFunction() { //declares a function, this is named myFunction
return 'John Doe'; //returns the value 'John Doe'
}

<?php
function echoit($string)
{
echo $string;
}

echoit(1+1); // This echo 2
?>

lcpPhp'function.define

name::
* McsEngl.lcpPhp'function.define@cptIt,
* McsEngl.lcpPhp'define-function@cptIt,

_ENTITY:
* constant#ql:php'constant#

define

(PHP 4, PHP 5)

define — Defines a named constant

Report a bug
Description

bool define ( string $name , mixed $value [, bool $case_insensitive = false ] )
Defines a named constant at runtime.
[http://gr.php.net/manual/en/function.define.php]

lcpPhp'function.fread()

name::
* McsEngl.lcpPhp'function.fread()@cptIt,

$myFile = "testFile.txt";
$fh = fopen($myFile, 'r');
$theData = fread($fh, 9);
fclose($fh);
echo $theData;

lcpPhp'function.is-resource()

name::
* McsEngl.lcpPhp'function.is-resource()@cptIt,

lcpPhp'function.NETWORK

name::
* McsEngl.lcpPhp'function.NETWORK@cptIt,
* McsEngl.lcpPhp'network-function@cptIt,

_SPECIFIC:
Network Functions

Table of Contents

checkdnsrr — Check DNS records corresponding to a given Internet host name or IP address
closelog — Close connection to system logger
define_syslog_variables — Initializes all syslog related variables
dns_check_record — Alias of checkdnsrr
dns_get_mx — Alias of getmxrr
dns_get_record — Fetch DNS Resource Records associated with a hostname
fsockopen — Open Internet or Unix domain socket connection
gethostbyaddr — Get the Internet host name corresponding to a given IP address
gethostbyname — Get the IPv4 address corresponding to a given Internet host name
gethostbynamel — Get a list of IPv4 addresses corresponding to a given Internet host name
gethostname — Gets the host name
getmxrr — Get MX records corresponding to a given Internet host name
getprotobyname — Get protocol number associated with protocol name
getprotobynumber — Get protocol name associated with protocol number
getservbyname — Get port number associated with an Internet service and protocol
getservbyport — Get Internet service which corresponds to port and protocol
header_register_callback — Call a header function
header_remove — Remove previously set headers
header — Send a raw HTTP header
headers_list — Returns a list of response headers sent (or ready to send)
headers_sent — Checks if or where headers have been sent
http_response_code — Get or Set the HTTP response code
inet_ntop — Converts a packed internet address to a human readable representation
inet_pton — Converts a human readable IP address to its packed in_addr representation
ip2long — Converts a string containing an (IPv4) Internet Protocol dotted address into a proper address
long2ip — Converts an (IPv4) Internet network address into a string in Internet standard dotted format
openlog — Open connection to system logger
pfsockopen — Open persistent Internet or Unix domain socket connection
setcookie — Send a cookie
setrawcookie — Send a cookie without urlencoding the cookie value
socket_get_status — Alias of stream_get_meta_data
socket_set_blocking — Alias of stream_set_blocking
socket_set_timeout — Alias of stream_set_timeout
syslog — Generate a system log message
[http://www.php.net/manual/en/ref.network.php]

lcpPhp'function.phpinfo()

name::
* McsEngl.lcpPhp'function.phpinfo()@cptIt,
* McsEngl.lcpPhp'phpinfo-function@cptIt,

lcpPhp'function.Recursive

name::
* McsEngl.lcpPhp'function.Recursive@cptIt,

<?php
function recursion($a)
{
if ($a < 20) {
echo "$a\n";
recursion($a + 1);
}
}
?>
[http://www.php.net/manual/en/functions.user-defined.php]

lcpPhp'function.user-defined

name::
* McsEngl.lcpPhp'function.user-defined@cptIt,
* McsEngl.lcpPhp'user-defined-function@cptIt,

lcpPhp'function.variable

name::
* McsEngl.lcpPhp'function.variable@cptIt,
* McsEngl.lcpPhp'variable-function@cptIt,

_DESCRIPTION:
PHP supports the concept of variable functions. This means that if a variable name has parentheses appended to it, PHP will look for a function with the same name as whatever the variable evaluates to, and will attempt to execute it. Among other things, this can be used to implement callbacks, function tables, and so forth.

Variable functions won't work with language constructs such as echo(), print(), unset(), isset(), empty(), include(), require() and the like. Utilize wrapper functions to make use of any of these constructs as variable functions.

Example#1 Variable function example
<?php
function foo() {
echo "In foo()<br />\n";
}

function bar($arg = '')
{
echo "In bar(); argument was '$arg'.<br />\n";
}

// This is a wrapper function around echo
function echoit($string)
{
echo $string;
}

$func = 'foo';
$func(); // This calls foo()

$func = 'bar';
$func('test'); // This calls bar()

$func = 'echoit';
$func('test'); // This calls echoit()
?>
[http://www.php.net/manual/en/functions.variable-functions.php]

lcpPhp'function.variable-management

name::
* McsEngl.lcpPhp'function.variable-management@cptIt,

Variable handling Functions

Table of Contents

debug_zval_dump — Dumps a string representation of an internal zend value to output
doubleval — Alias of floatval
empty — Determine whether a variable is empty
floatval — Get float value of a variable
get_defined_vars — Returns an array of all defined variables
get_resource_type — Returns the resource type
gettype — Get the type of a variable
import_request_variables — Import GET/POST/Cookie variables into the global scope
intval — Get the integer value of a variable
is_array — Finds whether a variable is an array
is_bool — Finds out whether a variable is a boolean
is_callable — Verify that the contents of a variable can be called as a function
is_double — Alias of is_float
is_float — Finds whether the type of a variable is float
is_int — Find whether the type of a variable is integer
is_integer — Alias of is_int
is_long — Alias of is_int
is_null — Finds whether a variable is NULL
is_numeric — Finds whether a variable is a number or a numeric string
is_object — Finds whether a variable is an object
is_real — Alias of is_float
is_resource — Finds whether a variable is a resource
is_scalar — Finds whether a variable is a scalar
is_string — Find whether the type of a variable is string
isset — Determine if a variable is set and is not NULL
print_r — Prints human-readable information about a variable
serialize — Generates a storable representation of a value
settype — Set the type of a variable
strval — Get string value of a variable
unserialize — Creates a PHP value from a stored representation
unset — Unset a given variable
var_dump — Dumps information about a variable
var_export — Outputs or returns a parsable string representation of a variable
[http://www.php.net/manual/en/ref.var.php]

lcpPhp'archetype.INFORMATION

name::
* McsEngl.lcpPhp'archetype.INFORMATION@cptIt,
* McsEngl.conceptIt585.1,
* McsEngl.lcpPhp'code.PROCESSING.NO@cptIt,
* McsEngl.lcpPhp'code.DATA@cptIt,
* McsEngl.lcpPhp'data@cptIt,
* McsEngl.lcpPhp'data-code@cptIt,

_GENERIC:
* codetype#ql:php'codetype#,
* data-of-scripting-language#ql:sl'data#

_ATTRIBUTE:
* constant#ql:php'constant#,
* variable#ql:php'variable#

_SPECIFIC: Alphabetically:
* array,
* boolean,
* compound,
* compoundNo
* datatype,
* literal,
* primitive,
* pseudo,
* special,

lcpPhp'archetype.NULL

name::
* McsEngl.lcpPhp'archetype.NULL@cptIt,
* McsEngl.lcpPhp'data.NULL@cptIt,
* McsEngl.lcpPhp'NULL@cptIt,
* McsEngl.lcpPhp'NULL-value@cptIt,

_DESCRIPTION:
The special NULL value represents a variable with no value. NULL is the only possible value of type NULL.

A variable is considered to be null if:

it has been assigned the constant NULL.

it has not been set to any value yet.

it has been unset().
[http://www.php.net/manual/en/language.types.null.php]
===
Also note that a NULL byte ("\0") is not equivalent to the PHP NULL constant.
[http://gr.php.net/manual/en/function.isset.php]

lcpPhp'archetype.NUMBER

name::
* McsEngl.lcpPhp'archetype.NUMBER@cptIt,

lcpPhp'number.code

name::
* McsEngl.lcpPhp'number.code@cptIt,
* McsEngl.lcpPhp'code.NUMBER@cptIt,
* McsEngl.lcpPhp'data.NUMBER@cptIt,
* McsEngl.lcpPhp'number@cptIt,

_GENERIC:
* pseudo-datatype,

_DESCRIPTION:
number indicates that a parameter can be either integer or float.
[http://www.php.net/manual/en/language.pseudo-types.php#language.types.number]

_SPECIFIC:
* float#ql:php'float#,
* integer#ql:php'integer#

lcpPhp'data.number.FLOAT

name::
* McsEngl.lcpPhp'data.number.FLOAT@cptIt,
* McsEngl.lcpPhp'double@cptIt,
* McsEngl.lcpPhp'float@cptIt,
* McsEngl.lcpPhp'floating-point-number@cptIt,
* McsEngl.lcpPhp'real-number@cptIt,

_GENERIC:
* number#ql:php'number#

_DESCRIPTION:
Floating point numbers (also known as "floats", "doubles", or "real numbers") can be specified using any of the following syntaxes:

<?php
$a = 1.234;
$b = 1.2e3;
$c = 7E-10;
?>
[http://www.php.net/manual/en/language.types.float.php]

lcpPhp'data.number.INTEGER

name::
* McsEngl.lcpPhp'data.number.INTEGER@cptIt,
* McsEngl.lcpPhp'integer@cptIt,

_GENERIC:
* number#ql:php'number#

_DESCRIPTION:
An integer is a number of the set Z = {..., -2, -1, 0, 1, 2, ...}.
[http://www.php.net/manual/en/language.types.integer.php]

_NOTATION:
Integers can be specified in decimal (base 10), hexadecimal (base 16), octal (base 8) or binary (base 2) notation, optionally preceded by a sign (- or +).

Binary integer literals are available since PHP 5.4.0.

To use octal notation, precede the number with a 0 (zero). To use hexadecimal notation precede the number with 0x. To use binary notation precede the number with 0b.
[http://www.php.net/manual/en/language.types.integer.php#language.types.integer.syntax]

_INTEGER:
Integer literals
<?php
$a = 1234; // decimal number
$a = -123; // a negative number
$a = 0123; // octal number (equivalent to 83 decimal)
$a = 0x1A; // hexadecimal number (equivalent to 26 decimal)
?>

lcpPhp'archetype.PRIMITIVE

name::
* McsEngl.lcpPhp'archetype.PRIMITIVE@cptIt,
* McsEngl.lcpPhp'data.Primitive-datatype@cptIt,
* McsEngl.lcpPhp'primitive@cptIt,
* McsEngl.php'primitive-datatype@cptIt,

_DESCRIPTION:
PHP supports eight primitive types.

Four scalar types:
boolean
integer
float (floating-point number, aka double)
string

Two compound types:
array
object

And finally two special types:
resource
NULL
[http://www.php.net/manual/en/language.types.intro.php]

lcpPhp'archetype.PSEUDO

name::
* McsEngl.lcpPhp'archetype.PSEUDO@cptIt,
* McsEngl.lcpPhp'data.Pseudo-datatype@cptIt,
* McsEngl.lcpPhp'pseudo-datatype@cptIt,

_SPECIFIC:
* callback,
* mixed,
* number#ql:php'number#

_callback:
callback
Some functions like call_user_func() or usort() accept user-defined callback functions as a parameter. Callback functions can not only be simple functions, but also object methods, including static class methods.

A PHP function is passed by its name as a string. Any built-in or user-defined function can be used, except language constructs such as: array(), echo(), empty(), eval(), exit(), isset(), list(), print() or unset().

A method of an instantiated object is passed as an array containing an object at index 0 and the method name at index 1.

Static class methods can also be passed without instantiating an object of that class by passing the class name instead of an object at index 0.

Apart from common user-defined function, create_function() can also be used to create an anonymous callback function. As of PHP 5.3.0 it is possible to also pass a closure to a callback parameter.
[http://www.php.net/manual/en/language.pseudo-types.php]

_mixed_datatype:

mixed indicates that a parameter may accept multiple (but not necessarily all) types.

gettype() for example will accept all PHP types, while str_replace() will accept strings and arrays.
[http://www.php.net/manual/en/language.pseudo-types.php]

lcpPhp'archetype.RESOURCE (php4)

name::
* McsEngl.lcpPhp'archetype.RESOURCE (php4)@cptIt,
* McsEngl.lcpPhp'data.RESOURCE@cptIt,
* McsEngl.lcpPhp'resource@cptIt,
* McsEngl.lcpPhp'resource-data@cptIt,
* McsEngl.phpresource@cptIt, {2014-02-20}

_GENERIC:
* php-variable#linkL#

_DESCRIPTION:
A resource is a special variable, holding a reference to an external resource. Resources are created and used by special functions. See the appendix for a listing of all these functions and the corresponding resource types.

Note: The resource type was introduced in PHP 4

See also the get_resource_type() function.

Converting to resource
As resource variables hold special handlers to opened files, database connections, image canvas areas and the like, converting to a resource makes no sense.

Freeing resources
Thanks to the reference-counting system introduced with PHP 4's Zend Engine, a resource with no more references to it is detected automatically, and it is freed by the garbage collector. For this reason, it is rarely necessary to free the memory manually.
[http://www.php.net/manual/en/language.types.resource.php]

phpresource'function

name::
* McsEngl.phpresource'function@cptIt,

_SPECIFIC:
The function is_resource() can be used to determine if a variable is a resource and get_resource_type() will return the type of resource it is.
[http://www.php.net/manual/en/resource.php]

phpresource'type

name::
* McsEngl.phpresource'type@cptIt,

_DESCRIPTION:
The following is a list of functions which create, use or destroy PHP resources. The function is_resource() can be used to determine if a variable is a resource and get_resource_type() will return the type of resource it is.
[http://www.php.net/manual/en/resource.php]

lcpPhp'archetype.SPECIAL

name::
* McsEngl.lcpPhp'archetype.SPECIAL@cptIt,
* McsEngl.lcpPhp'data.Special-datatype@cptIt,
* McsEngl.lcpPhp'special-datatype@cptIt,

_GENERIC:
* primitive-datatype#ql:php'primitive_data_type#

_SPECIFIC:
And finally two special types:
resource
NULL
[http://www.php.net/manual/en/language.types.intro.php]

lcpPhp'archetype.STRING

name::
* McsEngl.lcpPhp'archetype.STRING@cptIt,

lcpPhp'string'code

name::
* McsEngl.lcpPhp'string'code@cptIt,
* McsEngl.lcpPhp'code.STRING@cptIt,
* McsEngl.lcpPhp'data.STRING@cptIt,
* McsEngl.lcpPhp'string-code@cptIt,
* McsEngl.lcpPhp'string@cptIt,
* McsEngl.lcpPhp'text@cptIt,

_CODE:
$x = "Hello world!";
$x = 'Hello world!';

_DESCRIPTION:
A string is series of characters, where a character is the same as a byte. This means that PHP only supports a 256-character set, and hence does not offer native Unicode support. See details of the string type.
Note: It is no problem for a string to become very large. PHP imposes no boundary on the size of a string; the only limit is the available memory of the computer on which PHP is running.
[http://www.php.net/manual/en/language.types.string.php]

_ATTRIBUTE:
* string-function#ql:lcpphp'string'function#,
* string-operator#ql:lcpphp'operator.string#

lcpPhp'string'function

name::
* McsEngl.lcpPhp'string'function@cptIt,
* McsEngl.lcpPhp'function.String@cptIt,
* McsEngl.lcpPhp'string'function@cptIt,

_ADDRESS.WPG:
* http://gr.php.net/manual/en/ref.strings.php,
* http://www.w3schools.com/php/php_ref_string.asp,

_SPECIFIC:
addcslashes — Quote string with slashes in a C style
addslashes — Quote string with slashes
bin2hex — Convert binary data into hexadecimal representation
chop — Alias of rtrim
chr — Return a specific character
chunk_split — Split a string into smaller chunks
convert_cyr_string — Convert from one Cyrillic character set to another
convert_uudecode — Decode a uuencoded string
convert_uuencode — Uuencode a string
count_chars — Return information about characters used in a string
crc32 — Calculates the crc32 polynomial of a string
crypt — One-way string hashing
echo — Output one or more strings
explode — Split a string by string
fprintf — Write a formatted string to a stream
get_html_translation_table — Returns the translation table used by htmlspecialchars and htmlentities
hebrev — Convert logical Hebrew text to visual text
hebrevc — Convert logical Hebrew text to visual text with newline conversion
hex2bin — Convert hex to binary
html_entity_decode — Convert all HTML entities to their applicable characters
htmlentities — Convert all applicable characters to HTML entities
htmlspecialchars_decode — Convert special HTML entities back to characters
htmlspecialchars — Convert special characters to HTML entities
implode — Join array elements with a string
join — Alias of implode
lcfirst — Make a string's first character lowercase
levenshtein — Calculate Levenshtein distance between two strings
localeconv — Get numeric formatting information
ltrim — Strip whitespace (or other characters) from the beginning of a string
md5_file — Calculates the md5 hash of a given file
md5 — Calculate the md5 hash of a string
metaphone — Calculate the metaphone key of a string
money_format — Formats a number as a currency string
nl_langinfo — Query language and locale information
nl2br — Inserts HTML line breaks before all newlines in a string
number_format — Format a number with grouped thousands
ord — Return ASCII value of character
parse_str — Parses the string into variables
print — Output a string
printf — Output a formatted string
quoted_printable_decode — Convert a quoted-printable string to an 8 bit string
quoted_printable_encode — Convert a 8 bit string to a quoted-printable string
quotemeta — Quote meta characters
rtrim — Strip whitespace (or other characters) from the end of a string
setlocale — Set locale information
sha1_file — Calculate the sha1 hash of a file
sha1 — Calculate the sha1 hash of a string
similar_text — Calculate the similarity between two strings
soundex — Calculate the soundex key of a string
sprintf — Return a formatted string
sscanf — Parses input from a string according to a format
str_getcsv — Parse a CSV string into an array
str_ireplace — Case-insensitive version of str_replace.
str_pad — Pad a string to a certain length with another string
str_repeat — Repeat a string
str_replace — Replace all occurrences of the search string with the replacement string
str_rot13 — Perform the rot13 transform on a string
str_shuffle — Randomly shuffles a string
str_split — Convert a string to an array
str_word_count — Return information about words used in a string
strcasecmp — Binary safe case-insensitive string comparison
strchr — Alias of strstr
strcmp — Binary safe string comparison
strcoll — Locale based string comparison
strcspn — Find length of initial segment not matching mask
strip_tags — Strip HTML and PHP tags from a string
stripcslashes — Un-quote string quoted with addcslashes
stripos — Find the position of the first occurrence of a case-insensitive substring in a string
stripslashes — Un-quotes a quoted string
stristr — Case-insensitive strstr
strlen — Get string length
strnatcasecmp — Case insensitive string comparisons using a "natural order" algorithm
strnatcmp — String comparisons using a "natural order" algorithm
strncasecmp — Binary safe case-insensitive string comparison of the first n characters
strncmp — Binary safe string comparison of the first n characters
strpbrk — Search a string for any of a set of characters
strpos — Find the position of the first occurrence of a substring in a string
strrchr — Find the last occurrence of a character in a string
strrev — Reverse a string
strripos — Find the position of the last occurrence of a case-insensitive substring in a string
strrpos — Find the position of the last occurrence of a substring in a string
strspn — Finds the length of the initial segment of a string consisting entirely of characters contained within a given mask.
strstr — Find the first occurrence of a string
strtok — Tokenize string
strtolower — Make a string lowercase
strtoupper — Make a string uppercase
strtr — Translate characters or replace substrings
substr_compare — Binary safe comparison of two strings from an offset, up to length characters
substr_count — Count the number of substring occurrences
substr_replace — Replace text within a portion of a string
substr — Return part of a string
trim — Strip whitespace (or other characters) from the beginning and end of a string
ucfirst — Make a string's first character uppercase
ucwords — Uppercase the first character of each word in a string
vfprintf — Write a formatted string to a stream
vprintf — Output a formatted string
vsprintf — Return a formatted string
wordwrap — Wraps a string to a given number of characters
[http://gr.php.net/manual/en/ref.strings.php]

lcpPhp'string'operator

name::
* McsEngl.lcpPhp'string'operator@cptIt,
* McsEngl.lcpPhp'operator.STRING@cptIt,
* McsEngl.lcpPhp'string-operator@cptIt,
* McsEngl.php'operator.string@cptIt,

_ENTITY:
* string#ql:php'string#

_DESCRIPTION:
There are two string operators. The first is the concatenation operator ('.'), which returns the concatenation of its right and left arguments. The second is the concatenating assignment operator ('.='), which appends the argument on the right side to the argument on the left side. Please read Assignment Operators for more information.

<?php
$a = "Hello ";
$b = $a . "World!"; // now $b contains "Hello World!"

$a = "Hello ";
$a .= "World!"; // now $a contains "Hello World!"
?>
[http://www.php.net/manual/en/language.operators.string.php]
The Concatenation Operator

There is only one string operator in PHP.

The concatenation operator (.) is used to put two string values together.

To concatenate two string variables together, use the concatenation operator:

<?php
$txt1="Hello World!";
$txt2="What a nice day!";
echo $txt1 . " " . $txt2;
?>
The output of the code above will be:

Hello World! What a nice day!
[http://www.w3schools.com/php/php_string.asp]

lcpPhp'string'splitting-into-words

name::
* McsEngl.lcpPhp'string'splitting-into-words@cptIt,

_CODE.PHP
// The RegEx to split a chunk of text into words
 public static $regex = '/[\p{L}\p{N}]+|[^\p{L}\p{N}]/u';

lcpPhp'string.CHARACTER

name::
* McsEngl.lcpPhp'string.CHARACTER@cptIt,
* McsEngl.lcpPhp'data.CHARACTER@cptIt,
* McsEngl.lcpPhp'character@cptIt,

_DESCRIPTION:
A string is series of characters, where a character is the same as a byte. This means that PHP only supports a 256-character set, and hence does not offer native Unicode support. See details of the string type.
[http://www.php.net/manual/en/language.types.string.php]

lcpPhp'archetype.TYPE

name::
* McsEngl.lcpPhp'archetype.TYPE@cptIt,
* McsEngl.lcpPhp'codetype@cptIt, {2011-10-19}
* McsEngl.lcpPhp'type@cptIt,
* McsEngl.lcpPhp'data.Datatype@cptIt,
* McsEngl.lcpPhp'datatype@cptIt,
* McsEngl.lcpPhp'data-type@cptIt,
* McsEngl.lcpPhp'type@cptIt,

_DESCRIPTION:
PHP supports eight primitive types.

Four scalar types:

boolean
integer
float (floating-point number, aka double)
string
Two compound types:

array
object
And finally two special types:

resource
NULL

This manual also introduces some pseudo-types for readability reasons:
mixed
number
callback
And the pseudo-variable $....

Some references to the type "double" may remain in the manual. Consider double the same as float; the two names exist only for historic reasons.

The type of a variable is not usually set by the programmer; rather, it is decided at runtime by PHP depending on the context in which that variable is used.

Note: To check the type and value of an expression, use the var_dump() function.
To get a human-readable representation of a type for debugging, use the gettype() function. To check for a certain type, do not use gettype(), but rather the is_type functions. Some examples:
<?php
$a_bool = TRUE; // a boolean
$a_str = "foo"; // a string
$a_str2 = 'foo'; // a string
$an_int = 12; // an integer

echo gettype($a_bool); // prints out: boolean
echo gettype($a_str); // prints out: string

// If this is an integer, increment it by four
if (is_int($an_int)) {
$an_int += 4;
}

// If $a_bool is a string, print it out
// (does not print out anything)
if (is_string($a_bool)) {
echo "String: $a_bool";
}
?>
To forcibly convert a variable to a certain type, either cast the variable or use the settype() function on it.

Note that a variable may be evaluated with different values in certain situations, depending on what type it is at the time. For more information, see the section on Type Juggling. The type comparison tables may also be useful, as they show examples of various type-related comparisons.
[http://www.php.net/manual/en/language.types.intro.php]

_SPECIFIC:
* constant#ql:php'constant#,
* class#ql:php'class#,
* data#ql:php'data#,
* function#ql:php'function#,
* interface#ql:php'interface#,
* object#ql:php'object#,
* variable#ql:php'variable#

lcpPhp'archetype'type'casting

name::
* McsEngl.lcpPhp'archetype'type'casting@cptIt,

Type Casting ¶

Type casting in PHP works much as it does in C: the name of the desired type is written in parentheses before the variable which is to be cast.

<?php
$foo = 10; // $foo is an integer
$bar = (boolean) $foo; // $bar is a boolean
?>
The casts allowed are:

(int), (integer) - cast to integer
(bool), (boolean) - cast to boolean
(float), (double), (real) - cast to float
(string) - cast to string
(array) - cast to array
(object) - cast to object
(unset) - cast to NULL (PHP 5)
(binary) casting and b prefix forward support was added in PHP 5.2.1
[http://www.php.net/manual/en/language.types.type-juggling.php#language.types.typecasting]

lcpPhp'archetype.VARIABLE

name::
* McsEngl.lcpPhp'archetype.VARIABLE@cptIt,
* McsEngl.phpvariable@cptIt, {2014-02-20}

_DESCRIPTION:
Variable is a NAMED archetype.
[hmnSngo.2014-02-20]

lcpPhp'variable'code

name::
* McsEngl.lcpPhp'variable'code@cptIt,
* McsEngl.lcpPhp'code.VARIABLE@cptIt,
* McsEngl.lcpPhp'variable@cptIt,

_GENERIC:
* container-code#ql:php'container_code#,
* codetype#ql:php'codetype#

_DESCRIPTION:
A variable is a storage area holding a number or text. The problem is, a variable will hold only one value.
[http://www.w3schools.com/php/php_arrays.asp]
===
A variable is a means of storing a value, such as text string "Hello World!" or the integer value 4. A variable can then be reused throughout your code, instead of having to type out the actual value over and over again. In PHP you define a variable with the following form:
$variable_name = Value;
[http://www.tizag.com/phpT/variable.php]
===
Variables in PHP are represented by a dollar sign followed by the name of the variable. The variable name is case-sensitive.
Variable names follow the same rules as other labels in PHP. A valid variable name starts with a letter or underscore, followed by any number of letters, numbers, or underscores. As a regular expression, it would be expressed thus: '[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*'
[http://www.php.net/manual/en/language.variables.basics.php]

lcpPhp'variable'declaration

name::
* McsEngl.lcpPhp'variable'declaration@cptIt,

_DESCRIPTION:
PHP does not require (or support) explicit type definition in variable declaration; a variable's type is determined by the context in which the variable is used. That is to say, if a string value is assigned to variable $var, $var becomes a string. If an integer value is then assigned to $var, it becomes an integer.

An example of PHP's automatic type conversion is the addition operator '+'. If either operand is a float, then both operands are evaluated as floats, and the result will be a float. Otherwise, the operands will be interpreted as integers, and the result will also be an integer. Note that this does not change the types of the operands themselves; the only change is in how the operands are evaluated and what the type of the expression itself is.

<?php
$foo = "0"; // $foo is string (ASCII 48)
$foo += 2; // $foo is now an integer (2)
$foo = $foo + 1.3; // $foo is now a float (3.3)
$foo = 5 + "10 Little Piggies"; // $foo is integer (15)
$foo = 5 + "10 Small Pigs"; // $foo is integer (15)
?>
[http://www.php.net/manual/en/language.types.type-juggling.php#language.types.type-juggling]

_CODE.PHP:
$x=5;
$y=6;
$z=$x+$y;

lcpPhp'variable'function

name::
* McsEngl.lcpPhp'variable'function@cptIt,

_ADDRESS.WPG:
* http://gr.php.net/manual/en/ref.var.php,

_DESCRIPTION:
PHP supports the concept of variable functions. This means that if a variable name has parentheses appended to it, PHP will look for a function with the same name as whatever the variable evaluates to, and will attempt to execute it. Among other things, this can be used to implement callbacks, function tables, and so forth.

Variable functions won't work with language constructs such as echo, print, unset(), isset(), empty(), include, require and the like. Utilize wrapper functions to make use of any of these constructs as variable functions.

Example#1 Variable function example

<?php
function foo() {
echo "In foo()<br />\n";
}

function bar($arg = '')
{
echo "In bar(); argument was '$arg'.<br />\n";
}

// This is a wrapper function around echo
function echoit($string)
{
echo $string;
}

$func = 'foo';
$func(); // This calls foo()

$func = 'bar';
$func('test'); // This calls bar()

$func = 'echoit';
$func('test'); // This calls echoit()
?>
[http://php.net/functions.variable-functions]

_SPECIFIC:
* lcpPhp'debug_zval_dump — Dumps a string representation of an internal zend value to output
* lcpPhp'doubleval — Alias of floatval
* lcpPhp'empty — Determine whether a variable is empty
* lcpPhp'floatval — Get float value of a variable
* lcpPhp'get_defined_vars — Returns an array of all defined variables
* lcpPhp'get_resource_type — Returns the resource type
* lcpPhp'gettype — Get the type of a variable
* lcpPhp'import_request_variables — Import GET/POST/Cookie variables into the global scope
* lcpPhp'intval — Get the integer value of a variable
* lcpPhp'is_array — Finds whether a variable is an array
* lcpPhp'is_bool — Finds out whether a variable is a boolean
* lcpPhp'is_callable — Verify that the contents of a variable can be called as a function
* lcpPhp'is_double — Alias of is_float
* lcpPhp'is_float — Finds whether the type of a variable is float
* lcpPhp'is_int — Find whether the type of a variable is integer
* lcpPhp'is_integer — Alias of is_int
* lcpPhp'is_long — Alias of is_int
* lcpPhp'is_null — Finds whether a variable is NULL
* lcpPhp'is_numeric — Finds whether a variable is a number or a numeric string
* lcpPhp'is_object — Finds whether a variable is an object
* lcpPhp'is_real — Alias of is_float
* lcpPhp'is_resource — Finds whether a variable is a resource
* lcpPhp'is_scalar — Finds whether a variable is a scalar
* lcpPhp'is_string — Find whether the type of a variable is string
* lcpPhp'isset — Determine if a variable is set and is not NULL
* lcpPhp'print_r — Prints human-readable information about a variable
* lcpPhp'serialize — Generates a storable representation of a value
* lcpPhp'settype — Set the type of a variable
* lcpPhp'strval — Get string value of a variable
* lcpPhp'unserialize — Creates a PHP value from a stored representation
* lcpPhp'unset — Unset a given variable
* lcpPhp'var_dump — Dumps information about a variable
* lcpPhp'var_export — Outputs or returns a parsable string representation of a variable
[http://gr.php.net/manual/en/ref.var.php]

lcpPhp'variable'name

name::
* McsEngl.lcpPhp'variable'name@cptIt,
* McsEngl.lcpPhp'variable'Reference@cptIt,
* McsEngl.lcpPhp'reference@cptIt,

_DESCRIPTION:
If you forget that dollar sign at the beginning, it will not work. This is a common mistake for new PHP programmers!
Note: Also, variable names are case-sensitive, so use the exact same capitalization when using a variable. The variables $a_number and $A_number are different variables in PHP's eyes.
[http://www.tizag.com/phpT/variable.php]
===
References in PHP are a means to access the same variable content by different names. They are not like C pointers; for instance, you cannot perform pointer arithmetic using them, they are not actual memory addresses, and so on. See What References Are Not for more information. Instead, they are symbol table aliases. Note that in PHP, variable name and variable content are different, so the same content can have different names. The closest analogy is with Unix filenames and files - variable names are directory entries, while variable content is the file itself. References can be likened to hardlinking in Unix filesystem.
[http://www.php.net/manual/en/language.references.whatare.php]

lcpPhp'variable'scope

name::
* McsEngl.lcpPhp'variable'scope@cptIt,

lcpPhp'variable'type

name::
* McsEngl.lcpPhp'variable'type@cptIt,
* McsEngl.lcpPhp'type-of-variable@cptIt,

_DESCRIPTION:
PHP does not require (or support) explicit type definition in variable declaration; a variable's type is determined by the context in which the variable is used. That is to say, if a string value is assigned to variable $var, $var becomes a string. If an integer value is then assigned to $var, it becomes an integer.
[http://www.php.net/manual/en/language.types.type-juggling.php]
===
The type of a variable is not usually set by the programmer; rather, it is decided at runtime by PHP depending on the context in which that variable is used.
[http://www.php.net/manual/en/language.types.intro.php]

_SPECIFIC:
Possibles values of type are:

"boolean" (or, since PHP 4.2.0, "bool")
"integer" (or, since PHP 4.2.0, "int")
"float" (only possible since PHP 4.2.0, for older versions use the deprecated variant "double")
"string"
"array"
"object"
"null" (since PHP 4.2.0)
[http://www.php.net/manual/en/function.settype.php]

lcpPhp'variable'value

name::
* McsEngl.lcpPhp'variable'value@cptIt,
* McsEngl.lcpPhp'value@cptIt,
* McsEngl.lcpPhp'variable'value@cptIt,

SPECIFIC

_SPECIFIC:
* data-variable,
* lcpPhp'variable.SPECIFIC,
* processing-variable,
* mixed-variable,

lcpPhp'variable.Data

name::
* McsEngl.lcpPhp'variable.Data@cptIt,

lcpPhp'variable.GLOBAL

name::
* McsEngl.lcpPhp'variable.GLOBAL@cptIt,
* McsEngl.lcpPhp'global-variable@cptIt,

_DESCRIPTION:
The global keyword

First, an example use of global:

Example#1 Using global
<?php
$a = 1;
$b = 2;

function Sum()
{
global $a, $b;

$b = $a + $b;
}

Sum();
echo $b;
?>
The above script will output 3. By declaring $a and $b global within the function, all references to either variable will refer to the global version. There is no limit to the number of global variables that can be manipulated by a function.

A second way to access variables from the global scope is to use the special PHP-defined $GLOBALS array. The previous example can be rewritten as:

Example#2 Using $GLOBALS instead of global
<?php
$a = 1;
$b = 2;

function Sum()
{
$GLOBALS['b'] = $GLOBALS['a'] + $GLOBALS['b'];
}

Sum();
echo $b;
?>
The $GLOBALS array is an associative array with the name of the global variable being the key and the contents of that variable being the value of the array element. Notice how $GLOBALS exists in any scope, this is because $GLOBALS is a superglobal.
[http://php.net/manual/en/language.variables.scope.php]

lcpPhp'variable.LOCAL

name::
* McsEngl.lcpPhp'variable.LOCAL@cptIt,

_CODE.PHP:
<?php

function myTest() {
$x=0;
echo $x . "<br/>";
$x++;
}

myTest(); //0
myTest(); //0
myTest(); //0

?>

lcpPhp'variable.Mixed

name::
* McsEngl.lcpPhp'variable.Mixed@cptIt,

lcpPhp'variable.Predefined

name::
* McsEngl.lcpPhp'variable.Predefined@cptIt,
* McsEngl.lcpPhp'predefined-variable@cptIt,
* McsEngl.lcpPhp'reserved-variable@cptIt,

_DESCRIPTION:
Predefined Variables

PHP provides a large number of predefined variables to all scripts. The variables represent everything from external variables to built-in environment variables, last error messages to last retrieved headers.

See also the FAQ titled "How does register_globals affect me?"

Table of Contents
Superglobals — Superglobals are built-in variables that are always available in all scopes
$GLOBALS — References all variables available in global scope
$_SERVER — Server and execution environment information
$_GET — HTTP GET variables
$_POST — HTTP POST variables
$_FILES — HTTP File Upload variables
$_REQUEST — HTTP Request variables
$_SESSION — Session variables
$_ENV — Environment variables
$_COOKIE — HTTP Cookies
$php_errormsg — The previous error message
$HTTP_RAW_POST_DATA — Raw POST data
$http_response_header — HTTP response headers
$argc — The number of arguments passed to script
$argv — Array of arguments passed to script
[http://www.php.net/manual/en/reserved.variables.php]
===
PHP provides a large number of predefined variables to any script which it runs. Many of these variables, however, cannot be fully documented as they are dependent upon which server is running, the version and setup of the server, and other factors. Some of these variables will not be available when PHP is run on the command line. For a listing of these variables, please see the section on Reserved Predefined Variables.
[http://www.php.net/manual/en/language.variables.predefined.php]

lcpPhp'variable.superglobal

name::
* McsEngl.lcpPhp'variable.superglobal@cptIt,

Several predefined variables in PHP are "superglobals", which means they are available in all scopes throughout a script. There is no need to do global $variable; to access them within functions or methods.

These superglobal variables are:
$GLOBALS
$_SERVER
$_GET
$_POST
$_FILES
$_COOKIE
$_SESSION
$_REQUEST
$_ENV
[http://www.php.net/manual/en/language.variables.superglobals.php]

lcpPhp'variable.GLOBALS

name::
* McsEngl.lcpPhp'variable.GLOBALS@cptIt,

$GLOBALS — References all variables available in global scope
Description
An associative array containing references to all variables which are currently defined in the global scope of the script. The variable names are the keys of the array.
[http://www.php.net/manual/en/reserved.variables.globals.php]

lcpPhp'variable.argv

name::
* McsEngl.lcpPhp'variable.argv@cptIt,

$argv — Array of arguments passed to script

Report a bug
Description

Contains an array of all the arguments passed to the script when running from the command line.

Note: The first argument $argv[0] is always the name that was used to run the script.

Note: This variable is not available when register_argc_argv is disabled.
[http://www.php.net/manual/en/reserved.variables.argv.php]

lcpPhp'variable.Processing

name::
* McsEngl.lcpPhp'variable.Processing@cptIt,

lcpPhp'variable.Resource

name::
* McsEngl.lcpPhp'variable.Resource@cptIt,
* McsEngl.lcpPhp'resource-variable@cptIt,

_DESCRIPTION:
A resource is a special variable, holding a reference to an external resource. Resources are created and used by special functions.
[http://gr.php.net/manual/en/language.types.resource.php]

_Function:
* string get_resource_type ( resource $handle )
* bool is_resource ( mixed $var ):

lcpPhp'variable.STATIC

name::
* McsEngl.lcpPhp'variable.STATIC@cptIt,

_DESCRIPTION:
Makes a local global.

_CODE.PHP:
<?php

function myTest() {
static $x=0;
echo $x . "<br/>";
$x++;
}

myTest(); //0
myTest(); //1
myTest(); //1

?>

lcpPhp'variable.SUPERGLOBAL

name::
* McsEngl.lcpPhp'variable.SUPERGLOBAL@cptIt,
* McsEngl.lcpPhp'superglobal-variable@cptIt,

_DESCRIPTION:
Superglobals

Superglobals — Superglobals are built-in variables that are always available in all scopes
Description ¶

Several predefined variables in PHP are "superglobals", which means they are available in all scopes throughout a script. There is no need to do global $variable; to access them within functions or methods.

These superglobal variables are:

$GLOBALS
$_SERVER
$_GET
$_POST
$_FILES
$_COOKIE
$_SESSION
$_REQUEST
$_ENV
[http://www.php.net/manual/en/language.variables.superglobals.php]

lcpPhp'code

_CREATED: {2012-01-22}

name::
* McsEngl.lcpPhp'code@cptIt,
* McsEngl.lcpPhp'script@cptIt,
* McsEngl.php'code@cptIt,

_WHOLE:
* php-program#ql:php'program#

lcpPhp'code'domainOut

name::
* McsEngl.lcpPhp'code'domainOut@cptIt,
* McsEngl.lcpPhp'code@cptIt,

_SPECIFIC:
* character,
* class,
* data-code#ql:php'data_code#,
* interface,
* operator,
* processing-code#ql:php'processing_code#,
* program,
* statement,
* unit-of-code#ql:php'unit_of_code#,
* variable#ql:php'variable#

lcpPhp'code.SPECIFIC

name::
* McsEngl.lcpPhp'code.SPECIFIC@cptIt,
* McsEngl.lcpPhp'code.specific@cptIt,

_SPECIFIC_DIVISION.doing:
* processing-code#ql:php'processing_code#,
* data-code-(non-processing)#ql:php'data_code#

_SPECIFIC_DIVISION.containing:
* container#ql:php'container_code#,
* containerNo,
===
* command-container,
* data-container,
* dataAndCommand-container,

_SPECIFIC: alphabetically:
* class,
* constant,
* data-code-(non-processing)#ql:php'data_code#,
* function,
* processing-code#ql:php'processing_code#,
* variable,
* class,
* comment,
* data,
* delimeter,
* expression,
* interface,
* operator,
* statement#ql:php'statement#,
* token,
* trait#ql:php'trait#

lcpPhp'code.SPECIFIC-DIVISION.structure

name::
* McsEngl.lcpPhp'code.SPECIFIC-DIVISION.structure@cptIt,

_SPECIFIC:
* directory
* file
* program
* sentence-structure
* sentence
* atom-structure
* atom
* unit-structure
* unit

lcpPhp'code.EXPRESSION

name::
* McsEngl.lcpPhp'code.EXPRESSION@cptIt,
* McsEngl.lcpPhp'expression@cptIt,

_DESCRIPTION:
Expressions are the most important building stones of PHP. In PHP, almost anything you write is an expression. The simplest yet most accurate way to define an expression is "anything that has a value".
The most basic forms of expressions are constants and variables. When you type "$a = 5", you're assigning '5' into $a. '5', obviously, has the value 5, or in other words '5' is an expression with the value of 5 (in this case, '5' is an integer constant).
...
PHP takes expressions much further, in the same way many other languages do. PHP is an expression-oriented language, in the sense that almost everything is an expression. Consider the example we've already dealt with, '$a = 5'. It's easy to see that there are two values involved here, the value of the integer constant '5', and the value of $a which is being updated to 5 as well. But the truth is that there's one additional value involved here, and that's the value of the assignment itself. The assignment itself evaluates to the assigned value, in this case 5. In practice, it means that '$a = 5', regardless of what it does, is an expression with the value 5. Thus, writing something like '$b = ($a = 5)' is like writing '$a = 5; $b = 5;' (a semicolon marks the end of a statement). Since assignments are parsed in a right to left order, you can also write '$b = $a = 5'.
[http://www.php.net/manual/en/language.expressions.php]

_SPECIFIC:
* constant,
* function,
* statement#ql:php'statement#,
* variable,

lcpPhp'code.MIXED

name::
* McsEngl.lcpPhp'code.MIXED@cptIt,
* McsEngl.lcpPhp'Mixed-code@cptIt,

_GENERIC:
* php-code#ql:php'code#

_SPECIFIC:
* class#ql:lcpphp'class#

lcpPhp'code.API

name::
* McsEngl.lcpPhp'code.API@cptIt,
* McsEngl.lcpPhp'API@cptIt,

_ADDRESS.WPG:
* http://www.phpeasystep.com/workshop.php,

lcpPhp'Arithmetic

name::
* McsEngl.lcpPhp'Arithmetic@cptIt,

lcpPhp'Boolean

name::
* McsEngl.lcpPhp'Boolean@cptIt,

lcpPhp'Comparison

name::
* McsEngl.lcpPhp'Comparison@cptIt,

lcpPhp'Container

name::
* McsEngl.lcpPhp'Container@cptIt,

lcpPhp'Converting-datatype

name::
* McsEngl.lcpPhp'Converting-datatype@cptIt,

lcpPhp'FILE-MANAGER

name::
* McsEngl.lcpPhp'FILE-MANAGER@cptIt,
* McsEngl.lcpPhp'ex.file-manager@cptIt,

_SPECIFIC:
* http://extplorer.net//
* http://extplorer.sourceforge.net//

lcpPhp'ex.FULL-PATH

name::
* McsEngl.lcpPhp'ex.FULL-PATH@cptIt,

<?php
$dir = dirname(__FILE__);
echo "<p>Full path to this dir: " . $dir . "</p>";
echo "<p>Full path to a .htpasswd file in this dir: " . $dir . "/.htpasswd" . "</p>";
?>

lcpPhp'file.upload

name::
* McsEngl.lcpPhp'file.upload@cptIt,
* McsEngl.lcpPhp'ex.file.upload@cptIt,

_ADDRESS.WPG:
* http://phpfileuploader.com//
* http://www.tizag.com/phpT/fileupload.php,
* http://www.phpeasystep.com/phptu/1.html,
* http://www.w3schools.com/php/php_file_upload.asp,

lcpPhp'login-code

name::
* McsEngl.lcpPhp'login-code@cptIt,

_ADDRESS.WPG:
* http://www.9lessons.info/2009/09/php-login-page-example.html, with demo.
* http://www.phpeasystep.com/phptu/6.html,
* http://phpcodeforbeginner.blogspot.gr/2012/10/php-simple-login-form-php-tutorial-for.html,

<?php
$xdebug=0;
if ($xdebug==1)
{
print "POST<br />";
while (list($k,$v) = each($_POST))
{
print ($k . ": " . $v . "<br />");
}
print "REQUEST<br />";
while (list($k,$v)=each ($_REQUEST))
{
print ($k . ": " . $v . "<br />");
}
}
main();
function main()
{

if (isset($_REQUEST["username"]) && isset($_REQUEST["password"]))
{
$username=$_REQUEST["username"];
$password=$_REQUEST["password"];
//print ("username: " . $username . "<br />");
//print ("password: " . $password . "<br />");
connect_ftp($username, $password);
}
elseif (isset($_POST["username"]) && isset($_POST["password"]))
{

$username=$_POST["username"];
$password=$_POST["password"];
//print ("username: " . $username . "<br />");
//print ("password: " . $password . "<br />");
connect_ftp($username, $password);
}

else
{
print "User name/password not set<br />";
}

}



// function to give dir listing stuff
function dir_funk ($username, $password,$ftp) {




// dir name
$dir=ftp_pwd($ftp);
// dir listing array
$dirlist=ftp_rawlist($ftp,$dir);

// print the directory listing
$funk = "<html><body><p>current directory: <b> $dir </b></p>";
$funk .= "<p><a href=\"ftp.php?&updir=$dir\">go up one level</a>
</p>";

$funk .= "<p>
<table cellspacing=0 cellpadding=2 border=1>
<tr><td><b>permissions</b></td><td><b>file/directory</b></td>
<td><b>download</b></td><td><b>delete</b></td>
<td><b>chmod</b></td><td><b>rename</b></td>
</tr>
";

while(list($i,$thingy)=each($dirlist)) {

$thingy=preg_replace("/\s+/", " ", $thingy);

if($i==0) {
echo "";
} else {
list($chmod,$thing,$owner,$group,$size,$month,$day,$time,$filename)=explode(" ",$thingy);
if(ereg("d",$chmod)) {
$funk .= "<tr><td>$chmod</td><td><a href=\"ftp.php?dir=$dir/$filename\">$filename</a></td>
<td>dir</td>


<td><a href=\"ftp.php?delete=dir&thingy=$dir/$filename\">delete</a></td>
<td><a href=\"ftp.php?chmod=1&thingy=$dir/$filename\">chmod</a></td>
<td><a href=\"ftp.php?rename=$dir/$filename\">rename</a></td>
</tr>";
} else {
$funk .= "<tr><td>$chmod</td><td>$filename</td>
<td><a href=\"ftp.php?dl=1&file=$dir/$filename\">d/l ($size)</a></td>
<td><a href=\"ftp.php?delete=file&thingy=$dir/$filename\">delete</a></td>
<td><a href=\"ftp.php?chmod=1&thingy=$dir/$filename\">chmod</a></td>
<td><a href=\"ftp.php?rename=$dir/$filename\">rename</a></td>
</tr>";
}
}

}

$funk .= "</table></p>";

$funk .= "<p>Create a new directory<br>
<form action=\"ftp.php\" method=\"POST\">
<input type=\"hidden\" name=\"username\" value=\"$username\">
<input type=\"hidden\" name=\"password\" value=\"$password\">

<input size=\"15\" name=\"name\">
<input type=\"hidden\" name=\"current_dir\" value=\"$dir\">
<input type=\"submit\" name=\"newdir\" value=\"create_dir\">
</form></p>";

$funk .= "<p>Upload a local file<br>
<form action=\"ftp.php\" method=\"POST\">
<input type=\"file\" name=\"localfile\"><br>
<input type=\"hidden\" name=\"current_dir\" value=\"$dir\">
<input type=\"submit\" name=\"upload\" value=\"upload_file\">
</form></p>";


$funk .= "</body></html>";

return $funk;
}


function print_login_form()
{
echo "<html><body><p><b>ftp login</b><hr></p>
<form method=\"POST\">
<p>Your server (eg ft)<br> <input size=\"30\" name=\"server\"></p>
<p>Username <br> <input size=\"30\" name=\"username\"></p>
<p>Password <br> <input size=\"30\" name=\"password\"></p>
<p><input type=\"submit\" name=\"login\" value=\"login\"></p>
</form></body></html>";
}

function connect_ftp($username, $password)
{
//print $username . "<br />";
//print $password . "<br />";

if (isset($_REQUEST["thingy"]))
{
$thingy= $_REQUEST["thingy"];
}


//** charles do above for vars below
/*
$_REQUEST["thingy"]
$_REQUEST["chmod"]
$_REQUEST["rename"]
$_REQUEST["dl"]
$_REQUEST["delete"]
$_REQUEST["updir"]
$_REQUEST["dir"]

*/
if (isset($_POST["dir"]))
{
$dir=$_POST["dir"];
}

if (isset ($_POST["upload"]))
{
$upload=$_POST["upload"];
}
if (isset($_POST["localfile"]))
{
$localfile=$_POST["localfile"];
}
if (isset($_POST["current_dir"]))
{
$current_dir=$_POST["current_dir"];
}
if (isset($_POST["newdir"])) {
$newdir=$_POST["newdir"];
}
if (isset($_POST["file"])) {
$file=$_POST["file"];
}
if (isset($_POST["dir"])) {
$dir=$_POST["dir"];
}

if (isset($_POST["local"])) {
$local=$_POST["local"];
}
if (isset($_POST["dl"])) {
$dl = $_POST["dl"];
}
if (isset($_POST["get"]))
{
$get = $_POST["get"];
}

/// Charles do this for these vars too: delete, thingy, chmod, filename
if (isset($_REQUEST["thingy"]))
{
$dl=$_REQUEST["dl"];
}



// try to connect or die with an error
$server="ftp.lunarstudio.com";
$ftp=ftp_connect($server) or die("invalid server");
// try to login or die with error
$conn=ftp_login($ftp,$username,$password) or die("login failed for some reason");
// set a cookie so the !$login form above is never displayed
setcookie("login","active");
// set goody cookies
setcookie("server",$server);
setcookie("username",$username);
setcookie("password",$password);


if($dir) {

ftp_chdir($ftp,$dir);
echo dir_funk($username, $password,$ftp);

} elseif($dl) {

if($get) {

if(!$local) {
die("please enter a value");
}

ftp_get($ftp, $local, $file, FTP_BINARY);
echo funk_die(normal);

} else {
echo "<html><body>";
echo "download file";
$size=ftp_size($ftp,$file);
$time=ftp_mdtm($ftp,$file);
$time=date("d M Y, H i",$time);
echo "<p><table cellspacing=0 cellpadding=2 border=1>
<tr><td><b>filename</b></td><td><b>size</b></td>
<td><b>date modified</b></td></tr>
<tr><td>$file</td><td>$size</td><td>$time</td></tr></table>";
echo "<form action=\"ftp.php\" method=\"POST\">
where to download the file to (/home/me/file.txt or c:/file.txt):<br>
<INPUT NAME=\"local\" size=\"40\">
<input type=\"hidden\" name=\"dl\" value=\"1\">
<input type=\"hidden\" name=\"file\" value=\"$file\"><br>
<INPUT TYPE=\"submit\" name=\"get\" VALUE=\"download file\">
</FORM>";
echo "</body></html>";

}

} elseif($rename) {

if($do) {

if(!$val) {
die("please enter a value");
}

ftp_rename($ftp, $rename, $val);
echo funk_die(normal);

} else {

echo "<html><body>
rename this file: $rename
<p>
<form action=\"ftp.php\" method=\"POST\">
Rename to: <input size=\"50\" name=\"val\" value=\"$rename\"><br>
<input type=\"hidden\" name=\"rename\" value=\"$rename\">
<input type=\"submit\" name=\"do\" value=\"rename\">
</form>
</body></html>";

}

} elseif($chmod) {

if($do) {

if(!$val) {
die("please enter a value");
}

$cmd="CHMOD $val $file";
ftp_site($ftp, $cmd);
echo funk_die(normal);

} else {

echo "<html><body>
chmod this file: $thingy
<p>
<form action=\"ftp.php\" method=\"POST\">
<input size=\"4\" name=\"val\" maxlength=\"4\"> CHMOD value<br>
<input type=\"hidden\" name=\"file\" value=\"$thingy\">
<input type=\"hidden\" name=\"chmod\" value=\"1\">
<input type=\"submit\" name=\"do\" value=\"chmod\">
</form>
</body></html>";

}

} elseif($delete) {

if($delete=='file') {
ftp_delete($ftp, $thingy);
} elseif($delete=='dir') {
ftp_rmdir($ftp, $thingy);
}
echo funk_die(normal);

} elseif($upload) {

if(!$localfile) { die("please enter a file"); }

$file = substr( strrchr( $localfile, "/" ), 1 );
$put_thingy = $current_dir . "/" . $file;
print ($put_thingy . "<br />");
print ($localfile . "<br />");

$put = ftp_put($ftp, $put_thingy, $localfile, FTP_BINARY);
if ($put==true)
{
print "file ok<br />";
}
else
{
print "file bad<br />";
}
// echo funk_die(normal);

} elseif($newdir) {

if(!$name) { die("please enter a name"); }

$newdir = $current_dir . "/" . $name;
ftp_mkdir($ftp,$newdir);
echo funk_die(normal);

} elseif($updir) {

$newdir = str_replace( substr( strrchr( $updir, "/" ), 1 ) , "", $updir);

ftp_chdir($ftp,$newdir);
echo dir_funk($username, $password,$ftp);

} else {

echo dir_funk($username, $password,$ftp);

}
}


function funk_die($msg) {
if($msg=='normal') {
return "<html><body><a href=\"ftp.php\">back</a></body></html>";
}
}
?>
[http://www.v7n.com/forums/coding-forum/28632-ftp-login-php-script-website.html]

lcpPhp'PHP-INFO

name::
* McsEngl.lcpPhp'PHP-INFO@cptIt,
* McsEngl.lcpPhp'ex.php-info@cptIt,

<?php
phpinfo();
?>

lcpPhp'set-include-path()

name::
* McsEngl.lcpPhp'set-include-path()@cptIt,
* McsEngl.lcpPhp'get-include-path()@cptIt,

_CODE.PHP:
set_include_path(get_include_path() . PATH_SEPARATOR . 'phpseclib');
>>> adds in the 'path' and the phpseclib directory, so we can 'include' any file from this like it is in the current directory.

lcpPhp'SUGGESTING

name::
* McsEngl.lcpPhp'SUGGESTING@cptIt,
* McsEngl.lcpPhp'doing.Suggesting@cptIt,
* McsEngl.lcpPhp'ex.suggesting@cptIt,

_ADDRESS.WPG:

The HTML Page

When a user types a character in the input field above, the function "showHint()" is executed. The function is triggered by the "onkeyup" event:

<html>
<head>
<script type="text/javascript">
function showHint(str)
{
if (str.length==0)
{
document.getElementById("txtHint").innerHTML="";
return;
}
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","gethint.php?q="+str,true);
xmlhttp.send();
}
</script>
</head>
<body>

<p><b>Start typing a name in the input field below:</b></p>
<form>
First name: <input type="text" onkeyup="showHint(this.value)" size="20" />
</form>
<p>Suggestions: <span id="txtHint"></span></p>

</body>
</html>

Source code explanation:

If the input field is empty (str.length==0), the function clears the content of the txtHint placeholder and exits the function.

If the input field is not empty, the showHint() function executes the following:

Create an XMLHttpRequest object
Create the function to be executed when the server response is ready
Send the request off to a file on the server
Notice that a parameter (q) is added to the URL (with the content of the input field)
The PHP File

The page on the server called by the JavaScript above is a PHP file called "gethint.php".

The source code in "gethint.php" checks an array of names, and returns the corresponding name(s) to the browser:

<?php
// Fill up array with names
$a[]="Anna";
$a[]="Brittany";
$a[]="Cinderella";
$a[]="Diana";
$a[]="Eva";
$a[]="Fiona";
$a[]="Gunda";
$a[]="Hege";
$a[]="Inga";
$a[]="Johanna";
$a[]="Kitty";
$a[]="Linda";
$a[]="Nina";
$a[]="Ophelia";
$a[]="Petunia";
$a[]="Amanda";
$a[]="Raquel";
$a[]="Cindy";
$a[]="Doris";
$a[]="Eve";
$a[]="Evita";
$a[]="Sunniva";
$a[]="Tove";
$a[]="Unni";
$a[]="Violet";
$a[]="Liza";
$a[]="Elizabeth";
$a[]="Ellen";
$a[]="Wenche";
$a[]="Vicky";

//get the q parameter from URL
$q=$_GET["q"];

//lookup all hints from array if length of q>0
if (strlen($q) > 0)
{
$hint="";
for($i=0; $i<count($a); $i++)
{
if (strtolower($q)==strtolower(substr($a[$i],0,strlen($q))))
{
if ($hint=="")
{
$hint=$a[$i];
}
else
{
$hint=$hint." , ".$a[$i];
}
}
}
}

// Set output to "no suggestion" if no hint were found
// or to the correct values
if ($hint == "")
{
$response="no suggestion";
}
else
{
$response=$hint;
}

//output the response
echo $response;
?>
Explanation: If there is any text sent from the JavaScript (strlen($q) > 0), the following happens:

Find a name matching the characters sent from the JavaScript
If no match were found, set the response string to "no suggestion"
If one or more matching names were found, set the response string to all these names
The response is sent to the "txtHint" placeholder
[http://www.w3schools.com/php/php_ajax_php.asp]

lcpPhp'code.OPERATOR

name::
* McsEngl.lcpPhp'code.OPERATOR@cptIt,
* McsEngl.lcpPhp'operator@cptIt,
* McsEngl.php'operator@cptIt,

_DESCRIPTION:
In all programming languages, operators are used to manipulate or perform operations on variables and values.
[http://www.tizag.com/phpT/operators.php]
===
An operator is something that takes one or more values (or expressions, in programming jargon) and yields another value (so that the construction itself becomes an expression).
[http://www.php.net/manual/en/language.operators.php]

lcpPhp'operator'precedence

name::
* McsEngl.lcpPhp'operator'precedence@cptIt,

SPECIFIC

* lcpPhp'operator.SPECIFIC,

_SPECIFIC:
here are many operators used in PHP, so we have separated them into the following categories to make it easier to learn them all.
* Assignment Operators
* Arithmetic Operators
* Comparison Operators
* String Operators
* Combination Arithmetic & Assignment Operators
[http://www.tizag.com/phpT/operators.php]
===
Arithmetic Operators
Assignment Operators
Bitwise Operators
Comparison Operators
Error Control Operators
Execution Operators
Incrementing/Decrementing Operators
Logical Operators
String Operators
Array Operators
Type Operators

lcpPhp'operator.ASSINGMENT

name::
* McsEngl.lcpPhp'operator.ASSINGMENT@cptIt,

_DESCRIPTION:
Assignment Operators ¶

The basic assignment operator is "=". Your first inclination might be to think of this as "equal to". Don't. It really means that the left operand gets set to the value of the expression on the right (that is, "gets set to").

The value of an assignment expression is the value assigned. That is, the value of "$a = 3" is 3. This allows you to do some tricky things:

<?php

$a = ($b = 4) + 5; // $a is equal to 9 now, and $b has been set to 4.

?>
For arrays, assigning a value to a named key is performed using the "=>" operator. The precedence of this operator is the same as other assignment operators.

In addition to the basic assignment operator, there are "combined operators" for all of the binary arithmetic, array union and string operators that allow you to use a value in an expression and then set its value to the result of that expression. For example:

<?php

$a = 3;
$a += 5; // sets $a to 8, as if we had said: $a = $a + 5;
$b = "Hello ";
$b .= "There!"; // sets $b to "Hello There!", just like $b = $b . "There!";

?>
Note that the assignment copies the original variable to the new one (assignment by value), so changes to one will not affect the other. This may also have relevance if you need to copy something like a large array inside a tight loop.

An exception to the usual assignment by value behaviour within PHP occurs with objects, which are assigned by reference in PHP 5. Objects may be explicitly copied via the clone keyword.

Assignment by Reference ¶

Assignment by reference is also supported, using the "$var = &$othervar;" syntax. Assignment by reference means that both variables end up pointing at the same data, and nothing is copied anywhere.
[http://www.php.net/manual/en/language.operators.assignment.php]

_TOKEN:
T_AND_EQUAL    &=
T_CONCAT_EQUAL  .=
T_DIV_EQUAL    /=
T_MINUS_EQUAL  -=
T_MOD_EQUAL    %=
T_MUL_EQUAL    *=
T_OR_EQUAL    |=
T_PLUS_EQUAL    +=
T_SL_EQUAL    <<=
T_SR_EQUAL    >>=
T_XOR_EQUAL    ^=
[http://www.php.net/manual/en/tokens.php]

lcpPhp'operator.COMPARISON

name::
* McsEngl.lcpPhp'operator.COMPARISON@cptIt,
* McsEngl.lcpPhp'comparison-operator@cptIt,

_DESCRIPTION:
Comparison Operators ¶
Comparison operators, as their name implies, allow you to compare two values. You may also be interested in viewing the type comparison tables, as they show examples of various type related comparisons.

Comparison Operators
Example  Name  Result
$a == $b  Equal  TRUE if $a is equal to $b after type juggling.
$a === $b  Identical  TRUE if $a is equal to $b, and they are of the same type.
$a != $b  Not equal  TRUE if $a is not equal to $b after type juggling.
$a <> $b  Not equal  TRUE if $a is not equal to $b after type juggling.
$a !== $b  Not identical  TRUE if $a is not equal to $b, or they are not of the same type.
$a < $b  Less than  TRUE if $a is strictly less than $b.
$a > $b  Greater than  TRUE if $a is strictly greater than $b.
$a <= $b  Less than or equal to  TRUE if $a is less than or equal to $b.
$a >= $b  Greater than or equal to  TRUE if $a is greater than or equal to $b.
If you compare a number with a string or the comparison involves numerical strings, then each string is converted to a number and the comparison performed numerically. These rules also apply to the switch statement. The type conversion does not take place when the comparison is === or !== as this involves comparing the type as well as the value.
[http://www.php.net/manual/en/language.operators.comparison.php]

lcpPhp'operator.DOUBLE-COLON (::)

name::
* McsEngl.lcpPhp'operator.DOUBLE-COLON (::)@cptIt,
* McsEngl.lcpPhp'double-colon@cptIt,
* McsEngl.lcpPhp'operator.scope-resolution@cptIt,
* McsEngl.lcpPhp'scope-resolution-operator@cptIt,

_DESCRIPTION:
Scope Resolution Operator (::)

The Scope Resolution Operator (also called Paamayim Nekudotayim) or in simpler terms, the double colon, is a token that allows access to static, constant, and overridden properties or methods of a class.

When referencing these items from outside the class definition, use the name of the class.

As of PHP 5.3.0, it's possible to reference the class using a variable. The variable's value can not be a keyword (e.g. self, parent and static).

Paamayim Nekudotayim would, at first, seem like a strange choice for naming a double-colon. However, while writing the Zend Engine 0.5 (which powers PHP 3), that's what the Zend team decided to call it. It actually does mean double-colon - in Hebrew!

Example#1 :: from outside the class definition
<?php
class MyClass {
const CONST_VALUE = 'A constant value';
}

$classname = 'MyClass';
echo $classname::CONST_VALUE; // As of PHP 5.3.0

echo MyClass::CONST_VALUE;
[http://www.php.net/manual/en/language.oop5.paamayim-nekudotayim.php]

lcpPhp'operator.ERROR-CONTROL

name::
* McsEngl.lcpPhp'operator.ERROR-CONTROL@cptIt,
* McsEngl.lcpPhp'at-sign@cptIt,
* McsEngl.lcpPhp'error-control-operator@cptIt,

_DESCRIPTION:
Error Control Operators
PHP supports one error control operator: the at sign (@). When prepended to an expression in PHP, any error messages that might be generated by that expression will be ignored.
[http://gr.php.net/manual/en/language.operators.errorcontrol.php]

lcpPhp'operator.LOGICAL

name::
* McsEngl.lcpPhp'operator.LOGICAL@cptIt,
* McsEngl.lcpPhp'logical-operator@cptIt,

_DESCRIPTION:
Example  Name  Result
$a and $b  And  TRUE if both $a and $b are TRUE.
$a or $b  Or  TRUE if either $a or $b is TRUE.
$a xor $b  Xor  TRUE if either $a or $b is TRUE, but not both.
! $a  Not  TRUE if $a is not TRUE.
$a && $b  And  TRUE if both $a and $b are TRUE.
$a || $b  Or  TRUE if either $a or $b is TRUE.
The reason for the two different variations of "and" and "or" operators is that they operate at different precedences. (See Operator Precedence.)
[http://www.php.net/manual/en/language.operators.logical.php]

_TOKEN:
T_BOOLEAN_AND  &&
T_BOOLEAN_OR    ||
T_LOGICAL_AND    and
T_LOGICAL_OR    or
T_LOGICAL_XOR    xor

lcpPhp'code.PROCESSING

name::
* McsEngl.lcpPhp'code.PROCESSING@cptIt,
* McsEngl.lcpPhp'example@cptIt,
* McsEngl.lcpPhp'operation@cptIt,
* McsEngl.lcpPhp'processing-code@cptIt,
* McsEngl.php'code.processing@cptIt,

_GENERIC:
* code,

_SPECIFIC:
* statement,
===
Affecting PHP's Behaviour
Audio Formats Manipulation
Authentication Services
Date and Time Related Extensions
Command Line Specific Extensions
Compression and Archive Extensions
Credit Card Processing
Cryptography Extensions
Database Extensions
File System Related Extensions
Human Language and Character Encoding Support
Image Processing and Generation
Mail Related Extensions
Mathematical Extensions
Non-Text MIME Output
Process Control Extensions
Other Basic Extensions
Other Services
Search Engine Extensions
Server Specific Extensions
Session Extensions
* Text Processing
Variable and Type Related Extensions
Web Services
Windows Only Extensions
XML Manipulation
[http://gr2.php.net/manual/en/funcref.php]

lcpPhp'TEXT

name::
* McsEngl.lcpPhp'TEXT@cptIt,
* McsEngl.lcpPhp'text-processing@cptIt,

_ADDRESS.WPG:
* http://gr2.php.net/manual/en/refs.basic.text.php,

_SPECIFIC:
* BBCode — Bulletin Board Code
* PCRE — Regular Expressions (Perl-Compatible)
* POSIX Regex — Regular Expression (POSIX Extended)
* ssdeep — ssdeep Fuzzy Hashing
* Strings#ql:php'string#

lcpPhp'PCRE

name::
* McsEngl.lcpPhp'PCRE@cptIt,
* McsEngl.lcpPhp'perl-compatible-regular-expression@cptIt,
* McsEngl.lcpPhp'regexp.perl-compatible@cptIt,

lcpPhp'code.processing.XML

name::
* McsEngl.lcpPhp'code.processing.XML@cptIt,
* McsEngl.lcpPhp'XML-manipulation@cptIt,
* McsEngl.lcpPhp'XML-processing@cptIt,
* McsEngl.lcpPhp'XML@cptIt,

_ADDRESS.WPG:
* http://gr2.php.net/manual/en/refs.xml.php,

lcpPhp'XML-READING

name::
* McsEngl.lcpPhp'XML-READING@cptIt,
* McsEngl.lcpPhp'ex.xml-reading@cptIt,

The page on the server called by the JavaScript above is a PHP file called "getcd.php".

The PHP script loads an XML document, "cd_catalog.xml", runs a query against the XML file, and returns the result as HTML:

<?php
$q=$_GET["q"];

$xmlDoc = new DOMDocument();
$xmlDoc->load("cd_catalog.xml");

$x=$xmlDoc->getElementsByTagName('ARTIST');

for ($i=0; $i<=$x->length-1; $i++)
{
//Process only element nodes
if ($x->item($i)->nodeType==1)
{
if ($x->item($i)->childNodes->item(0)->nodeValue == $q)
{
$y=($x->item($i)->parentNode);
}
}
}

$cd=($y->childNodes);

for ($i=0;$i<$cd->length;$i++)
{
//Process only element nodes
if ($cd->item($i)->nodeType==1)
{
echo("<b>" . $cd->item($i)->nodeName . ":</b> ");
echo($cd->item($i)->childNodes->item(0)->nodeValue);
echo("<br>");
}
}
?>
===
<CATALOG>
<CD>
<TITLE>Empire Burlesque</TITLE>
<ARTIST>Bob Dylan</ARTIST>
<COUNTRY>USA</COUNTRY>
<COMPANY>Columbia</COMPANY>
<PRICE>10.90</PRICE>
<YEAR>1985</YEAR>
t;/CD>
<CD>
[http://www.w3schools.com/php/php_ajax_xml.asp]

lcpPhp'code.processing.COMMUNICATING

name::
* McsEngl.lcpPhp'code.processing.COMMUNICATING@cptIt,
* McsEngl.lcpPhp'communicating@cptIt,

lcpPhp'cURL

name::
* McsEngl.lcpPhp'cURL@cptIt,
* McsEngl.cURL.php@cptIt,

_DESCRIPTION:
PHP supports libcurl, a library created by Daniel Stenberg, that allows you to connect and communicate to many different types of servers with many different types of protocols. libcurl currently supports the http, https, ftp, gopher, telnet, dict, file, and ldap protocols. libcurl also supports HTTPS certificates, HTTP POST, HTTP PUT, FTP uploading (this can also be done with PHP's ftp extension), HTTP form based upload, proxies, cookies, and user+password authentication.

These functions have been added in PHP 4.0.2.
[http://www.php.net/manual/en/intro.curl.php]

_INSTALLATION.WINXP:
Just an additional note for Windows XP installations ...
So ...
1) remove ';' from extension=php_curl.dll in php.ini
2) ensure that ssleay32.dll and libeay32.dll are in Windows/system32.
3) Copy php_curl.dll into Windows\System32 as well.
[http://www.php.net/manual/en/curl.installation.php]

lcpPhp'encrypting

name::
* McsEngl.lcpPhp'encrypting@cptIt,

_ADDRESS.WPG:
* http://stackoverflow.com/questions/10916284/how-to-encrypt-decrypt-data-in-php,

lcpPhp'PASSWORD-CRYPT

name::
* McsEngl.lcpPhp'PASSWORD-CRYPT@cptIt,
* McsEngl.lcpPhp'ex.password-crypt@cptIt,

_CODE.PHP: crypt
<?php
// Password to be encrypted for a .htpasswd file
$clearTextPassword = 'some password';

// Encrypt password
$password = crypt($clearTextPassword, base64_encode($clearTextPassword));

// Print encrypted password
echo $password;
?>
How to use the code:

Copy the above the code and paste it into your favorite text editor (ie notepad).
Change “some password” to the password you want to encrypt.
Save the code in file called htpasswd.php.
Upload htpasswd.php to your webserver.
Execute the code by going to http://www.your-domain.com/htpasswd.php
The outputted text is your encrypted password.
[http://www.htaccesstools.com/articles/create-password-for-htpasswd-file-using-php/]

lcpPhp'FTP

name::
* McsEngl.lcpPhp'FTP@cptIt,

_DESCRIPTION:
The functions in this extension implement client access to files servers speaking the File Transfer Protocol (FTP) as defined in » http://www.faqs.org/rfcs/rfc959. This extension is meant for detailed access to an FTP server providing a wide range of control to the executing script. If you only wish to read from or write to a file on an FTP server, consider using the ftp:// wrapper with the filesystem functions which provide a simpler and more intuitive interface.
[http://www.php.net/manual/en/intro.ftp.php]

_CODE.PHP:
<?php

# This function fix problems with ftp login validation

function connect_send_ftp($ftp_server, $ftp_user_name, $ftp_user_pass, $remote_name, $local_name) {
// valid host connection
if (!ftp_connect($ftp_server))
return false;
$conn_id = ftp_connect($ftp_server);

// valid ftp login params, fast check
if(empty($ftp_user_name) or empty($ftp_user_pass))
return false;

// using curl to valid login, fast check
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL,'ftp://'.preg_replace('/^ftp[:]\/\//i','',$ftp_server));
curl_setopt($curl, CURLOPT_FTPLISTONLY, 1);
curl_setopt($curl, CURLOPT_USERPWD, $ftp_user_name.":".$ftp_user_pass);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$valid_login = curl_exec ($curl);

// valid ftp login, primary
if(!$valid_login)
return false;

// valid ftp login, secondary
if(!ftp_login($conn_id, $ftp_user_name, $ftp_user_pass))
return false;

// passive result
$passive_result = ftp_pasv($conn_id, true);

// save file send erros
$error = ftp_put($conn_id, $remote_name, $local_name, FTP_ASCII);

// close connection
ftp_close($conn_id);

// return success or send erros
return $error;
}

// set params
$ftp_server = "ftp.example.com"
$ftp_user_name = "user";
$ftp_user_pass = "password";
$remote_name = "my_remote_file_dir";
$local_name = "my_local_file_dir";

// call the function
$conn = connect_send_ftp($ftp_server, $ftp_user_name, $ftp_user_pass, $remote_name, $local_name);

// valid response
if(!$conn)
die("FTP login failed..")

// if not erros, success
echo "FTP login and file sended sucessfull!"

?>
[http://www.php.net/manual/en/function.ftp-login.php]
===
<?php
// set up basic connection
$conn_id = ftp_connect($ftp_server);

// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// check connection
if ((!$conn_id) || (!$login_result)) {
echo "FTP connection has failed!";
echo "Attempted to connect to $ftp_server for user $ftp_user_name";
exit;
} else {
echo "Connected to $ftp_server, for user $ftp_user_name";
}

// upload the file
$upload = ftp_put($conn_id, $destination_file, $source_file, FTP_BINARY);

// check upload status
if (!$upload) {
echo "FTP upload has failed!";
} else {
echo "Uploaded $source_file to $ftp_server as $destination_file";
}

// close the FTP stream
ftp_close($conn_id);
?>
[http://www.php.net/manual/en/ftp.examples-basic.php]
===
<?php

// set up basic connection
$conn_id = ftp_connect($ftp_server);

// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// print the current directory
echo ftp_pwd($conn_id); // /

// close this connection
ftp_close($conn_id);
?>
[http://php.net/manual/en/function.ftp-close.php]

lcpPhp'phpseclib

name::
* McsEngl.lcpPhp'phpseclib@cptIt,
* McsEngl.phpseclib@cptIt,

_ADDRESS.WPG:
* https://github.com/phpseclib/phpseclib,
* doc: http://phpseclib.sourceforge.net/documentation//
* support: http://www.frostjedi.com/phpbb3/viewforum.php?f=46,

_DESCRIPTION:
Compatibility

phpseclib is designed to be ultra-compatible. It works on PHP4+ (PHP4, assuming the use of PHP_Compat) and doesn't require any extensions. For purposes of speed, mcrypt is used if it's available as is gmp or bcmath (in that order), but they are not required.

Interoperability

phpseclib is designed to be fully interoperable with OpenSSL and other standardized cryptography programs and protocols.

MIT-Licensed

phpseclib is licensed with the MIT-license. By virtue of not being copyleft it's less restrictive than the GPL, which in turn, means that it's fully GPL compatible.

Usage

This library is written using the same conventions that libraries in the PHP Extension and Application Repository (PEAR) used to be written in (current requirements break PHP4 compatibility). In particular, this library needs to be in your include_path:

<?php
set_include_path(get_include_path() . PATH_SEPARATOR . 'phpseclib');

include('Net/SSH2.lcpPhp');
?>
[http://phpseclib.sourceforge.net/]

lcpPhp'ssh2

name::
* McsEngl.lcpPhp'ssh2@cptIt,

Bindings to the » libssh2 library which provide access to resources (shell, remote exec, tunneling, file transfer) on a remote machine using a secure cryptographic transport.
[http://www.php.net/manual/en/intro.ssh2.php]

lcpPhp'code.processing.DATABASE-MANAGING

name::
* McsEngl.lcpPhp'code.processing.DATABASE-MANAGING@cptIt,
* McsEngl.lcpPhp'database-managment@cptIt,

_ADDRESS.WPG:
* http://www.phpobjectgenerator.com//

lcpPhp'MySQL

name::
* McsEngl.lcpPhp'MySQL@cptIt,

lcpPhp'mysql'Connecting

name::
* McsEngl.lcpPhp'mysql'Connecting@cptIt,

<?php
$link = mysql_connect('localhost', 'root', '123');
if (!$link) {
die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';
mysql_close($link);
?>

Installation
win

Installation on Windows Systems

PHP 5+: MySQL is not enabled by default, so the php_mysql.dll must be enabled inside of php.ini. Also, PHP needs access to the MySQL client library. A file named libmysql.dll is included in the Windows PHP distribution, and in order for PHP to talk to MySQL this file needs to be available to the Windows systems PATH.

To enable any PHP extension, the PHP extension_dir setting (in the php.ini file) should be set to the directory where the PHP extensions are located. An example extension_dir value is \php\ext.

Note: If you get the following error when starting the web server: "Unable to load dynamic library './php_mysql.dll'", this is because php_mysql.dll or libmysql.dll cannot be found by the system.
[http://www.w3schools.com/php/php_ref_mysql.asp]

_Service:
I had to start service manually: start/εργαλεία διαχείρισης/υπηρεσίες/...

resourceInfHmn#cptResource843#

_Tutorial:
* http://www.w3schools.com/php/php_mysql_intro.asp,

lcpPhp'PostgreSQL

name::
* McsEngl.lcpPhp'PostgreSQL@cptIt,

Installation

_php.ini:
extension=php_pgsql.dll

_apache_httpd.conf:
LoadFile "C:/Program Files/PostgreSQL/9.1/bin/libpq.dll"

_phpinfo:
pgsql

PostgreSQL Support  enabled
PostgreSQL(libpq) Version  8.3.6
Multibyte character support  enabled
SSL support    disabled
Active Persistent Links  0
Active Links      0

Directive      Local Value  Master Value
pgsql.allow_persistent  On  On
pgsql.auto_reset_persistent  Off  Off
pgsql.ignore_notice    Off  Off
pgsql.log_notice    Off  Off
pgsql.max_links    Unlimited  Unlimited
pgsql.max_persistent  Unlimited  Unlimited

resourceInfHmn#cptResource843#

_PostgreSQL_Functions:

_Tutorial:
* http://www-it.hive.no/database/pgsql/postgresql-tutorial//
* http://www.sitepoint.com/accessing-postgresql-php//

lcpPhp'code.structure.PROGRAM

name::
* McsEngl.lcpPhp'code.structure.PROGRAM@cptIt,
* McsEngl.lcpPhp'application@cptIt,
* McsEngl.lcpPhp'program@cptIt,
* McsEngl.lcpPhp'script@cptIt,
* McsEngl.phppgm@cptIt,

_GENERIC:
* domainOut,

_PART:
* code#ql:php'code#,
* comment#ql:php'comment#,
* file#ql:php'file_code#

phppgm'file-code

name::
* McsEngl.phppgm'file-code@cptIt,

Note: The file must have a .php extension. If the file has a .html extension, the PHP code will not be executed.
[http://www.w3schools.com/php/php_syntax.asp]

First off, note that simPHP stats can only be displayed on PHP-enabled webpages (with .php ext).
[https://code.google.com/p/simphp/wiki/README]

phppgm'developing

name::
* McsEngl.phppgm'developing@cptIt,

phppgm'run-locally

name::
* McsEngl.phppgm'run-locally@cptIt,

Put the directory of the code on \public_html\dir\
run on browser: localhost/dir/

phppgm'tag

name::
* McsEngl.phppgm'tag@cptIt,
* McsEngl.lcpPhp'tag@cptIt,

_DESCRIPTION:
When PHP parses a file, it looks for opening and closing tags, which are <?php and ?> which tell PHP to start and stop interpreting the code between them. Parsing in this manner allows PHP to be embedded in all sorts of different documents, as everything outside of a pair of opening and closing tags is ignored by the PHP parser.

PHP also allows for short tags <? and ?> (which are discouraged because they are only available if enabled with short_open_tag php.ini configuration file directive, or if PHP was configured with the --enable-short-tags option.

If a file is pure PHP code, it is preferable to omit the PHP closing tag at the end of the file. This prevents accidental whitespace or new lines being added after the PHP closing tag, which may cause unwanted effects because PHP will start output buffering when there is no intention from the programmer to send any output at that point in the script.
[http://www.php.net/manual/en/language.basic-syntax.phptags.php]

phppgm.HELLO-WORLD

name::
* McsEngl.phppgm.HELLO-WORLD@cptIt,
* McsEngl.lcpPhp'ex.hello-world@cptIt,

_CODE.PHP: echo
file: hello.php: put on php-server and access it:
<html>
<head>
<title>PHP Test</title>
</head>
<body>
<?php echo '<p>Hello World</p>'; ?>
</body>
</html>

lcpPhp'code.structure.SENTENCE

name::
* McsEngl.lcpPhp'code.structure.SENTENCE@cptIt,
* McsEngl.lcpPhp'code.STATEMENT@cptIt,
* McsEngl.lcpPhp'command@cptIt,
* McsEngl.lcpPhp'instruction@cptIt,
* McsEngl.lcpPhp'Statement@cptIt,

_WHOLE:
* php-program#ql:php'program#

_GENERIC:
* php-expression,

_DESCRIPTION:
Any PHP script is built out of a series of statements. A statement can be an assignment, a function call, a loop, a conditional statement or even a statement that does nothing (an empty statement). Statements usually end with a semicolon. In addition, statements can be grouped into a statement-group by encapsulating a group of statements with curly braces. A statement-group is a statement by itself as well. The various statement types are described in this chapter.
[http://www.php.net/manual/en/control-structures.intro.php]
===
a semicolon marks the end of a statement
...
Some expressions can be considered as statements. In this case, a statement has the form of 'expr ;' that is, an expression followed by a semicolon. In '$b = $a = 5;', '$a = 5' is a valid expression, but it's not a statement by itself. '$b = $a = 5;' however is a valid statement.
[http://www.php.net/manual/en/language.expressions.php]

lcpPhp'statement.SPECIFIC

name::
* McsEngl.lcpPhp'statement.SPECIFIC@cptIt,

_Alphabetically:
* composite
* compositeNo

lcpPhp'statetement'Separation

name::
* McsEngl.lcpPhp'statetement'Separation@cptIt,

As in C or Perl, PHP requires instructions to be terminated with a semicolon at the end of each statement. The closing tag of a block of PHP code automatically implies a semicolon; you do not need to have a semicolon terminating the last line of a PHP block. The closing tag for the block will include the immediately trailing newline if one is present.
[http://www.php.net/manual/en/language.basic-syntax.instruction-separation.php]

lcpPhp'statement.SPECIFIC

name::
* McsEngl.lcpPhp'statement.SPECIFIC@cptIt,

_SPECIFIC:
* new-statement#ql:php'object'creating#

lcpPhp'statement.

name::
* McsEngl.lcpPhp'statement.@cptIt,
* McsEngl.lcpPhp'-statement@cptIt,

lcpPhp'statement.assignment

name::
* McsEngl.lcpPhp'statement.assignment@cptIt,
* McsEngl.lcpPhp'assignment-statement@cptIt,

lcpPhp'statement.Composite

name::
* McsEngl.lcpPhp'statement.Composite@cptIt,
* McsEngl.lcpPhp'composite-statement@cptIt,
* McsEngl.lcpPhp'group-statement@cptIt,

lcpPhp'statement.CompositeNo

name::
* McsEngl.lcpPhp'statement.CompositeNo@cptIt,
* McsEngl.lcpPhp'compositeNo-statement@cptIt,

lcpPhp'statement.control

name::
* McsEngl.lcpPhp'statement.control@cptIt,
* McsEngl.lcpPhp'control-statement@cptIt,

lcpPhp'statement.decleare

name::
* McsEngl.lcpPhp'statement.decleare@cptIt,
* McsEngl.lcpPhp'decleare-statement@cptIt,

_DESCRIPTION:
The declare construct is used to set execution directives for a block of code. The syntax of declare is similar to the syntax of other flow control constructs:

declare (directive)
statement
The directive section allows the behavior of the declare block to be set. Currently only two directives are recognized: the ticks directive (See below for more information on the ticks directive) and the encoding directive (See below for more information on the encoding directive).
[http://www.php.net/manual/en/control-structures.declare.php]

<?php
declare(encoding='ISO-8859-1');
// code here
?>

lcpPhp'statement.echo

name::
* McsEngl.lcpPhp'statement.echo@cptIt,
* McsEngl.lcpPhp'echo@cptIt,
* McsEngl.lcpPhp'ex.echo@cptIt,

_CODE.PHP:
<?php
$txt="Hello World";
echo $txt;
?>

lcpPhp'statement.empty

name::
* McsEngl.lcpPhp'statement.empty@cptIt,
* McsEngl.lcpPhp'empty-statement@cptIt,

lcpPhp'statement.function-call

name::
* McsEngl.lcpPhp'statement.function-call@cptIt,
* McsEngl.lcpPhp'function-call-statement@cptIt,

lcpPhp'statement.goto

name::
* McsEngl.lcpPhp'statement.goto@cptIt,
* McsEngl.lcpPhp'goto-statement@cptIt,

_DESCRIPTION:
goto

The goto operator can be used to jump to another section in the program. The target point is specified by a label followed by a colon, and the instruction is given as goto followed by the desired target label. This is not a full unrestricted goto. The target label must be within the same file and context, meaning that you cannot jump out of a function or method, nor can you jump into one. You also cannot jump into any sort of loop or switch structure. You may jump out of these, and a common use is to use a goto in place of a multi-level break.

Example#1 goto example
<?php
goto a;
echo 'Foo';

a:
echo 'Bar';
?>
The above example will output:
Bar

lcpPhp'statement.if

name::
* McsEngl.lcpPhp'statement.if@cptIt,
* McsEngl.lcpPhp'if-statement@cptIt,

_DESCRIPTION:
The if construct is one of the most important features of many languages, PHP included. It allows for conditional execution of code fragments. PHP features an if structure that is similar to that of C:

if (expr)
statement
[http://www.php.net/manual/en/control-structures.if.php]

Alternative syntax for control structures

PHP offers an alternative syntax for some of its control structures; namely, if, while, for, foreach, and switch. In each case, the basic form of the alternate syntax is to change the opening brace to a colon (:) and the closing brace to endif;, endwhile;, endfor;, endforeach;, or endswitch;, respectively.

<?php if ($a == 5): ?>
A is equal to 5
<?php endif; ?>
In the above example, the HTML block "A is equal to 5" is nested within an if statement written in the alternative syntax. The HTML block would be displayed only if $a is equal to 5.

The alternative syntax applies to else and elseif as well. The following is an if structure with elseif and else in the alternative format:

<?php
if ($a == 5):
echo "a equals 5";
echo "...";
elseif ($a == 6):
echo "a equals 6";
echo "!!!";
else:
echo "a is neither 5 nor 6";
endif;
?>
Note:

Mixing syntaxes in the same control block is not supported.
[http://www.php.net/manual/en/control-structures.alternative-syntax.php]

lcpPhp'statement.include

name::
* McsEngl.lcpPhp'statement.include@cptIt,
* McsEngl.lcpPhp'include-statement@cptIt,

_CODE.PHP:
include('Net/SSH2.lcpPhp');
===

vars.php
<?php

$color = 'green';
$fruit = 'apple';

?>
===
test.php
<?php

echo "A $color $fruit"; // A

include 'vars.lcpPhp';

echo "A $color $fruit"; // A green apple

?>

===

menu.php:
<html>
<body>
<a href="http://www.example.com/index.php">Home</a> -
<a href="http://www.example.com/about.php">About Us</a> -
<a href="http://www.example.com/links.php">Links</a> -
<a href="http://www.example.com/contact.php">Contact Us</a> <br />
Save the above file as "menu.php". Now create a new file, "index.php" in the same directory as "menu.php". Here we will take advantage of the include command to add our common menu.

index.php Code:
<?php include("menu.php"); ?>
<p>This is my home page that uses a common menu to save me time when I add
new pages to my website!</p>
</body>
</html>

Display:
Home - About Us - Links - Contact Us
This is my home page that uses a common menu to save me time when I add new pages to my website!
[http://www.tizag.com/phpT/include.php]

lcpPhp'statement.loop

name::
* McsEngl.lcpPhp'statement.loop@cptIt,
* McsEngl.lcpPhp'loop-statement@cptIt,

_SPECIFIC:
* do-while
* for
* foreach
* while

lcpPhp'doWhile-statement

name::
* McsEngl.lcpPhp'doWhile-statement@cptIt,
* McsEngl.lcpPhp'statement.doWhile@cptIt,

lcpPhp'for-statement

name::
* McsEngl.lcpPhp'for-statement@cptIt,
* McsEngl.lcpPhp'statement.for@cptIt,

lcpPhp'foreach-statement

name::
* McsEngl.lcpPhp'foreach-statement@cptIt,
* McsEngl.lcpPhp'statement.foreach@cptIt,

(PHP 4, PHP5)

The foreach construct provides an easy way to iterate over arrays. foreach works only on arrays and objects, and will issue an error when you try to use it on a variable with a different data type or an uninitialized variable. There are two syntaxes:

foreach (array_expression as $value)
statement
foreach (array_expression as $key => $value)
statement
The first form loops over the array given by array_expression. On each iteration, the value of the current element is assigned to $value and the internal array pointer is advanced by one (so on the next iteration, you'll be looking at the next element).

The second form will additionally assign the current element's key to the $key variable on each iteration.
[http://www.php.net/manual/en/control-structures.foreach.php]

_CODE.PHP:
$a = array(1, 2, 3, 17);

foreach ($a as $v) {
echo "Current value of \$a: $v.\n";
}

lcpPhp'while-statement

name::
* McsEngl.lcpPhp'while-statement@cptIt,
* McsEngl.lcpPhp'statement.while@cptIt,

lcpPhp'statement.return

name::
* McsEngl.lcpPhp'statement.return@cptIt,
* McsEngl.lcpPhp'return-statement@cptIt,

_DESCRIPTION:
If called from within a function, the return() statement immediately ends execution of the current function, and returns its argument as the value of the function call. return() will also end the execution of an eval() statement or script file.

If called from the global scope, then execution of the current script file is ended. If the current script file was include()ed or require()ed, then control is passed back to the calling file. Furthermore, if the current script file was include()ed, then the value given to return() will be returned as the value of the include() call. If return() is called from within the main script file, then script execution ends. If the current script file was named by the auto_prepend_file or auto_append_file configuration options in php.ini, then that script file's execution is ended.
[http://www.php.net/manual/en/function.return.php]

lcpPhp'code.structure.ATOM-STRUCTURE

name::
* McsEngl.lcpPhp'code.structure.ATOM-STRUCTURE@cptIt,
* McsEngl.lcpPhp'atom-structure@cptIt,

_SPECIFIC:
* php-string-code#ql:lcpphp'string_code#

lcpPhp'code.structure.ATOM

name::
* McsEngl.lcpPhp'code.structure.ATOM@cptIt,
* McsEngl.lcpPhp'atom@cptIt,

lcpPhp'code.COMMENT

name::
* McsEngl.lcpPhp'code.COMMENT@cptIt,
* McsEngl.lcpPhp'code.COMMENT@cptIt,
* McsEngl.lcpPhp'comment@cptIt,

_PART:
* program#ql:php'program#

_GENERIC:
* lcp-comment#ql:lcp'comment@cptIt#
* unit-of-code#ql:"php'unit_of_code"#, {2012-01-22}

_line_comment:
// ....
# This is also a single line comment

_multiline_comment:
/* ... */

lcpPhp'code.structure.UNIT-STRUCTURE

name::
* McsEngl.lcpPhp'code.structure.UNIT-STRUCTURE@cptIt,

_SPECIFIC:
* comment,
* data,
* delimeter,
* interface,
* operator#ql:lcpphp'code.operator#
* token,
* trait#ql:php'trait#

lcpPhp'delimeter

name::
* McsEngl.lcpPhp'delimeter@cptIt,

lcpPhp'Keyword

name::
* McsEngl.lcpPhp'Keyword@cptIt,
* McsEngl.lcpPhp'reserved-word@cptIt,

PHP Keywords
* lcpPhp'keyword.abstract (as of PHP 5)  
* lcpPhp'keyword.and  
* lcpPhp'keyword.array()  
* lcpPhp'keyword.as  

* lcpPhp'keyword.break

* lcpPhp'keyword.case  
* lcpPhp'keyword.catch (as of PHP 5)  
* lcpPhp'keyword.cfunction (PHP 4 only)  
* lcpPhp'keyword.class  
* lcpPhp'keyword.clone (as of PHP 5)
* lcpPhp'keyword.const  
* lcpPhp'keyword.continue  

* lcpPhp'keyword.declare  
* lcpPhp'keyword.default  
* lcpPhp'keyword.do

* lcpPhp'keyword.else  
* lcpPhp'keyword.elseif  
* lcpPhp'keyword.enddeclare  
* lcpPhp'keyword.endfor  
* lcpPhp'keyword.endforeach
* lcpPhp'keyword.endif  
* lcpPhp'keyword.endswitch  
* lcpPhp'keyword.endwhile  
* lcpPhp'keyword.extends  

* lcpPhp'keyword.final (as of PHP 5)
* lcpPhp'keyword.for  
* lcpPhp'keyword.foreach  
* lcpPhp'keyword.function  

* lcpPhp'keyword.global  
* lcpPhp'keyword.goto (as of PHP 5.3)

* lcpPhp'keyword.if  
* lcpPhp'keyword.implements (as of PHP 5)  
* lcpPhp'keyword.interface (as of PHP 5)  
* lcpPhp'keyword.instanceof (as of PHP 5)

* lcpPhp'keyword.namespace (as of PHP 5.3)  
* lcpPhp'keyword.new  

* lcpPhp'keyword.old_function (PHP 4 only)  
* lcpPhp'keyword.or  

* lcpPhp'keyword.private (as of PHP 5)
* lcpPhp'keyword.protected (as of PHP 5)  
* lcpPhp'keyword.public (as of PHP 5)  

* lcpPhp'keyword.static  
* lcpPhp'keyword.switch  

* lcpPhp'keyword.throw (as of PHP 5)
* lcpPhp'keyword.try (as of PHP 5)  

* lcpPhp'keyword.use  

* lcpPhp'keyword.var  

* lcpPhp'keyword.while  

* lcpPhp'keyword.xor
[http://www.php.net/manual/en/reserved.keywords.php]

lcpPhp'Token

name::
* McsEngl.lcpPhp'Token@cptIt,

_DESCRIPTION:
The analysis stage can be broken down into three sub-parts: lexical analysis, syntax analysis, and semantic analysis. The first stage reads the input script character by character to find tokens - parts of the script that are logical units by themselves. In PHP terms, a string is a token, as is a variable, a number, a brace, etc. As the lexical analyser (usually just called the lexer) finds tokens within a script, it returns them to the syntax analyser (parser), which makes sure that the script fits the syntax rules you have laid down. Finally, once the script has been tokenised and parsed, the semantic analyser kicks in to make sure the meaning of the script is valid.
[http://tuxradar.com/practicalphp/21/5/3]

_SPECIFIC:
Token,, Syntax,, Reference
* lcpPhp'token.T_ABSTRACT,, abstract,, Class Abstraction (available since PHP 5.0.0)
* lcpPhp'token.T_AND_EQUAL,, &=,, assignment operators
* lcpPhp'token.T_ARRAY,, array(),, array(), array syntax
* lcpPhp'token.T_ARRAY_CAST,, (array),, type-casting
* lcpPhp'token.T_AS,, as,, foreach
* lcpPhp'token.T_BAD_CHARACTER,, ,, anything below ASCII 32 except \t (0x09), \n (0x0a) and \r (0x0d)
* lcpPhp'token.T_BOOLEAN_AND,, &&,, logical operators
* lcpPhp'token.T_BOOLEAN_OR,, ||,, logical operators
* lcpPhp'token.T_BOOL_CAST,, (bool) or (boolean),, type-casting
* lcpPhp'token.T_BREAK,, break,, break
* lcpPhp'token.T_CALLABLE,, callable,, callable
* lcpPhp'token.T_CASE,, case,, switch
* lcpPhp'token.T_CATCH,, catch,, Exceptions (available since PHP 5.0.0)
* lcpPhp'token.T_CHARACTER,, ,, not used anymore
* lcpPhp'token.T_CLASS,, class,, classes and objects
* lcpPhp'token.T_CLASS_C,, __CLASS__,, magic constants (available since PHP 4.3.0)
* lcpPhp'token.T_CLONE,, clone,, classes and objects (available since PHP 5.0.0)
* lcpPhp'token.T_CLOSE_TAG,, ?> or %>,, escaping from HTML
* lcpPhp'token.T_COMMENT,, // or#, and /* */ in PHP 5,, comments
* lcpPhp'token.T_CONCAT_EQUAL,, .=,, assignment operators
* lcpPhp'token.T_CONST,, const,, class constants
* lcpPhp'token.T_CONSTANT_ENCAPSED_STRING,, "foo" or 'bar',, string syntax
* lcpPhp'token.T_CONTINUE,, continue,, continue
* lcpPhp'token.T_CURLY_OPEN,, {$,, complex variable parsed syntax
* lcpPhp'token.T_DEC,, --,, incrementing/decrementing operators
* lcpPhp'token.T_DECLARE,, declare,, declare
* lcpPhp'token.T_DEFAULT,, default,, switch
* lcpPhp'token.T_DIR,, __DIR__,, magic constants (available since PHP 5.3.0)
* lcpPhp'token.T_DIV_EQUAL,, /=,, assignment operators
* lcpPhp'token.T_DNUMBER,, 0.12, etc,, floating point numbers
* lcpPhp'token.T_DOC_COMMENT,, /** */,, PHPDoc style comments (available since PHP 5.0.0)
* lcpPhp'token.T_DO,, do,, do..while
* lcpPhp'token.T_DOLLAR_OPEN_CURLY_BRACES,, ${,, complex variable parsed syntax
* lcpPhp'token.T_DOUBLE_ARROW,, =>,, array syntax
* lcpPhp'token.T_DOUBLE_CAST,, (real), (double) or (float),, type-casting
* lcpPhp'token.T_DOUBLE_COLON,, ::,, see T_PAAMAYIM_NEKUDOTAYIM below
* lcpPhp'token.T_ECHO,, echo,, echo
* lcpPhp'token.T_ELSE,, else,, else
* lcpPhp'token.T_ELSEIF,, elseif,, elseif
* lcpPhp'token.T_EMPTY,, empty,, empty()
* lcpPhp'token.T_ENCAPSED_AND_WHITESPACE,, " $a",, constant part of string with variables
* lcpPhp'token.T_ENDDECLARE,, enddeclare,, declare, alternative syntax
* lcpPhp'token.T_ENDFOR,, endfor,, for, alternative syntax
* lcpPhp'token.T_ENDFOREACH,, endforeach,, foreach, alternative syntax
* lcpPhp'token.T_ENDIF,, endif,, if, alternative syntax
* lcpPhp'token.T_ENDSWITCH,, endswitch,, switch, alternative syntax
* lcpPhp'token.T_ENDWHILE,, endwhile,, while, alternative syntax
* lcpPhp'token.T_END_HEREDOC,, ,, heredoc syntax
* lcpPhp'token.T_EVAL,, eval(),, eval()
* lcpPhp'token.T_EXIT,, exit or die,, exit(), die()
* lcpPhp'token.T_EXTENDS,, extends,, extends, classes and objects
* lcpPhp'token.T_FILE,, __FILE__,, magic constants
* lcpPhp'token.T_FINAL,, final,, Final Keyword (available since PHP 5.0.0)
* lcpPhp'token.T_FINALLY,, finally,, Exceptions (available since PHP 5.5.0)
* lcpPhp'token.T_FOR,, for,, for
* lcpPhp'token.T_FOREACH,, foreach,, foreach
* lcpPhp'token.T_FUNCTION,, function or cfunction,, functions
* lcpPhp'token.T_FUNC_C,, __FUNCTION__,, magic constants (available since PHP 4.3.0)
* lcpPhp'token.T_GLOBAL,, global,, variable scope
* lcpPhp'token.T_GOTO,, goto,, (available since PHP 5.3.0)
* lcpPhp'token.T_HALT_COMPILER,, __halt_compiler(),, __halt_compiler (available since PHP 5.1.0)
* lcpPhp'token.T_IF,, if,, if
* lcpPhp'token.T_IMPLEMENTS,, implements,, Object Interfaces (available since PHP 5.0.0)
* lcpPhp'token.T_INC,, ++,, incrementing/decrementing operators
* lcpPhp'token.T_INCLUDE,, include(),, include
* lcpPhp'token.T_INCLUDE_ONCE,, include_once(),, include_once
* lcpPhp'token.T_INLINE_HTML,, ,, text outside PHP
* lcpPhp'token.T_INSTANCEOF,, instanceof,, type operators (available since PHP 5.0.0)
* lcpPhp'token.T_INSTEADOF,, insteadof,, Traits (available since PHP 5.4.0)
* lcpPhp'token.T_INT_CAST,, (int) or (integer),, type-casting
* lcpPhp'token.T_INTERFACE,, interface,, Object Interfaces (available since PHP 5.0.0)
* lcpPhp'token.T_ISSET,, isset(),, isset()
* lcpPhp'token.T_IS_EQUAL,, ==,, comparison operators
* lcpPhp'token.T_IS_GREATER_OR_EQUAL,, >=,, comparison operators
* lcpPhp'token.T_IS_IDENTICAL,, ===,, comparison operators
* lcpPhp'token.T_IS_NOT_EQUAL,, != or <>,, comparison operators
* lcpPhp'token.T_IS_NOT_IDENTICAL,, !==,, comparison operators
* lcpPhp'token.T_IS_SMALLER_OR_EQUAL,, <=,, comparison operators
* lcpPhp'token.T_LINE,, __LINE__,, magic constants
* lcpPhp'token.T_LIST,, list(),, list()
* lcpPhp'token.T_LNUMBER,, 123, 012, 0x1ac, etc,, integers
* lcpPhp'token.T_LOGICAL_AND,, and,, logical operators
* lcpPhp'token.T_LOGICAL_OR,, or,, logical operators
* lcpPhp'token.T_LOGICAL_XOR,, xor,, logical operators
* lcpPhp'token.T_METHOD_C,, __METHOD__,, magic constants (available since PHP 5.0.0)
* lcpPhp'token.T_MINUS_EQUAL,, -=,, assignment operators
* lcpPhp'token.T_ML_COMMENT,, /* and */,, comments (PHP 4 only)
* lcpPhp'token.T_MOD_EQUAL,, %=,, assignment operators
* lcpPhp'token.T_MUL_EQUAL,, *=,, assignment operators
* lcpPhp'token.T_NAMESPACE,, namespace,, namespaces (available since PHP 5.3.0)
* lcpPhp'token.T_NS_C,, __NAMESPACE__,, namespaces (available since PHP 5.3.0)
* lcpPhp'token.T_NS_SEPARATOR,, \,, namespaces (available since PHP 5.3.0)
* lcpPhp'token.T_NEW,, new,, classes and objects
* lcpPhp'token.T_NUM_STRING,, "$a[0]",, numeric array index inside string
* lcpPhp'token.T_OBJECT_CAST,, (object),, type-casting
* lcpPhp'token.T_OBJECT_OPERATOR,, ->,, classes and objects
* lcpPhp'token.T_OLD_FUNCTION,, old_function,, (PHP 4 only)
* lcpPhp'token.T_OPEN_TAG,, <?php, <? or <%,, escaping from HTML
* lcpPhp'token.T_OPEN_TAG_WITH_ECHO,, <?= or <%=,, escaping from HTML
* lcpPhp'token.T_OR_EQUAL,, |=,, assignment operators
* lcpPhp'token.T_PAAMAYIM_NEKUDOTAYIM,, ::,, ::. Also defined as T_DOUBLE_COLON.
* lcpPhp'token.T_PLUS_EQUAL,, +=,, assignment operators
* lcpPhp'token.T_PRINT,, print(),, print
* lcpPhp'token.T_PRIVATE,, private,, classes and objects (available since PHP 5.0.0)
* lcpPhp'token.T_PUBLIC,, public,, classes and objects (available since PHP 5.0.0)
* lcpPhp'token.T_PROTECTED,, protected,, classes and objects (available since PHP 5.0.0)
* lcpPhp'token.T_REQUIRE,, require(),, require
* lcpPhp'token.T_REQUIRE_ONCE,, require_once(),, require_once
* lcpPhp'token.T_RETURN,, return,, returning values
* lcpPhp'token.T_SL,, <<,, bitwise operators
* lcpPhp'token.T_SL_EQUAL,, <<=,, assignment operators
* lcpPhp'token.T_SR,, >>,, bitwise operators
* lcpPhp'token.T_SR_EQUAL,, >>=,, assignment operators
* lcpPhp'token.T_START_HEREDOC,, <<<,, heredoc syntax
* lcpPhp'token.T_STATIC,, static,, variable scope
* lcpPhp'token.T_STRING,, parent, true etc.,, identifiers, e.g. keywords like parent and self, function names, class names and more are matched. See also T_CONSTANT_ENCAPSED_STRING.
* lcpPhp'token.T_STRING_CAST,, (string),, type-casting
* lcpPhp'token.T_STRING_VARNAME,, "${a,, complex variable parsed syntax
* lcpPhp'token.T_SWITCH,, switch,, switch
* lcpPhp'token.T_THROW,, throw,, Exceptions (available since PHP 5.0.0)
* lcpPhp'token.T_TRAIT,, trait,, Traits (available since PHP 5.4.0)
* lcpPhp'token.T_TRAIT_C,, __TRAIT__,, __TRAIT__ (available since PHP 5.4.0)
* lcpPhp'token.T_TRY,, try,, Exceptions (available since PHP 5.0.0)
* lcpPhp'token.T_UNSET,, unset(),, unset()
* lcpPhp'token.T_UNSET_CAST,, (unset),, type-casting (available since PHP 5.0.0)
* lcpPhp'token.T_USE,, use,, namespaces (available since PHP 5.3.0; reserved since PHP 4.0.0)
* lcpPhp'token.T_VAR,, var,, classes and objects
* lcpPhp'token.T_VARIABLE,, $foo,, variables
* lcpPhp'token.T_WHILE,, while,, while, do..while
* lcpPhp'token.T_WHITESPACE,, \t \r\n,,
* lcpPhp'token.T_XOR_EQUAL,, ^=,, assignment operators
* lcpPhp'token.T_YIELD,, yield,, generators (available since PHP 5.5.0)
[http://www.php.net/manual/en/tokens.php]

->

_CODE.PHP:
class MyClass
{
public $prop1 = "I'm a class property!";
}

$obj = new MyClass;

echo $obj->prop1; // Output the property: I'm a class property!

===

<?php
class MyClass
{
protected function myFunc() {
echo "MyClass::myFunc()\n";
}
}

class OtherClass extends MyClass
{
// Override parent's definition
public function myFunc()
{
// But still call the parent function
parent::myFunc();
echo "OtherClass::myFunc()\n";
}
}

$class = new OtherClass();
$class->myFunc();
?>
===> MyClass::myFunc() OtherClass::myFunc()

=>

name::
* McsEngl.lcpPhp'token.double-arrow@cptIt,
* McsEngl.lcpPhp'T-DOUBLE-ARROW@cptIt,

_DESCRIPTION:
* array syntax
===
$ages = array("Peter"=>32, "Quagmire"=>30, "Joe"=>34);

lcpPhp'token.CAST

name::
* McsEngl.lcpPhp'token.CAST@cptIt,

_SPECIFIC:
* lcpPhp'token.T_ARRAY_CAST,, (array),, type-casting
* lcpPhp'token.T_BOOL_CAST,, (bool) or (boolean),, type-casting
* lcpPhp'token.T_DOUBLE_CAST,, (real), (double) or (float),, type-casting
* lcpPhp'token.T_INT_CAST,, (int) or (integer),, type-casting
* lcpPhp'token.T_OBJECT_CAST,, (object),, type-casting
* lcpPhp'token.T_STRING_CAST,, (string),, type-casting
* lcpPhp'token.T_UNSET_CAST,, (unset),, type-casting (available since PHP 5.0.0)

lcpPhp'token.CONSTANT

name::
* McsEngl.lcpPhp'token.CONSTANT@cptIt,

_SPECIFIC:
* lcpPhp'token.T_CLASS_C,, __CLASS__,, magic constants (available since PHP 4.3.0)
* lcpPhp'token.T_DIR,, __DIR__,, magic constants (available since PHP 5.3.0)
* lcpPhp'token.T_FILE,, __FILE__,, magic constants
* lcpPhp'token.T_FUNC_C,, __FUNCTION__,, magic constants (available since PHP 4.3.0)
* lcpPhp'token.T_LINE,, __LINE__,, magic constants
* lcpPhp'token.T_METHOD_C,, __METHOD__,, magic constants (available since PHP 5.0.0)
* lcpPhp'token.T_NS_C,, __NAMESPACE__,, namespaces (available since PHP 5.3.0)
* lcpPhp'token.T_TRAIT_C,, __TRAIT__,, __TRAIT__ (available since PHP 5.4.0)

lcpPhp'token.KEYWORD

name::
* McsEngl.lcpPhp'token.KEYWORD@cptIt,

_SPECIFIC:
* lcpPhp'token.T_ABSTRACT,, abstract,, Class Abstraction (available since PHP 5.0.0)
* lcpPhp'token.T_AS,, as,, foreach
* lcpPhp'token.T_BREAK,, break,, break
* lcpPhp'token.T_CALLABLE,, callable,, callable
* lcpPhp'token.T_CASE,, case,, switch
* lcpPhp'token.T_CATCH,, catch,, Exceptions (available since PHP 5.0.0)
* lcpPhp'token.T_CLASS,, class,, classes and objects
* lcpPhp'token.T_CLONE,, clone,, classes and objects (available since PHP 5.0.0)
* lcpPhp'token.T_CONST,, const,, class constants
* lcpPhp'token.T_CONTINUE,, continue,, continue
* lcpPhp'token.T_DECLARE,, declare,, declare
* lcpPhp'token.T_DEFAULT,, default,, switch
* lcpPhp'token.T_DO,, do,, do..while
* lcpPhp'token.T_ECHO,, echo,, echo
* lcpPhp'token.T_ELSE,, else,, else
* lcpPhp'token.T_ELSEIF,, elseif,, elseif
* lcpPhp'token.T_EMPTY,, empty,, empty()
* lcpPhp'token.T_EXIT,, exit or die,, exit(), die()
* lcpPhp'token.T_EXTENDS,, extends,, extends, classes and objects
* lcpPhp'token.T_FINAL,, final,, Final Keyword (available since PHP 5.0.0)
* lcpPhp'token.T_FINALLY,, finally,, Exceptions (available since PHP 5.5.0)
* lcpPhp'token.T_FOR,, for,, for
* lcpPhp'token.T_FOREACH,, foreach,, foreach
* lcpPhp'token.T_FUNCTION,, function or cfunction,, functions
* lcpPhp'token.T_GLOBAL,, global,, variable scope
* lcpPhp'token.T_GOTO,, goto,, (available since PHP 5.3.0)
* lcpPhp'token.T_IF,, if,, if
* lcpPhp'token.T_IMPLEMENTS,, implements,, Object Interfaces (available since PHP 5.0.0)
* lcpPhp'token.T_INSTANCEOF,, instanceof,, type operators (available since PHP 5.0.0)
* lcpPhp'token.T_INSTEADOF,, insteadof,, Traits (available since PHP 5.4.0)
* lcpPhp'token.T_INTERFACE,, interface,, Object Interfaces (available since PHP 5.0.0)
* lcpPhp'token.T_LOGICAL_AND,, and,, logical operators
* lcpPhp'token.T_LOGICAL_OR,, or,, logical operators
* lcpPhp'token.T_LOGICAL_XOR,, xor,, logical operators
* lcpPhp'token.T_NAMESPACE,, namespace,, namespaces (available since PHP 5.3.0)
* lcpPhp'token.T_NEW,, new,, classes and objects
* lcpPhp'token.T_PRIVATE,, private,, classes and objects (available since PHP 5.0.0)
* lcpPhp'token.T_PUBLIC,, public,, classes and objects (available since PHP 5.0.0)
* lcpPhp'token.T_PROTECTED,, protected,, classes and objects (available since PHP 5.0.0)
* lcpPhp'token.T_RETURN,, return,, returning values
* lcpPhp'token.T_STATIC,, static,, variable scope
* lcpPhp'token.T_SWITCH,, switch,, switch
* lcpPhp'token.T_THROW,, throw,, Exceptions (available since PHP 5.0.0)
* lcpPhp'token.T_TRAIT,, trait,, Traits (available since PHP 5.4.0)
* lcpPhp'token.T_TRY,, try,, Exceptions (available since PHP 5.0.0)
* lcpPhp'token.T_USE,, use,, namespaces (available since PHP 5.3.0; reserved since PHP 4.0.0)
* lcpPhp'token.T_VAR,, var,, classes and objects
* lcpPhp'token.T_WHILE,, while,, while, do..while
* lcpPhp'token.T_YIELD,, yield,, generators (available since PHP 5.5.0)

lcpPhp'token.STRUCTURE

name::
* McsEngl.lcpPhp'token.STRUCTURE@cptIt,

_SPECIFIC:
* lcpPhp'token.T_ARRAY,, array(),, array(), array syntax
* lcpPhp'token.T_COMMENT,, // or#, and /* */ in PHP 5,, comments
* lcpPhp'token.T_CONSTANT_ENCAPSED_STRING,, "foo" or 'bar',, string syntax
* lcpPhp'token.T_DNUMBER,, 0.12, etc,, floating point numbers
* lcpPhp'token.T_DOC_COMMENT,, /** */,, PHPDoc style comments (available since PHP 5.0.0)
* lcpPhp'token.T_ENCAPSED_AND_WHITESPACE,, " $a",, constant part of string with variables
* lcpPhp'token.T_ENDDECLARE,, enddeclare,, declare, alternative syntax
* lcpPhp'token.T_ENDFOR,, endfor,, for, alternative syntax
* lcpPhp'token.T_ENDFOREACH,, endforeach,, foreach, alternative syntax
* lcpPhp'token.T_ENDIF,, endif,, if, alternative syntax
* lcpPhp'token.T_ENDSWITCH,, endswitch,, switch, alternative syntax
* lcpPhp'token.T_ENDWHILE,, endwhile,, while, alternative syntax
* lcpPhp'token.T_END_HEREDOC,, ,, heredoc syntax
* lcpPhp'token.T_EVAL,, eval(),, eval()
* lcpPhp'token.T_HALT_COMPILER,, __halt_compiler(),, __halt_compiler (available since PHP 5.1.0)
* lcpPhp'token.T_INCLUDE,, include(),, include
* lcpPhp'token.T_INCLUDE_ONCE,, include_once(),, include_once
* lcpPhp'token.T_INLINE_HTML,, ,, text outside PHP
* lcpPhp'token.T_ISSET,, isset(),, isset()
* lcpPhp'token.T_LIST,, list(),, list()
* lcpPhp'token.T_LNUMBER,, 123, 012, 0x1ac, etc,, integers
* lcpPhp'token.T_ML_COMMENT,, /* and */,, comments (PHP 4 only)
* lcpPhp'token.T_NUM_STRING,, "$a[0]",, numeric array index inside string
* lcpPhp'token.T_OLD_FUNCTION,, old_function,, (PHP 4 only)
* lcpPhp'token.T_PRINT,, print(),, print
* lcpPhp'token.T_REQUIRE,, require(),, require
* lcpPhp'token.T_REQUIRE_ONCE,, require_once(),, require_once
* lcpPhp'token.T_STRING,, parent, true etc.,, identifiers, e.g. keywords like parent and self, function names, class names and more are matched. See also T_CONSTANT_ENCAPSED_STRING.
* lcpPhp'token.T_UNSET,, unset(),, unset()
* lcpPhp'token.T_VARIABLE,, $foo,, variables
* lcpPhp'token.T_WHITESPACE,, \t \r\n,,

lcpPhp'token.SYMBOL

name::
* McsEngl.lcpPhp'token.SYMBOL@cptIt,

_SPECIFIC:
* lcpPhp'token.T_AND_EQUAL,, &=,, assignment operators
* lcpPhp'token.T_BOOLEAN_AND,, &&,, logical operators
* lcpPhp'token.T_BOOLEAN_OR,, ||,, logical operators
* lcpPhp'token.T_CLOSE_TAG,, ?> or %>,, escaping from HTML
* lcpPhp'token.T_CONCAT_EQUAL,, .=,, assignment operators
* lcpPhp'token.T_CURLY_OPEN,, {$,, complex variable parsed syntax
* lcpPhp'token.T_DEC,, --,, incrementing/decrementing operators
* lcpPhp'token.T_DIV_EQUAL,, /=,, assignment operators
* lcpPhp'token.T_DOLLAR_OPEN_CURLY_BRACES,, ${,, complex variable parsed syntax
* lcpPhp'token.T_DOUBLE_ARROW,, =>,, array syntax
* lcpPhp'token.T_DOUBLE_COLON,, ::,, see T_PAAMAYIM_NEKUDOTAYIM below
* lcpPhp'token.T_INC,, ++,, incrementing/decrementing operators
* lcpPhp'token.T_IS_EQUAL,, ==,, comparison operators
* lcpPhp'token.T_IS_GREATER_OR_EQUAL,, >=,, comparison operators
* lcpPhp'token.T_IS_IDENTICAL,, ===,, comparison operators
* lcpPhp'token.T_IS_NOT_EQUAL,, != or <>,, comparison operators
* lcpPhp'token.T_IS_NOT_IDENTICAL,, !==,, comparison operators
* lcpPhp'token.T_IS_SMALLER_OR_EQUAL,, <=,, comparison operators
* lcpPhp'token.T_MINUS_EQUAL,, -=,, assignment operators
* lcpPhp'token.T_MOD_EQUAL,, %=,, assignment operators
* lcpPhp'token.T_MUL_EQUAL,, *=,, assignment operators
* lcpPhp'token.T_NS_SEPARATOR,, \,, namespaces (available since PHP 5.3.0)
* lcpPhp'token.T_OBJECT_OPERATOR,, ->,, classes and objects
* lcpPhp'token.T_OPEN_TAG,, <?php, <? or <%,, escaping from HTML
* lcpPhp'token.T_OPEN_TAG_WITH_ECHO,, <?= or <%=,, escaping from HTML
* lcpPhp'token.T_OR_EQUAL,, |=,, assignment operators
* lcpPhp'token.T_PAAMAYIM_NEKUDOTAYIM,, ::,, ::. Also defined as T_DOUBLE_COLON.
* lcpPhp'token.T_PLUS_EQUAL,, +=,, assignment operators
* lcpPhp'token.T_SL,, <<,, bitwise operators
* lcpPhp'token.T_SL_EQUAL,, <<=,, assignment operators
* lcpPhp'token.T_SR,, >>,, bitwise operators
* lcpPhp'token.T_SR_EQUAL,, >>=,, assignment operators
* lcpPhp'token.T_START_HEREDOC,, <<<,, heredoc syntax
* lcpPhp'token.T_STRING_VARNAME,, "${a,, complex variable parsed syntax
* lcpPhp'token.T_XOR_EQUAL,, ^=,, assignment operators

lcpPhp'code.structure.UNIT

name::
* McsEngl.lcpPhp'code.structure.UNIT@cptIt,
* McsEngl.lcpPhp'Unit-of-code@cptIt,
* McsEngl.php'unit-of-code@cptIt,

_GENERIC:
* php-code#ql:php'code#,
* lcp-codeunit#ql:lcp'code_unit#

SPECIFIC

_SPECIFIC:
* alphabet##
* char##

lcpPhp'alphabet

name::
* McsEngl.lcpPhp'alphabet@cptIt,

!

@

#

$ = variable name.

%

lcpPhp'ampersand_char (&):
To have an argument to a function always passed by reference, prepend an ampersand (&) to the argument name in the function definition:

lcpPhp'Cookie

name::
* McsEngl.lcpPhp'Cookie@cptIt,

PHP transparently supports HTTP cookies. Cookies are a mechanism for storing data in the remote browser and thus tracking or identifying return users. You can set cookies using the setcookie() or setrawcookie() function. Cookies are part of the HTTP header, so setcookie() must be called before any output is sent to the browser. This is the same limitation that header() has. You can use the output buffering functions to delay the script output until you have decided whether or not to set any cookies or send any headers.

Any cookies sent to you from the client will automatically be included into a $_COOKIE auto-global array if variables_order contains "C". If you wish to assign multiple values to a single cookie, just add [] to the cookie name.

Depending on register_globals, regular PHP variables can be created from cookies. However it's not recommended to rely on them as this feature is often turned off for the sake of security. $HTTP_COOKIE_VARS is also set in earlier versions of PHP when the track_vars configuration variable is set. (This setting is always on since PHP 4.0.3.)

For more details, including notes on browser bugs, see the setcookie() and setrawcookie() function.
[http://www.php.net/manual/en/features.cookies.php]

lcpPhp'tool

name::
* McsEngl.lcpPhp'tool@cptIt,
* McsEngl.lcpPhp'developer-tool@cptIt,

lcpPhp'configuration

name::
* McsEngl.lcpPhp'configuration@cptIt,

Changing the php.ini, must restart the server.

lcpPhp'grammar

name::
* McsEngl.lcpPhp'grammar@cptIt,

_ADDRESS.WPG:
* http://stackoverflow.com/questions/8931326/ebnf-grammar-definitions-for-php,

lcpPhp'ebnf-syntax

name::
* McsEngl.lcpPhp'ebnf-syntax@cptIt,

# PHP 5.2.0 EBNF Syntax
# Converted from the yacc syntax, see file Zend/zend_language_parser.y
# by Umberto Salsi <salsi@icosaedro.it>.

# This file last updated: 2007-03-16

# Added the "define();" statement.
# Added some symbols from the scanner.

# FIXME: missing definition for T_INLINE_HTML.
# FIXME: missing definition for T_ENCAPSED_AND_WHITESPACE.
# FIXME: missing definition for T_CHARACTER.

PHP_SOURCE_TEXT = { inner_statement | halt_compiler_statement };

halt_compiler_statement = "__halt_compiler" "(" ")" ";" ;

inner_statement = statement
 | function_declaration_statement
 | class_declaration_statement ;

inner_statement_list = { inner_statement } ;

statement = "{" inner_statement_list "}"
 | "if" "(" expr ")" statement {elseif_branch} [else_single]
 | "if" "(" expr ")" ":" inner_statement_list {new_elseif_branch}
  [new_else_single] "endif" ";"
 | "while" "(" expr ")" while_statement
 | "do" statement "while" "(" expr ")" ";"
 | "for" "(" for_expr ";" for_expr ";" for_expr ")" for_statement
 | "switch" "(" expr ")" switch_case_list
 | "break" [expr] ";"
 | "continue" [expr] ";"
 | "return" [expr_without_variable | variable] ";"
 | "global" global_var {"," global_var} ";"
 | "static" static_var { "," static_var } ";"
 | "echo" echo_expr_list ";"
 | T_INLINE_HTML
 | expr ";"
 | "use" use_filename ";"# FIXME: not implemented
 | "unset" "(" variable {"," variable} ")" ";"
 | "foreach" "(" (variable|expr_without_variable)
  "as" foreach_variable ["=>" foreach_variable] ")"
  foreach_statement
 | "declare" "(" declare_list ")" declare_statement
 | ";"# empty statement
 | "try" "{" inner_statement_list "}" catch_branch {catch_branch}
 | "throw" expr ";" ;

catch_branch = "catch" "(" fully_qualified_class_name T_VARIABLE ")" "{"
  inner_statement_list "}" ;

use_filename = T_CONSTANT_ENCAPSED_STRING
 | "(" T_CONSTANT_ENCAPSED_STRING ")" ;

function_declaration_statement = "function" ["&"] T_STRING
 "(" parameter_list ")" "{" inner_statement_list "}" ;

class_declaration_statement = class_entry_type T_STRING
 [extends_from] [implements_list] "{" {class_statement} "}"
 | "interface" T_STRING [interface_extends_list] "{" {class_statement} "}" ;

class_entry_type = [ "abstract" | "final" ] "class" ;

extends_from = "extends" fully_qualified_class_name ;

interface_extends_list = "extends" interface_list ;

implements_list = "implements" interface_list ;

interface_list = fully_qualified_class_name { "," fully_qualified_class_name } ;

foreach_variable = ["&"] variable ;

for_statement = statement
 | ":" inner_statement_list "endfor" ";" ;

foreach_statement = statement
 | ":" inner_statement_list "endforeach" ";" ;

declare_statement = statement
 | ":" inner_statement_list "enddeclare" ";" ;

declare_list = T_STRING "=" static_scalar { "," T_STRING "=" static_scalar } ;

switch_case_list = "{" [";"] {case_list} "}"
 | ":" [";"] {case_list} "endswitch" ";" ;

case_list = "case" expr [":"|";"] inner_statement_list
 | "default" [":"|";"] inner_statement_list ;

while_statement = statement
 | ":" inner_statement_list "endwhile" ";" ;

elseif_branch = "elseif" "(" expr ")" statement ;

new_elseif_branch = "elseif" "(" expr ")" ":" inner_statement_list ;

else_single = "else" statement ;

new_else_single = "else" ":" inner_statement_list ;

parameter_list = [ parameter {"," parameter} ] ;

parameter = [T_STRING | "array"] ["&"] T_VARIABLE ["=" static_scalar] ;

function_call_parameter_list = [ function_call_parameter
 { "," function_call_parameter } ] ;

function_call_parameter = expr_without_variable
 | variable
 | "&" w_variable ;

global_var = T_VARIABLE
 | "$" r_variable
 | "$" "{" expr "}" ;

static_var = T_VARIABLE [ "=" static_scalar ] ;

class_statement = variable_modifiers class_variable_declaration
 {"," class_variable_declaration} ";"
 | "const" class_constant_declaration {"," class_constant_declaration} ";"
 | {modifier} "function" ["&"] T_STRING "(" parameter_list ")"
  method_body ;

method_body = ";"
 | "{" inner_statement_list "}" ;

variable_modifiers = "var" | modifier {modifier} ;

modifier = "public" | "protected" | "private" | "static" | "abstract"
 | "final" ;

class_variable_declaration = ("var" | modifier {modifier}) T_VARIABLE ["=" static_scalar] ;

class_constant_declaration = T_STRING "=" static_scalar ;

echo_expr_list = expr {"," expr} ;

for_expr = [ expr {"," expr} ] ;

expr_without_variable = "list" "(" assignment_list ")" "=" expr
 | variable "=" expr
 | variable "=" "&" variable
 | variable "=" "&" "new" class_name_reference [ctor_arguments]
 | "new" class_name_reference [ctor_arguments]
 | "clone" expr
 | variable ("+=" | "-=" | "*=" | "/=" | ".=" | "%=" | "&=" | "|=" |
  "^=" | "<<=" | ">>=" ) expr
 | rw_variable "++"
 | "++" rw_variable
 | rw_variable "--"
 | "--" rw_variable
 | expr ("||" | "&&" | "or" | "and" | "xor" | "|" | "&" | "^" | "." |
  "+" | "-" | "*" | "/" | "%" | "<<" | ">>" | "===" | "!==" |
  "<" | "<=" | ">" | ">=" ) expr
 | ("+" | "-" | "!" | "~") expr
 | expr "instanceof" class_name_reference
 | "(" expr ")"
 | expr "?" expr ":" expr
 | internal_functions
 | "(int)" expr
 | "(double)" expr
 | "(float)" expr
 | "(real)" expr
 | "(string)" expr
 | "(array)" expr
 | "(object)" expr
 | "(bool)" expr
 | "(boolean)" expr
 | "(unset)" expr# FIXME: not implemented
 | "exit" [exit_expr]
 | "die" [exit_expr]
 | "@" expr
 | scalar
 | "array" "(" [array_pair_list] ")"
 | "`" encaps_list "`"
 | "print" expr ;

function_call = T_STRING "(" function_call_parameter_list ")"
 | fully_qualified_class_name "::" T_STRING
  "(" function_call_parameter_list ")"
 | fully_qualified_class_name "::" variable_without_objects
  "(" function_call_parameter_list ")"
 | variable_without_objects "(" function_call_parameter_list ")" ;

fully_qualified_class_name = T_STRING ;

class_name_reference = T_STRING
 | dynamic_class_name_reference ;

dynamic_class_name_reference = base_variable "->" object_property
  { "->" object_property }
| base_variable ;

exit_expr = "(" [expr] ")" ;

ctor_arguments = "(" function_call_parameter_list ")" ;

common_scalar = T_LNUMBER | T_DNUMBER | T_CONSTANT_ENCAPSED_STRING
 | "__LINE__" | "__FILE__" | "__CLASS__" | "__METHOD__" | "__FUNCTION__" ;

# FIXME: very bad syntax, $x = + + + 4; is valid!
static_scalar = common_scalar
 | T_STRING
 | "+" static_scalar
 | "-" static_scalar
 | "array" "(" [static_array_pair_list] ")"
 | static_class_constant ;

static_class_constant = T_STRING "::" T_STRING ;

scalar = T_STRING
 | T_STRING_VARNAME
 | class_constant
 | common_scalar
 | "\"" encaps_list "\""
 | "'" encaps_list "'"
 | T_START_HEREDOC encaps_list T_END_HEREDOC ;

static_array_pair_list = static_array_pair { "," static_array_pair } [","] ;

static_array_pair = static_scalar ["=>" static_scalar] ;

expr = r_variable | expr_without_variable ;

r_variable = variable ;

w_variable = variable ;

rw_variable = variable ;

variable = base_variable_with_function_calls [ "->" object_property
  method_parameters { "->" object_property method_parameters } ] ;

method_parameters = "(" function_call_parameter_list ")" ;

variable_without_objects = reference_variable
 | simple_indirect_reference reference_variable ;

static_member = fully_qualified_class_name "::" variable_without_objects ;

base_variable_with_function_calls = base_variable | function_call ;

base_variable = reference_variable
 | simple_indirect_reference reference_variable
 | static_member ;

reference_variable = compound_variable { selector } ;

compound_variable = T_VARIABLE | "$" "{" expr "}" ;

selector = "[" [expr] "]" | "{" expr "}" ;

object_property = variable_name { selector }
 | variable_without_objects ;

variable_name = T_STRING | "{" expr "}" ;

simple_indirect_reference = "$" {"$"} ;

assignment_list = [assignment_list_element] {"," [assignment_list_element]} ;

assignment_list_element = variable
 | "list" "(" assignment_list ")" ;

array_pair_list = array_pair {"," array_pair} [","] ;

array_pair = "&" w_variable
 | expr "=>" "&" w_variable
 | expr "=>" expr ;

encaps_list =
 {
   encaps_var
   | T_STRING
   | T_NUM_STRING
   | T_ENCAPSED_AND_WHITESPACE
   | T_CHARACTER
   | T_BAD_CHARACTER
   | "["
   | "]"
   | "{"
   | "}"
   | "->"
 } ;

encaps_var = T_VARIABLE [ "[" encaps_var_offset "]" ]
 | T_VARIABLE "->" T_STRING
 | "${" expr "}"
 | "${" T_STRING_VARNAME "[" expr "]" "}"
 | T_CURLY_OPEN variable "}" ;

encaps_var_offset = T_STRING | T_NUM_STRING | T_VARIABLE ;

internal_functions = "isset" "(" variable {"," variable} ")"
 | "empty" "(" variable ")"
 | "include" expr
 | "include_once" expr
 | "eval" "(" expr ")"
 | "require" expr
 | "require_once" expr ;

class_constant = fully_qualified_class_name "::" T_STRING ;


#
# Some tokens from the scanner (see file Zend/zend_language_scanner.l):
#

LABEL = (letter | "_") {letter | digit | "_"} ;
T_STRING = LABEL;
T_BAD_CHARACTER = "\x00".."\x08" | "\x0b" | "\x0c" | "\x0e".."\x1f" ;
T_VARIABLE = "$" T_STRING ;
T_LNUMBER = octal | decimal | hexadecinal ;
octal = "0" {"0".."7"} ;
decimal = "1".."9" {digit} ;
hexadecinal = "0x" hexdigit {hexdigit} ;
digit = "0".."9" ;
hexdigit = digit | "a".."f" | "A".."F" ;
letter = "a".."z" | "A".."Z" | "\x7f".."\xff" ;

T_DNUMBER = DNUM | EXPONENT_DNUM;
DNUM = digit ["."] digit {digit} | digit {digit} ["."] {digit};
EXPONENT_DNUM = (LNUM | DNUM) ("e"|"E") ["+"|"-"] LNUM;
LNUM = digit {digit};

T_CURLY_OPEN = "${";

T_CONSTANT_ENCAPSED_STRING = single_quoted_constant_string | double_quoted_constant_string;
# FIXME
single_quoted_constant_string =
 "'" { "any char except ' and \\" | "\\" "any char" } "'";
# FIXME
double_quoted_constant_string =
 "\"" { "any char except $ \" and \\" | "\\" "any char" } "\"";

T_STRING_VARNAME = LABEL;
T_NUM_STRING = LNUM | hexadecinal;
T_START_HEREDOC = "<<<" {" "|"\t"} LABEL NEWLINE;
NEWLINE = "\r"|"\n"|"\r\n";

T_END_HEREDOC = "FIXME: here at the beginning of the line"
 LABEL [";"] NEWLINE;
[http://www.icosaedro.it/articoli/php-syntax-ebnf.txt]

lcpPhp'implementation

name::
* McsEngl.lcpPhp'implementation@cptIt,

The PHP language was originally implemented as an interpreter. Several compilers have been developed which decouple the PHP language from the interpreter. Advantages of compilation include better execution speed, obfuscation, static analysis, and improved interoperability with code written in other languages.[79] PHP compilers of note include Phalanger, which compiles PHP into CIL byte-code, and HipHop, developed at Facebook and now available as open source, which transforms the PHP Script into C++, then compiles it, reducing server load up to 50%.
[http://en.wikipedia.org/wiki/Php]

lcpPhp'Installation

name::
* McsEngl.lcpPhp'Installation@cptIt,

Manual:
* unzip file
* configure ini.

lcpPhp'Lexical-analysis

name::
* McsEngl.lcpPhp'Lexical-analysis@cptIt,

The analysis stage can be broken down into three sub-parts: lexical analysis, syntax analysis, and semantic analysis.
The first stage reads the input script character by character to find tokens - parts of the script that are logical units by themselves. In PHP terms, a string is a token, as is a variable, a number, a brace, etc.
As the lexical analyser (usually just called the lexer) finds tokens within a script, it returns them to the syntax analyser (parser), which makes sure that the script fits the syntax rules you have laid down.
Finally, once the script has been tokenised and parsed, the semantic analyser kicks in to make sure the meaning of the script is valid.
[http://tuxradar.com/practicalphp/21/5/3]

lcpPhp'specification

name::
* McsEngl.lcpPhp'specification@cptIt,

_DESCRIPTION:
From what I read on Wikipedia, both PHP and Perl5 have in common that they are "languages" which are entirely defined through one single implementation. The language is precisely whatever the interpreter does. Neither are like C or C++ or Java or ECMAScript, which are standardised languages with many different implementations. (Apparently Perl6 will be different and actually have a specification. No idea of PHP will also one day make this step.)
[http://stackoverflow.com/a/4793261]

lcpPhp'evoluting#cptCore546.171#

name::
* McsEngl.lcpPhp'evoluting@cptIt,
* McsEngl.lcpPhp'version@cptIt,

{time.2014-03-06}:
PHP 5.5.9 released.

{time.2013-06-20}:
PHP 5.5.0 released. ¶

20-Jun-2013
The PHP development team is proud to announce the immediate availability of PHP 5.5.0. This release includes a large number of new features and bug fixes.

The key features of PHP 5.5.0 include:

Added generators and coroutines.
Added the finally keyword.
Added a simplified password hashing API.
Added support for constant array/string dereferencing.
Added scalar class name resolution via ::class.
Added support for using empty() on the result of function calls and other expressions.
Added support for non-scalar Iterator keys in foreach.
Added support for list() constructs in foreach statements.
Added the Zend OPcache extension for opcode caching.
The GD library has been upgraded to version 2.1 adding new functions and improving existing functionality.
A lot more improvements and fixes.
Changes that affect compatibility:

PHP logo GUIDs have been removed.
Windows XP and 2003 support dropped.
Case insensitivity is no longer locale specific. All case insensitive matching for function, class and constant names is now performed in a locale independent manner according to ASCII rules.
For users upgrading from PHP 5.4, a migration guide is available detailing the changes between 5.4 and 5.5.0.

For a full list of changes in PHP 5.5.0, see the ChangeLog.
[http://www.php.net/]

5.4:
PHP 5.4 added a few important features[1], namely traits, shorthand array
syntax, and function array dereferencing. I've heard that 5.3 is nearing
end of life.
I propose we drop support for PHP 5.3 soon, if possible.
[1] http://php.net/manual/en/migration54.new-features.php
- Trevor, Trevor Parscal tparscal@wikimedia.org

2011-08-23:
Stable release  5.3.8

The very first release of PHP was actually little more than a collection of Perl scripts, and, although it was fairly limited by not being a full-blown language in its own right, it was powerful enough to gain quite a following. Things have come full circle now, as PHP is able to be a host to your own mini-language, and this is what we'll be looking at here.
[http://tuxradar.com/practicalphp/21/5/0]

lcpPhp'Extention

name::
* McsEngl.lcpPhp'Extention@cptIt,

_DESCRIPTION:
PHP allows developers to write extensions in C to add functionality to the PHP language. These can then be compiled into PHP or loaded dynamically at runtime. Extensions have been written to add support for the Windows API, process management on Unix-like operating systems, multibyte strings (Unicode), cURL, and several popular compression formats. Some more unusual features include integration with Internet Relay Chat, dynamic generation of images and Adobe Flash content, and even speech synthesis. The PHP Extension Community Library (PECL) project is a repository for extensions to the PHP language.[81]
[http://en.wikipedia.org/wiki/Php]

lcpPhp'extension'installing

name::
* McsEngl.lcpPhp'extension'installing@cptIt,

Installing a PHP extension on Windows

On Windows, you have two ways to load a PHP extension: either compile it into PHP, or load the DLL. Loading a pre-compiled extension is the easiest and preferred way.

To load an extension, you need to have it available as a ".dll" file on your system. All the extensions are automatically and periodically compiled by the PHP Group (see next section for the download).
[http://www.php.net/manual/en/install.pecl.windows.php]

lcpPhp'extension.PEAR

name::
* McsEngl.lcpPhp'extension.PEAR@cptIt,
* McsEngl.PEAR@cptIt,

_DESCRIPTION:
What is PEAR?
PEAR is short for "PHP Extension and Application Repository" and is pronounced just like the fruit. The purpose of PEAR is to provide:

A structured library of open-source code for PHP users
A system for code distribution and package maintenance
A standard style for code written in PHP, specified here
The PHP Extension Community Library (PECL), see more below
A web site, mailing lists and download mirrors to support the PHP/PEAR community
PEAR is a community-driven project governed by its developers. PEAR's governing bodies are subdivided into the PEAR Group, Collectives, and a President. PEAR's constitution (adopted in March 2007) defining these groups is documented here. The PEAR project was founded in 1999 by Stig S. Bakken and quite a lot of people have joined the project.
[http://pear.php.net/manual/en/about.pear.php]

lcpPhp'extension.PECL

name::
* McsEngl.lcpPhp'extension.PECL@cptIt,
* McsEngl.PECL@cptIt585i,
* McsEngl.PHP-Extension-Community-Library@cptIt,
* McsEngl.lcpPhp'PECL@cptIt,

_ADDRESS.WPG:
* http://php.net/manual/en/install.pecl.php,

_DESCRIPTION:
PECL is a repository for PHP Extensions, providing a directory of all known extensions and hosting facilities for downloading and development of PHP extensions.
The packaging and distribution system used by PECL is shared with its sister, PEAR.
[http://pecl.php.net/index.php]

lcpPhp'extension.Lua

name::
* McsEngl.lcpPhp'extension.Lua@cptIt,
* McsEngl.lua-php-interpreter@cptIt585,

Embedded lua interpreter

_ADDRESS.WPG:
* http://pecl.php.net/package/lua,

lcpPhp'Interface

name::
* McsEngl.lcpPhp'Interface@cptIt,

_GENERIC:
* codetype#ql:php'codetype#,
* unit-of-code#ql:php'unit_of_code#

_DESCRIPTION:
Object Interfaces

Object interfaces allow you to create code which specifies which methods a class must implement, without having to define how these methods are handled.

Interfaces are defined using the interface keyword, in the same way as a standard class, but without any of the methods having their contents defined.

All methods declared in an interface must be public, this is the nature of an interface.
[http://php.net/manual/en/language.oop5.interfaces.php]

_Example:
00001 <?php
00029 interface IContextSource {
00030
00036 public function getRequest();
00037
00043 public function getTitle();
00044
00050 public function getOutput();
00051
00057 public function getUser();
00058
00065 public function getLang();
00066
00073 public function getLanguage();
00074
00080 public function getSkin();
00081 }
[http://svn.wikimedia.org/doc/IContextSource_8php_source.html]

lcpPhp'namespace

name::
* McsEngl.lcpPhp'namespace@cptIt,

_DESCRIPTION:
What are namespaces? In the broadest definition namespaces are a way of encapsulating items. This can be seen as an abstract concept in many places. For example, in any operating system directories serve to group related files, and act as a namespace for the files within them. As a concrete example, the file foo.txt can exist in both directory /home/greg and in /home/other, but two copies of foo.txt cannot co-exist in the same directory. In addition, to access the foo.txt file outside of the /home/greg directory, we must prepend the directory name to the file name using the directory separator to get /home/greg/foo.txt. This same principle extends to namespaces in the programming world.
[http://gr.php.net/manual/en/language.namespaces.rationale.php]

_ADDRESS.WPG:
* http://gr.php.net/manual/en/language.namespaces.php,

lcpPhp'ns'Creating

name::
* McsEngl.lcpPhp'ns'Creating@cptIt,

Namespaces are declared using the namespace keyword. A file containing a namespace must declare the namespace at the top of the file before any other code - with one exception: the declare keyword.

Example#1 Declaring a single namespace
<?php
namespace MyProject;

const CONNECT_OK = 1;
class Connection { /* ... */ }
function connect() { /* ... */ }

?>
...
In addition, unlike any other PHP construct, the same namespace may be defined in multiple files, allowing splitting up of a namespace's contents across the filesystem.
[http://gr.php.net/manual/en/language.namespaces.definition.php]

lcpPhp'ns'Type-affecting

name::
* McsEngl.lcpPhp'ns'Type-affecting@cptIt,

Although any valid PHP code can be contained within a namespace, only four types of code are affected by namespaces: classes, interfaces, functions and constants.
[http://gr.php.net/manual/en/language.namespaces.definition.php]

lcpPhp'ns.Global

name::
* McsEngl.lcpPhp'ns.Global@cptIt,
* McsEngl.lcpPhp'global-space@cptIt,
* McsEngl.lcpPhp'ns.Unnamespaced-code@cptIt,

To combine global non-namespaced code with namespaced code, only bracketed syntax is supported. Global code should be encased in a namespace statement with no namespace name as in:

Example#3 Declaring multiple namespaces and unnamespaced code
<?php
namespace MyProject {

const CONNECT_OK = 1;
class Connection { /* ... */ }
function connect() { /* ... */ }
}

namespace { // global code
session_start();
$a = MyProject\connect();
echo MyProject\Connection::start();
}
?>
No PHP code may exist outside of the namespace brackets except for an opening declare statement.

Example#4 Declaring multiple namespaces and unnamespaced code
<?php
declare(encoding='UTF-8');
namespace MyProject {

const CONNECT_OK = 1;
class Connection { /* ... */ }
function connect() { /* ... */ }
}

namespace { // global code
session_start();
$a = MyProject\connect();
echo MyProject\Connection::start();
}
?>
[http://gr.php.net/manual/en/language.namespaces.definitionmultiple.php]

lcpPhp'ns.SubNamespace

name::
* McsEngl.lcpPhp'ns.SubNamespace@cptIt,

Declaring sub-namespaces

(PHP 5 >= 5.3.0)

Much like directories and files, PHP namespaces also contain the ability to specify a hierarchy of namespace names. Thus, a namespace name can be defined with sub-levels:

Example#1 Declaring a single namespace with hierarchy
<?php
namespace MyProject\Sub\Level;

const CONNECT_OK = 1;
class Connection { /* ... */ }
function connect() { /* ... */ }

?>
The above example creates constant MyProject\Sub\Level\CONNECT_OK, class MyProject\Sub\Level\Connection and function MyProject\Sub\Level\connect.
[http://gr.php.net/manual/en/language.namespaces.nested.php]

lcpPhp'relation-to-python

name::
* McsEngl.lcpPhp'relation-to-python@cptIt,
* McsEngl.python'relation-to-php@cptIt,

??????? ???????? vitalif@yourcmc.ru via lists.wikimedia.org
2013-07-28 10:52 AM (1 hour ago)

to wikitech-l
Hi!

The question is a good base for a holy war :-)
I want to say that PHP has some advantages Python will never have - it's very simple in deployment, there is no fuss with library versions, nearly all needed features are already built-in including a good SAPI (!) so you don't need wsgi, psgi and etc, you don't need any virtualenvs for deploying because nobody typicaaly uses pear libraries :-)
PHP is faster (if you don't take pypy and etc in account).
Also I personally HATE block formatting using indentation. It's so silly idea no more language in the world has. Also for example I don't like python's strict typization ideas (for example it throws exception if you concatenate long and str using +). PHP is simple and has no such problems.
And for webdev I don't like frameworks, either. I.e I don't like them at all - because I always feel they are trying to restrict me. So Django is not an argument for me, and may be not an argument for you too. And definitely you can't say django is just better than php.
What php misses it's the builtin metaprogramming, but in 99% cases you should better write code instead of doing metaprogramming.
So for webdev my opinion is that php is MUCH better than python.

lcpPhp'ResourceInfHmnn#cptResource843#

name::
* McsEngl.lcpPhp'ResourceInfHmnn@cptIt,

_ADDRESS.WPG:
* http://www.php.net//
* manual: http://www.php.net/manual/en//
* lang: http://www.php.net/manual/en/langref.php,
* PHP Scripts & Programs: http://www.hotscripts.com/category/php/scripts-programs//
* installation: http://www.ricocheting.com/how-to-install-on-windows/php,
=== TUTORIAL:
* tutorial: Practical PHP Programming
Welcome to the new home of Practical PHP Programming - now updated for PHP 5.2. This is the definitive source for the book from now on, and you'll be pleased to know the entire book is hosted on a super-fast server so you should never have access troubles again.
- http://tuxradar.com/practicalphp,
* tutorial: http://www.tizag.com/phpT//
* tutorial: http://www.w3schools.com/php/default.asp,
* tutorial: http://www.freewebmasterhelp.com/tutorials/php,
* tutorial beginers: http://www.phptutorial.info//

lcpPhp'security

name::
* McsEngl.lcpPhp'security@cptIt,

_ADDRESS.WPG:
* http://www.php.net/manual/en/security.php,
* Encode PHP Scripts: http://www.phpeasystep.com/phptu/28.html,
* http://phpsec.org//

_DESCRIPTION:
PHP is a powerful language and the interpreter, whether included in a web server as a module or executed as a separate CGI binary, is able to access files, execute commands and open network connections on the server. These properties make anything run on a web server insecure by default. PHP is designed specifically to be a more secure language for writing CGI programs than Perl or C, and with correct selection of compile-time and runtime configuration options, and proper coding practices, it can give you exactly the combination of freedom and security you need.

As there are many different ways of utilizing PHP, there are many configuration options controlling its behaviour. A large selection of options guarantees you can use PHP for a lot of purposes, but it also means there are combinations of these options and server configurations that result in an insecure setup.

The configuration flexibility of PHP is equally rivalled by the code flexibility. PHP can be used to build complete server applications, with all the power of a shell user, or it can be used for simple server-side includes with little risk in a tightly controlled environment. How you build that environment, and how secure it is, is largely up to the PHP developer.
[http://www.php.net/manual/en/security.intro.php]
===
General considerations

A completely secure system is a virtual impossibility, so an approach often used in the security profession is one of balancing risk and usability. If every variable submitted by a user required two forms of biometric validation (such as a retinal scan and a fingerprint), you would have an extremely high level of accountability. It would also take half an hour to fill out a fairly complex form, which would tend to encourage users to find ways of bypassing the security.

The best security is often unobtrusive enough to suit the requirements without the user being prevented from accomplishing their work, or over-burdening the code author with excessive complexity. Indeed, some security attacks are merely exploits of this kind of overly built security, which tends to erode over time.

A phrase worth remembering: A system is only as good as the weakest link in a chain. If all transactions are heavily logged based on time, location, transaction type, etc. but the user is only verified based on a single cookie, the validity of tying the users to the transaction log is severely weakened.

When testing, keep in mind that you will not be able to test all possibilities for even the simplest of pages. The input you may expect will be completely unrelated to the input given by a disgruntled employee, a cracker with months of time on their hands, or a housecat walking across the keyboard. This is why it's best to look at the code from a logical perspective, to discern where unexpected data can be introduced, and then follow how it is modified, reduced, or amplified.

The Internet is filled with people trying to make a name for themselves by breaking your code, crashing your site, posting inappropriate content, and otherwise making your day interesting. It doesn't matter if you have a small or large site, you are a target by simply being online, by having a server that can be connected to. Many cracking programs do not discern by size, they simply trawl massive IP blocks looking for victims. Try not to become one.
[http://www.php.net/manual/en/security.general.php]
===
Security
Vulnerabilities are caused mostly by not following best practice programming rules: technical security flaws of the language itself or of its core libraries are not frequent (23 in 2008, about 1% of the total).[47][48] Recognizing that programmers cannot be trusted, some languages include taint checking to detect automatically the lack of input validation which induces many issues. Such a feature is being developed for PHP,[49] but its inclusion in a release has been rejected several times in the past.[50][51]

Hosting PHP applications on a server requires careful and constant attention to deal with these security risks.[52] There are advanced protection patches such as Suhosin and Hardening-Patch, especially designed for web hosting environments.[53]

PHPIDS adds security to any PHP application to defend against intrusions. PHPIDS detects Cross-site scripting (XSS), SQL injection, header injection, Directory traversal, Remote File Execution, Local File Inclusion, Denial of Service (DoS).[54]
[http://en.wikipedia.org/wiki/Php]

lcpPhp'security'accessing-any-web-document-on-server

name::
* McsEngl.lcpPhp'security'accessing-any-web-document-on-server@cptIt,

Accessing any web document on server: http://my.host/cgi-bin/php/secret/doc.html The path information part of the URL after the PHP binary name, /secret/doc.html is conventionally used to specify the name of the file to be opened and interpreted by the CGI program. Usually some web server configuration directives (Apache: Action) are used to redirect requests to documents like http://my.host/secret/script.php to the PHP interpreter. With this setup, the web server first checks the access permissions to the directory /secret, and after that creates the redirected request http://my.host/cgi-bin/php/secret/script.php. Unfortunately, if the request is originally given in this form, no access checks are made by web server for file /secret/script.php, but only for the /cgi-bin/php file. This way any user able to access /cgi-bin/php is able to access any protected document on the web server. In PHP, runtime configuration directives cgi.force_redirect, doc_root and user_dir can be used to prevent this attack, if the server document tree has any directories with access restrictions. See below for full the explanation of the different combinations.
[http://www.php.net/manual/en/security.cgi-bin.attacks.php]

lcpPhp'security'code

name::
* McsEngl.lcpPhp'security'code@cptIt,
* McsEngl.lcpPhp'code.SECURITY@cptIt,

phpseclib#ql:php'phpseclib#

lcpPhp'security'database

name::
* McsEngl.lcpPhp'security'database@cptIt,

Nowadays, databases are cardinal components of any web based application by enabling websites to provide varying dynamic content. Since very sensitive or secret information can be stored in a database, you should strongly consider protecting your databases.

To retrieve or to store any information you need to connect to the database, send a legitimate query, fetch the result, and close the connection. Nowadays, the commonly used query language in this interaction is the Structured Query Language (SQL). See how an attacker can tamper with an SQL query.

As you can surmise, PHP cannot protect your database by itself. The following sections aim to be an introduction into the very basics of how to access and manipulate databases within PHP scripts.

Keep in mind this simple rule: defense in depth. The more places you take action to increase the protection of your database, the less probability of an attacker succeeding in exposing or abusing any stored information. Good design of the database schema and the application deals with your greatest fears.
[http://www.php.net/manual/en/security.database.php]

lcpPhp'security'hiding-PHP

name::
* McsEngl.lcpPhp'security'hiding-PHP@cptIt,

Hiding PHP

In general, security by obscurity is one of the weakest forms of security. But in some cases, every little bit of extra security is desirable.

A few simple techniques can help to hide PHP, possibly slowing down an attacker who is attempting to discover weaknesses in your system. By setting expose_php to off in your php.ini file, you reduce the amount of information available to them.

Another tactic is to configure web servers such as apache to parse different filetypes through PHP, either with an .htaccess directive, or in the apache configuration file itself.
[http://www.php.net/manual/en/security.hiding.php]

lcpPhp'security'keeping-current

name::
* McsEngl.lcpPhp'security'keeping-current@cptIt,

Keeping Current

PHP, like any other large system, is under constant scrutiny and improvement. Each new version will often include both major and minor changes to enhance security and repair any flaws, configuration mishaps, and other issues that will affect the overall security and stability of your system.

Like other system-level scripting languages and programs, the best approach is to update often, and maintain awareness of the latest versions and their changes.
[http://www.php.net/manual/en/security.current.php]

lcpPhp'security'PHP-parser-outside-of-web-tree

name::
* McsEngl.lcpPhp'security'PHP-parser-outside-of-web-tree@cptIt,

Case 4: PHP parser outside of web tree

A very secure option is to put the PHP parser binary somewhere outside of the web tree of files. In /usr/local/bin, for example. The only real downside to this option is that you will now have to put a line similar to:

#!/usr/local/bin/php
as the first line of any file containing PHP tags. You will also need to make the file executable. That is, treat it exactly as you would treat any other CGI script written in Perl or sh or any other common scripting language which uses the#! shell-escape mechanism for launching itself.
To get PHP to handle PATH_INFO and PATH_TRANSLATED information correctly with this setup, the PHP parser should be compiled with the --enable-discard-path configure option.
[http://www.php.net/manual/en/security.cgi-bin.shell.php]

lcpPhp'security'sch.gr

name::
* McsEngl.lcpPhp'security'sch.gr@cptIt,

from  listserver@sch.gr
to  "phpusers@sch.gr" <phpusers@sch.gr>
date  Mon, Sep 26, 2011 at 6:10 PM
subject  [phpusers] Θέματα ασφαλείας δικτυακών τόπων
unsubscribe  Unsubscribe from this sender
hide details 6:10 PM (3 hours ago)
Φίλοι εκπαιδευτικοί,

Το μήνυμα αυτό αφορά στα προβλήματα ασφαλείας τα οποία προκύπτουν από την απρόσεκτη χρήση εφαρμογών (κυρίως διαχείρισης ιστοσελίδων), οι οποίες έχουν υλοποιηθεί με τη γλώσσα php. Παραδείγματα τέτοιων εφαρμογών είναι ενδεικτικά οι Mambo, PostNuke, PHPNuke, Joomla, WordPress και phpBB.

Οι εφαρμογές αυτές γίνονται συχνά στόχος επίθεσης από κακόβουλους χρήστες, με αποτέλεσμα την μή εξουσιοδοτημένη πρόσβαση και αλλοίωση του περιεχόμενου του ιστοχώρου που εξυπηρετούν. Τα προβλήματα ασφαλείας συνήθως οφείλονται σε κομμάτια κώδικα που κάνουν κακή χρήση της γλώσσας προγραμ-ματισμού PHP (π.χ. components ή plugins) και όχι σ’ αυτή καθ’ αυτή τη γλώσσα. Πρόσφατο κενό ασφαλείας εντοπίστηκε στο component oziogallery2 του Joomla.

Όταν ανακαλύπτονται κενά ασφαλείας σε κάποια δικτυακή εφαρμογή, αυτά συνήθως ανακοινώνονται στην επίσημη ιστοσελίδα της ομάδας που την αναπτύσσει αλλά ταυτόχρονα και σε ιστοσελίδες ειδικευμένων ομάδων ασφαλείας όπως για παράδειγμα οι http://nvd.nist.gov και http://www.frsirt.com.

Κατά κανόνα, όταν παραβιάζεται η ασφάλεια κάποιας εφαρμογής php οι επιτιθέμενοι εκμεταλλεύονται ευπάθειες του λογισμικού, οι οποίες είναι γνωστές και έχουν αντιμετωπισθεί από τους παρόχους του λογισμικού. Οι διαχειριστές όμως έχουν αμελήσει να ενημερώσουν το λογισμικό τους, με αποτέλεσμα να παραμένουν ευάλωτοι.

Προτεινόμενα βήματα για την πρόληψη παραβίασης της ασφάλειας των web εφαρμογών που χρησιμοποιούμε είναι:

* Όταν επιλέγουμε την web εφαρμογή που θα χρησιμοποιήσουμε, να λαμβάνουμε υπόψη την υποστήριξη που αυτή παρέχει σε θέματα ασφάλειας (έγκαιρη αντιμετώπιση προβλημάτων ασφάλειας, ευκολία εγκατάστασης των σχετικών διορθώσεων).

* Να παρακολουθούμε ηλεκτρονικές ομάδες συζητήσεων (forum) που ασχολούνται με την ασφάλεια τουλάχιστον για το λογισμικό που χρησιμοποιούμε, ώστε να ενημερωνόμαστε έγκαιρα όταν υπάρχουν νέες εκδόσεις που αντιμετωπίζουν ανακοινωμένες ευπάθειες.

* Πριν την εγκατάσταση πρόσθετων προγραμμάτων (components, plugins) να κάνουμε έλεγχο για τυχόν κενά ασφαλείας.

* Να φροντίζουμε για την ενημέρωση του λογισμικού μας και των επιμέρους προγραμμάτων που χρησιμοποιεί, όπως components/plugins αμέσως μόλις δημοσιοποιηθεί τρόπος αντιμετώπισης κάποιας ευπάθειας (ενημέρωση ασφαλείας).

* Να μην αποκαλύπτουμε δημόσια τις ακριβείς εκδόσεις των εφαρμογών που χρησιμοποιούμε, γιατί έτσι διευκολύνουμε την αναζήτηση των ευπαθών συστημάτων με χρήση μηχανών αναζήτησης από κακόβουλους χρήστες.

* Να ενεργοποιούμε μόνο τα χαρακτηριστικά που είναι απολύτως απαραίτητα στις εφαρμογές αυτές, π.χ. αν είναι δυνατό να αποφεύγουμε την ενεργοποίηση των ομάδων συζητήσεων (for a - phpBB) στα CMS, γιατί συχνά αποτελούν στόχο επίθεσης.


Χρήσιμοι σύνδεσμοι :
1. http://news.netcraft.com/archives/2006/01/31/php_apps_a_growing_target_for_hackers.htm

2. http://nvd.nist.gov/nvd.cfm

3. http://www.frsirt.com/english

Εκφράζουμε τα συγχαρητήρια μας για τους εξαιρετικούς δικτυακούς τόπους που αναπτύσσετε, από άποψη τεχνολογιών, και περιεχόμενου..

Σας ευχαριστούμε για τη συνεργασία σας και σας ευχόμαστε καλή σχολική χρονιά.

Με εκτίμηση

Πανελλήνιο Σχολικό Δίκτυο
-Υπηρεσία φιλοξενίας ιστοσελίδων:
E-mail: webhost@sch.gr
-Ομάδα αντιμετώπισης περιστατικών ασφαλείας (GSN-CERT)
http://cert.sch.gr, E-mail: cert@sch.gr

lcpPhp'security'Suhosin

name::
* McsEngl.lcpPhp'security'Suhosin@cptIt,
* McsEngl.suhosin@cptIt585i,

_DESCRIPTION:
Suhosin is an advanced protection system for PHP installations. It was designed to protect servers and users from known and unknown flaws in PHP applications and the PHP core. Suhosin comes in two independent parts, that can be used separately or in combination. The first part is a small patch against the PHP core, that implements a few low-level protections against bufferoverflows or format string vulnerabilities and the second part is a powerful PHP extension that implements all the other protections.
[http://www.hardened-php.net/suhosin/]

lcpPhp'security'variable-checking

name::
* McsEngl.lcpPhp'security'variable-checking@cptIt,

You should always carefully examine your code to make sure that any variables being submitted from a web browser are being properly checked, and ask yourself the following questions:

Will this script only affect the intended files?
Can unusual or undesirable data be acted upon?
Can this script be used in unintended ways?
Can this be used in conjunction with other scripts in a negative manner?
Will any transactions be adequately logged?
[http://www.php.net/manual/en/security.variables.php]

lcpPhp'tool

name::
* McsEngl.lcpPhp'tool@cptIt,

lcpPhp'tool.REPL

name::
* McsEngl.lcpPhp'tool.REPL@cptIt,
* McsEngl.lcpPhp'repl@cptIt,

_ADDRESS.WPG:
* http://phpepl.cloudcontrolled.com//

lcp.instance.RUBY {1995}

_CREATED: {2013-12-22}

name::
* McsEngl.lcp.instance.RUBY {1995}@cptIt,
* McsEngl.pgmlng.ruby@cptIt,
* McsEngl.ruby-lang@cptIt,

ruby'DEFINITION

name::
* McsEngl.ruby'DEFINITION@cptIt,

_DESCRIPTION:
In the old days, the distinction between languages was simple: they were either compiled, like C or Fortran, or interpreted, like BASIC. Compiled languages gave you speed and low-level access; interpreted languages were higher-level but slower.
Times change, and things aren't that simple anymore. Some language designers have taken to calling their creations ``scripting languages.'' By this, we guess they mean that their languages are interpreted and can be used to replace batch files and shell scripts, orchestrating the behavior of other programs and the underlying operating system. Perl, TCL, and Python have all been called scripting languages.
What exactly is a scripting language? Frankly we don't know if it's a distinction worth making. In Ruby, you can access all the underlying operating system features. You can do the same stuff in Ruby that you can in Perl or Python, and you can do it more cleanly. But Ruby is fundamentally different. It is a true programming language, too, with strong theoretical roots and an elegant, lightweight syntax. You could hack together a mess of ``scripts'' with Ruby, but you probably won't. Instead, you'll be more inclined to engineer a solution, to produce a program that is easy to understand, simple to maintain, and a piece of cake to extend and reuse in the future.
Although we have used Ruby for scripting jobs, most of the time we use it as a general-purpose programming language. We've used it to write GUI applications and middle-tier server processes, and we're using it to format large parts of this book. Others have used it for managing server machines and databases. Ruby is serving Web pages, interfacing to databases and generating dynamic content. People are writing artificial intelligence and machine learning programs in Ruby, and at least one person is using it to investigate natural evolution. Ruby's finding a home as a vehicle for exploratory mathematics. And people all over the world are using it as a way of gluing together all their different applications. It truly is a great language for producing solutions in a wide variety of problem domains.
[http://ruby-doc.com/docs/ProgrammingRuby/]
===
Ruby is a cross-platform interpreted language which has many features in common with other ‘scripting’ languages such as Perl and Python. It has an ‘English language’ style syntax which looks somewhat Pascal-like at first sight. It is thoroughly object oriented, and has a good deal in common with the great-granddaddy of ‘pure’ OO languages, Smalltalk. It has been said that the lan-guages which most influenced the development of Ruby were: Perl, Smalltalk, Eiffel, Ada and Lisp. The Ruby language was created by Yukihiro Matsumoto (commonly known as ‘Matz’) and it was first released in 1995.
[bookofruby.pdf]

ruby'code

name::
* McsEngl.ruby'code@cptIt,

ruby'code.ARRAY

name::
* McsEngl.ruby'code.ARRAY@cptIt,
* McsEngl.ruby'array@cptIt,

_CODE.RUBY:
[89.9, flavor, [true, false]] # ...but this is.

ruby'code.CLASS

name::
* McsEngl.ruby'code.CLASS@cptIt,
* McsEngl.ruby'class@cptIt,

ruby'code.METHOD

name::
* McsEngl.ruby'code.METHOD@cptIt,
* McsEngl.ruby'method@cptIt,

_DESCRIPTION:
But really, that is what they are: things that do stuff. If objects (like strings, integers, and floats) are the nouns in the Ruby language, then methods are like the verbs. And, just like in English, you can't have a verb without a noun to do the verb. For example, ticking isn't something that just happens; a clock (or a watch or something) has to do it. In English we would say, "The clock ticks." In Ruby we would say clock.tick (assuming that clock was a Ruby object, of course). Programmers might say we were "calling clock's tick method," or that we "called tick on clock."
[http://pine.fm/LearnToProgram/?Chapter=05]

ruby'method.CUSTOM

name::
* McsEngl.ruby'method.CUSTOM@cptIt,

_CODE.RUBY:
def sayMoo
puts 'mooooooo...'
end
...
def sayMoo numberOfMoos
puts 'mooooooo...'*numberOfMoos
end
[http://pine.fm/LearnToProgram/?Chapter=08]

ruby'code.PROGRAM

name::
* McsEngl.ruby'code.PROGRAM@cptIt,
* McsEngl.ruby'program@cptIt,

ruby'program'executing

name::
* McsEngl.ruby'program'executing@cptIt,

_DESCRIPTION:
Running Ruby

Now that Ruby is installed, you'd probably like to run some programs. Unlike compiled environments, there are two ways to run Ruby---interactively and as a program.
Interactive Ruby

The easiest way to run Ruby interactively is simply to type ``ruby'' at the shell prompt.
% ruby
puts "Hello, world!"
^D
Hello, world!
Here we typed in the single puts expression and an end of file character (which is control-D on our system). This process works, but it's sort of painful if you make a typo, and you can't really see what's going on as you type.
In the sample directory in the Ruby distribution you'll find a script named ``eval.rb''. It goes one step better by showing us the value of each expression as it is entered:
% cd sample
% ruby eval.rb
ruby> a = "Hello, world!"
"Hello, world!"
ruby> puts a
Hello, world!
nil
ruby> ^D
%
Here we can see the output from puts, and then the return value from puts (which is nil).
That's all fine and well, except that multiline expressions do not work, and you can't edit the line you're on, or go back and use previous lines (as you might with command history in a shell).
For the next step up from eval.rb, we have irb---Interactive Ruby. irb is a Ruby Shell, complete with command-line history, line editing capabilities, and job control. It is quite configurable and has many options, so much so that it has its own appendix beginning on page 517. We recommend that you get familiar with irb so you can try some of our examples interactively.
Ruby Programs

Finally, you can run a Ruby program from a file as you would any other shell script, Perl program, or Python program. You can simply run Ruby giving the script name as an argument:
% ruby myprog.rb
Or you can use the Unix ``shebang'' notation as the first line of the program file.[If your system supports it, you can avoid hard-coding the path to Ruby in the shebang line by using#!/usr/bin/env ruby, which will search your path for ruby and then execute it.]
#!/usr/local/bin/ruby -w

puts "Hello, World!"
If you make this source file executable (using, for instance, chmod +x myprog.rb), Unix lets you run the file as a program:
% ./myprog.rb
Hello, World!
You can do something similar under Microsoft Windows using file associations.
[http://ruby-doc.com/docs/ProgrammingRuby/]

ruby'program.EXAMPLE

name::
* McsEngl.ruby'program.EXAMPLE@cptIt,

_CODE.RUBY:
Now that you've gotten everything setup, let's write a program! Open up your favorite text editor and type in the following:
puts 1+2
Save your program (yes, that's a program!) as calc.rb (the .rb is what we usually put at the end of programs written in Ruby). Now run your program by typing ruby calc.rb into your command line. It should have put a 3 on your screen.
[http://pine.fm/LearnToProgram/?Chapter=01]

ruby'code.VARIABLE

name::
* McsEngl.ruby'code.VARIABLE@cptIt,
* McsEngl.ruby'variable@cptIt,

_DESCRIPTION:
To store the string in your computer's memory, we need to give the string a name. Programmers often refer to this process as assignment, and they call the names variables. This variable can be just about any sequence of letters and numbers, but the first character needs to be a lowercase letter.
[http://pine.fm/LearnToProgram/?Chapter=03]

_CODE.RUBY:
myString = '...you can say that again...'
composer = 'Mozart'

ruby'resource

name::
* McsEngl.ruby'resource@cptIt,

_ADDRESS.WPG:
* http://pine.fm/LearnToProgram//
* http://ruby-doc.com/docs/ProgrammingRuby//
* http://www.rubyist.net/~slagell/ruby//
* http://www.ruby-lang.org/en//

lcp.instance.LUA {1993}

_CREATED: {2012-02-02}

name::
* McsEngl.conceptIt96,
* McsEngl.lua@cptIt96,
* McsEngl.lua-lang@cptIt96,
* McsEngl.lua scripting language,
* McsEngl.lua-scripting@cptIt96, {2012-08-22}
* McsEngl.pl.lua, {2014-01-29}
* McsEngl.programing-language.LUA,

lua'DEFINITION

_DESCRIPTION:
Lua is a powerful, fast, lightweight, embeddable scripting language.
[http://www.lua.org/about.html]
===
Lua ( /'lu??/ loo-?; from Portuguese: lua meaning "moon") is a lightweight multi-paradigm programming language designed as a scripting language with extensible semantics as a primary goal. Lua is cross-platform since it is written in ISO C[vague]. Lua has a relatively simple C API compared to other scripting languages.
[http://en.wikipedia.org/wiki/Lua_(programming_language)]

lua'GENERIC

_GENERIC:
* scripting-language#cptItsoft512#

lua'ATTRIBUTE

name::
* McsEngl.lua'ATTRIBUTE@cptIt,

lua'Advantage

name::
* McsEngl.lua'Advantage@cptIt,

Lua is a powerful language that can express solutions to problems in a variety of domains. Yet Python, Ruby and Perl are also quite powerful in their way. Lua's primary advantage over other languages is its compact, efficient size. This size, and the ease of integrating and extending Lua into a particular programming problem is the reason Lua is worthy of examination.
[http://onlamp.com/lpt/a/6467]

lua'Case-sensitivity

name::
* McsEngl.lua'Case-sensitivity@cptIt,

Lua is a case-sensitive language: and is a reserved word, but And and AND are two different, valid names. As a convention, names starting with an underscore followed by uppercase letters (such as _VERSION) are reserved for variables used by Lua.
[http://www.lua.org/manual/5.2/manual.html#h5o-13]

lua'Embdddability

name::
* McsEngl.lua'Embdddability@cptIt,

Lua is embeddable

Lua is a fast language engine with small footprint that you can embed easily into your application. Lua has a simple and well documented API that allows strong integration with code written in other languages. It is easy to extend Lua with libraries written in other languages. It is also easy to extend programs written in other languages with Lua. Lua has been used to extend programs written not only in C and C++, but also in Java, C#, Smalltalk, Fortran, Ada, Erlang, and even in other scripting languages, such as Perl and Ruby.
[http://www.lua.org/about.html]

lua'Inheritance

name::
* McsEngl.lua'Inheritance@cptIt,

Lua, for instance, does not contain explicit support for inheritance, but allows it to be implemented relatively easily with metatables.
[http://en.wikipedia.org/wiki/Lua_(programming_language)]

lua'Keyword

name::
* McsEngl.lua'Keyword@cptIt,

The following keywords are reserved and cannot be used as names:
and break do else elseif end
false for function goto if in
local nil not or repeat return
then true until while
[http://www.lua.org/manual/5.2/manual.html#h5o-13]

lua'Licence

name::
* McsEngl.lua'Licence@cptIt,

1.6 – Is Lua compatible with GPL software?

Yes. Up until Lua 4.0, the license was perhaps a bit unclear about this. Since Lua 5.0, Lua is distributed under the terms of the very liberal and well-known MIT license, which is compatible with GPL and is approved by the Open Source Initiative. Read the details in the license page.
[http://www.lua.org/faq.html]

lua'Application

name::
* McsEngl.lua'Application@cptIt,

_PART:
* endUser-code,
* program#ql:lua'program#,
===
* data-code#ql:lua'data#,
* processing-code,
* mixed-code,

lua'API

name::
* McsEngl.lua'API@cptIt,

This section describes the C API for Lua, that is, the set of C functions available to the host program to communicate with Lua. All API functions and related types and constants are declared in the header file lua.h.

Even when we use the term "function", any facility in the API may be provided as a macro instead. Except where stated otherwise, all such macros use each of their arguments exactly once (except for the first argument, which is always a Lua state), and so do not generate any hidden side-effects.

As in most C libraries, the Lua API functions do not check their arguments for validity or consistency. However, you can change this behavior by compiling Lua with the macro LUA_USE_APICHECK defined.
[http://www.lua.org/manual/5.2/manual.html#h5o-35]

lua'Constant

name::
* McsEngl.lua'Constant@cptIt,

lua'Data

name::
* McsEngl.lua'Data@cptIt,

_WHOLE:
* lua-app,

_SPECIFIC:
* endUser-data,
* programer-data,

lua'data.Number

name::
* McsEngl.lua'data.Number@cptIt,
* McsEngl.lua'number@cptIt,

_GENERIC:
* lua-codeType#ql:lua'type#

Number represents real (double-precision floating-point) numbers. Operations on numbers follow the same rules of the underlying C implementation, which, in turn, usually follows the IEEE 754 standard. (It is easy to build Lua interpreters that use other internal representations for numbers, such as single-precision floats or long integers; see file luaconf.h.)
[http://www.lua.org/manual/5.2/manual.html#h5o-4]

lua'NaN

name::
* McsEngl.lua'NaN@cptIt,

NaN (Not a Number, a special numeric value used to represent undefined or unrepresentable results, such as 0/0).
[http://www.lua.org/manual/5.2/manual.html#h5o-4]

lua'data.Programer

name::
* McsEngl.lua'data.Programer@cptIt,

Lua is a dynamically typed language intended for use as an extension or scripting language, and is compact enough to fit on a variety of host platforms. It supports only a small number of atomic data structures such as boolean values, numbers (double-precision floating point by default), and strings. Typical data structures such as arrays, sets, lists, and records can be represented using Lua’s single native data structure, the table, which is essentially a heterogeneous associative array.
[http://en.wikipedia.org/wiki/Lua_(programming_language)]

lua'data.String

name::
* McsEngl.lua'data.String@cptIt,
* McsEngl.lua'string@cptIt,

_GENERIC:
* lua-codeType#ql:lua'type#

_DESCRIPTION:
String represents immutable sequences of bytes. Lua is 8-bit clean: strings can contain any 8-bit value, including embedded zeros ('\0').
[http://www.lua.org/manual/5.2/manual.html#h5o-4]
===
-- Example 8 -- Strings.
a="single 'quoted' string and double \"quoted\" string inside"
b='single \'quoted\' string and double "quoted" string inside'
c= [[ multiple line
with 'single'
and "double" quoted strings inside.]]

print(a)
print(b)
print(c)


-------- Output ------

single 'quoted' string and double "quoted" string inside
single 'quoted' string and double "quoted" string inside
multiple line
with 'single'
and "double" quoted strings inside.
[lfw intro]

lua'string'resource:
* http://lua-users.org/wiki/LuaUnicode,

lua'Documentation

name::
* McsEngl.lua'Documentation@cptIt,

_WHOLE:
* lua-program#ql:lua'program#

_one_line_comment:
-- hello.lua
-- the first program in every language

lua'EndUser-code

name::
* McsEngl.lua'EndUser-code@cptIt,

_WHOLE:
* lua-app#ql:lua'application#

lua'EVOLUTION#cptCore546.171#

name::
* McsEngl.lua'EVOLUTION@cptIt,

{time.2011}:
Lua 5.2 has been released, December 16, 2011

{time.2000}:
Lua 4.0, released in November 2000.

{time.1993}:
Lua was created in 1993 by Roberto Ierusalimschy, Luiz Henrique de Figueiredo, and Waldemar Celes, members of the Computer Graphics Technology Group (Tecgraf) at the Pontifical Catholic University of Rio de Janeiro, in Brazil.
[http://en.wikipedia.org/wiki/Lua_(programming_language)]

lua'Function

name::
* McsEngl.lua'Function@cptIt,
* McsEngl.lua'fn@cptIt,

_GENERIC:
* lua-object#ql:lua'object#,
* lua-codeType#ql:lua'type#

_DESCRIPTION:
Lua can call (and manipulate) functions written in Lua and functions written in C (see §3.4.9).
[http://www.lua.org/manual/5.2/manual.html#h5o-4]
===
> x = function() print("hello") end
> x()
hello
> print(x)
function: 0035EA20
[http://lua-users.org/wiki/LuaTypesTutorial]

SPECIFIC

lua'fn.example

name::
* McsEngl.lua'fn.example@cptIt,

function sayhello(person)
print("Hello "..person)
end

lua'fn.library

name::
* McsEngl.lua'fn.library@cptIt,
* McsEngl.lua'library@cptIt,

lua'fn.library.Auxiliary

name::
* McsEngl.lua'fn.library.Auxiliary@cptIt,

_SPECIFIC:
auxiliary library

luaL_Buffer
luaL_Reg
luaL_addchar
luaL_addlstring
luaL_addsize
luaL_addstring
luaL_addvalue
luaL_argcheck
luaL_argerror
luaL_buffinit
luaL_buffinitsize
luaL_callmeta
luaL_checkany
luaL_checkinteger
luaL_checkint
luaL_checklong
luaL_checklstring
luaL_checknumber
luaL_checkoption
luaL_checkstack
luaL_checkstring
luaL_checktype
luaL_checkudata
luaL_checkunsigned
luaL_checkversion
luaL_dofile
luaL_dostring
luaL_error
luaL_execresult
luaL_fileresult
luaL_getmetafield
luaL_getmetatable
luaL_getsubtable
luaL_gsub
luaL_len
luaL_loadbuffer
luaL_loadbufferx
luaL_loadfile
luaL_loadfilex
luaL_loadstring
luaL_newlib
luaL_newlibtable
luaL_newmetatable
luaL_newstate
luaL_openlibs
luaL_optinteger
luaL_optint
luaL_optlong
luaL_optlstring
luaL_optnumber
luaL_optstring
luaL_optunsigned
luaL_prepbuffer
luaL_prepbuffsize
luaL_pushresult
luaL_pushresultsize
luaL_ref
luaL_requiref
luaL_setfuncs
luaL_setmetatable
luaL_testudata
luaL_tolstring
luaL_traceback
luaL_typename
luaL_unref
luaL_where

lua'fn.library.Basic

name::
* McsEngl.lua'fn.library.Basic@cptIt,
* McsEngl.lua'basic-library@cptIt,

The basic library provides core functions to Lua. If you do not include this library in your application, you should check carefully whether you need to provide implementations for some of its facilities.
[http://www.lua.org/manual/5.2/manual.html#h5o-234]

_SPECIFIC:
_G
_VERSION
assert
collectgarbage
dofile
error
getmetatable
ipairs
loadfile
load
next
pairs
pcall
print
rawequal
rawget
rawlen
rawset
require
select
setmetatable
tonumber
tostring
type
xpcall

lua'fn.library.Bitwise

name::
* McsEngl.lua'fn.library.Bitwise@cptIt,
* McsEngl.lua'bitwise-library@cptIt,

_SPECIFIC:
bit32.arshift
bit32.band
bit32.bnot
bit32.bor
bit32.btest
bit32.bxor
bit32.extract
bit32.lrotate
bit32.lshift
bit32.replace
bit32.rrotate
bit32.rshift

lua'fn.library.IO

name::
* McsEngl.lua'fn.library.IO@cptIt,
* McsEngl.lua'io-library@cptIt,

_SPECIFIC:
file:close
file:flush
file:lines
file:read
file:seek
file:setvbuf
file:write
io.close
io.flush
io.input
io.lines
io.open
io.output
io.popen
io.read
io.stderr
io.stdin
io.stdout
io.tmpfile
io.type
io.write

lua'fn.library.Math

name::
* McsEngl.lua'fn.library.Math@cptIt,
* McsEngl.lua'math-library@cptIt,

This library is an interface to the standard C math library. It provides all its functions inside the table math.
[http://www.lua.org/manual/5.2/manual.html#h5o-303]

_SPECIFIC:
math.abs
math.acos
math.asin
math.atan
math.atan2
math.ceil
math.cos
math.cosh
math.deg
math.exp
math.floor
math.fmod
math.frexp
math.huge
math.ldexp
math.log
math.max
math.min
math.modf
math.pi
math.pow
math.rad
math.random
math.randomseed
math.sin
math.sinh
math.sqrt
math.tan
math.tanh

lua'fn.library.Operating-system

name::
* McsEngl.lua'fn.library.Operating-system@cptIt,
* McsEngl.lua'os-library@cptIt,

_SPECIFIC:
os.clock
os.date
os.difftime
os.execute
os.exit
os.getenv
os.remove
os.rename
os.setlocale
os.time
os.tmpname

lua'fn.library.Standard

name::
* McsEngl.lua'fn.library.Standard@cptIt,
* McsEngl.lua'standard-library@cptIt,

All libraries are implemented through the official C API and are provided as separate C modules. Currently, Lua has the following standard libraries:

basic library (§6.1);
coroutine library (§6.2);
package library (§6.3);
string manipulation (§6.4);
table manipulation (§6.5);
mathematical functions (§6.6) (sin, log, etc.);
bitwise operations (§6.7);
input and output (§6.8);
operating system facilities (§6.9);
debug facilities (§6.10).
[http://www.lua.org/manual/5.2/manual.html#h5o-233]

lua'fn.library.String#rrl5#

name::
* McsEngl.lua'fn.library.String@cptIt,
* McsEngl.lua'string-library@cptIt,

_SPECIFIC:
string.byte
string.char
string.dump
string.find
string.format
string.gmatch
string.gsub
string.len
string.lower
string.match
string.rep
string.reverse
string.sub
string.upper

lua'fn.library.Table#rrl5#

name::
* McsEngl.lua'fn.library.Table@cptIt,
* McsEngl.lua'table-library@cptIt,

_SPECIFIC:
table.concat
table.insert
table.pack
table.remove
table.sort
table.unpack

lua'fn.print

name::
* McsEngl.lua'fn.print@cptIt,
* McsEngl.lua'print-function@cptIt,

lua'fn.type

name::
* McsEngl.lua'fn.type@cptIt,
* McsEngl.lua'type-function@cptIt,

The library function type returns a string describing the type of a given value (see §6.1).
[http://www.lua.org/manual/5.2/manual.html#h5o-4]

lua'Human

name::
* McsEngl.lua'Human@cptIt,

Lua was created in 1993 by
- Roberto Ierusalimschy,
- Luiz Henrique de Figueiredo, and
- Waldemar Celes, members of the Computer Graphics Technology Group (Tecgraf) at the Pontifical Catholic University of Rio de Janeiro, in Brazil.
[http://en.wikipedia.org/wiki/Lua_(programming_language)]

lua'Namespace

name::
* McsEngl.lua'Namespace@cptIt,
* McsEngl.lua'module@cptIt,
* McsEngl.lua'package@cptIt,

_DESCRIPTION:
15 – Packages

Many languages provide mechanisms to organize their space of global names, such as modules in Modula, packages in Java and Perl, or namespaces in C++. Each of these mechanisms has different rules regarding the use of elements declared inside a package, visibility, and other details. Nevertheless, all of them provide a basic mechanism to avoid collision among names defined in different libraries. Each library creates its own namespace and names defined inside this namespace do not interfere with names in other namespaces.

Lua does not provide any explicit mechanism for packages. However, we can implement them easily with the basic mechanisms that the language provides. The main idea is to represent each package by a table, as the basic libraries do.

An obvious benefit of using tables to implement packages is that we can manipulate packages like any other table and use the whole power of Lua to create extra facilities. In most languages, packages are not first-class values (that is, they cannot be stored in variables, passed as arguments to functions, etc.), so these languages need special mechanisms for each extra trick you may do with a package.

In Lua, although we always represent packages as tables, there are several different methods to write a package. In this chapter, we cover some of these methods.
[http://www.lua.org/pil/15.html]

lua'ns'Creating

name::
* McsEngl.lua'ns'Creating@cptIt,

Modules can be easily created by creating a file a.lua with the following content:

module(..., package.seeall);

function foo() print("Hello World!") end
The special table package will be explained later.

Now to use this new module just do:

> require "a"
> a.foo()
Hello World!
[http://lua-users.org/wiki/ModulesTutorial]

lua'Program

name::
* McsEngl.lua'Program@cptIt,

_WHOLE:
* lua-app,

_DESCRIPTION:
Being an extension language, Lua has no notion of a "main" program: it only works embedded in a host client, called the embedding program or simply the host. The host program can invoke functions to execute a piece of Lua code, can write and read Lua variables, and can register C functions to be called by Lua code. Through the use of C functions, Lua can be augmented to cope with a wide range of different domains, thus creating customized programming languages sharing a syntactical framework. The Lua distribution includes a sample host program called lua, which uses the Lua library to offer a complete, standalone Lua interpreter, for interactive or batch use
[http://www.lua.org/manual/5.2/manual.html#h5o-1]

_PART:
* doc#ql:lua'documentation#,
* programer-code,
===
* keyword,
* name,
* token,
* type,

lua'Block

name::
* McsEngl.lua'Block@cptIt,

lua'Expression

name::
* McsEngl.lua'Expression@cptIt,

lua'Name

name::
* McsEngl.lua'Name@cptIt,
* McsEngl.lua'identifier@cptIt,

Names (also called identifiers) in Lua can be any string of letters, digits, and underscores, not beginning with a digit. Identifiers are used to name variables, table fields, and labels.

The following keywords are reserved and cannot be used as names:
and break do else elseif end
false for function goto if in
local nil not or repeat return
then true until while
Lua is a case-sensitive language: and is a reserved word, but And and AND are two different, valid names. As a convention, names starting with an underscore followed by uppercase letters (such as _VERSION) are reserved for variables used by Lua.
[http://www.lua.org/manual/5.2/manual.html#h5o-13]

lua'Statement

name::
* McsEngl.lua'Statement@cptIt,

Lua supports an almost conventional set of statements, similar to those in Pascal or C. This set includes assignments, control structures, function calls, and variable declarations.
[http://www.lua.org/manual/5.2/manual.html#h5o-15]

lua'Token

name::
* McsEngl.lua'Token@cptIt,

The following strings denote other tokens:
+ - * / % ^#
== ~= <= >= < > =
( ) { } [ ] ::
; : , . .. ...
[http://www.lua.org/manual/5.2/manual.html#h5o-13]

lua'program.Host

name::
* McsEngl.lua'program.Host@cptIt,
* McsEngl.lua'host@cptIt,

Being an extension language, Lua has no notion of a "main" program: it only works embedded in a host client, called the embedding program or simply the host. The host program can invoke functions to execute a piece of Lua code, can write and read Lua variables, and can register C functions to be called by Lua code. Through the use of C functions, Lua can be augmented to cope with a wide range of different domains, thus creating customized programming languages sharing a syntactical framework. The Lua distribution includes a sample host program called lua, which uses the Lua library to offer a complete, standalone Lua interpreter, for interactive or batch use.
[http://www.lua.org/manual/5.2/manual.html#h5o-2]

lua'Processing-code

name::
* McsEngl.lua'Processing-code@cptIt,
* McsEngl.lua'example@cptIt,

_ADDRESS.WPG:
* http://lua-users.org/wiki/SampleCode,

lua'Programer-code

name::
* McsEngl.lua'Programer-code@cptIt,

_WHOLE:
* lua-program#ql:lua'program#

lua'Resource

name::
* McsEngl.lua'Resource@cptIt,

_SPECIFIC:
* http://www.lua.org//
* http://www.lua.org/demo.html#ql:http://www.lua.org/demo.html#,
* http://lua-users.org//
* http://www.lua.org/papers.html,
* http://en.wikipedia.org/wiki/Lua_(programming_language),
* http://www.eluaproject.net//
* http://www.lua.org/manual/5.2//
* https://www.mediawiki.org/wiki/Lua/Resources,
* faq: http://www.lua.org/faq.html,
===
* http://lua-users.org/wiki/ObjectOrientedProgramming,
* Introducing Lua by Keith Fieldhouse 02/16/2006
- http://onlamp.com/pub/a/onlamp/2006/02/16/introducing-lua.html,
* http://phrogz.net/lua/LearningLua_FromJS.html,

lua'book:
* Programming in Lua
by Roberto Ierusalimschy
Lua.org, December 2003
ISBN 85-903798-1-7
- http://www.lua.org/pil//

lua'mailing_list:
* http://www.lua.org/lua-l.html,

lua'Table

name::
* McsEngl.lua'Table@cptIt,

_GENERIC:
* lua-object#ql:lua'object#,
* lua-codeType#ql:lua'type#

The only built-in data structure in Lua is the table. Perl programmers will recognize this as a hash; Python programmers will no doubt see a dictionary.
[http://onlamp.com/lpt/a/6467]

lua'table'Function

name::
* McsEngl.lua'table'Function@cptIt,

A = {}

function A:add(x,y)
return x+y
end

print( A:add(1,5) )
[http://lua-users.org/wiki/ClassesAndMethods]

lua'table'Key

name::
* McsEngl.lua'table'Key@cptIt,
* McsEngl.lua'table'field@cptIt,

Any key with value nil is not considered part of the table.
...
Lua uses the field name as an index. The language supports this representation by providing a.name as syntactic sugar for a["name"]. There are several convenient ways to create tables in Lua (see §3.4.8).
[http://www.lua.org/manual/5.2/manual.html#h5o-4]

The following two forms of accessing the table are equivalent when the table keys are strings:
t3["Name"] = "Keith"
t3.Name = "Keith"
[http://onlamp.com/lpt/a/6467]

> y = { const={ name="Pi", value=3.1415927 }, const2={ name="light speed", value=3e8 } }
> print(y.const.name)
Pi
[http://lua-users.org/wiki/LuaTypesTutorial]

lua'table'Value

name::
* McsEngl.lua'table'Value@cptIt,

SPECIFIC

lua'table.Example

name::
* McsEngl.lua'table.Example@cptIt,

Here are some examples of table usage in Lua:

a = {} -- Initializes an empty table
a[1] = "Fred" -- Assigns "Fred" to the entry indexed by the number 1
a["1"] = 7 -- Assigns the number 7 to the entry indexed by the string "1"
[http://onlamp.com/lpt/a/6467]

> t = { 11, 22, 33, you='one', me='two' }
> table.foreach(t,print)
1 11
2 22
3 33
me two
you one
>
> = t[2]
22
> = t.me
two
> = t.fred
nil
[http://lua-users.org/wiki/LuaClassesWithMetatable]

lua'table.Metatable

name::
* McsEngl.lua'table.Metatable@cptIt,

Every value in Lua can have a metatable. This metatable is an ordinary Lua table that defines the behavior of the original value under certain special operations. You can change several aspects of the behavior of operations over a value by setting specific fields in its metatable. For instance, when a non-numeric value is the operand of an addition, Lua checks for a function in the field "__add" of the value's metatable. If it finds one, Lua calls this function to perform the addition.
[http://www.lua.org/manual/5.2/manual.html#h5o-7]

lua'table.Sequence

name::
* McsEngl.lua'table.Sequence@cptIt,

We use the term sequence to denote a table where the set of all positive numeric keys is equal to {1..n} for some integer n, which is called the length of the sequence (see §3.4.6).
[http://www.lua.org/manual/5.2/manual.html#h5o-4]

lua'tool

name::
* McsEngl.lua'tool@cptIt,

_ADDRESS.WPG:
* luaparse: A Lua parser written in JavaScript, for my bachelor's thesis at Arcada.
http://oxyc.github.io/luaparse//

lua'Translation

name::
* McsEngl.lua'Translation@cptIt,
* McsEngl.lua'implementation@cptIt,

_DESCRIPTION:
In general, Lua strives to provide flexible meta-features that can be extended as needed, rather than supply a feature-set specific to one programming paradigm. As a result, the base language is light – in fact, the full reference interpreter is only about 150 kB compiled[4] – and easily adaptable to a broad range of applications.
[http://en.wikipedia.org/wiki/Lua_(programming_language)]

lua'Interpreter

name::
* McsEngl.lua'Interpreter@cptIt,

Despite the small size of the Lua interpreter, the language itself is quite rich.
[http://onlamp.com/lpt/a/6467]

lua'interpreter.JS

name::
* McsEngl.lua'interpreter.JS@cptIt,

_ADDRESS.WPG:
* http://syntensity.com/static/lua.html,

lua'Type

name::
* McsEngl.lua'Type@cptIt,
* McsEngl.lua'codeType@cptIt,
* McsEngl.lua'type-of-value@cptIt,

_WHOLE:
* lua-program#ql:lua'program#

_SPECIFIC:
* nil,
* boolean,
* number#ql:lua'number#,
* string#ql:lua'string#,
* function#ql:lua'function#,
* userdata#ql:lua'userdata_type#,
* thread,
* table#ql:lua'table#.
===
There are eight basic types in Lua: nil, boolean, number, string, function, userdata, thread, and table.
[http://www.lua.org/manual/5.2/manual.html]

lua'type'Quering

name::
* McsEngl.lua'type'Quering@cptIt,

Querying type

As Lua is a reflective language, we can use the Lua function type() to get a description of the type of a particular object.

> x = "123" -- a string
> print(x, type(x)) -- show the value of x and its type
123 string
> x = x + 7 -- add a number to the string which forces coercion
> print(x, type(x)) -- again show the value and type
130 number
[http://lua-users.org/wiki/LuaTypesTutorial]

SPECIFIC

lua'boolean-type

name::
* McsEngl.lua'boolean-type@cptIt,

Boolean is the type of the values false and true. Both nil and false make a condition false; any other value makes it true.
[http://www.lua.org/manual/5.2/manual.html]
any expression that does not evaluate to nil is true.
[http://onlamp.com/lpt/a/6467]

nil and false are the only Non-Truth Values
In JavaScript, "" and 0 equate as false when used in conditionals. In Lua, only nil and false evaluate as false.
[http://phrogz.net/lua/LearningLua_FromJS.html]

lua'nil-type

name::
* McsEngl.lua'nil-type@cptIt,

Nil is the type of the value nil, whose main property is to be different from any other value; it usually represents the absence of a useful value.
[http://www.lua.org/manual/5.2/manual.html]

lua'object

name::
* McsEngl.lua'object@cptIt,

_DESCRIPTION:
Tables, functions, threads, and (full) userdata values are objects: variables do not actually contain these values, only references to them. Assignment, parameter passing, and function returns always manipulate references to such values; these operations do not imply any kind of copy.
[http://www.lua.org/manual/5.2/manual.html]

_SPECIFIC:
* full-userdata#ql:lua'userdata_type#,
* function#ql:lua'function#,
* table#ql:lua'table#,
* thread,

lua'object'member

name::
* McsEngl.lua'object'member@cptIt,

Any Value is a Table Key

In JavaScript, the key values for objects are always strings. (In JS, myObj[11] is the same as myObj["11"].) In Lua, strings, numbers, and even tables are all distinct keys:

a = {}
b = {}
mytable = {}
mytable[1] = "The number one"
mytable["1"] = "The string one"
mytable[a] = "The empty table 'a'"
mytable[b] = "The empty table 'b'"

print( mytable["1"] ) --> The string one
print( mytable[1] ) --> The number one
print( mytable[b] ) --> The empty table 'b'
print( mytable[a] ) --> The empty table 'a'
[http://phrogz.net/lua/LearningLua_FromJS.html]

lua'object.Array

name::
* McsEngl.lua'object.Array@cptIt,
* McsEngl.lua'array@cptIt,

There is no Array

In JS, there is an explicit Array class of objects. It's a basic Object (hash) that modifies a special length property when you set values that look like integers, and that also has special methods defined for it.

var myArray = new Array( 10 );
var myOtherArray = [ 1, 2, 3 ];
In Lua, tables are objects. Tables are prototypes. Tables are hashes. Tables are arrays. Tables tables tables.

An 'array' in Lua is a table that has integer properties that start at 1 (not 0!) and which are consecutively numbered, up to the first nil value. Table literals can be used to create arrays, by not specifying the key for each value:

people = { "Gavin", "Stephen", "Harold" }
-- the above is the exact same as:
people = { [1]="Gavin", [2]="Stephen", [3]="Harold" }
The table library has two methods for getting and setting the 'size' of a table-used-as-array directly, allowing you to have an 'array' with nil elements inside of it:

people = { "Gavin", "Stephen", "Harold" }
print( table.getn( people ) ) --> 3

people[ 10 ] = "Some Dude"
print( table.getn( people ) ) --> 3
print( people[ 10 ] ) --> "Some Dude"
for i=1,table.getn( people ) do
print( people[ i ] )
end
--> Gavin
--> Stephen
--> Harold

table.setn( people, 10 )
print( table.getn( people ) ) --> 10

for i=1,table.getn( people ) do
print( people[ i ] )
end
--> Gavin
--> Stephen
--> Harold
--> nil
--> nil
--> nil
--> nil
--> nil
--> Some Dude
[http://phrogz.net/lua/LearningLua_FromJS.html]

lua'thread-type

name::
* McsEngl.lua'thread-type@cptIt,

_GENERIC:
* lua-object#ql:lua'object#

The type thread represents independent threads of execution and it is used to implement coroutines (see §2.6). Do not confuse Lua threads with operating-system threads. Lua supports coroutines on all systems, even those that do not support threads.
[http://www.lua.org/manual/5.2/manual.html]

lua'userdata-type

name::
* McsEngl.lua'userdata-type@cptIt,

_GENERIC:
* lua-object#ql:lua'object#

The type userdata is provided to allow arbitrary C data to be stored in Lua variables. A userdata value is a pointer to a block of raw memory. There are two kinds of userdata: full userdata, where the block of memory is managed by Lua, and light userdata, where the block of memory is managed by the host. Userdata has no predefined operations in Lua, except assignment and identity test. By using metatables, the programmer can define operations for full userdata values (see §2.4). Userdata values cannot be created or modified in Lua, only through the C API. This guarantees the integrity of data owned by the host program.
[http://www.lua.org/manual/5.2/manual.html]

lua'Value

name::
* McsEngl.lua'Value@cptIt,

Lua is a dynamically typed language. This means that variables do not have types; only values do. There are no type definitions in the language. All values carry their own type.
All values in Lua are first-class values. This means that all values can be stored in variables, passed as arguments to other functions, and returned as results.
[http://www.lua.org/manual/5.2/manual.html]

lua'value'metatable,

_SPECIFIC:
* NaN,
* nil,

lua'Variable

name::
* McsEngl.lua'Variable@cptIt,
* McsEngl.lua'vr@cptIt96i,

_DESCRIPTION:
Variables are places that store values. There are three kinds of variables in Lua: global variables, local variables, and table fields.
[http://www.lua.org/manual/5.2/manual.html#h5o-14]
===
Variables hold values which have types, variables don't have types.
[lfw intro]

lua'variable'name

name::
* McsEngl.lua'variable'name@cptIt,

-- Variable names consist of letters, digits and underscores.
-- They cannot start with a digit.

one_two_3 = 123 -- is valid varable name

-- 1_two_3 is not a valid variable name.
[lfw intro]

lua'variable.local

name::
* McsEngl.lua'variable.local@cptIt,
* McsEngl.lua'local-keyword@cptIt,

Global Variables by Default

In JS, if you are inside a function and assign a value to a previously-unseen variable, the variable will be local if the var keyword was used, and global otherwise:

function foo( )
{
var jim = "This variable is local to the foo function";
jam = "This variable is in global scope";
}
Similarly in Lua, the local keyword indicates a local variable, while omitting it indicates a global variable:

function foo( )
local jim = "This variable is local to the foo function";
jam = "This variable is in global scope";
end
[http://phrogz.net/lua/LearningLua_FromJS.html]

SPECIFIC

lua.Lua-for-Windows

name::
* McsEngl.lua.Lua-for-Windows@cptIt,
* McsEngl.LfW@cptIt96i,
* McsEngl.LuaForWindows@cptIt96i,

lfw'Resource:
* http://code.google.com/p/luaforwindows//

lfw'PART

name::
* McsEngl.lfw'PART@cptIt,

Installer Lua Interpreter, Lua Reference Manual, Quick Lua Tour Sample, Examples directory, Libraries with documentation. Lua Compiler (luac) Text Editors (SciTE and I think maybe wxLua editors too) C header files/libraries/etc. for building C module
[http://code.google.com/p/luaforwindows/]

lfw'Evolution

name::
* McsEngl.lfw'Evolution@cptIt,

_2011-06-08:
5.1.4-44 08/June/2011 - 30th release
Fixed pl.dir so you can use strict module

_2008-07-09:
5.1.3.12 9/July/2008 - First release

lfw'Installation

name::
* McsEngl.lfw'Installation@cptIt,

Lua for Windows installs Lua language, SciTE based Lua IDE and Lua modules to the directory of you choice at install time. Lua for Windows and it's modules all depend on the MSVC++ 2005 runtime library. Lua for Windows install will automatically download this runtime and install it for you if you don't have runtime installed on your computer. The runtime is contained in the file vcredist_x86.exe, if you don't want this download to occur at installation then place the vcredist_86.exe in same directory as Lua for Windows install exe.
[http://code.google.com/p/luaforwindows/]

DEFINITION

_DESCRIPTION:
Python is a general purpose interpreted, interactive, object-oriented and high-level programming language.
Python was created by Guido van Rossum in the late eighties and early nineties. Like Perl, Python source code is now available under the GNU General Public License (GPL).
[http://www.tutorialspoint.com/python/index.htm]
===
Python is a great object-oriented, interpreted, and interactive programming language. It is often compared (favorably of course ) to Lisp, Tcl, Perl, Ruby, C#, Visual Basic, Visual Fox Pro, Scheme or Java... and it's much more fun.
Python combines remarkable power with very clear syntax. It has modules, classes, exceptions, very high level dynamic data types, and dynamic typing. There are interfaces to many system calls and libraries, as well as to various windowing systems. New built-in modules are easily written in C or C++ (or other languages, depending on the chosen implementation). Python is also usable as an extension language for applications written in other languages that need easy-to-use scripting or automation interfaces.
[http://wiki.python.org/moin/FrontPage]

lpy'GENERIC

_GENERIC:
* scripting-language#cptItsoft512#
* Python is an object-oriented scripting language,

lpy'ATTRIBUTE

name::
* McsEngl.lpy'ATTRIBUTE@cptIt,

Some of Python's notable features:

Uses an elegant syntax, making the programs you write easier to read.
Is an easy-to-use language that makes it simple to get your program working. This makes Python ideal for prototype development and other ad-hoc programming tasks, without compromising maintainability.
Comes with a large standard library that supports many common programming tasks such as connecting to web servers, searching text with regular expressions, reading and modifying files.
Python's interactive mode makes it easy to test short snippets of code. There's also a bundled development environment called IDLE.
Is easily extended by adding new modules implemented in a compiled language such as C or C++.
Can also be embedded into an application to provide a programmable interface.
Runs on many different computers and operating systems: Windows, MacOS, many brands of Unix, OS/2, ...
Is free software in two senses. It doesn't cost anything to download or use Python, or to include it in your application. Python can also be freely modified and re-distributed, because while the language is copyrighted it's available under an open source license.
Some programming-language features of Python are:

A variety of basic data types are available: numbers (floating point, complex, and unlimited-length long integers), strings (both ASCII and Unicode), lists, and dictionaries.
Python supports object-oriented programming with classes and multiple inheritance.
Code can be grouped into modules and packages.
The language supports raising and catching exceptions, resulting in cleaner error handling.
Data types are strongly and dynamically typed. Mixing incompatible types (e.g. attempting to add a string and a number) causes an exception to be raised, so errors are caught sooner.
Python contains advanced programming features such as generators and list comprehensions.
Python's automatic memory management frees you from having to manually allocate and free memory in your code.
[http://wiki.python.org/moin/BeginnersGuide/Overview]

lpy'Compilation

name::
* McsEngl.lpy'Compilation@cptIt,

It can be used as a scripting language or can be compiled to byte-code for building large applications.
[http://wiki.python.org/moin/BeginnersGuide/Overview]

lpy'Memory-management

name::
* McsEngl.lpy'Memory-management@cptIt,

Python's automatic memory management frees you from having to manually allocate and free memory in your code.
[http://wiki.python.org/moin/BeginnersGuide/Overview]

lpy'Programming-method

name::
* McsEngl.lpy'Programming-method@cptIt,

Support for functional and structured programming methods as well as OOP.
[http://www.tutorialspoint.com/python/python_overview.htm]

lpy'Scalability

name::
* McsEngl.lpy'Scalability@cptIt,

Scalable: Python provides a better structure and support for large programs than shell scripting.
[http://www.tutorialspoint.com/python/python_overview.htm]

lpy'archetype

name::
* McsEngl.lpy'archetype@cptIt,
* McsEngl.lpyarchetype@cptIt,

lpy'archetype'DomainIn

name::
* McsEngl.lpy'archetype'DomainIn@cptIt,
* McsEngl.lpy'DomainIn@cptIt,
* McsEngl.lpy'usage@cptIt,

lpy'Object

name::
* McsEngl.lpy'Object@cptIt,

_DESCRIPTION:
2.4.2. What's an Object?
Everything in Python is an object, and almost everything has attributes and methods. All functions have a built-in attribute __doc__, which returns the doc string defined in the function's source code. The sys module is an object which has (among other things) an attribute called path. And so forth.
Still, this begs the question. What is an object?
Different programming languages define “object” in different ways.
In some, it means that all objects must have attributes and methods; in others, it means that all objects are subclassable.
In Python, the definition is looser; some objects have neither attributes nor methods (more on this in Chapter 3), and not all objects are subclassable (more on this in Chapter 5).
But everything is an object in the sense that it can be assigned to a variable or passed as an argument to a function (more in this in Chapter 4).
This is so important that I'm going to repeat it in case you missed it the first few times: everything in Python is an object. Strings are objects. Lists are objects. Functions are objects. Even modules are objects.
[http://www.diveintopython.net/getting_to_know_python/everything_is_an_object.html]
[http://diveintopython.org/getting_to_know_python/everything_is_an_object.html]
===
Without getting technical, an object is the basic Python building block, the ‘lego brick’ with which every program is built. All the elements that we’ve met up until now - integers, strings, lists, functions etc. - they’re all objects. And a class is simply a user-defined object that lets you keep a bunch of closely related things “together”. COMMENT:Not sure about this paragraph - Gerard
[http://effbot.org/pytut/node11-baseline.htm]

lpy'archetype.ALGORITHM

name::
* McsEngl.lpy'archetype.ALGORITHM@cptIt,

_DESCRIPTION:
* pyalgo,

pyalgo'code

name::
* McsEngl.pyalgo'code@cptIt,
* McsEngl.lpy'Processing-code@cptIt,
* McsEngl.lpy'operation@cptIt,

_ATTRIBUTE:
* py-operator#ql:py'operator#

pyalgo.Arithmetic

name::
* McsEngl.pyalgo.Arithmetic@cptIt,

pyalgo.Boolean

name::
* McsEngl.pyalgo.Boolean@cptIt,

pyalgo.Comparison

name::
* McsEngl.pyalgo.Comparison@cptIt,

pyalgo.Shifting

name::
* McsEngl.pyalgo.Shifting@cptIt,

lpy'archetype.COLLECTION

name::
* McsEngl.lpy'archetype.COLLECTION@cptIt,

lpy'archetype.collection.CLASS

name::
* McsEngl.lpy'archetype.collection.CLASS@cptIt,
* McsEngl.lpyclass@cptIt,
* McsEngl.lpy'class@cptIt,
* McsEngl.lpyclass@cptIt, {2014-02-22}

_DESCRIPTION:
Python has been an object-oriented language from day one. Because of this, creating and using classes and objects are downright easy.
[http://www.tutorialspoint.com/python/python_classes_objects.htm]
===
Python supports object-oriented programming with classes and multiple inheritance.
[http://wiki.python.org/moin/BeginnersGuide/Overview]

pyclass'code

name::
* McsEngl.pyclass'code@cptIt,
* McsEngl.lpy'code.CLASS@cptIt,

_SPECIFIC:
* class-statement

pyclass'documentation

name::
* McsEngl.pyclass'documentation@cptIt,

_DESCRIPTION:
The class statement creates a new class definition. The name of the class immediately follows the keyword class followed by a colon as follows:
class ClassName:
'Optional class documentation string'
class_suite

The class has a documentation string which can be access via ClassName.__doc__.
[http://www.tutorialspoint.com/python/python_classes_objects.htm]

pyclass'doing.CREATING

name::
* McsEngl.pyclass'doing.CREATING@cptIt,

_DESCRIPTION:
The class statement creates a new class definition. The name of the class immediately follows the keyword class followed by a colon as follows:

class ClassName:
'Optional class documentation string'
class_suite

The class has a documentation string which can be access via ClassName.__doc__.

The class_suite consists of all the component statements, defining class members, data attributes, and functions.

Example:

Following is the example of a simple Python class:

class Employee:
'Common base class for all employees'
empCount = 0

def __init__(self, name, salary):
self.name = name
self.salary = salary
Employee.empCount += 1

def displayCount(self):
print "Total Employee %d" % Employee.empCount

def displayEmployee(self):
print "Name : ", self.name, ", Salary: ", self.salary
[http://www.tutorialspoint.com/python/python_classes_objects.htm]

pyclass'function

name::
* McsEngl.pyclass'function@cptIt,
* McsEngl.lpyclass'method@cptIt,

pyclass'variable

name::
* McsEngl.pyclass'variable@cptIt,

SPECIFIC

pyclass.INSTANCE

name::
* McsEngl.pyclass.INSTANCE@cptIt,

_DESCRIPTION:
Creating instance objects:
To create instances of a class, you call the class using class name and pass in whatever arguments its __init__ method accepts.

"This would create first object of Employee class"
emp1 = Employee("Zara", 2000)
"This would create second object of Employee class"
emp2 = Employee("Manni", 5000)
[http://www.tutorialspoint.com/python/python_classes_objects.htm]

pyclass.example

name::
* McsEngl.pyclass.example@cptIt,

class Dog:

kind = 'canine' # class variable shared by all instances

def __init__(self, name):
self.name = name # instance variable unique to each instance

>>> d = Dog('Fido')
>>> e = Dog('Buddy')
>>> d.kind # shared by all dogs
'canine'
>>> e.kind # shared by all dogs
'canine'
>>> d.name # unique to d
'Fido'
>>> e.name # unique to e
'Buddy'
[https://docs.python.org/3/tutorial/classes.html#class-and-instance-variables]

lpy'ex.class:
class BankAccount(object):
def __init__(self, initial_balance=0):
self.balance = initial_balance
def deposit(self, amount):
self.balance += amount
def withdraw(self, amount):
self.balance -= amount
def overdrawn(self):
return self.balance < 0
my_account = BankAccount(15)
my_account.withdraw(5)
print my_account.balance

lpy'archetype.collection.DICTIONARY {'e1':1;'e2':2}

name::
* McsEngl.lpy'archetype.collection.DICTIONARY {'e1':1;'e2':2}@cptIt,
* McsEngl.lpy'data.Dictionary@cptIt,
* McsEngl.lpydictionary@cptIt,

_DESCRIPTION:
Python Dictionary:
Python 's dictionaries are hash table type. They work like associative arrays or hashes found in Perl and consist of key-value pairs.

Keys can be almost any Python type, but are usually numbers or strings. Values, on the other hand, can be any arbitrary Python object.

Dictionaries are enclosed by curly braces ( { } ) and values can be assigned and accessed using square braces ( [] ).

Example:

#!/usr/bin/python

dict = {}
dict['one'] = "This is one"
dict[2] = "This is two"

tinydict = {'name': 'john','code':6734, 'dept': 'sales'}


print dict['one']# Prints value for 'one' key
print dict[2]# Prints value for 2 key
print tinydict# Prints complete dictionary
print tinydict.keys()# Prints all the keys
print tinydict.values()# Prints all the values
This will produce following result:

This is one
This is two
{'dept': 'sales', 'code': 6734, 'name': 'john'}
['dept', 'code', 'name']
['sales', 6734, 'john']
Dictionaries have no concept of order among elements. It is incorrect to say that the elements are "out of order"; they are simply unordered.
[http://www.tutorialspoint.com/python/python_variable_types.htm]
===
Dictionaries
These represent finite sets of objects indexed by nearly arbitrary values. The only types of values not acceptable as keys are values containing lists or dictionaries or other mutable types that are compared by value rather than by object identity, the reason being that the efficient implementation of dictionaries requires a key’s hash value to remain constant. Numeric types used for keys obey the normal rules for numeric comparison: if two numbers compare equal (e.g., 1 and 1.0) then they can be used interchangeably to index the same dictionary entry.

Dictionaries are mutable; they can be created by the {...} notation (see section Dictionary displays).
[http://docs.python.org/py3k/reference/datamodel.html]

lpy'archetype.collection.FUNCTION

name::
* McsEngl.lpy'archetype.collection.FUNCTION@cptIt,
* McsEngl.lpy'archetype.algorithm.SUBPROGRAM@cptIt,
* McsEngl.lpy'proc.Function@cptIt,
* McsEngl.lpy'function@cptIt,
* McsEngl.lpyfunction@cptIt,

* McsEngl.lpyf@cptIt, {2015-10-19}

_DESCRIPTION:
A function is a block of organized, reusable code that is used to perform a single, related action. Functions provides better modularity for your application and a high degree of code reusing.
As you already know, Python gives you many built-in functions like print() etc. but you can also create your own functions. These functions are called user-defined functions.
[http://www.tutorialspoint.com/python/python_functions.htm]
===
A function, like everything else in Python, is an object.
[http://diveintopython.org/getting_to_know_python/everything_is_an_object.html]

pyf'doing.Calling

name::
* McsEngl.pyf'doing.Calling@cptIt,

Calling a Function
Defining a function only gives it a name, specifies the parameters that are to be included in the function, and structures the blocks of code.

Once the basic structure of a function is finalized, you can execute it by calling it from another function or directly from the Python prompt.

Following is the example to call printme() function:

#!/usr/bin/python

# Function definition is here
def printme( str ):
"This prints a passed string into this function"
print str;
return;

# Now you can call printme function
printme("I'm first call to user defined function!");
printme("Again second call to the same function");
This would produce following result:

I'm first call to user defined function!
Again second call to the same function
[http://www.tutorialspoint.com/python/python_functions.htm]

pyf'Pass-by-reference

name::
* McsEngl.pyf'Pass-by-reference@cptIt,

All parameters (arguments) in the Python language are passed by reference. It means if you change what a parameter refers to within a function, the change also reflects back in the calling function. For example:

#!/usr/bin/python

# Function definition is here
def changeme( mylist ):
"This changes a passed list into this function"
mylist.append([1,2,3,4]);
print "Values inside the function: ", mylist
return

# Now you can call changeme function
mylist = [10,20,30];
changeme( mylist );
print "Values outside the function: ", mylist
Here we are maintaining reference of the passed object and appending values in the same object. So this would produce following result:

Values inside the function: [10, 20, 30, [1, 2, 3, 4]]
Values outside the function: [10, 20, 30, [1, 2, 3, 4]]

There is one more example where argument is being passed by reference but inside the function, but the reference is being over-written.

#!/usr/bin/python

# Function definition is here
def changeme( mylist ):
"This changes a passed list into this function"
mylist = [1,2,3,4];# This would assig new reference in mylist
print "Values inside the function: ", mylist
return

# Now you can call changeme function
mylist = [10,20,30];
changeme( mylist );
print "Values outside the function: ", mylist
The parameter mylist is local to the function changeme. Changing mylist within the function does not affect mylist. The function accomplishes nothing and finally this would produce following result:

Values inside the function: [1, 2, 3, 4]
Values outside the function: [10, 20, 30]
[http://www.tutorialspoint.com/python/python_functions.htm]

SPECIFIC

pyf.Anonymous

name::
* McsEngl.pyf.Anonymous@cptIt,

The Anonymous Functions:
You can use the lambda keyword to create small anonymous functions. These functions are called anonymous because they are not declared in the standard manner by using the def keyword.

Lambda forms can take any number of arguments but return just one value in the form of an expression. They cannot contain commands or multiple expressions.

An anonymous function cannot be a direct call to print because lambda requires an expression.

Lambda functions have their own local namespace and cannot access variables other than those in their parameter list and those in the global namespace.

Although it appears that lambda's are a one-line version of a function, they are not equivalent to inline statements in C or C++, whose purpose is by passing function stack allocation during invocation for performance reasons.

Syntax:

The syntax of lambda functions contains only a single statement, which is as follows:

lambda [arg1 [,arg2,.....argn]]:expression
Example:

Following is the example to show how lembda form of function works:

#!/usr/bin/python

# Function definition is here
sum = lambda arg1, arg2: arg1 + arg2;



# Now you can call sum as a function
print "Value of total : ", sum( 10, 20 )
print "Value of total : ", sum( 20, 20 )
This would produce following result:

Value of total : 30
Value of total : 40
[http://www.tutorialspoint.com/python/python_functions.htm]

pyf.BUILTIN

name::
* McsEngl.pyf.BUILTIN@cptIt,

_DESCRIPTION:
The Python interpreter has a number of functions and types built into it that are always available. They are listed here in alphabetical order.
Built-in Functions
__import__()
abs()
all()
any()
ascii()
bin()
bool()
bytearray()
bytes()
callable()
chr()
classmethod()
compile()
complex()
delattr()
dict()
dir()
divmod()
enumerate()
eval()
exec()
filter()
float()
format()
frozenset()
getattr()
globals()
hasattr()
hash()
help()
hex()
id()
input()
int()
isinstance()
issubclass()
iter()
len()
list()
locals()
map()
max()
memoryview()
min()
next()
object()
oct()
open()
ord()
pow()
print()
property()
range()
repr()
reversed()
round()
set()
setattr()
slice()
sorted()
staticmethod()
str()
sum()
super()
tuple()
type()
vars()
zip()
[http://docs.python.org/3/library/functions.html]

pyf.BUILTIN.NO

name::
* McsEngl.pyf.BUILTIN.NO@cptIt,
* McsEngl.lpyfunction.User-defined@cptIt,

lpy'function'defining

name::
* McsEngl.lpy'function'defining@cptIt,

Defining a Function
You can define functions to provide the required functionality. Here are simple rules to define a function in Python:

Function blocks begin with the keyword def followed by the function name and parentheses ( ( ) ).

Any input parameters or arguments should be placed within these parentheses. You can also define parameters inside these parentheses.

The first statement of a function can be an optional statement - the documentation string of the function or docstring.

The code block within every function starts with a colon (:) and is indented.

The statement return [expression] exits a function, optionally passing back an expression to the caller. A return statement with no arguments is the same as return None.

Syntax:

def functionname( parameters ):
"function_docstring"
function_suite
return [expression]
By default, parameters have a positional behavior, and you need to inform them in the same order that they were defined.

Example:

Here is the simplest form of a Python function. This function takes a string as input parameter and prints it on standard screen.

def printme( str ):
"This prints a passed string into this function"
print str
return
[http://www.tutorialspoint.com/python/python_functions.htm]

pyfunction.GENERATOR

name::
* McsEngl.pyfunction.GENERATOR@cptIt,

_DESCRIPTION:
generator
A function which returns an iterator. It looks like a normal function except that it contains yield statements for producing a series a values usable in a for-loop or that can be retrieved one at a time with the next() function. Each yield temporarily suspends processing, remembering the location execution state (including local variables and pending try-statements). When the generator resumes, it picks-up where it left-off (in contrast to functions which start fresh on every invocation).
generator expression
An expression that returns an iterator. It looks like a normal expression followed by a for expression defining a loop variable, range, and an optional if expression. The combined expression generates values for an enclosing function:
>>>
>>> sum(i*i for i in range(10)) # sum of squares 0, 1, 4, ... 81
285
[http://docs.python.org/3/glossary.html#term-generator]

lpy'archetype.collection.LIST [1;2]

name::
* McsEngl.lpy'archetype.collection.LIST [1@cptIt,2],
* McsEngl.lpy'data.List@cptIt,
* McsEngl.lpy'list@cptIt,

_DESCRIPTION:
Python knows a number of compound data types, used to group together other values. The most versatile is the list, which can be written as a list of comma-separated values (items) between square brackets. List items need not all have the same type.

>>> a = ['spam', 'eggs', 100, 1234]
>>> a
['spam', 'eggs', 100, 1234]
[doc32]

pyf.len()

name::
* McsEngl.pyf.len()@cptIt,

>>> p = [1, q, 4]
>>> len(p)
3
[doc32]

pyf.print()

name::
* McsEngl.pyf.print()@cptIt,

print('The value of i is', i)
=> The value of i is 65536

lpy'archetype.collection.TUPLE (1;2)

name::
* McsEngl.lpy'archetype.collection.TUPLE (1@cptIt,2),
* McsEngl.lpy'data.Tuple@cptIt,
* McsEngl.lpy'tuple@cptIt,

_DESCRIPTION:
A tuple is another sequence data type that is similar to the list. A tuple consists of a number of values separated by commas. Unlike lists, however, tuples are enclosed within parentheses.
The main differences between lists and tuples are: Lists are enclosed in brackets ( [ ] ), and their elements and size can be changed, while tuples are enclosed in parentheses ( ( ) ) and cannot be updated. Tuples can be thought of as read-only lists.
[http://www.tutorialspoint.com/python/python_variable_types.htm]
===
Tuples
The items of a tuple are arbitrary Python objects. Tuples of two or more items are formed by comma-separated lists of expressions. A tuple of one item (a ‘singleton’) can be formed by affixing a comma to an expression (an expression by itself does not create a tuple, since parentheses must be usable for grouping of expressions). An empty tuple can be formed by an empty pair of parentheses.
[http://docs.python.org/py3k/reference/datamodel.html]

lpy'archetype.COLLECTION.NO

name::
* McsEngl.lpy'archetype.COLLECTION.NO@cptIt,

lpy'archetype.MUTABLE

name::
* McsEngl.lpy'archetype.MUTABLE@cptIt,

_SPECIFIC:

lpy'archetype.MUTABLE.NO

name::
* McsEngl.lpy'archetype.MUTABLE.NO@cptIt,

_SPECIFIC:
immutable basic types (numbers, strings, tuples)
[http://docs.python.org/2/tutorial/classes.html]

lpy'archetype.NAMED (variable)

name::
* McsEngl.lpy'archetype.NAMED (variable)@cptIt,
* McsEngl.lpy'archetype.VARIABLE@cptIt,
* McsEngl.lpy'variable@cptIt,
* McsEngl.lpyvariable@cptIt, {2014-02-22}

_DESCRIPTION:
Variables are nothing but reserved memory locations to store values. This means that when you create a variable you reserve some space in memory.
Based on the data type of a variable, the interpreter allocates memory and decides what can be stored in the reserved memory. Therefore, by assigning different data types to variables, you can store integers, decimals, or characters in these variables.
[http://www.tutorialspoint.com/python/python_variable_types.htm]
===
Variables are names (identifiers) that map to objects. A namespace is a dictionary of variable names (keys) and their corresponding objects (values).

lpy'archetype.NAMED.NO

name::
* McsEngl.lpy'archetype.NAMED.NO@cptIt,

lpy'archetype.NUMBER

name::
* McsEngl.lpy'archetype.NUMBER@cptIt,
* McsEngl.lpy'data.Number@cptIt,
* McsEngl.lpyn@cptIt,

lpy'number.Literal

name::
* McsEngl.lpy'number.Literal@cptIt,
* McsEngl.lpy'literal.number@cptIt,

_DESCRIPTION:
Python supports four different numerical types:

int (signed integers)
long (long integers [can also be represented in octal and hexadecimal])
float (floating point real values)
complex (complex numbers)

Examples:

Here are some examples of numbers:

int  long  float  complex
10  51924361L  0.0  3.14j
100  -0x19323L  15.20  45.j
-786  0122L  -21.9  9.322e-36j
080  0xDEFABCECBDAECBFBAEl  32.3+e18  .876j
-0490  535633629843L  -90.  -.6545+0J
-0x260  -052318172735L  -32.54e100  3e+26J
0x69  -4721885298529L  70.2-E12  4.53e-7j
[http://www.tutorialspoint.com/python/python_variable_types.htm]

lpy'archetype.STRING

name::
* McsEngl.lpy'archetype.STRING@cptIt,
* McsEngl.lpy'data.String@cptIt,
* McsEngl.lpy'string@cptIt,
* McsEngl.lpystring@cptIt,

* McsEngl.lpys@cptIt,

_DESCRIPTION:
The items of a string object are Unicode code units. A Unicode code unit is represented by a string object of one item and can hold either a 16-bit or 32-bit value representing a Unicode ordinal (the maximum value for the ordinal is given in sys.maxunicode, and depends on how Python is configured at compile time). Surrogate pairs may be present in the Unicode object, and will be reported as two separate items. The built-in functions chr() and ord() convert between code units and nonnegative integers representing the Unicode ordinals as defined in the Unicode Standard 3.0. Conversion from and to other encodings are possible through the string method encode().
[http://docs.python.org/py3k/reference/datamodel.html]

pystring'function

name::
* McsEngl.pystring'function@cptIt,

str = 'Hello World!'

print str# Prints complete string
print str[0]# Prints first character of the string
print str[2:5]# Prints characters starting from 3rd to 6th
print str[2:]# Prints string starting from 3rd character
print str * 2# Prints string two times
print str + "TEST"# Prints concatenated string
This will produce following result:

Hello World!
H
llo
llo World!
Hello World!Hello World!
Hello World!TEST
[http://www.tutorialspoint.com/python/python_variable_types.htm]

pystring.literal

name::
* McsEngl.pystring.literal@cptIt,
* McsEngl.lpy'literal.string@cptIt,

Python accepts single ('), double (") and triple (''' or """) quotes to denote string literals, as long as the same type of quote starts and ends the string.

The triple quotes can be used to span the string across multiple lines. For example, all the following are legal:

word = 'word'
sentence = "This is a sentence."
paragraph = """This is a paragraph. It is
made up of multiple lines and sentences."""
[http://www.tutorialspoint.com/python/python_basic_syntax.htm]

lpy'archetype.TYPE

name::
* McsEngl.lpy'archetype.TYPE@cptIt,

_DESCRIPTION:
type
The type of a Python object determines what kind of object it is; every object has a type. An object’s type is accessible as its __class__ attribute or can be retrieved with type(obj).
[http://docs.python.org/3/glossary.html#term-type]

lpy'proc.Converting-datatype

name::
* McsEngl.lpy'proc.Converting-datatype@cptIt,

Data Type Conversion:
Sometimes you may beed to perform conversions between the built-in types. To convert between types you simply use the type name as a function.

There are several built-in functions to perform conversion from one data type to another. These functions return a new object representing the converted value.

Function  Description
int(x [,base])

Converts x to an integer. base specifies the base if x is a string.

long(x [,base] )

Converts x to a long integer. base specifies the base if x is a string.

float(x)

Converts x to a floating-point number.

complex(real [,imag])

Creates a complex number.

str(x)

Converts object x to a string representation.

repr(x)

Converts object x to an expression string.

eval(str)

Evaluates a string and returns an object.

tuple(s)

Converts s to a tuple.

list(s)

Converts s to a list.

set(s)

Converts s to a set.

dict(d)

Creates a dictionary. d must be a sequence of (key,value) tuples.

frozenset(s)

Converts s to a frozen set.

chr(x)

Converts an integer to a character.

unichr(x)

Converts an integer to a Unicode character.

ord(x)

Converts a single character to its integer value.

hex(x)

Converts an integer to a hexadecimal string.

oct(x)

Converts an integer to an octal string.
[http://www.tutorialspoint.com/python/python_variable_types.htm]

lpy'data.Datatype

name::
* McsEngl.lpy'data.Datatype@cptIt,
* McsEngl.lpy'datatype@cptIt,

_DESCRIPTION:
Data types are strongly and dynamically typed. Mixing incompatible types (e.g. attempting to add a string and a number) causes an exception to be raised, so errors are caught sooner.
[http://wiki.python.org/moin/BeginnersGuide/Overview]

pytype.HASHABLE

name::
* McsEngl.pytype.HASHABLE@cptIt,

_DESCRIPTION:
hashable
An object is hashable if it has a hash value which never changes during its lifetime (it needs a __hash__() method), and can be compared to other objects (it needs an __eq__() method). Hashable objects which compare equal must have the same hash value.

Hashability makes an object usable as a dictionary key and a set member, because these data structures use the hash value internally.

All of Python’s immutable built-in objects are hashable, while no mutable containers (such as lists or dictionaries) are. Objects which are instances of user-defined classes are hashable by default; they all compare unequal (except with themselves), and their hash value is their id().
[http://docs.python.org/3/glossary.html#term-hashable]

lpy'code

name::
* McsEngl.lpy'code@cptIt,

lpy'code.EXPRESSION

name::
* McsEngl.lpy'code.EXPRESSION@cptIt,

_DESCRIPTION:
expression
A piece of syntax which can be evaluated to some value. In other words, an expression is an accumulation of expression elements like literals, names, attribute access, operators or function calls which all return a value.
In contrast to many other languages, not all language constructs are expressions.
There are also statements which cannot be used as expressions, such as if.
Assignments are also statements, not expressions.
[http://docs.python.org/3/glossary.html#term-expression]

lpy'code.structure.LIBRARY

name::
* McsEngl.lpy'code.structure.LIBRARY@cptIt,
* McsEngl.lpy'Library@cptIt,
* McsEngl.lpylibrary@cptIt,

pylibrary.STANDARD

name::
* McsEngl.pylibrary.STANDARD@cptIt,

_DESCRIPTION:
The “Python library” contains several different kinds of components.

It contains data types that would normally be considered part of the “core” of a language, such as numbers and lists. For these types, the Python language core defines the form of literals and places some constraints on their semantics, but does not fully define the semantics. (On the other hand, the language core does define syntactic properties like the spelling and priorities of operators.)

The library also contains built-in functions and exceptions — objects that can be used by all Python code without the need of an import statement. Some of these are defined by the core language, but many are not essential for the core semantics and are only described here.

The bulk of the library, however, consists of a collection of modules. There are many ways to dissect this collection. Some modules are written in C and built in to the Python interpreter; others are written in Python and imported in source form. Some modules provide interfaces that are highly specific to Python, like printing a stack trace; some provide interfaces that are specific to particular operating systems, such as access to specific hardware; others provide interfaces that are specific to a particular application domain, like the World Wide Web. Some modules are available in all versions and ports of Python; others are only available when the underlying system supports or requires them; yet others are available only when a particular configuration option was chosen at the time when Python was compiled and installed.
[http://docs.python.org/3/library/intro.html]

lpy'code.structure.PROGRAM

name::
* McsEngl.lpy'code.structure.PROGRAM@cptIt,
* McsEngl.lpy'script@cptIt,
* McsEngl.lpyprogram@cptIt,

_PART:
* class,
* function,
* logical-line,
* module,
* package,
* statement,

lpy'Atom

name::
* McsEngl.lpy'Atom@cptIt,

Atoms are the most basic elements of expressions. The simplest atoms are identifiers or literals. Forms enclosed in parentheses, brackets or braces are also categorized syntactically as atoms. The syntax for atoms is:

atom ::= identifier | literal | enclosure
enclosure ::= parenth_form | list_display | dict_display | set_display
| generator_expression | yield_atom
[http://docs.python.org/py3k/reference/expressions.html]

lpy'Block-of-code

name::
* McsEngl.lpy'Block-of-code@cptIt,

One of the first caveats programmers encounter when learning Python is the fact that there are no braces to indicate blocks of code for class and function definitions or flow control. Blocks of code are denoted by line indentation, which is rigidly enforced.

The number of spaces in the indentation is variable, but all statements within the block must be indented the same amount. Both blocks in this example are fine:

if True:
print "True"
else:
print "False"
[http://www.tutorialspoint.com/python/python_basic_syntax.htm]

lpy'Logical-line

name::
* McsEngl.lpy'Logical-line@cptIt,

_WHOLE:
* program#ql:python'program#

A Python program is divided into a number of logical lines.
2.1.1. Logical lines¶
The end of a logical line is represented by the token NEWLINE. Statements cannot cross logical line boundaries except where NEWLINE is allowed by the syntax (e.g., between statements in compound statements). A logical line is constructed from one or more physical lines by following the explicit or implicit line joining rules.
[http://docs.python.org/py3k/reference/lexical_analysis.html#logical-lines]

2.1.5. Explicit line joining
Two or more physical lines may be joined into logical lines using backslash characters (\), as follows: when a physical line ends in a backslash that is not part of a string literal or comment, it is joined with the following forming a single logical line, deleting the backslash and the following end-of-line character. For example:

if 1900 < year < 2100 and 1 <= month <= 12 \
and 1 <= day <= 31 and 0 <= hour < 24 \
and 0 <= minute < 60 and 0 <= second < 60:# Looks like a valid date
return 1
A line ending in a backslash cannot carry a comment. A backslash does not continue a comment. A backslash does not continue a token except for string literals (i.e., tokens other than string literals cannot be split across physical lines using a backslash). A backslash is illegal elsewhere on a line outside a string literal.
[http://docs.python.org/py3k/reference/lexical_analysis.html#explicit-line-joining]

2.1.6. Implicit line joining
Expressions in parentheses, square brackets or curly braces can be split over more than one physical line without using backslashes. For example:

month_names = ['Januari', 'Februari', 'Maart',# These are the
'April', 'Mei', 'Juni',# Dutch names
'Juli', 'Augustus', 'September',# for the months
'Oktober', 'November', 'December']# of the year
Implicitly continued lines can carry comments. The indentation of the continuation lines is not important. Blank continuation lines are allowed. There is no NEWLINE token between implicit continuation lines. Implicitly continued lines can also occur within triple-quoted strings (see below); in that case they cannot carry comments.
[http://docs.python.org/py3k/reference/lexical_analysis.html#implicit-line-joining]

lpy'program'executing

name::
* McsEngl.lpy'program'executing@cptIt,
* McsEngl.lpy'executing@cptIt,
* McsEngl.lpy'running@cptIt,

unix-like

Most programmers write their programs to stand alone, independent of the live environment. They save their programs in a text file and, instead of saving the file with a 'txt' suffix, save it with a 'py' suffix. This indicates to the computer and the programmer that the file is actually a Python program. Then the Python interpreter is invoked to read and interpret the file. Depending on one's platform, this happens in one of two ways.
On Mac, Linux, and other Unix-like platforms, one can simply put a "bang" line as the first line of the program. This "bang" line indicates the location on the harddrive of the Python interpreter and reads as follows:

#!/path/to/interpreter

An alternative means of execution is to call the Python interpreter manually, feeding the name of the file to be executed as an argument. So a program called 'myprogram.py' would be called as follows:

> python myprogram.py
[http://python.about.com/od/gettingstarted/ss/beg_executing_4.htm]

win

(1) Interactive Interpreter:
C:>python

(2) Script from the Command-line:
- C:>python script.py
- start\programs\python\COMMAND-LINE

(3) Integrated Development Environment:
start\programs\python\IDLE

lpy'program'size

name::
* McsEngl.lpy'program'size@cptIt,

Programs written in Python are typically much shorter than equivalent C, C++, or Java programs, for several reasons:

the high-level data types allow you to express complex operations in a single statement;
statement grouping is done by indentation instead of beginning and ending brackets;
no variable or argument declarations are necessary.
[doc: tutorial]

lpy'Suite

name::
* McsEngl.lpy'Suite@cptIt,

Multiple Statement Groups as Suites:
Groups of individual statements making up a single code block are called suites in Python.

Compound or complex statements, such as if, while, def, and class, are those which require a header line and a suite.

Header lines begin the statement (with the keyword) and terminate with a colon ( : ) and are followed by one or more lines which make up the suite.

Example:

if expression :
suite
elif expression :
suite
else :
suite
[http://www.tutorialspoint.com/python/python_basic_syntax.htm]

lpy'code.structure.MODULE

name::
* McsEngl.lpy'code.structure.MODULE@cptIt,
* McsEngl.lpymodule@cptIt,

_DESCRIPTION:
Python - Modules:
A module allows you to logically organize your Python code. Grouping related code into a module makes the code easier to understand and use.

A module is a Python object with arbitrarily named attributes that you can bind and reference.

Simply, a module is a file consisting of Python code. A module can define functions, classes, and variables. A module can also include runnable code.

Example:
The Python code for a module named aname normally resides in a file named aname.py. Here's an example of a simple module, hello.py

def print_func( par ):
print "Hello : ", par
return
The import Statement:
You can use any Python source file as a module by executing an import statement in some other Python source file. import has the following syntax:
import module1[, module2[,... moduleN]
When the interpreter encounters an import statement, it imports the module if the module is present in the search path. A search path is a list of directories that the interpreter searches before importing a module.

Example:
To import the module hello.py, you need to put the following command at the top of the script:

#!/usr/bin/python

# Import module hello
import hello

# Now you can call defined function that module as follows
hello.print_func("Zara")
This would produce following result:

Hello : Zara
A module is loaded only once, regardless of the number of times it is imported. This prevents the module execution from happening over and over again if multiple imports occur.
[http://www.tutorialspoint.com/python/python_quick_guide.htm]
===
A module allows you to logically organize your Python code. Grouping related code into a module makes the code easier to understand and use.
A module is a Python object with arbitrarily named attributes that you can bind and reference.
Simply, a module is a file consisting of Python code. A module can define functions, classes, and variables. A module can also include runnable code.
[http://www.tutorialspoint.com/python/python_modules.htm]
===
Code can be grouped into modules and packages.
[http://wiki.python.org/moin/BeginnersGuide/Overview]

pymodule'Creation

name::
* McsEngl.pymodule'Creation@cptIt,

pymodule'file

name::
* McsEngl.pymodule'file@cptIt,

_DESCRIPTION:
The Python code for a module named aname normally resides in a file named aname.py.

pymodule'installation

name::
* McsEngl.pymodule'installation@cptIt,

pymodule'import-statement

name::
* McsEngl.pymodule'import-statement@cptIt,

_DESCRIPTION:
You can use any Python source file as a module by executing an import statement in some other Python source file. import has the following syntax:
import module1[, module2[,... moduleN]
When the interpreter encounters an import statement, it imports the module if the module is present in the search path. A search path is a list of directories that the interpreter searches before importing a module.

From source

If you download a module source distribution, you can tell pretty quickly if it was packaged and distributed in the standard way, i.e. using the Distutils. First, the distribution’s name and version number will be featured prominently in the name of the downloaded archive, e.g. foo-1.0.tar.gz or widget-0.9.7.zip. Next, the archive will unpack into a similarly-named directory: foo-1.0 or widget-0.9.7. Additionally, the distribution will contain a setup script setup.py, and a file named README.txt or possibly just README, which should explain that building and installing the module distribution is a simple matter of running one command from a terminal:

python setup.py install
[http://docs.python.org/py3k/install/index.html#install-index]

pymodule'Resource

name::
* McsEngl.pymodule'Resource@cptIt,

_SPECIFIC:
* http://docs.python.org/3/py-modindex.html,
* Distributing Python Modules: http://docs.python.org/py3k/distutils/index.html,

pymodule'search-path

name::
* McsEngl.pymodule'search-path@cptIt,
* McsEngl.lpysearch-path@cptIt,

_DESCRIPTION:
When the interpreter encounters an import statement, it imports the module if the module is present in the search path. A search path is a list of directories that the interpreter searches before importing a module.
[http://www.tutorialspoint.com/python/python_quick_guide.htm]

Question
How do you append directories to your Python path?
Answer
Your path (i.e. the list of directories Python goes through to search for modules and files) is stored in the path attribute of the sys module. Since path is a list, you can use the append method to add new directories to the path.

For instance, to add the directory /home/me/mypy to the path, just do:
import sys
sys.path.append("/home/me/mypy")
[http://www.johnny-lin.com/cdat_tips/tips_pylang/path.html]

SPECIFIC

name::
* McsEngl.lpymodule.specific@cptIt,

pymodule.importlib

name::
* McsEngl.pymodule.importlib@cptIt,
* McsEngl.lpy'-module@cptIt,

_DESCRIPTION:
The importlib module provides a rich API for interacting with the import system. For example importlib.import_module() provides a recommended, simpler API than built-in __import__() for invoking the import machinery.
[http://docs.python.org/3/reference/import.html?highlight=package#importlib]

pymodule.PACKAGE

name::
* McsEngl.pymodule.PACKAGE@cptIt,
* McsEngl.lpypackage@cptIt,

_DESCRIPTION:
5.2. Packages
Python has only one type of module object, and all modules are of this type, regardless of whether the module is implemented in Python, C, or something else. To help organize modules and provide a naming hierarchy, Python has a concept of packages.

You can think of packages as the directories on a file system and modules as files within directories, but don’t take this analogy too literally since packages and modules need not originate from the file system. For the purposes of this documentation, we’ll use this convenient analogy of directories and files. Like file system directories, packages are organized hierarchically, and packages may themselves contain subpackages, as well as regular modules.

It’s important to keep in mind that all packages are modules, but not all modules are packages. Or put another way, packages are just a special kind of module. Specifically, any module that contains a __path__ attribute is considered a package.

All modules have a name. Subpackage names are separated from their parent package name by dots, akin to Python’s standard attribute access syntax. Thus you might have a module called sys and a package called email, which in turn has a subpackage called email.mime and a module within that subpackage called email.mime.text.
[http://docs.python.org/3/reference/import.html?highlight=package#packages]
===
Code can be grouped into modules and packages.
[http://wiki.python.org/moin/BeginnersGuide/Overview]

pymodule.package.NAMESPACE

name::
* McsEngl.pymodule.package.NAMESPACE@cptIt,

_DESCRIPTION:
A namespace package is a composite of various portions, where each portion contributes a subpackage to the parent package. Portions may reside in different locations on the file system. Portions may also be found in zip files, on the network, or anywhere else that Python searches during import. Namespace packages may or may not correspond directly to objects on the file system; they may be virtual modules that have no concrete representation.

Namespace packages do not use an ordinary list for their __path__ attribute. They instead use a custom iterable type which will automatically perform a new search for package portions on the next import attempt within that package if the path of their parent package (or sys.path for a top level package) changes.

With namespace packages, there is no parent/__init__.py file. In fact, there may be multiple parent directories found during import search, where each one is provided by a different portion. Thus parent/one may not be physically located next to parent/two. In this case, Python will create a namespace package for the top-level parent package whenever it or one of its subpackages is imported.

See also PEP 420 for the namespace package specification.
[http://docs.python.org/3/reference/import.html?highlight=package#namespace-packages]

pymodule.package.REGULAR

name::
* McsEngl.pymodule.package.REGULAR@cptIt,

_DESCRIPTION:
Python defines two types of packages, regular packages and namespace packages. Regular packages are traditional packages as they existed in Python 3.2 and earlier. A regular package is typically implemented as a directory containing an __init__.py file. When a regular package is imported, this __init__.py file is implicitly executed, and the objects it defines are bound to names in the package’s namespace. The __init__.py file can contain the same Python code that any other module can contain, and Python will add some additional attributes to the module when it is imported.
[http://docs.python.org/3/reference/import.html?highlight=package#regular-packages]

pymodule.sys

name::
* McsEngl.pymodule.sys@cptIt,
* McsEngl.lpy'sys-module@cptIt,

pymodule.os

name::
* McsEngl.pymodule.os@cptIt,
* McsEngl.lpy'os-module@cptIt,

_DESCRIPTION:

pymodule.time

name::
* McsEngl.pymodule.time@cptIt,
* McsEngl.lpy'time-module@cptIt,

_DESCRIPTION:
There is a popular time module available in Python which provides functions for working with times, and for converting between representations. The function time.() returns the current system time in ticks since 12:00am, January 1, 1970(epoch).
[http://www.tutorialspoint.com/python/python_date_time.htm]

lpy'code.structure.SENTENCE

name::
* McsEngl.lpy'code.structure.SENTENCE@cptIt,

lpy'statement'Termnination

name::
* McsEngl.lpy'statement'Termnination@cptIt,

Multiple Statements on a Single Line:
The semicolon ( ; ) allows multiple statements on the single line given that neither statement starts a new code block. Here is a sample snip using the semicolon:

import sys; x = 'foo'; sys.stdout.write(x + '\n')
[http://www.tutorialspoint.com/python/python_basic_syntax.htm]

SPECIFIC

lpy'statement.

name::
* McsEngl.lpy'statement.@cptIt,
* McsEngl.lpy'-statement@cptIt,

lpy'statement.Assignment

name::
* McsEngl.lpy'statement.Assignment@cptIt,
* McsEngl.lpy'assignment-statement@cptIt,

Assigning Values to Variables:
Python variables do not have to be explicitly declared to reserve memory space. The declaration happens automatically when you assign a value to a variable. The equal sign (=) is used to assign values to variables.

The operand to the left of the = operator is the name of the variable, and the operand to the right of the = operator is the value stored in the variable. For example:

#!/usr/bin/python

counter = 100# An integer assignment
miles = 1000.0# A floating point
name = "John"# A string

print (counter)
print miles
print name
Here 100, 1000.0 and "John" are the values assigned to counter, miles and name variables, respectively. While running this program, this will produce following result:

100
1000.0
John
Multiple Assignment:
You can also assign a single value to several variables simultaneously. For example:

a = b = c = 1
Here, an integer object is created with the value 1, and all three variables are assigned to the same memory location. You can also assign multiple objects to multiple variables. For example:

a, b, c = 1, 2, "john"
Here two integer objects with values 1 and 2 are assigned to variables a and b, and one string object with the value "john" is assigned to the variable c.
[http://www.tutorialspoint.com/python/python_variable_types.htm]

lpy'statement.Compound

name::
* McsEngl.lpy'statement.Compound@cptIt,
* McsEngl.lpy'compound-statement@cptIt,

Multiple Statement Groups as Suites:
Groups of individual statements making up a single code block are called suites in Python.

Compound or complex statements, such as if, while, def, and class, are those which require a header line and a suite.

Header lines begin the statement (with the keyword) and terminate with a colon ( : ) and are followed by one or more lines which make up the suite.

Example:

if expression :
suite
elif expression :
suite
else :
suite
[http://www.tutorialspoint.com/python/python_basic_syntax.htm]

lpy'statement.Del

name::
* McsEngl.lpy'statement.Del@cptIt,
* McsEngl.lpy'del-statement@cptIt,

You can also delete the reference to a number object by using the del statement. The syntax of the del statement is:

del var1[,var2[,var3[....,varN]]]]
You can delete a single object or multiple objects by using the del statement. For example:

del var
del var_a, var_b
[http://www.tutorialspoint.com/python/python_variable_types.htm]

lpy'statement.Global

name::
* McsEngl.lpy'statement.Global@cptIt,
* McsEngl.lpy'global-statement@cptIt,

Therefore, in order to assign a value to a global variable within a function, you must first use the global statement.

The statement global VarName tells Python that VarName is a global variable. Python stops searching the local namespace for the variable.
[http://www.tutorialspoint.com/python/python_modules.htm]

lpy'statement.Import

name::
* McsEngl.lpy'statement.Import@cptIt,
* McsEngl.lpy'import-statement@cptIt,

lpy'statement.Multi-line

name::
* McsEngl.lpy'statement.Multi-line@cptIt,
* McsEngl.lpy'multi-line-statement@cptIt,

Multi-Line Statements:
Statements in Python typically end with a new line. Python does, however, allow the use of the line continuation character (\) to denote that the line should continue. For example:

total = item_one + \
item_two + \
item_three
Statements contained within the [], {}, or () brackets do not need to use the line continuation character. For example:

days = ['Monday', 'Tuesday', 'Wednesday',
'Thursday', 'Friday']
[http://www.tutorialspoint.com/python/python_basic_syntax.htm]

lpy'code.structure.ATOM-STRUCTURE

name::
* McsEngl.lpy'code.structure.ATOM-STRUCTURE@cptIt,

lpy'code.structure.ATOM

name::
* McsEngl.lpy'code.structure.ATOM@cptIt,

lpy'Comment

name::
* McsEngl.lpy'Comment@cptIt,
* McsEngl.lpycomment@cptIt,
* McsEngl.lpy'comment@cptIt,

_DESCRIPTION:
2.1.3. Comments¶
A comment starts with a hash character (#) that is not part of a string literal, and ends at the end of the physical line. A comment signifies the end of the logical line unless the implicit line joining rules are invoked. Comments are ignored by the syntax; they are not tokens.
[http://docs.python.org/py3k/reference/lexical_analysis.html#comments]

_CODE.PY:
# This is a comment
# comments can span one line only

lpy'Identifier

name::
* McsEngl.lpy'Identifier@cptIt,
* McsEngl.lpy'name@cptIt,
* McsEngl.lpy'identifier@cptIt,

_GENERIC:
* token#ql:py'token#

_DESCRIPTION:
A Python identifier is a name used to identify a variable, function, class, module, or other object. An identifier starts with a letter A to Z or a to z or an underscore (_) followed by zero or more letters, underscores, and digits (0 to 9).

Python does not allow punctuation characters such as @, $, and % within identifiers. Python is a case sensitive programming language. Thus Manpower and manpower are two different identifiers in Python.

Here are following identifier naming convention for Python:

Class names start with an uppercase letter and all other identifiers with a lowercase letter.

Starting an identifier with a single leading underscore indicates by convention that the identifier is meant to be private.

Starting an identifier with two leading underscores indicates a strongly private identifier.

If the identifier also ends with two trailing underscores, the identifier is a language-defined special name.
[http://www.tutorialspoint.com/python/python_basic_syntax.htm]

lpy'Keyword

name::
* McsEngl.lpy'Keyword@cptIt,
* McsEngl.lpy'reserve-word@cptIt,
* McsEngl.lpykeyword@cptIt,

_GENERIC:
* token#ql:py'token#

_SPECIFIC:
2.3.1. Keywords
The following identifiers are used as reserved words, or keywords of the language, and cannot be used as ordinary identifiers. They must be spelled exactly as written here:

False
None
True

and
as
assert

break

class
continue

def
del

elif
else
except

finally
for
from

global

if
import
in
is

lambda

nonlocal
not

or

pass

raise
return
try
while
with
yield

lpy'Operator

name::
* McsEngl.lpy'Operator@cptIt,
* McsEngl.lpy'operator@cptIt,
* McsEngl.lpyoperator@cptIt,

_GENERIC:
* token#ql:py'token#

_ENTITY:
* py-operation#ql:py'operation#

_SPECIFIC:
The following tokens are operators:
+ - * ** / // %
<< >> & | ^ ~
< > <= >= == !=
[http://docs.python.org/py3k/reference/lexical_analysis.html#operators]

floor division
Mathematical division that rounds down to nearest integer. The floor division operator is //. For example, the expression 11 // 4 evaluates to 2 in contrast to the 2.75 returned by float true division. Note that (-11) // 4 is -3 because that is -2.75 rounded downward. See PEP 238.
[http://docs.python.org/3/glossary.html#term-floor-division]

lpy'code.structure.UNIT-STRUCTURE

name::
* McsEngl.lpy'code.structure.UNIT-STRUCTURE@cptIt,

lpy'Delimeter

name::
* McsEngl.lpy'Delimeter@cptIt,
* McsEngl.lpy'delimeter@cptIt,

_GENERIC:
* token#ql:py'token#

_SPECIFIC:
The following tokens serve as delimiters in the grammar:

( ) [ ] { }
, : . ; @ =
+= -= *= /= //= %=
&= |= ^= >>= <<= **=
The period can also occur in floating-point and imaginary literals. A sequence of three periods has a special meaning as an ellipsis literal. The second half of the list, the augmented assignment operators, serve lexically as delimiters, but also perform an operation.

The following printing ASCII characters have special meaning as part of other tokens or are otherwise significant to the lexical analyzer:

' "# \
[http://docs.python.org/py3k/reference/lexical_analysis.html#delimiters]

lpy'Token

name::
* McsEngl.lpy'Token@cptIt,
* McsEngl.lpy'token@cptIt,

_SPECIFIC:
* DEDENT,
* delimiter#ql:py'delimeter#,
* identifier#ql:py'identifier#,
* INDENT,
* keyword#ql:py'keyword#,
* literal#ql:py'literal#,
* NEWLINE,
* operator#ql:py'operator#,
===
Besides NEWLINE, INDENT and DEDENT, the following categories of tokens exist: identifiers, keywords, literals, operators, and delimiters. Whitespace characters (other than line terminators, discussed earlier) are not tokens, but serve to delimit tokens. Where ambiguity exists, a token comprises the longest possible string that forms a legal token, when read from left to right.
[http://docs.python.org/py3k/reference/lexical_analysis.html#other-tokens]

lpy'code.structure.UNIT

name::
* McsEngl.lpy'code.structure.UNIT@cptIt,

lpy'Character

name::
* McsEngl.lpy'Character@cptIt,

_DESCRIPTION:
The following printing ASCII characters are not used in Python. Their occurrence outside string literals and comments is an unconditional error:
$ ? `
[http://docs.python.org/py3k/reference/lexical_analysis.html#delimiters]

lpy'unicode-code-point

name::
* McsEngl.lpy'unicode-code-point@cptIt,

_DESCRIPTION:
A Python program is read by a parser. Input to the parser is a stream of tokens, generated by the lexical analyzer. This chapter describes how the lexical analyzer breaks a file into tokens.
Python reads program text as Unicode code points; the encoding of a source file can be given by an encoding declaration and defaults to UTF-8, see PEP 3120 for details. If the source file cannot be decoded, a SyntaxError is raised.
[http://docs.python.org/py3k/reference/lexical_analysis.html#lexical-analysis]

lpy'Whitespace-character

name::
* McsEngl.lpy'Whitespace-character@cptIt,

Whitespace characters (other than line terminators, discussed earlier) are not tokens, but serve to delimit tokens.
[http://docs.python.org/py3k/reference/lexical_analysis.html#other-tokens]
===
Except at the beginning of a logical line or in string literals, the whitespace characters space, tab and formfeed can be used interchangeably to separate tokens. Whitespace is needed between two tokens only if their concatenation could otherwise be interpreted as a different token (e.g., ab is one token, but a b is two tokens).
[http://docs.python.org/py3k/reference/lexical_analysis.html#whitespace-between-tokens]

lpy'Data-code

name::
* McsEngl.lpy'Data-code@cptIt,
* McsEngl.lpy'data@cptIt,

_SPECIFIC: ALPHABETICALLY:
* immutable,
* mutable,

lpy'data.Byte

name::
* McsEngl.lpy'data.Byte@cptIt,
* McsEngl.lpy'byte@cptIt,

A bytes object is an immutable array. The items are 8-bit bytes, represented by integers in the range 0 <= x < 256. Bytes literals (like b'abc' and the built-in function bytes() can be used to construct bytes objects. Also, bytes objects can be decoded to strings via the decode() method.
[http://docs.python.org/py3k/reference/datamodel.html]

lpy'data.Built-in

name::
* McsEngl.lpy'data.Built-in@cptIt,

lpy'data.Dynamic

name::
* McsEngl.lpy'data.Dynamic@cptIt,

A programming language is said to be dynamically typed when the majority of its type checking is performed at run-time as opposed to at compile-time. In dynamic typing values have types, but variables do not; that is, a variable can refer to a value of any type. Dynamically typed languages include APL, Clojure , Erlang, Groovy, JavaScript, Jython, Lisp, Lua, MATLAB/GNU Octave, Perl (for user-defined types, but not built-in types), PHP, Prolog, Python, Ruby, Smalltalk and Tcl.
[http://en.wikipedia.org/wiki/Type_system#Dynamic_typing]

lpy'data.Literal

name::
* McsEngl.lpy'data.Literal@cptIt,
* McsEngl.lpy'literal@cptIt,

_GENERIC:
* token#ql:py'token#

_DESCRIPTION:
Literals are notations for constant values of some built-in types.
[http://docs.python.org/py3k/reference/lexical_analysis.html#literals]

lpy'data.Sequence

name::
* McsEngl.lpy'data.Sequence@cptIt,
* McsEngl.lpy'sequence@cptIt,

Sequences
These represent finite ordered sets indexed by non-negative numbers.
[http://docs.python.org/py3k/reference/datamodel.html#h5o-1]

_SPECIFIC:
* immutable-sequence
* list,
* string,
* tuple,

lpy'data.Set

name::
* McsEngl.lpy'data.Set@cptIt,
* McsEngl.lpy'set@cptIt,

_DESCRIPTION:
Python also includes a data type for sets. A set is an unordered collection with no duplicate elements. Basic uses include membership testing and eliminating duplicate entries. Set objects also support mathematical operations like union, intersection, difference, and symmetric difference.
[http://effbot.org/pytut/node7.htm]
===
Sets
These represent a mutable set. They are created by the built-in set() constructor and can be modified afterwards by several methods, such as add().
[http://docs.python.org/py3k/reference/datamodel.html]

_Example:
>>> basket=['apple', 'orage', 'apple']
>>> basket
['apple', 'orage', 'apple']
>>> fruit= set(basket)
>>> fruit
{'orage', 'apple'}

lpy'Doing

name::
* McsEngl.lpy'Doing@cptIt,
* McsEngl.lpy'example@cptIt,

lpy'Error-handling

name::
* McsEngl.lpy'Error-handling@cptIt,

lpy'human

name::
* McsEngl.lpy'human@cptIt,

Guido van Rossum

Guido van Rossum (born 31 January[2] 1956[citation needed]) is a Dutch computer programmer who is best known as the author of the Python programming language. In the Python community, Van Rossum is known as a "Benevolent Dictator For Life" (BDFL), meaning that he continues to oversee the Python development process, making decisions where necessary.[3] He is currently employed by Google, where he spends half his time working on Python development.
[http://en.wikipedia.org/wiki/Guido_van_Rossum]

lpy'Installation

name::
* McsEngl.lpy'Installation@cptIt,

lpy'Path

name::
* McsEngl.lpy'Path@cptIt,

Question

How do you append directories to your Python path?

Answer

Your path (i.e. the list of directories Python goes through to search for modules and files) is stored in the path attribute of the sys module. Since path is a list, you can use the append method to add new directories to the path.

For instance, to add the directory /home/me/mypy to the path, just do:

import sys
sys.path.append("/home/me/mypy")
[http://www.johnny-lin.com/cdat_tips/tips_pylang/path.html]

6.1.1 The Module Search Path

When a module named spam is imported, the interpreter searches for a file named "spam.py" in the current directory, and then in the list of directories specified by the environment variable $PYTHONPATH. This has the same syntax as the shell variable $PATH, i.e., a list of directory names. When $PYTHONPATH is not set, or when the file is not found there, the search continues in an installation-dependent default path; on Unix, this is usually ".:/usr/local/lib/python".

Actually, modules are searched in the list of directories given by the variable sys.path which is initialized from the directory containing the input script (or the current directory), $PYTHONPATH and the installation-dependent default. This allows Python programs that know what they're doing to modify or replace the module search path. See the section on Standard Modules later.
[http://docs.python.org/release/1.5.1p1/tut/searchPath.html]

lpy'Implementation

name::
* McsEngl.lpy'Implementation@cptIt,

1.1. Alternate Implementations¶
Though there is one Python implementation which is by far the most popular, there are some alternate implementations which are of particular interest to different audiences.

Known implementations include:

CPython
This is the original and most-maintained implementation of Python, written in C. New language features generally appear here first.
Jython
Python implemented in Java. This implementation can be used as a scripting language for Java applications, or can be used to create applications using the Java class libraries. It is also often used to create tests for Java libraries. More information can be found at the Jython website.
Python for .NET
This implementation actually uses the CPython implementation, but is a managed .NET application and makes .NET libraries available. It was created by Brian Lloyd. For more information, see the Python for .NET home page.
IronPython
An alternate Python for .NET. Unlike Python.NET, this is a complete Python implementation that generates IL, and compiles Python code directly to .NET assemblies. It was created by Jim Hugunin, the original creator of Jython. For more information, see the IronPython website.
PyPy
An implementation of Python written completely in Python. It supports several advanced features not found in other implementations like stackless support and a Just in Time compiler. One of the goals of the project is to encourage experimentation with the language itself by making it easier to modify the interpreter (since it is written in Python). Additional information is available on the PyPy project’s home page.
Each of these implementations varies in some way from the language as documented in this manual, or introduces specific information beyond what’s covered in the standard Python documentation. Please refer to the implementation-specific documentation to determine what else you need to know about the specific implementation you’re using.
[http://docs.python.org/py3k/reference/introduction.html]

lpy'Parsing-the-code

name::
* McsEngl.lpy'Parsing-the-code@cptIt,

lpy'Physical-line

name::
* McsEngl.lpy'Physical-line@cptIt,

2.1.2. Physical lines
A physical line is a sequence of characters terminated by an end-of-line sequence. In source files, any of the standard platform line termination sequences can be used - the Unix form using ASCII LF (linefeed), the Windows form using the ASCII sequence CR LF (return followed by linefeed), or the old Macintosh form using the ASCII CR (return) character. All of these forms can be used equally, regardless of platform.

When embedding Python, source code strings should be passed to Python APIs using the standard C conventions for newline characters (the \n character, representing ASCII LF, is the line terminator).
[http://docs.python.org/py3k/reference/lexical_analysis.html#physical-lines]

lpy'PEP

name::
* McsEngl.lpy'PEP@cptIt,
* McsEngl.PEP@cptIt,
* McsEngl.Python-Enhancement-Proposal@cptIt,

_ADDRESS.WPG:
* PEP 0 -- Index of Python Enhancement Proposals (PEPs) https://www.python.org/dev/peps//

lpy'Performance

name::
* McsEngl.lpy'Performance@cptIt,

Python's developers eschew premature optimization, and moreover, reject patches to non-critical parts of CPython which would offer a marginal increase in speed at the cost of clarity.[21] Python is sometimes described as "slow".[22] However most problems and sections of programs are not speed critical.[citation needed] When speed is important, Python programmers tend to try using a JIT compiler such as Psyco or using an alternative language implementation such as PyPy. When pure Python code isn't fast enough, time-critical functions can be rewritten in "closer to the metal" languages such as C, or by translating (a dialect of) Python code to C code using tools like Cython.[23]
[http://en.wikipedia.org/wiki/Python_(programming_language)]

lpy'resourceInfHmn#cptResource843#

name::
* McsEngl.lpy'resourceInfHmn@cptIt,

* pyresource,

_SPECIFIC:
* http://www.python.org//
* wiki: http://wiki.python.org/moin/FrontPage,
* docs: http://docs.python.org/py3k/index.html,
=== reference:
- http://www.java2s.com/Tutorial/Python/CatalogPython.htm,
- http://www.openbookproject.net/pybiblio/
=== tutorial:
- http://openbookproject.net/thinkcs/python/english3e/index.html,
- http://www.greenteapress.com/thinkpython2/html/index.html,
- http://aquamentus.com/python_tutorial.html,
- http://docs.python.org/py3k/tutorial/index.html,
- http://www.tutorialspoint.com/python//
- http://diveintopython.org/
- http://www.pythontutorial.org//
- http://zetcode.com/tutorials/pythontutorial//
- http://effbot.org/pytut//
- https://arch.icte.uowm.gr/docs/Python_Programming_Full_Book_Dasygenis_Terzidou.pdf,
* tips:
- http://www.johnny-lin.com/cdat_tips//

Resources
"Choosing a scripting language," October 1997 feature story in SunWorld http://www.sun.com/sunworldonline/swol-10-1997/swol-10-scripting.html Installable binaries of Python interpreter http://www.python.org/ftp/python/ Python Language Home Page http://www.python.org Python Software Activity http://www.python.org/psa Who else uses Python? http://www.python.org/python/Users.html Python Essays by Guido van Rossum (Many of these are worth reading, even if you don't use Python) http://www.python.org/doc/essays/ Updates and amplifications of this article http://starbase.neosoft.com/~claird/comp.lang.python/python.html Web tools made with Python http://starbase.neosoft.com/~claird/comp.lang.python/web_python.html Random Monty Python skit server (for something completely different) http://ugweb.cs.ualberta.ca/~stuart/monty/

lpy'tool

name::
* McsEngl.lpy'tool@cptIt,

_ADDRESS.WPG:
* https://www.jetbrains.com/pycharm-edu//

lpy.EVOLUTING#cptCore546.171#

name::
* McsEngl.lpy.EVOLUTING@cptIt,

_2011-02-20:
Release: 3.2
Date: February 20, 2011

{time.2008}:
Python 3.0 (also known as Python 3000 or py3k), a major, backwards-incompatible release, was released on 3 December 2008[12] after a long period of testing. Many of its major features have been backported to the backwards-compatible Python 2.6 and 2.7.[13] Python has twice been awarded as TIOBE Programming Language of the Year (2007, 2010), which is given to the language with the greatest growth in popularity over the course of the year (as measured by the TIOBE index).[14]
[http://en.wikipedia.org/wiki/Python_(programming_language)]

{time.2000}:
Python 2.0 was released on 16 October 2000, with many major new features including a full garbage collector and support for Unicode. However, the most important change was to the development process itself, with a shift to a more transparent and community-backed process.[11]
[http://en.wikipedia.org/wiki/Python_(programming_language)]

{time.1991}:
Appeared in  1991

Short version: Python 2.x is the status quo, Python 3.x is the present and future of the language
[http://wiki.python.org/moin/Python2orPython3]

lcp.instance.QBASIC {1991-2000}

_CREATED: {1999-11-28}

NAME

name::
* McsEngl.lcp.instance.QBASIC {1991-2000}@cptIt,
* McsEngl.conceptIt536,
* McsEngl.programing-language.QBASIC@cptIt,
* McsEngl.qbasic@cptIt536,

DEFINITION

Αναφέρομαι στη BASIC που ήταν μαζί με τα WIN3.1.

GENERIC

_GENERIC:
* programming_language#cptItsoft248#

ALGORITHM#cptIt458#

SEQUENCE

SELECTION

1) Σε μία γραμμή μέχρι 255 χαρακτήρες
a)
IF ... THEN ... ELSE
b)
IF condition THEN
 commands
ELSE
 commands
END IF
c)
IF condition THEN
 commands
ELSEIF condition THEN
 commands
...
ELSE
 commands
END IF

2) πολαπλη επιλογή:
SELECT CASE i
 CASE 1
   commands
 CASE 2
   commands
 CASE ELSE
   commands
END SELECT

LOOP

1) επανάληψη με αληθή συνθήκη:
a)
WHILE cond
 ...
WEND
b)
DO WHILE cond
 ...
LOOP

2) Επανάληψη με ψευδή συνθήκη:
a)
DO
 ...
LOOP UNTIL cond
b)
DO UNTIL cond
 ...
LOOP

3) Επανάληψη με γνωστό αριθμό επαναλήψεων:
FOR i TO n
 ...
NEXT i

RECURSION

ALPHABET

DIGIT

LETTER

SPECIAL SYMBOL

SEPARATOR

API#cptIt80#

COMMENT

1) REM ....

2) ' ....

DATA#cptIt242#

ARRAY

LIST

QUEUE

RECORD

STACK

TREE

EVALUATION#cptCore546.107#

EVOLUTION#cptCore546.171#

version 1.4 the last

FUNCTION

GARBAGE COLLECTION

GLOSSARY

CONSTANT

VARIABLE

1)
name% = integer
name& = long integer
name! = real single precision
name# = real double precision
name$ = string

2) εντολή ονομα AS τύπος
εντολή = DIM, COMMON, REDIM, SHARED, STATIC
τύπος = INTEGER, LONG, SINGLE, DOUBLE, STRING

3) ομάδα μεταβλητών:
DEFINT A-Z
(DEFINT, DEFLNG, DEFSNG, DEFDBL, DEFSTR)

IDENTIFIER

LITERAL

KEYWORD

OPERATOR

GRAMMAR

INSTRUCTION

INTEGRATED-DEVELOPMENT-ENVIRONMENT#cptIt430#

LEARNING

ORGANIZATION#cptIt968#

PEOPLE

qb'PROGRAM#cptIt59#

name::
* McsEngl.qb'PROGRAM@cptIt,

if program

' Kef8DE1 Αξιολόγηση μαθητή με βάση το βαθμό του.
' IF THEN
CLS
DO
INPUT "Δώσε βαθμό = ", b!
LOOP UNTIL b! <= 20
IF b! >= 17.5 AND b! <= 20 THEN PRINT "Arista"
IF b! >= 15.5 AND b! < 17.5 THEN
PRINT "Poli Kala"
END IF
IF b! >= 13.5 AND b! < 15.5 THEN PRINT "Kala"
IF b! >= 9.5 AND b! < 13.5 THEN PRINT "Metria"
IF b! < 9.5 THEN PRINT "Aporiptete" END
******************************************************
' Foliasmena IF
CLS
DO
INPUT "Δώσε βαθμό = ", b!
LOOP UNTIL b! <= 20
IF b! >= 17.5 THEN
PRINT "Arista"
ELSE
IF b! >= 15.5 THEN
PRINT "Poli Kala"
ELSE
IF b! >= 13.5 THEN
PRINT "Kala"
ELSE
IF b! >= 9.5 THEN
PRINT "Metria"
ELSE
PRINT "Aporiptete"
END IF
END IF
END IF
END IF
END
**********************************************************
' IF-ELSEIF
CLS INPUT "Dose Vatmo=", b!
IF b! >= 17.5 THEN PRINT "Arista"
ELSEIF b! >= 15.5 THEN
PRINT "Poli Kala"
ELSEIF b! >= 13.5 THEN
PRINT "Kala"
ELSEIF b! >= 9.5 THEN
PRINT "Metria"
ELSE
PRINT "Aporiptete"
END IF
END
*********************************
' SELECT CASE
CLS
DO
INPUT "Δώσε βαθμό = ", b!
LOOP UNTIL b! <= 20
SELECT CASE b!
CASE IS >= 17.5
PRINT "Αριστα"
CASE IS >= 15.5
PRINT "Πολύ καλά"
CASE IS >= 13.5
PRINT "Καλά"
CASE IS >= 9.5
PRINT "Μέτρια"
CASE ELSE
PRINT "Απορρίπτεται"
END SELECT
END

min/max

REM διαβάζει 3 αριθμούς και τυπώνει min/max
CLS
INPUT "δώσε ένα αριθμό = ", x
min = x: max = x i = 0
WHILE i < 2
INPUT "δώσε ένα αριθμό = ", x
IF x < min THEN min = x
IF x > max THEN max = x
i = i + 1
WEND
PRINT
PRINT "min ="; min
PRINT "max ="; max

**********************************************
'Διαβάζει >>>3<<< αριθμούς και εμφανίζει
'το μικρότερο και το μεγαλύτερο
CLS
INPUT x
min = x
max = x
FOR i = 0 TO 3
 INPUT x
 IF x < min THEN min = x
 IF x > max THEN max = x
 i = i + 1
NEXT i
PRINT min
PRINT max

***********************************************
'Διαβάζει >>>3<<< αριθμούς και εμφανίζει
'το μικρότερο και το μεγαλύτερο
CLS
INPUT x
min = x
max = x
i = 2
DO
INPUT x
IF x < min THEN min = x
IF x > max THEN max = x
i = i + 1
LOOP UNTIL i > 3
PRINT min
PRINT max

SEMANTICS

resourceInfHmn#cptResource843#

STATEMENT

ASSIGNMENT STATEMENT

Μεταβλητή = έκφραση

INPUT STATEMENT

INPUT "comment", variables:
Αν οι μεταβλητές χωρίζονται με κόμματα, τοτε οι εισαγόμενες τιμές πρέπει να χωρίζονται με κόμα.

OUTPUT STATEMENT

PRINT variables
** άν υπάρχουν κόμματα, τότε εμφανίζονται ανά 14 χαρακτήρες
** άν υπάρχουν ερωτηματικά, τότε σε συνεχόμενες θέσεις.

SYNTAX

USER'INTERFACE#cptIt420.1#

name::
* McsEngl.USER'INTERFACE@cptIt,

lcp.instance.PERL {1987}

name::
* McsEngl.conceptIt294,
* McsEngl.lcp.perl@cptIt294,
* McsEngl.perl@cptIt294,
* McsEngl.PERL computer-language,
* McsEngl.practical extraction and report language,
* McsEngl.perl-pcl@cptIt294,
* McsEngl.programing-language.PERL,

lcpPerl'DEFINITION

_DESCRIPTION:
Paradigm(s)  multi-paradigm: functional, imperative, object-oriented (class-based), reflective, procedural, Event-driven, generic
Appeared in  1987
Designed by  Larry Wall
Developer  Larry Wall
Stable release  5.18.2[1] (January 7, 2014)
Preview release  5.19.8[2] (January 20, 2014)
Typing discipline  Dynamic
Influenced by  AWK, Smalltalk 80, Lisp, C, C++, sed, Unix shell, Pascal
Influenced  Python, PHP, Ruby, ECMAScript, LPC, Windows PowerShell, JavaScript, Falcon, Perl 6, Qore
Implementation language  C
OS  Cross-platform
License  GNU General Public License or Artistic License[3]
Usual filename extensions  .pl .pm .t .pod[citation needed]
Website  www.perl.org
Perl is a dynamic programming language created by Larry Wall and first released in 1987. Perl borrows features from a variety of other languages including C, shell scripting (sh), AWK, sed and Lisp.[1]
Structurally, Perl is based on the brace-delimited block style of AWK and C, and was widely adopted for its strengths in text processing and lack of the arbitrary limitations of many scripting languages at the time.[2]
[http://en.wikipedia.org/wiki/Perl]
===
Perl's author, Larry Wall, describes Perl this way:
Perl is an interpreted language optimized for scanning arbitrary text files, extracting information from those text files, and printing reports based on that information. It's also a good language for many system management tasks. The language is intended to be practical (easy to use, efficient, complete) rather than beautiful (tiny, elegant, minimal). It combines (in the author's opinion, anyway) some of the best features of C, sed, awk, and sh, so people familiar with those languages should have little difficulty with it. (Language historians will also note some vestiges of csh, Pascal, and even BASIC-PLUS.) Expression syntax corresponds quite closely to C expression syntax. Unlike most Unix utilities, Perl does not arbitrarily limit the size of your data--if you've got the memory, Perl can slurp in your whole file as a single string. Recursion is of unlimited depth. And the hash tables used by associative arrays grow as necessary to prevent degraded performance. Perl uses sophisticated pattern matching techniques to scan large amounts of data very quickly. Although optimized for scanning text, Perl can also deal with binary data, and can make dbm files look like associative arrays (where dbm is available). Setuid Perl scripts are safer than C programs through a dataflow tracing mechanism which prevents many stupid security holes. If you have a problem that would ordinarily use sed or awk or sh, but it exceeds their capabilities or must run a little faster, and you don't want to write the silly thing in C, then Perl may be for you. There are also translators to turn your sed and awk scripts into Perl scripts.
[http://language.perl.com/info/synopsis.html 1997sep]

Perl, a programming language which has many powerful text processing utilities. Perl is freely available on the Internet for many platforms. It is one of the most popular choices for writing CGI programs.
[DSWgroup Java Tutorial, 1996]

lcpPerl'GENERIC

_GENERIC:
* TEXT_BASED_PROCESSING_PCL##

lcpPerl'archetype

name::
* McsEngl.lcpPerl'archetype@cptIt,

lcpPerl'archetype.ALGORITHM

name::
* McsEngl.lcpPerl'archetype.ALGORITHM@cptIt,
* McsEngl.perlalgo@cptIt, {2014-02-23}

_DESCRIPTION:
Perl is a general-purpose programming language originally developed for text manipulation and now used for a wide range of tasks including system administration, web development, network programming, GUI development, and more.
[http://en.wikipedia.org/wiki/Perl]
===
ideal for:
quick prototyping
creating system utilities
developing software tools
system management
database access
graphics manipulation
networking
gluing other applications together
[CNET 1998may]

perlalgo.TEXT

name::
* McsEngl.perlalgo.TEXT@cptIt,

_DESCRIPTION:
Text manipulation
Perl includes powerful tools for processing text that make it ideal for working with HTML, XML, and all other mark-up and natural languages.
[http://www.perl.org/about.html]

perlalgo.WEB

name::
* McsEngl.perlalgo.WEB@cptIt,

_DESCRIPTION:
Perl 5 and the Web
Ideal web programming language

Perl is an ideal web programming language due to its text manipulation capabilities and rapid development cycle.

Web Frameworks

There are many web frameworks written in Perl, a leading one is Catalystexternal link.

Database integration

Perl's DBIexternal link package makes web-database integration easy. DBIx::Classexternal link - is available as an Object Relational Mapper.

Web modules

CPANexternal link offers thousands of modules, so almost any task you need to accomplish will be made easier, from URL or image manipulation, to Amazon EC2 APIs and much more.

Duct-tape of the internet, and more...

Perl has long been known as "the duct-tape of the Internetexternal link", however many large web based applications are also written solely in Perl.

Encryption capable

Perl can handle encrypted Web data, including e-commerce transactions.

Embed into Apache

Perl can be embedded into web servers to speed up processing by as much as 2000%, mod_perlexternal link allows the Apache web server to embed a Perl interpreter.
[http://www.perl.org/about.html]

lcpPerl'archetype.ARRAY @array=(1;2)

name::
* McsEngl.lcpPerl'archetype.ARRAY @array=(1,2),
* McsEngl.perlarray@cptIt,

_DESCRIPTION:
An array represents a list of values:
my @animals = ("camel", "llama", "owl");
my @numbers = (23, 42, 69);
my @mixed = ("camel", 42, 1.23);
Arrays are zero-indexed. Here's how you get at elements in an array:
print $animals[0]; # prints "camel"
print $animals[1]; # prints "llama"
The special variable $#array tells you the index of the last element of an array:
print $mixed[$#mixed]; # last element, prints 1.23
You might be tempted to use $#array + 1 to tell you how many items there are in an array. Don't bother. As it happens, using @array where Perl expects to find a scalar value ("in scalar context") will give you the number of elements in the array:
if (@animals < 5) { ... }
The elements we're getting from the array start with a $ because we're getting just a single value out of the array; you ask for a scalar, you get a scalar.
To get multiple values from an array:
@animals[0,1]; # gives ("camel", "llama");
@animals[0..2]; # gives ("camel", "llama", "owl");
@animals[1..$#animals]; # gives all except the first element
This is called an "array slice".
You can do various useful things to lists:
my @sorted = sort @animals;
my @backwards = reverse @numbers;
There are a couple of special arrays too, such as @ARGV (the command line arguments to your script) and @_ (the arguments passed to a subroutine). These are documented in perlvar.
[http://perldoc.perl.org/perlintro.html]

lcpPerl'archetype.HASH %map=(1=>'one';2=>'two')

name::
* McsEngl.lcpPerl'archetype.HASH %map=(1=>'one'@cptIt,2=>'two'),
* McsEngl.perlhash@cptIt,

_DESCRIPTION:
A hash represents a set of key/value pairs:
my %fruit_color = ("apple", "red", "banana", "yellow");
You can use whitespace and the => operator to lay them out more nicely:
my %fruit_color = (
apple => "red",
banana => "yellow",
);
To get at hash elements:
$fruit_color{"apple"}; # gives "red"
You can get at lists of keys and values with keys() and values().
my @fruits = keys %fruit_colors;
my @colors = values %fruit_colors;
Hashes have no particular internal order, though you can sort the keys and loop through them.
Just like special scalars and arrays, there are also special hashes. The most well known of these is %ENV which contains environment variables. Read all about it (and other special variables) in perlvar.
[http://perldoc.perl.org/perlintro.html]

lcpPerl'archetype.FUNCTION

name::
* McsEngl.lcpPerl'archetype.FUNCTION@cptIt,
* McsEngl.perlfunction@cptIt,

perlfunction'parameter

name::
* McsEngl.perlfunction'parameter@cptIt,

_DESCRIPTION:
You can use parentheses for functions' arguments or omit them according to your personal taste. They are only required occasionally to clarify issues of precedence.
print("Hello, world\n");
print "Hello, world\n";
[http://perldoc.perl.org/perlintro.html]

lcpPerl'archetype.SCALAR $var=42

name::
* McsEngl.lcpPerl'archetype.SCALAR $var=42@cptIt,
* McsEngl.perlscalar@cptIt,

_DESCRIPTION:
A scalar represents a single value:
my $animal = "camel";
my $answer = 42;
Scalar values can be strings, integers or floating point numbers, and Perl will automatically convert between them as required. There is no need to pre-declare your variable types, but you have to declare them using the my keyword the first time you use them. (This is one of the requirements of use strict; .)
Scalar values can be used in various ways:
print $animal;
print "The animal is $animal\n";
print "The square of $answer is ", $answer * $answer, "\n";
There are a number of "magic" scalars with names that look like punctuation or line noise. These special variables are used for all kinds of purposes, and are documented in perlvar. The only one you need to know about for now is $_ which is the "default variable". It's used as the default argument to a number of functions in Perl, and it's set implicitly by certain looping constructs.
print; # prints contents of $_ by default
[http://perldoc.perl.org/perlintro.html]

lcpPerl'archetype.STRING

name::
* McsEngl.lcpPerl'archetype.STRING@cptIt,

_CODE.PERL:
Double quotes or single quotes may be used around literal strings:
print "Hello, world";
print 'Hello, world';
However, only double quotes "interpolate" variables and special characters such as newlines (\n ):
print "Hello, $name\n"; # works fine
print 'Hello, $name\n'; # prints $name\n literally
[http://perldoc.perl.org/perlintro.html]

lcpPerl'code

name::
* McsEngl.lcpPerl'code@cptIt,

lcpPerl'code.PROGRAM

name::
* McsEngl.lcpPerl'code.PROGRAM@cptIt,
* McsEngl.lcpPerl'program@cptIt,
* McsEngl.perl-program@cptIt,
* McsEngl.perl-script@cptIt,
* McsEngl.perlprogram@cptIt,

_DESCRIPTION:
A Perl script or program consists of one or more statements. These statements are simply written in the script in a straightforward fashion. There is no need to have a main() function or anything of that kind.
Perl statements end in a semi-colon:
print "Hello, world";
[http://perldoc.perl.org/perlintro.html]

perlprogram'executing

name::
* McsEngl.perlprogram'executing@cptIt,

_DESCRIPTION:
Running Perl programs
To run a Perl program from the Unix command line:
perl progname.pl
Alternatively, put this as the first line of your script:
#!/usr/bin/env perl
... and run the script as /path/to/script.pl. Of course, it'll need to be executable first, so chmod 755 script.pl (under Unix).
(This start line assumes you have the env program. You can also put directly the path to your perl executable, like in#!/usr/bin/perl ).
For more information, including instructions for other platforms such as Windows and Mac OS, read perlrun.
[http://perldoc.perl.org/perlintro.html]

perlprogram.ONE-LINER

name::
* McsEngl.perlprogram.ONE-LINER@cptIt,

_DESCRIPTION:
Perl one-liners are small and awesome Perl programs that fit in a single line of code and they do one thing really well. These things include changing line spacing, numbering lines, doing calculations, converting and substituting text, deleting and printing certain lines, parsing logs, editing files in-place, doing statistics, carrying out system administration tasks, updating a bunch of files at once, and many more.
[http://www.catonmat.net/blog/perl-book/]

lcpPerl'replace-a-string-in-multiple-files

name::
* McsEngl.lcpPerl'replace-a-string-in-multiple-files@cptIt,

Example 1: Replace a string in multiple files at once

perl -p -i.bak -e 's/Config/config/g' conf1 conf2 conf3
Suppose you have 3 configuration files, and you discover that you made a mistake and need to replace all occurrences of Config with config. This one-liner does just that. It executes the s/Config/config/g that replaces all occurrences of Config with config on all lines. And since you're smart about it, you always do -i.bak to make backup files in case something goes wrong.

I explain the -i, -p, and -e arguments in the e-book in great detail.
[http://www.catonmat.net/blog/perl-book/]

lcpPerl'code.SENTENCE

name::
* McsEngl.lcpPerl'code.SENTENCE@cptIt,
* McsEngl.perlsentence@cptIt,

lcpPerl'code.ATOM

name::
* McsEngl.lcpPerl'code.ATOM@cptIt,

lcpPerl'atom.COMMENT

name::
* McsEngl.lcpPerl'atom.COMMENT@cptIt,

_CODE.PERL:
Comments start with a hash symbol and run to the end of the line
# This is a comment
[http://perldoc.perl.org/perlintro.html]

lcpPerl'code.UNIT

name::
* McsEngl.lcpPerl'code.UNIT@cptIt,

lcpPerl'doing

name::
* McsEngl.lcpPerl'doing@cptIt,

lcpPerl'doing.learning

name::
* McsEngl.lcpPerl'doing.learning@cptIt,

Best of all, Perl is remarkably simple to learn.
[CNET 1998may]

lcpPerl'doing.EVOLUTING#cptCore546.171#

name::
* McsEngl.lcpPerl'doing.EVOLUTING@cptIt,

2007-12-18:
5.10.0 release
[http://en.wikipedia.org/wiki/Perl]

1998:
As of early May 1998, the current version is 5.004_04.
[CNET 1998may]

1995-10-26: CPAN:
One of the most important events in Perl 5 history took place outside of the language proper, and was a consequence of its module support. On 1995-10-26, the Comprehensive Perl Archive Network (CPAN) was established as a repository for Perl modules and Perl itself. At the time of writing, it carries over 11,000 modules by over 5,000 authors. CPAN is widely regarded as one of the greatest strengths of Perl in practice.
[http://en.wikipedia.org/wiki/Perl]

1994-10-17: Perl5:
Perl 5 was released on 1994-10-17. It was a nearly complete rewrite of the interpreter, and added many new features to the language, including objects, references, local (my) variables, and modules. Importantly, modules provided a mechanism for extending the language without modifying the interpreter. This allowed the core interpreter to stabilize, even as it enabled ordinary Perl programmers to add new language features.
[http://en.wikipedia.org/wiki/Perl]

1989:
Perl 3, released in 1989, added support for binary data streams.
[http://en.wikipedia.org/wiki/Perl]

1988:
Perl 2, released in 1988, featured a better regular expression engine.
[http://en.wikipedia.org/wiki/Perl]

{time.1987-12-18
Larry Wall began work on Perl in 1987, while working as a programmer at Unisys,[3] and released version 1.0 to the comp.sources.misc newsgroup on 1987-12-18. The language expanded rapidly over the next few years.
[http://en.wikipedia.org/wiki/Perl]

lcpPerl'file

name::
* McsEngl.lcpPerl'file@cptIt,
* McsEngl.file.perl@cptIt,
* McsEngl.pl-file@cptIt,

lcpPerl'price#cptEconomy541.44#

name::
* McsEngl.lcpPerl'price@cptIt,

Perl is nonproprietary and freely distributed
[CNET 1998may]

lcpPerl'resource

name::
* McsEngl.lcpPerl'resource@cptIt,

_ADDRESS.WPG:
* http://www.perl.org//
* modules: http://www.cpan.org//
=== LEARNING:
* http://learn.perl.org//
* intro: http://perldoc.perl.org/perlintro.html,
=== BOOK:
* http://modernperlbooks.com/books/modern_perl/index.html,

lcpPerl.PERL6

name::
* McsEngl.lcpPerl.PERL6@cptIt,

_DESCRIPTION:
"Perl" is a family of languages, "Perl 6" is part of the family, but it is a separate language which has its own development team. Its existence has no significant impact on the continuing development of "Perl 5".
[http://www.perl.org/about.html]

lcp.instance.SELF {1987}

_CREATED: {2014-01-18}

name::
* McsEngl.lcp.instance.SELF {1987}@cptIt,
* McsEngl.pgmlng.self@cptIt,
* McsEngl.self-programming-language@cptIt,

_DESCRIPTION:
Self is an object-oriented programming language based on the concept of prototypes. Self was a dialect of Smalltalk, being dynamically typed and using just-in-time compilation (JIT) as well as the prototype-based approach to objects: it was first used as an experimental test system for language design in the 1980s and 1990s. In 2006, Self was still being developed as part of the Klein project, which was a Self virtual machine written fully in Self. The latest version is 4.5.0 released in January 2014.[1]

Several just-in-time compilation techniques were pioneered and improved in Self research as they were required to allow a very high level object oriented language to perform at up to half the speed of optimized C. Much of the development of Self took place at Sun Microsystems, and the techniques they developed were later deployed for Java's HotSpot virtual machine.

At one point a version of Smalltalk was implemented in Self. Because it was able to use the JIT this also gave extremely good performance[citation needed].
[http://en.wikipedia.org/wiki/Self_(programming_language)]

selfpl'resource.tutorial

name::
* McsEngl.selfpl'resource.tutorial@cptIt,

Self tutorial

Self, a successor to Smalltalk, goes even further in pushing the generality of the object paradigm. Self implements almost all standard language constructs in terms of sending messages to objects, i.e. function calls. As a result, the syntax for conditionals, loops, etc. is somewhat strange. The situation is similar to Scheme's treatment of everything as a function call.
Summary

Concept  Scheme  Self
Arithmetic  (+ (* 2 3) 2)  (2 * 3) + 2
Variables  
(let ((x 3))
(set! x (+ x 1)))
| x <- 3 |
x: x + 1
Functions  
(define (f) (set! x (+ x 1)))
(f)
| f = (x: x + 1) |
f
Multiple arguments  
(define (timesPlus x a b) (+ (* a x) b))
(timesPlus 3 2 2)
| times: a Plus: b = ((a * self) + b) |
3 times: 2 Plus: 2
Conditional  (if (< x 0) -1 1)  (x < 0) ifTrue: -1 False: 1
Block  (let ((x 3) (y 4)) (+ x y))  [| x <- 3. y <- 4 | x + y ]
Loop  
(for-each (lambda (v) (set! x (+ x v)))
'(1 2 3))
(1 & 2 & 3) asList do: [|:v| x: x + v]
Object  none  (| x = 3. y <- 4. parent* = lobby |)
Reflection  none  (| x = 3 |) _Mirror at: 'x' Put: 4
Arithmetic

Comments a delimited by double quotes; strings are delimited by single quotes. Arithmetic is infix, but there is no operator precedence: you must use parentheses in compound expressions. Self overloads several operators; the lack of precedence prevents confusion. Try typing these into the interpreter:
(2 * 3) + 2 "prints 8"
(2 @ 3) + (1 @ -2) "addition of two points; prints 3 @ 1"
'hello' , ' ' , 'there' "comma concatenates strings"
(2 & 'foo' & 4.5) asSequence "a sequence of integer, string, float"
(2 & 'foo' & 4.5) asList "a list"
(2 & 'foo' & 4.5) asSet "a set"
(('a' @ 2) & ('b' @ 3)) asDictionary "a dictionary"
To create the various kinds of collections, we use '&' to make a generic collection and then "type-cast" it.
Variables

The interpreter is an object (called the shell) in which your expressions are evaluated. So to create a variable, you add a slot to the shell. You can do this with:
_AddSlots: (| x = 3 |) "bind x to 3; x is read-only"
x + 1 "prints 4"
_AddSlots: (| x <- 3 |) "bind x to 3; x is mutable"
x: 4 "change x to 4"
x: x + 1 "increment x; prints 5"
When x is defined as a mutable slot, a method called "x:" is also defined. Calling this method with an argument changes the value in the slot.
Since the syntax for adding slots is cumbersome, we're sometimes going to be a bit sloppy and use the abbrevation | x = 3 | instead of _AddSlots: (| x = 3 |).

Functions

We can create a function f, which increments x:
_AddSlots: (| f = (x: x + 1) |) "bind f to a function"
f "call the function"
x "prints 6"
There is no difference between reading a variable and calling a function (as in the case with f). This means that we can switch between storing a value to generating it on the fly, without making clients aware of it. In this sense, Self really doesn't have a special notion of "variable"; it only has slots and function calls which can modify slots.
Every function has an implicit argument called self, which is the value to the left of the function name at the point of call. Here is a function which uses self:

lobby _AddSlots: (| plus1 = (self + 1) |) "define the successor function"
4 plus1 "prints 5"
By adding the function to the lobby, not just the shell, we can apply it to almost any object, including numbers, since they all inherit from the lobby object.
In Self parlance, function calls are called message sends, where the first argument (the one bound to self inside the function body) is the receiver and the result is the answer. When the receiver is omitted it defaults to the self at the point of call, which in our case is the shell.

Multiple arguments

To call or create a function with multiple arguments, we use a colon-suffixed keyword before each argument. This makes Self read somewhat like English. For example,
"Define a function which multiplies the receiver, self, by 'a'
and adds 'b' to the result."
lobby _AddSlots: (| times: a Plus: b = ((a * self) + b) |)
3 times: 2 Plus: 2 "prints 8"
By comparison, in Sather we would say something like 3.timesPlus(2, 2). Note that the first keyword is uncapitalized, while all successive keywords are capitalized. This is used to disambiguate nested calls.
Setting a variable, e.g. x: 4 is really just a procedure call with two arguments. The first argument is self (the shell) and the second is the number 4.

Conditional

Like Scheme, a conditional in Self is a function call. However, it looks different because Self uses a keyword calling convention. For example, the Scheme expression
(if (< x 0) -1 1)
translates into
(x < 0) ifTrue: -1 False: 1
Blocks

The Scheme let block is realized in Self using brackets. The Scheme expression
(let ((x 3) (y 4)) (+ x y))
translates into
[| x = 3. y = 4 | x + y ]
A few words of explanation are required here. A block has the form
[|slots| code ]
where both the slots and the code are optional. The value of a block is the result of executing the code in the environment defined by the slots. Slots are separated by periods, and have the form name = value (immutable slot) or name <- value (mutable slot). We saw this notation earlier with respect to objects. In fact, blocks are just a kind of short-lived object; their slots can be accessed from the outside and they can be passed to functions (but not returned from them).
Loops

Like closures in Scheme, Self blocks are used to implement control structures. Examples:
[x > 0] whileTrue: [ x: x - 1 ] "evaluates the right block until
the left block answers false"
(1 & 2 & 3) asSequence do: [ x: x + 1 ] "increments x three times"
(1 & 2 & 3) asSequence do: [|:v| x: x + v] "adds 6 to x"
The last example demonstrates a block which takes an argument v. The argument is designated by a slot name with a leading colon. The do: method for a sequence calls the block with every member of the sequence. In the second case, the block had no arguments so these values were ignored. We can create new objects which behave like sequences just by defining a do: function for them. Or we can define any new control structures we want.
Objects

An object is written just like a block, but with parentheses instead of brackets. Objects differ in that they can live longer than blocks. Now we can understand how _AddSlots: works: it copies the slots in the object on the right into the object on the left. There is no syntax for adding a slot to an existing object, so we have to create new objects and throw them away.
To print an object in a low-level format, use the _Print function:

((| x = 3 |) _AddSlots: (| y <- 4 |)) _Print
"prints ( | x = 3. y <- 4. | )"
A slot defined with an arrow is a normal data member. A slot defined with the equals sign is a read-only constant member. If the slot name ends with a star, then the slot is a parent slot. If a slot lookup fails on an object, then the parent slots are searched in order. This is similar to multiple inheritance in Python. The difference is that in Self a parent slot can be a mutable data member, allowing an object to change its behavior at runtime.

Reflection

Like Python, objects can be treated as collections. In Self, these collections are called mirrors. To treat an object as a dictionary of slots, call the function _Mirror on it. Dictionaries are accessed using the at: and at:Put: functions:
_AddSlots: (| d = (('a' @ 2) & ('b' @ 3)) asDictionary.
o = (| a = 2. b = 3 |)
|)
d at: 'b' "prints 3"
d at: 'b' Put: 4
d at: 'b' "prints 4"
o _Mirror at: 'b' "prints b = 3"
o _Mirror at: 'b' Put: 4
o _Mirror at: 'b' "prints b = 4"
(o _Mirror at: 'b') name: 'c' "changes name of slot b to c"
o c "prints 4"
PLE Home page
Last modified: Tue Apr 25 10:00:57 GMT 2006
[http://alumni.media.mit.edu/~tpminka/PLE/self/self-tut.html]

lcp.instance.COOL (clips) {1985}

NAME

name::
* McsEngl.lcp.instance.COOL (clips) {1985}@cptIt,
* McsEngl.conceptIt464,
* McsEngl.clips@cptIt464,
* McsEngl.C-Language-Integrated-Production-System@cptIt,
* McsEngl.pl.cool@cptIt,
* McsEngl.programing-language.COOL@cptIt,

DEFINITION

CLIPS is a public domain software tool for building expert systems. The name is an acronym for "C Language Integrated Production System." The syntax and name was inspired by Charles Forgy's OPS ("Official Production System," although there was nothing really official about it). The first versions of CLIPS were developed starting in 1985 at NASA-Johnson Space Center (as an alternative for existing system ART*Inference) until the mid-1990s when the development group's responsibilities ceased to focus on expert system technology. The original name of the project was NASA's AI Language (NAIL).
CLIPS is probably the most widely used expert system tool.[1] CLIPS incorporates a complete object-oriented language COOL for writing expert systems. CLIPS itself is written in C, extensions can be written in C, and CLIPS can be called from C. Its user interface closely resembles that of the programming language Lisp. COOL combines the programming paradigms of procedural, object oriented and logical (theorem proving) languages. A language with a similar approach is Planner, which also combines traits of logical languages like Prolog with the capabilities of procedural and OO-languages like C++.
[http://en.wikipedia.org/wiki/CLIPS]

CLIPS is a type of computer language designed for writing applications called expert systems. An expert system is a program which is specifically intended to model human expertise or knowledge. In contrast, common programs such as payroll programs, word processors, spreadsheets, computer games, and so forth, are not intended to embody human expertise or knowledge.

GENERIC

_GENERIC:
* programming_language#cptItsoft248#

lcp.instance.C++ (cpp) {1979}

name::
* McsEngl.conceptItsoft677,
* McsEngl.C++ computer language@cptIt,
* McsEngl.c-plus-plus@cptIt,
* McsEngl.cplus@cptItsoft677,
* McsEngl.cpp@cptItsoft677,
* McsEngl.programing-language.Cpp@cptIt,

_DESCRIPTION::
C++ is regarded as a middle-level language, as it comprises a combination of both high-level and low-level language features.
[https://www.tutorialspoint.com/cplusplus/cpp_overview.htm]

cpp'GENERAL#cptCore50.29.10#

name::
* McsEngl.cpp'GENERAL@cptIt,

_GENERIC:
* programming_language#cptItsoft248#
* OBJECT-ORIENTED-LANGUAGE#ql:[Level CONCEPT:conceptIt220 rl?]##cptIt220#

cpp'archetype

name::
* McsEngl.cpp'archetype@cptIt,

_DESCRIPTION:
· archetype is the-description of an-info-process, we want a-computer to do, the-way a-human does.
[hmnSngo.2018-02-26]

cpp'algorithm

name::
* McsEngl.cpp'algorithm@cptIt,

_DESCRIPTION:
· algorithm is the-description of an-info-process, we want a-computer to do, the-way a-computer does IN ANY LANGUAGE.
· C++ is a middle-level language, ie the-programmer has access to its RAM.
[hmnSngo.2018-02-28]

cpp'document

name::
* McsEngl.cpp'document@cptIt,

_DESCRIPTION:
· cpp-document is the-description of an-info-process, we want a-computer to do, the-way a-computer does in cpp.
[hmnSngo.2018-02-26]

cpp'doc'unit

name::
* McsEngl.cpp'doc'unit@cptIt,

cpp'doc'semantic-unit

name::
* McsEngl.cpp'doc'semantic-unit@cptIt,

cpp'sut.SIMPLE

name::
* McsEngl.cpp'sut.SIMPLE@cptIt,
* McsEngl.fundamental-variable@cptIt,

_DEFINITION: the ones of type int, char or short.

cpp'sut.COMPOUND

name::
* McsEngl.cpp'sut.COMPOUND@cptIt,

cpp'sut.ARRAY

name::
* McsEngl.cpp'sut.ARRAY@cptIt,

_DEFINITION:
Arrays are a series of elements of the same type placed consecutively in memory that can be individually referenced by adding an index to a unique name.

DECLARATION:
a) int billy [5];
b) int billy [5] = { 16, 2, 77, 40, 12071 };

cpp'doc'sut.CHARACTER

name::
* McsEngl.cpp'doc'sut.CHARACTER@cptIt,

_SPECIFIC::
char  Exactly one byte in size. At least 8 bits.
char16_t  Not smaller than char. At least 16 bits.
char32_t  Not smaller than char16_t. At least 32 bits.
wchar_t  Can represent the largest supported character set.

cpp'string

name::
* McsEngl.cpp'string@cptIt,

_INITIALIZATION::
string mystring = "This is a string";
string mystring ("This is a string");
string mystring {"This is a string"};

cpp'ESCAPE'CODES

name::
* McsEngl.cpp'ESCAPE'CODES@cptIt,

Up until now, the only way you've seen to move down a line is by using endl, the mystical-move-down-a-line object. What if we told you there was another, perhaps even better, way to do it?
Well, there is, and it's the magic of escape codes. What's an escape code? Well, they are a bunch of codes you can put in the middle of a string that represent actions. They can produce a tab on the screen, move the cursor down a line, back the cursor up, even make the computer beep. They best part is, you put them right inside your strings, so it saves a little work.
Escape codes always begin with a "\" followed by a letter. The first one we'll try out is "\n", which moves the cursor down to the next line.
#include <iostream.h>
void main(void) { cout << "Hello World!\n"; }
Notice how the "\n" takes the place of having to say "<< endl".

Isn't that so much easier? Let's try using some more ones:
#include <iostream.h>
void main(void) { cout << "Here is a Return (\n) " << endl; cout << "Here is a Tab (\t) " << endl; cout << "Here is a Backspace (\b)" << endl; cout << "Here is a Beep (\a) " << endl; cout << "Here is a Slash (\\) " << endl; cout << "Here is a Quote (\") " << endl; }
The above code should explain itself, but here is a list of escape codes you can use and what they mean:
\n Newline
\t Tab
\b Backspace
\a Beep
\\ Backslash
\? Question Mark
\' Single Quote
\" Double Quote

cpp'doc'sut.NUMBER

name::
* McsEngl.cpp'doc'sut.NUMBER@cptIt,
* McsEngl.cpp'number@cptIt,

_SPECIFIC::
short  2 byte  -32,768 to 32,767
signed short  2 byte  -32,768 to 32,767
unsigned short  2 byte  0 to 32,767
int  2 byte  -32,768 to 32,767
signed int  2 byte  -32,768 to 32,767
unsigned int  2 byte  0 to 32,767
short int  2 byte  -32,768 to 32,767
signed short int  2 byte  -32,768 to 32,767
unsigned short int  2 byte  0 to 32,767
long int  4 byte
signed long int  4 byte
unsigned long int  4 byte
float  4 byte
double  8 byte
long double  10 byte
[https://www.javatpoint.com/cpp-data-types]
===
Integer types (signed)  signed char  Same size as char. At least 8 bits.
signed short int  Not smaller than char. At least 16 bits.
signed int  Not smaller than short. At least 16 bits.
signed long int  Not smaller than int. At least 32 bits.
signed long long int  Not smaller than long. At least 64 bits.
Integer types (unsigned)  unsigned char  (same size as their signed counterparts)
unsigned short int
unsigned int
unsigned long int
unsigned long long int
Floating-point types  float  
double  Precision not less than float
long double  Precision not less than double

cpp'integer

name::
* McsEngl.cpp'integer@cptIt,

75 // decimal
0113 // octal
0x4b // hexadecimal
75 // int
75u // unsigned int
75l // long
75ul // unsigned long
75lu // unsigned long

cpp'doc'sut.BOOLEAN

name::
* McsEngl.cpp'doc'sut.BOOLEAN@cptIt,

cpp'doc'sut.FUNCTION

name::
* McsEngl.cpp'doc'sut.FUNCTION@cptIt,
* McsEngl.cpp'function@cptIt,

_DEFINITION:
A function is a block of instructions that is executed when it is called from some other point of the program. The following is its format:
type name ( argument1, argument2, ...) statement
where:
· type is the type of data returned by the function.
· name is the name by which it will be possible to call the function.
· arguments (as many as wanted can be specified). Each argument consists of a type of data followed by its identifier, like in a variable declaration (for example, int x) and which acts within the function like any other variable. They allow to pass parameters to the function when it is called. The different parameters are separated by commas.
· statement is the function's body. It can be a single instruction or a block of instructions. In the latter case it must be delimited by curly brackets {}.


C++, like Pascal, breaks instructions up into blocks called functions. When a program is first run, a function named "main" is executed. One big difference between Pascal and C++ is how functions are defined. Take a look at this very small program:
void main(void) {
}
Let's go over each part. The first line, "void main(void)", is the function heading. This is the equivalent of saying "procedure main;" in Pascal. Note that there's no semicolon in the C++ version; this is because what must come immediately after main is an instruction. Of course, one instruction is not nearly enough, so we can define a block and put as many instructions as we want in it.
In the above example, the block is the area between the { and the }. The { and } are C++'s equivalents of Pascal's Begin and End -- In fact, they are nearly identical. As with Pascal, you can use the { and } to fill in as many lines as we want and have them used as one big instruction. You've probably done this with a for loop before; the for loops only want one instruction to follow it, but if you used begin and end, you could put as many instructions in the loop as you wanted.
[http://ananke.advanced.org/3074/cgi-bin/awooga.cgi/?cookie=odZqq0cZ3I]

cpp'FUNCTION'ARGUMENT

name::
* McsEngl.cpp'FUNCTION'ARGUMENT@cptIt,

Arguments passed by REFERENCE:

// passing parameters by reference#include <iostream.h>
void duplicate (int& a, int& b, int& c) { a*=2; b*=2; c*=2; }
int main () {
int x=1, y=3, z=7;
duplicate (x, y, z);
cout << "x=" << x << ", y=" << y << ", z=" << z; return 0; }
RETURNS: x=2, y=6, z=14
When passing a variable by reference we are passing the variable itself and any modification that we do to that parameter within the function will have effect in the passed variable outside it.

Passing by reference is an effective way to allow a function to return more than one single value.

This type of declaration "by reference" using the ampersand (&) sign is exclusive of C++. In C language we had to use pointers to do something equivalent.

Arguments passed by VALUE:
// function example#include <iostream.h>
int addition (int a, int b) { int r; r=a+b; return (r); }
int main () { int z; z = addition (5,3); cout << "The result is " << z; return 0; }
RETUNS: The result is 8
This way, when function addition is being called the value of its variables a and b become 5 and 3 respectively, but any modification of a or b within the function addition will not affect the values of x and y outside it, because variables x and y were not passed themselves to the the function, only their values.

cpp'FUNCTION'RECURSIVITY

name::
* McsEngl.cpp'FUNCTION'RECURSIVITY@cptIt,

Recursivity is the property that functions have to be called by themselves.

cpp'FUNCTION.MAIN

name::
* McsEngl.cpp'FUNCTION.MAIN@cptIt,

The main function is the point by where all C++ programs begin their execution. It is independent from whether it is at the beginning, at the end or by the middle of the code - its content is always the first to be executed when a program starts. In addition, for that same reason, it is essential that all C++ programs have a main function.

cpp'FUNCTION.PROTOTYPING

name::
* McsEngl.cpp'FUNCTION.PROTOTYPING@cptIt,

Until now, we have defined the functions before the first appearance of a call to it, that generally was in main, leaving the function main for the end. If you try to repeat some of the examples of functions described until now but placing the function main before any other function that is called from within it, you will most likely obtain an error. The reason is that to be able to call to a function this one must have been declared previously (it must be known), like we have done in all our examples. But there is an alternative way to avoid to write all the code of all functions before they can be used in main or in another function. It is by prototyping functions. This consists in making a previous shorter declaration of the complete definition but quite significant so that the compiler can know the arguments and the return type needed.
Its form is:
type name ( argument_type1, argument_type2, ...);
It is identical to the header of a function definition, except: It does not include a statement for the function. That means that it does not include the body with all the instructions that are usually enclose within curly brackets { }. It ends with a semicolon sign (;). In the argument enumeration it is enough to put the type of each argument. The inclusion of a name for each argument as in the definition of a standard function is optional, although recommendable.

cpp'function.OPERATOR

name::
* McsEngl.cpp'function.OPERATOR@cptIt,
* McsEngl.cpp'operator@cptIt,

_ADDRESS.WPG::
* http://www.cplusplus.com/doc/tutorial/operators/
* https://www.javatpoint.com/cpp-operators,

cpp'doc.sut.STRUCT

name::
* McsEngl.cpp'doc.sut.STRUCT@cptIt,

cpp'doc.sut.CLASS

name::
* McsEngl.cpp'doc.sut.CLASS@cptIt,

_DEFINITION:
A class is a logical method to organize data and functions in a same structure. They are declared using keyword class, whose functionality is similar to the one of the C keyword struct, but with the possibility of including functions as members, moreover than only data.
[the cplusplus.com tutorial]

GENERAL:
OOL-CLASS#ql:class-it220i##cptIt220i#

cpp'class'MEMBER:
that can be either data or function declarations,

cpp'class'FUNCTION

name::
* McsEngl.cpp'class'FUNCTION@cptIt,
* McsEngl.cpp'method@cptIt,

_DEFINITION:
A method is simply a function defined within a class which can act upon data in that class.

cpp'doc'sut.NAMED

name::
* McsEngl.cpp'doc'sut.NAMED@cptIt,
* McsEngl.cpp'named-semantic-unit@cptIt,

* McsEngl.cpp'named-semantic-unit@cptIt,

cpp'sut.named'identifier

name::
* McsEngl.cpp'sut.named'identifier@cptIt,
* McsEngl.cpp'identifier@cptIt,

* McsEngl.cpp'identifier@cptIt,

_DESCRIPTION::
A valid identifier is a sequence of one or more letters, digits, or underscore characters (_). Spaces, punctuation marks, and symbols cannot be part of an identifier. In addition, identifiers shall always begin with a letter. They can also begin with an underline character (_), but such identifiers are -on most cases- considered reserved for compiler-specific keywords or external identifiers, as well as identifiers containing two successive underscore characters anywhere. In no case can they begin with a digit.

Very important: The C++ language is a "case sensitive" language. That means that an identifier written in capital letters is not equivalent to another one with the same name but written in small letters. Thus, for example, the RESULT variable is not the same as the result variable or the Result variable. These are three different identifiers identifiying three different variables.
[http://www.cplusplus.com/doc/tutorial/variables/]

cpp'sut.named'keyword

name::
* McsEngl.cpp'sut.named'keyword@cptIt,
* McsEngl.cpp'keywork@cptIt,

* McsEngl.cpp'keyword@cptIt,

_SPECIFIC:
C++ uses a number of keywords to identify operations and data descriptions; therefore, identifiers created by a programmer cannot match these keywords. The standard reserved keywords that cannot be used for programmer created identifiers are:

alignas, alignof, and, and_eq, asm, auto, bitand, bitor, bool, break, case, catch, char, char16_t, char32_t, class, compl, const, constexpr, const_cast, continue, decltype, default, delete, do, double, dynamic_cast, else, enum, explicit, export, extern, false, float, for, friend, goto, if, inline, int, long, mutable, namespace, new, noexcept, not, not_eq, nullptr, operator, or, or_eq, private, protected, public, register, reinterpret_cast, return, short, signed, sizeof, static, static_assert, static_cast, struct, switch, template, this, thread_local, throw, true, try, typedef, typeid, typename, union, unsigned, using, virtual, void, volatile, wchar_t, while, xor, xor_eq

Specific compilers may also have additional specific reserved keywords.
[http://www.cplusplus.com/doc/tutorial/variables/]

cpp'sut.named.variable

name::
* McsEngl.cpp'sut.named.variable@cptIt,
* McsEngl.cpp'variable@cptIt,

* McsEngl.cpp'variable@cptIt,

_DEFINITION:
· variable is a named semantic-unit.
[hmnSgn.2018-02-26]
===
A variable is a storage location.

cpp'variable'DECLARATION:
int a;
float mynumber;
===
An important difference between the C and C++ languages, is that in C++ we can declare variables anywhere in the source code, even between two executable sentences, and not only at the beginning of a block of instructions, like happens in C.

cpp'variable'VALUE:
The data a variable holds.

cpp'variable'IDENTIFIER:
It is the NAME of the variable.

cpp'variable'ADDRESS:
It is the memory-address of the variable. They are stored in POINTERS.

cpp'variable'TYPE:
It is an identifier that denotes what kind of data we can put on this variable.

cpp'variable'INITIALIZATION:
Initialization of variables When declaring a local variable, its value is undetermined by default. But you may want that a variable stores a concrete value since the moment in which it is declared. In order to do that, you have to append an equal sign followed by the value wanted to the variable declaration: type identifier = initial_value ; For example, if we want to declare an int variable called a that contains the value 0 since the moment in which it is declared, we could write:
int a = 0;
Additionally to this way of initializating variables (known as c-like), C++ has added a new way to initialize a variable: by enclosing the initial value between parenthesis ():
type identifier (initial_value) ; For example:
int a (0);
Both ways are valid and equivalent in C++.

cpp'sut.named.constant

name::
* McsEngl.cpp'sut.named.constant@cptIt,
* McsEngl.cpp'constant@cptIt,

* McsEngl.cpp'constant@cptIt,

cpp'sut.named.POINTER

name::
* McsEngl.cpp'sut.named.POINTER@cptIt,
* McsEngl.cpp'pointer@cptIt,

* McsEngl.cpp'pointer@cptIt,
* McsEngl.cpp-p@cptIt,

_DEFINITION:
The variable that stores the [ram] address of another variable (like ted in the previous example) is what we call a pointer.
andy = 25;
fred = andy;
ted = &andy;

DECLARATION:
Thus, the declaration of pointers follow this form:
type * pointer_name;
where type is the type of data pointed, not the type of the pointer itself.

_DESCRIPTION::
a variable which stores the address of another variable is called a pointer.
[http://www.cplusplus.com/doc/tutorial/pointers/]
===
C++ uses pointers very much like Pascal does; The differences, more often than not, are very small. Let's look at how to declare pointers in both Pascal and C++:
Pascal :
p : ^Integer;
C++ :
int *p;
In both cases, the difference between declaring an integer and a pointer that points to an integer (we'll say "pointer-to-int" from now on) is a single character. It is important that you notice that in Pascal, you're declaring p to be of type pointer-to-int, while in C++, you're declaring a pointer whose type is int. The difference?

If you declare many pointers on one line in C++, you must make sure to put a * by each of the variables. Also, you can put ints next to pointers-to-ints in a declaration by not putting a * next to the int. Confused? Try reading some of the next examples, and see if they help visualize the concepts.
Here are some more examples of declaring pointers:
int *taco, *nacho;
char burrito, *salsa;
float *chimichanga, margarita;
Notice that you can put both variables and pointers-to-variables on the same line? On the second line, both a character (burrito) and a pointer-to-character (salsa) were both declared. On the third line, a pointer-to-float (chimichanga) and a float (margarita) were both declared.
Watch Out!
It's easy to see the line
float * chimichanga, margarita;
and think that you are declaring chimichanga and margarita both to be of type pointer-to-float. This is NOT the case, however. The * only applies to the variable it's right in front of, in this case chimichanga. By making your *'s touch the front of your variables, you can avoid this mistake. Here's what the improved, easier-to-understand version looks like:
float *chimichanga, margarita;
However, if you wanted to declare two pointers-to-float, this is what it looks like:
float *chimichanga, *margarita;
Notice that they both must have *'s next to them, so C++ knows they are pointers. Here's what it looks like in Pascal:
chimichanga, margarita : ^real;

cpp'doc'sentence

name::
* McsEngl.cpp'doc'sentence@cptIt,
* McsEngl.cpp'sentence@cptIt,
* McsEngl.cpp'statement@cptIt,

* McsEngl.cpp'sentence@cptIt,

_DESCRIPTION::
Notice that the sentence ends with a semicolon character (;).
This character has the meaning of finishing the instruction and must be included after every instruction you include in any C++ program (one of the most common errors of C++ programmers is indeed to forget to include a semicolon ; at the end of each instruction).

cpp'sentence.PREPROCESSOR-DIRECTIVE

name::
* McsEngl.cpp'sentence.PREPROCESSOR-DIRECTIVE@cptIt,
* McsEngl.cpp'sentence.preprocessor-directive@cptIt,

* McsEngl.cpp'preprocessor-directive@cptIt,

_DESCRIPTION::
#include <iostream>
Line 1 is a special type of statement called a preprocessor directive. Preprocessor directives tell the compiler to perform a special task. In this case, we are telling the compiler that we would like to add the contents of the iostream header to our program. The iostream header allows us to access functionality from the iostream library, which will allow us to write text to the screen.
[http://www.learncpp.com/cpp-tutorial/11-structure-of-a-program/]

cpp'sentence.DECLARATION

name::
* McsEngl.cpp'sentence.DECLARATION@cptIt,
* McsEngl.cpp'sentence.declaration@cptIt,

* McsEngl.cpp'declaration-sentence@cptIt,

(ΔΗΛΩΣΗ)

cpp'sentence.DECLARATION (ΔΗΛΩΣΗ)

name::
* McsEngl.cpp'sentence.DECLARATION (ΔΗΛΩΣΗ)@cptIt,
* McsEngl.cpp'sentence.declaration@cptIt,

* McsEngl.cpp'declaration-sentence@cptIt,

_DESCRIPTION::
int x; is a declaration statement
===
we declare the variables, function we use in a program.

cpp'sentence.NAMESPACE

name::
* McsEngl.cpp'sentence.NAMESPACE@cptIt,
* McsEngl.cpp'using-namespace-statement@cptIt,

_DESCRIPTION::
the statement, "using namespace std;". This line tells the compiler to use a group of functions that are part of the standard library (std). By including this line at the top of a file, you allow the program to use functions such as cout.
[https://www.cprogramming.com/tutorial/lesson1.html]

cpp'sentence.IF

name::
* McsEngl.cpp'sentence.IF@cptIt,
* McsEngl.cpp'if-sentence@cptIt,

cpp'sentence.std::out

name::
* McsEngl.cpp'sentence.std::out@cptIt,

_DESCRIPTION::
std::cout << "Hello World!";
This line is a C++ statement. A statement is an expression that can actually produce some effect. It is the meat of a program, specifying its actual behavior. Statements are executed in the same order that they appear within a function's body.

This statement has three parts: First, std::cout, which identifies the standard character output device (usually, this is the computer screen). Second, the insertion operator (<<), which indicates that what follows is inserted into std::cout. Finally, a sentence within quotes ("Hello world!"), is the content inserted into the standard output.

Notice that the statement ends with a semicolon (;). This character marks the end of the statement, just as the period ends a sentence in English. All C++ statements must end with a semicolon character. One of the most common syntax errors in C++ is forgetting to end a statement with a semicolon.
[http://www.cplusplus.com/doc/tutorial/program_structure/]

cpp'sentence.COMMENT

name::
* McsEngl.cpp'sentence.COMMENT@cptIt,

C++ supports two ways of commenting code:
1 // line comment
2 /* block comment */

cpp'doc'section

name::
* McsEngl.cpp'doc'section@cptIt,

cpp'section.BLOCK

name::
* McsEngl.cpp'section.BLOCK@cptIt,

_DESCRIPTION::
A block is a set of logically connected statements that are surrounded by opening and closing braces. For example -
{
cout << "Hello World"; // prints Hello World
return 0;
}
[https://www.tutorialspoint.com/cplusplus/cpp_basic_syntax.htm]

cpp'doc'compiling

name::
* McsEngl.cpp'doc'compiling@cptIt,

_ADDRESS.WPG::
* http://cpp.sh/,

GENERIC:
C-COMPILATION

Compiling from command line with Microsoft Visual C++

In summary, if you want to compile a unique C++ source code file into an executable like for example test.cpp and you have already executed MSDEV\VC7\BIN\VCVARS32.BAT it would be enough to write at the command line:
   LC test.cpp
that would generate the file test.exe.

Compiling using GNU C++ Compiler

example::
g++ hw.cpp -o hw.exe

This compiler can perform preprocessing, compilation, assembly and linking of a project from a single call to g++. Its format is:
g++ options_and_filenames
where options_and_filenames is a sequence of options and filenames that can be mixed in the command line. The most common way of calling g++ to compile a single source file in C++ is:
g++ sourcefile -o execfile
where sourcefile is the C++ source file to compile and execfile is the name of the output file, generally the executable file, which must always be preceded by the -o option. The type of file assumed when specifying a sourcefile depends on its extension, that must be: .C, .cc or .cxx for C++ source files. Additionally, the most recent versions of GNU C++ Compiler assumes also .cpp and .c++ extensions for C++ source files. .ii files are considered preprocessed C++ files.
You may also specify that a file is a C++ source file by preceding its name with specifier -x c++. For example, if we want to compile a source file with no-extension called mysource we may call g++ thus:
g++ -x c++ mysource -o myexec

cpp'doc.library

name::
* McsEngl.cpp'doc.library@cptIt,
* McsEngl.cpp'library@cptIt,

* McsEngl.cpp'library@cptIt,

_DESCRIPTION::
A library is a collection of precompiled code (e.g. functions) that has been “packaged up” for reuse in many different programs.
[http://www.learncpp.com/cpp-tutorial/11-structure-of-a-program/]
===
One of the strengths of C++ is its libraries, in particular the Standard Template Library (STL)

cpp'library.CORE

name::
* McsEngl.cpp'library.CORE@cptIt,

_DESCRIPTION::
The core language giving all the building blocks including variables, data types and literals, etc.

cpp'library.STANDARD

name::
* McsEngl.cpp'library.STANDARD@cptIt,
* McsEngl.cpp'std@cptIt,

_DESCRIPTION::
The C++ Standard Library giving a rich set of functions manipulating files, strings, etc.

cpp'library.STL

name::
* McsEngl.cpp'library.STL@cptIt,
* McsEngl.cpp'stl@cptIt,

_DESCRIPTION::
The Standard Template Library (STL) giving a rich set of methods manipulating data structures, etc.

cpp'doc.program

name::
* McsEngl.cpp'doc.program@cptIt,
* McsEngl.cpp'program@cptIt,

* McsEngl.cpp'pgm@cptIt,

EXAMPLE CONSOLE PROGRAM:
// my first program in C++
#include <iostream.h>
int main ()
{
cout << "Hello World!";
return 0;
}

cpp'pgm'executing

name::
* McsEngl.cpp'pgm'executing@cptIt,

_EXAMPLE::
./hw.exe

cpp'evaluation

name::
* McsEngl.cpp'evaluation@cptIt,

C and C++ are definitely losing ground.
There is a simple explanation for this.
Languages without automated garbage collection are getting out of fashion.
The chance of running into all kinds of memory problems is gradually outweighing the performance penalty you have to pay for garbage collection.
--Paul Jansen
Read the rest in Dr. Dobb's | Programming Languages: Everyone Has a Favorite One | April 23, 2008
[http://www.cafeaulait.org/]

cpp'relation-to-C

name::
* McsEngl.cpp'relation-to-C@cptIt,

_DESCRIPTION::
1)  C follows the procedural style programming.  C++ is multi-paradigm. It supports both procedural and object oriented.
2)  Data is less secured in C.  In C++, you can use modifiers for class members to make it inaccessible for outside users.
3)  C follows the top-down approach.  C++ follows the bottom-up approach.
4)  C does not support function overloading.  C++ supports function overloading.
5)  In C, you can't use functions in structure.  In C++, you can use functions in structure.
6)  C does not support reference variables.  C++ supports reference variables.
7)  In C, scanf() and printf() are mainly used for input/output.  C++ mainly uses stream cin and cout to perform input and output operations.
8)  Operator overloading is not possible in C.  Operator overloading is possible in C++.
9)  C programs are divided into procedures and modules  C++ programs are divided into functions and classes.
10)  C does not provide the feature of namespace.  C++ supports the feature of namespace.
11)  Exception handling is not easy in C. It has to perform using other functions.  C++ provides exception handling using Try and Catch block.
[https://www.javatpoint.com/c-vs-cpp]

cpp'HEADER

name::
* McsEngl.cpp'HEADER@cptIt,

The Pre-Processor's main use, you'll find, is in including headers.
What are they? Headers are like units in Turbo Pascal for MSDOS.
The idea is that whenever you want to call functions that are built into the language (like printing out to the screen), you#include the file that defines these functions.
...
These files are called system headers, because they are not just files you created, they are part of the compiler. To#include them, you put them in between a < and a >; iostream.h would be included by saying "#include <iostream.h>".

cpp'PREPROCESSOR

name::
* McsEngl.cpp'PREPROCESSOR@cptIt,

Let's start off by talking about the C++ Pre-Processor. What is it? It's a way of telling the C++ Compiler to manipulate your program before it compiles it. For instance, say your program had grown so big that you wanted to have it split into two files. You could then tell the Pre-Processor to add one file to the beginning of the other during the compile. The compiler would see them as one big file, even though they were really two.
The way you communicate with this Pre-Processor is by using# as the first character in a line, followed by a command to send to it. Let's try using the
include
option, which adds in another file at that point:
#include "nacho"
This command adds a file named "nacho" to the program where you put this line. So, if the file you had the#include in looked like:
I want to eat
#include "nacho"
tonight!
And the file named "nacho" had in it:
some good, yummy nachos
The output the compiler would see would be:
I want to eat some good, yummy nachos tonight!

cpp'STARNDARD

name::
* McsEngl.cpp'STARNDARD@cptIt,

The ANSI-C++ standard accepted as international standard is relatively recent. It was published on November 1997, nevertheless the C++ language exists from long ago (1980s) and therefore there are many compilers which do not support all the new capabilities included in ANSI-C++, specially those ones prior to the publication of the standard.

cpp'ResourceInfHmnn#cptResource843#

name::
* McsEngl.cpp'ResourceInfHmnn@cptIt,

_ADDRESS.WPG:
* https://www.quora.com/Is-C++-becoming-outdated-in-2017/answer/David-Vandevoorde,
* https://www.ntu.edu.sg/home/ehchua/programming/cpp/cp0_Introduction.html,

isrc.cplusplus.TUTORIAL:
* http://www.cplusplus.com/doc/tutorial/:,
* http://www.learncpp.com/,

cpp'book::
* templates: http://ultra.sdk.free.fr/docs/DxO/C%2B%2B%20Templates%20The%20Complete%20Guide.pdf,

cpp.EVOLUTING

name::
* McsEngl.cpp.EVOLUTING@cptIt,

{2014}

{2011}

{1997-11}:
The ANSI-C++ standard accepted as international standard is relatively recent.
It was published on November 1997, nevertheless the C++ language exists from long ago (1980s) and therefore there are many compilers which do not support all the new capabilities included in ANSI-C++, specially those ones prior to the publication of the standard.

cpp.2014

name::
* McsEngl.cpp.2014@cptIt,

_DESCRIPTION::
C++14
BY ALEX ON JULY 22ND, 2017 | LAST MODIFIED BY ALEX ON JULY 22ND, 2017

What is C++14?
On August 18, 2014, the ISO (International Organization for Standardization) approved a new version of C++, called C++14. Unlike C++11, which added a huge amount of new functionality, C++14 is a comparatively minor update, mainly featuring bug fixes and small improvements.

New improvements in C++14
For your interest, here’s a list of the major improvements that C++14 adds. Note that this list is not comprehensive, but rather intended to highlight some of the key improvements of interest.

Aggregate member initialization ( 4.7 -- Structs)
Binary literals ( 2.8 -- Literals) deprecated, attribute (no tutorial yet)
Digit separators ( 2.8 -- Literals)
Function return type deduction ( 4.8 -- The auto keyword)
Generic lambdas and lambda capture expressions (no tutorials yet)
Relaxed constexpr functions (no tutorial yet)
Variable templates (no tutorial yet)
Standard user-defined literals (no tutorial yet)
std::make_unique ( 15.5 -- std::unique_ptr)
[http://www.learncpp.com/cpp-tutorial/b-2-introduction-to-c14/]

cpp.2011

name::
* McsEngl.cpp.2011@cptIt,

_DESCRIPTION::
B.1 — Introduction to C++11
BY ALEX ON NOVEMBER 25TH, 2011 | LAST MODIFIED BY ALEX ON JULY 22ND, 2017
What is C++11?

On August 12, 2011, the ISO (International Organization for Standardization) approved a new version of C++, called C++11. C++11 adds a whole new set of features to the C++ language! Use of these new features is entirely optional -- but you will undoubtedly find some of them helpful. The prior tutorials have all been updated to be C++11 compliant.

The goals and designs of C++11

Bjarne Stroustrup characterized the goals of C++11 as such:

Build on C++’s strengths -- rather than trying to extend C++ to new areas where it may be weaker (eg. Windows applications with heavy GUI), focus on making it do what it does well even better.
Make C++ easier to learn, use, and teach -- provide functionality that makes the language more consistent and easier to use.
To that end, the committee that put the language together tried to obey the following general principles:

Maintain stability and compatibility with older versions of C++ and C wherever possible. Programs that worked under C++03 should generally still work under C++11.
Keep the number of core language extensions to a minimum, and put the bulk of the changes in the standard library (an objective that wasn’t met very well with this release)
Focus on improving abstraction mechanisms (classes, templates) rather than adding mechanisms to handle specific, narrow situations.
Add new functionality for both novices and experts. A little of something for everybody!
Increase type safety, to prevent inadvertent bugs.
Improve performance and allow C++ to work directly with hardware.
Consider usability and ecosystem issues. C++ needs to work well with other tools, be easy to use and teach, etc…
C++11 isn’t a large departure from C++03 thematically, but it did add a huge amount of new functionality.

Major new features in C++11

For your interest, here’s a list of the major features that C++11 adds. Note that this list is not comprehensive, but rather intended to highlight some of the key features of interest.

auto ( 4.8 -- The auto keyword)
char16_t and char_32t and new literals to support them (no tutorial yet)
constexpr ( 2.9 -- Const, constexpr, and symbolic constants)
decltype (no tutorial yet)
default specifier (no tutorial yet)
Delegating constructors ( 8.6 -- Overlapping and delegating constructors)
delete specifier( 9.13 -- Converting constructors, explicit, and delete)
Enum classes ( 4.5a -- Enum classes)
Extern templates (no tutorial yet)
Lambda expressions (no tutorial yet)
long long int ( 2.3 -- Variable sizes and the sizeof operator)
Move constructor and assignment ( 15.3 -- Move constructors and move assignment)
nullptr ( 6.7a -- Null pointers)
override and final specifiers( 12.2a -- The override and final specifiers, and covariant return types)
Range-based for statements ( 6.12a -- For-each loops)
r-value references ( 15.2 -- R-value references)
static_assert ( 7.12a -- Assert and static_assert)
std::initializer_list ( 10.7 -- std::initializer_list)
Trailing return type syntax ( 4.8 -- The auto keyword)
Type aliases ( 4.6 -- Typedefs and type aliases)
typedef can now typedef template classes
Uniform initialization ( 2.1 -- Fundamental variable definition, initialization, and assignment)
User-defined literals (no tutorial yet)
Variatic templates (no tutorial yet)
>> will now properly be interpreted as closing a template object
There are also many new classes in the C++ standard library available for use.

Better support for multi-threading and thread-local storage (no tutorial yet)
Hash tables (no tutorial yet)
Random number generation improvements (no tutorial yet)
Reference wrappers ( 12.8 -- Object slicing)
Regular expressions (no tutorial yet)
std::auto_ptr has been deprecated ( 15.1 -- Intro to smart pointers and move semantics)
std::tuple (no tutorial yet)
std::unique_ptr ( 15.5 -- std::unique_ptr)
[http://www.learncpp.com/cpp-tutorial/b-1-introduction-to-c11/]

cpp.2003

name::
* McsEngl.cpp.2003@cptIt,

_DESCRIPTION:
C++ was ratified in 1998 by the ISO committee, and again in 2003 (called C++03).
[http://www.learncpp.com/cpp-tutorial/03-introduction-to-cc/]

cpp.1998

name::
* McsEngl.cpp.1998@cptIt,

_DESCRIPTION:
C++ was ratified in 1998 by the ISO committee, and again in 2003 (called C++03).
[http://www.learncpp.com/cpp-tutorial/03-introduction-to-cc/]

cpp.1983

name::
* McsEngl.cpp.1983@cptIt,

_DESCRIPTION::
C++ was developed by Bjarne Stroustrup starting in 1979 at Bell Labs in Murray Hill, New Jersey, as an enhancement to the C language and originally named C with Classes but later it was renamed C++ in 1983.
[https://www.tutorialspoint.com/cplusplus/cpp_overview.htm]

cpp.1979

name::
* McsEngl.cpp.1979@cptIt,

_DESCRIPTION:
C++ (pronounced see plus plus) was developed by Bjarne Stroustrup at Bell Labs as an extension to C, starting in 1979.
C++ adds many new features to the C language, and is perhaps best thought of as a superset of C, though this is not strictly true as C99 introduced a few features that do not exist in C++.
C++’s claim to fame results primarily from the fact that it is an object-oriented language.
As for what an object is and how it differs from traditional programming methods, well, we’ll cover that in chapter 8 (Basic object-oriented programming).
[http://www.learncpp.com/cpp-tutorial/03-introduction-to-cc/]

lcp.instance.REXX {1979}

NAME

name::
* McsEngl.lcp.instance.REXX {1979}@cptIt,
* McsEngl.conceptIt438,
* McsEngl.pl.Rexx@cptIt,
* McsEngl.programing-language.REXX@cptIt,
* McsEngl.REXX@cptIt438,

DEFINITION

_DESCRIPTION:
Rexx (Restructured Extended Executor) is an interpreted programming language developed at IBM by Mike Cowlishaw. It is a structured, high-level programming language designed for ease of learning and reading. Proprietary and open source REXX interpreters exist for a wide range of computing platforms; compilers exist for IBM mainframe computers.

Rexx is widely used as a glue language, macro language, and is often used for processing data and text and generating reports; these similarities with Perl mean that Rexx works well in Common Gateway Interface (CGI) programming and it is indeed used for this purpose. Rexx is the primary scripting language in some operating systems, e.g. OS/2, MVS, VM, AmigaOS, and is also used as an internal macro language in some other software, such as KEDIT, THE and the ZOC terminal emulator. Additionally, the Rexx language can be used for scripting and macros in any program that uses Windows Scripting Host ActiveX scripting engines languages (e.g. VBScript and JScript) if one of the Rexx engines is installed.

Rexx is supplied with VM/SP on up, TSO/E Version 2 on up, OS/2 (1.3 on up), AmigaOS Version 2 on up, PC DOS (7.0 or 2000), and Windows NT 4.0 (Resource Kit: Regina). REXX scripts for OS/2 and NT-based Windows share the filename extension .cmd with other scripting languages, and the first line of the script specifies the interpreter to be used.

A Rexx script or command is sometimes referred to as an EXEC in a nod to Rexx's role as a replacement for the older EXEC command language on CP/CMS and VM/370 and EXEC 2 command language on VM/SP.
[http://en.wikipedia.org/wiki/Rexx]

GENERIC

_GENERIC:
* programming_language#cptItsoft248#

lcp.instance.AWK {1977}

name::
* McsEngl.lcp.instance.AWK {1977}@cptIt,
* McsEngl.awk'pcl@cptIt,
* McsEngl.pgmlng.awk@cptIt,

_DEFINITION:
AWK is a general purpose programming language that is designed for processing text-based data, either in files or data streams. The name AWK is derived from the surnames of its authors — Alfred Aho, Peter Weinberger, and Brian Kernighan; however, it is not commonly pronounced as a string of separate letters but rather to sound the same as the name of the bird, auk (which acts as an emblem of the language such as on The AWK Programming Language book cover). awk, when written in all lowercase letters, refers to the Unix or Plan 9 program that runs other programs written in the AWK programming language.

AWK is an example of a programming language that extensively uses the string datatype, associative arrays (that is, arrays indexed by key strings), and regular expressions. The power, terseness, and limitations of AWK programs and sed scripts inspired Larry Wall to write Perl. Because of their dense notation, all these languages are often used for writing one-liner programs.

AWK is one of the early tools to appear in Version 7 Unix and gained popularity as a way to add computational features to a Unix pipeline. A version of the AWK language is a standard feature of nearly every modern Unix-like operating system available today. AWK is mentioned in the Single UNIX Specification as one of the mandatory utilities of a Unix operating system. Besides the Bourne shell, AWK is the only other scripting language available in a standard Unix environment. Implementations of AWK exist as installed software for almost all other operating systems.
[http://en.wikipedia.org/wiki/AWK_%28programming_language%29]

awk'ATRIBEINO:
Paradigm  scripting language, procedural, event-driven
Appeared in  1977, last revised 1985, current POSIX edition is IEEE Std 1003.1-2004
Designed by  Alfred Aho, Peter Weinberger, and Brian Kernighan
Typing discipline  none; can handle strings, integers and floating point numbers; regular expressions
Major implementations  awk, GNU Awk, mawk, nawk, MKS AWK, Thompson AWK (compiler), Awka (compiler)
Dialects  old awk oawk 1977, new awk nawk 1985, GNU Awk
Influenced by  C, SNOBOL4, Bourne shell
Influenced  Perl, Korn Shell (ksh93, dtksh, tksh), JavaScript
OS  Cross-platform
Website  http://cm.bell-labs.com/cm/cs/awkbook/index.html
[http://en.wikipedia.org/wiki/AWK_%28programming_language%29]

awk'GENERIC:
* TEXT_BASED_PROCESSING_PCL##

lcp.instance.SQL {1974}

name::
* McsEngl.conceptIt347,
* McsEngl.programing-language.SQL,
* McsEngl.sql@cptIt347,
* McsEngl.structured query language,

sql'DEFINITION

_DESCRIPTION:
SQL (officially /'?s kju? '?l/, often /?si?kw?l/;[3] often referred to as Structured Query Language) is a programming language designed for managing data in relational database management systems (RDBMS).

Originally based upon relational algebra and tuple relational calculus,[4] its scope includes data insert, query, update and delete, schema creation and modification, and data access control.

SQL was one of the first commercial languages for Edgar F. Codd's relational model, as described in his influential 1970 paper, "A Relational Model of Data for Large Shared Data Banks".[5] Despite not adhering to the relational model as described by Codd, it became the most widely used database language.[6][7] SQL became a standard of the American National Standards Institute (ANSI) in 1986, and of the International Organization for Standards (ISO) in 1987. Since then the standard has been enhanced several times with added features. However, issues of SQL code portability between major RDBMS products still exist due to lack of full compliance with, or different interpretations of the standard. Among the reasons mentioned are the large size, and incomplete specification of the standard, as well as vendor lock-in.
===
SQL is a declarative computer language intended for use with relational databases.
[http://en.wikipedia.org/wiki/SQL]

Structured Query Language is a non-procedural language used to define, manipulate and retrieve data. It was developed by IBM (System/R project) in 1974-1979. The American National Standards Institute (ANSI) published in 1986 the first official standard of the language (later revised in 1989, 1992 and 1999), and since then, the industry has widely adopted SQL as the relational database language. Virtually every database system nowadays is interfaced through SQL.
[http://www.php-editors.com/articles/sql_phpmyadmin.php]

SQL has been the standard data description and access language for RELATIONAL DATABASES for almost a decade, making it a linchpin technology for client/server computing.
[BYTE, JUN 1993, 109]
You can embed SQL statements in other languages, such as C and COBOL.
Theoretically, SQL lets database vendors create products compatible with databases and tools from other vendors. Practically, however, the many different flavors of SQL make integrating different database tools difficult at best.
[BYTE, JUN 1993, 110]

sql'GENERIC

_GENERIC:
* declarative-language#cptItsoft248.6#

sql'PART

name::
* McsEngl.sql'PART@cptIt,

_SPECIFIC:
* DDL,
* DML,
SQL can be divided into two parts: The Data Manipulation Language (DML) and the Data Definition Language (DDL).
[http://www.w3schools.com/sql/sql_syntax.asp]

sql'Command

name::
* McsEngl.sql'Command@cptIt,

I. SQL Commands
This part contains reference information for the SQL commands supported by PostgreSQL. By "SQL" the language in general is meant; information about the standards conformance and compatibility of each command can be found on the respective reference page.

Table of Contents
ABORT -- abort the current transaction
ALTER AGGREGATE -- change the definition of an aggregate function
ALTER COLLATION -- change the definition of a collation
ALTER CONVERSION -- change the definition of a conversion
ALTER DATABASE -- change a database
ALTER DEFAULT PRIVILEGES -- define default access privileges
ALTER DOMAIN -- change the definition of a domain
ALTER EXTENSION -- change the definition of an extension
ALTER FOREIGN DATA WRAPPER -- change the definition of a foreign-data wrapper
ALTER FOREIGN TABLE -- change the definition of a foreign table
ALTER FUNCTION -- change the definition of a function
ALTER GROUP -- change role name or membership
ALTER INDEX -- change the definition of an index
ALTER LANGUAGE -- change the definition of a procedural language
ALTER LARGE OBJECT -- change the definition of a large object
ALTER OPERATOR -- change the definition of an operator
ALTER OPERATOR CLASS -- change the definition of an operator class
ALTER OPERATOR FAMILY -- change the definition of an operator family
ALTER ROLE -- change a database role
ALTER SCHEMA -- change the definition of a schema
ALTER SEQUENCE -- change the definition of a sequence generator
ALTER SERVER -- change the definition of a foreign server
ALTER TABLE -- change the definition of a table
ALTER TABLESPACE -- change the definition of a tablespace
ALTER TEXT SEARCH CONFIGURATION -- change the definition of a text search configuration
ALTER TEXT SEARCH DICTIONARY -- change the definition of a text search dictionary
ALTER TEXT SEARCH PARSER -- change the definition of a text search parser
ALTER TEXT SEARCH TEMPLATE -- change the definition of a text search template
ALTER TRIGGER -- change the definition of a trigger
ALTER TYPE -- change the definition of a type
ALTER USER -- change a database role
ALTER USER MAPPING -- change the definition of a user mapping
ALTER VIEW -- change the definition of a view
ANALYZE -- collect statistics about a database
BEGIN -- start a transaction block
CHECKPOINT -- force a transaction log checkpoint
CLOSE -- close a cursor
CLUSTER -- cluster a table according to an index
COMMENT -- define or change the comment of an object
COMMIT -- commit the current transaction
COMMIT PREPARED -- commit a transaction that was earlier prepared for two-phase commit
COPY -- copy data between a file and a table
CREATE AGGREGATE -- define a new aggregate function
CREATE CAST -- define a new cast
CREATE COLLATION -- define a new collation
CREATE CONVERSION -- define a new encoding conversion
CREATE DATABASE -- create a new database
CREATE DOMAIN -- define a new domain
CREATE EXTENSION -- install an extension
CREATE FOREIGN DATA WRAPPER -- define a new foreign-data wrapper
CREATE FOREIGN TABLE -- define a new foreign table
CREATE FUNCTION -- define a new function
CREATE GROUP -- define a new database role
CREATE INDEX -- define a new index
CREATE LANGUAGE -- define a new procedural language
CREATE OPERATOR -- define a new operator
CREATE OPERATOR CLASS -- define a new operator class
CREATE OPERATOR FAMILY -- define a new operator family
CREATE ROLE -- define a new database role
CREATE RULE -- define a new rewrite rule
CREATE SCHEMA -- define a new schema
CREATE SEQUENCE -- define a new sequence generator
CREATE SERVER -- define a new foreign server
CREATE TABLE -- define a new table
CREATE TABLE AS -- define a new table from the results of a query
CREATE TABLESPACE -- define a new tablespace
CREATE TEXT SEARCH CONFIGURATION -- define a new text search configuration
CREATE TEXT SEARCH DICTIONARY -- define a new text search dictionary
CREATE TEXT SEARCH PARSER -- define a new text search parser
CREATE TEXT SEARCH TEMPLATE -- define a new text search template
CREATE TRIGGER -- define a new trigger
CREATE TYPE -- define a new data type
CREATE USER -- define a new database role
CREATE USER MAPPING -- define a new mapping of a user to a foreign server
CREATE VIEW -- define a new view
DEALLOCATE -- deallocate a prepared statement
DECLARE -- define a cursor
DELETE -- delete rows of a table
DISCARD -- discard session state
DO -- execute an anonymous code block
DROP AGGREGATE -- remove an aggregate function
DROP CAST -- remove a cast
DROP COLLATION -- remove a collation
DROP CONVERSION -- remove a conversion
DROP DATABASE -- remove a database
DROP DOMAIN -- remove a domain
DROP EXTENSION -- remove an extension
DROP FOREIGN DATA WRAPPER -- remove a foreign-data wrapper
DROP FOREIGN TABLE -- remove a foreign table
DROP FUNCTION -- remove a function
DROP GROUP -- remove a database role
DROP INDEX -- remove an index
DROP LANGUAGE -- remove a procedural language
DROP OPERATOR -- remove an operator
DROP OPERATOR CLASS -- remove an operator class
DROP OPERATOR FAMILY -- remove an operator family
DROP OWNED -- remove database objects owned by a database role
DROP ROLE -- remove a database role
DROP RULE -- remove a rewrite rule
DROP SCHEMA -- remove a schema
DROP SEQUENCE -- remove a sequence
DROP SERVER -- remove a foreign server descriptor
DROP TABLE -- remove a table
DROP TABLESPACE -- remove a tablespace
DROP TEXT SEARCH CONFIGURATION -- remove a text search configuration
DROP TEXT SEARCH DICTIONARY -- remove a text search dictionary
DROP TEXT SEARCH PARSER -- remove a text search parser
DROP TEXT SEARCH TEMPLATE -- remove a text search template
DROP TRIGGER -- remove a trigger
DROP TYPE -- remove a data type
DROP USER -- remove a database role
DROP USER MAPPING -- remove a user mapping for a foreign server
DROP VIEW -- remove a view
END -- commit the current transaction
EXECUTE -- execute a prepared statement
EXPLAIN -- show the execution plan of a statement
FETCH -- retrieve rows from a query using a cursor
GRANT -- define access privileges
INSERT -- create new rows in a table
LISTEN -- listen for a notification
LOAD -- load a shared library file
LOCK -- lock a table
MOVE -- position a cursor
NOTIFY -- generate a notification
PREPARE -- prepare a statement for execution
PREPARE TRANSACTION -- prepare the current transaction for two-phase commit
REASSIGN OWNED -- change the ownership of database objects owned by a database role
REINDEX -- rebuild indexes
RELEASE SAVEPOINT -- destroy a previously defined savepoint
RESET -- restore the value of a run-time parameter to the default value
REVOKE -- remove access privileges
ROLLBACK -- abort the current transaction
ROLLBACK PREPARED -- cancel a transaction that was earlier prepared for two-phase commit
ROLLBACK TO SAVEPOINT -- roll back to a savepoint
SAVEPOINT -- define a new savepoint within the current transaction
SECURITY LABEL -- define or change a security label applied to an object
SELECT -- retrieve rows from a table or view
SELECT INTO -- define a new table from the results of a query
SET -- change a run-time parameter
SET CONSTRAINTS -- set constraint check timing for the current transaction
SET ROLE -- set the current user identifier of the current session
SET SESSION AUTHORIZATION -- set the session user identifier and the current user identifier of the current session
SET TRANSACTION -- set the characteristics of the current transaction
SHOW -- show the value of a run-time parameter
START TRANSACTION -- start a transaction block
TRUNCATE -- empty a table or set of tables
UNLISTEN -- stop listening for a notification
UPDATE -- update rows of a table
VACUUM -- garbage-collect and optionally analyze a database
VALUES -- compute a set of rows
[file:///C:/Program%20Files/PostgreSQL/9.1/doc/postgresql/html/sql-commands.html]

sql'AS

name::
* McsEngl.sql'AS@cptIt,
* McsEngl.sql'alias@cptIt,

_DESCRIPTION:
Table Store_Information
store_name  Sales  Date
Los Angeles  $1500  Jan-05-1999
San Diego  $250  Jan-07-1999
Los Angeles  $300  Jan-08-1999
Boston  $700  Jan-08-1999
To find total sales by store using AS as part of the table and column alias, we type in:

SELECT A1.store_name Store, SUM(A1.Sales) AS "Total Sales"
FROM Store_Information AS A1
GROUP BY A1.store_name

Result:
Store    Total Sales
Los Angeles    $1800
San Diego    $250
Boston    $700
[http://www.1keydata.com/sql/sql-as.html]

_ADDRESS.WPG:
* http://www.w3schools.com/sql/sql_alias.asp,

sql'CREATE-TABLE

name::
* McsEngl.sql'CREATE-TABLE@cptIt,

_Example:
CREATE TABLE <Table Name>
( Column1 DataType,
Column2 DataType,
Column3 DataType,
…. )
CREATE TABLE Orders
( FirstName CHAR(100),
LastName CHAR(100),
OrderDate DATE,
OrderValue Currency )
[http://www.sql-tutorial.net/SQL-Cheat-Sheet.pdf]

sql'Data-Control-Language

name::
* McsEngl.sql'Data-Control-Language@cptIt,

Data Control Language (DCL)
? GRANT - Assign privilege
? REVOKE - remove privilege
[http://www.sql-tutorial.net/SQL-Cheat-Sheet.pdf]

sql'Data-Definition-Language

name::
* McsEngl.sql'Data-Definition-Language@cptIt,
* McsEngl.Data-Definition-Language@cptIt,
* McsEngl.DDL-sql@cptIt,

_DESCRIPTION:
The DDL part of SQL permits database tables to be created or deleted. It also define indexes (keys), specify links between tables, and impose constraints between tables. The most important DDL statements in SQL are:

CREATE DATABASE - creates a new database
ALTER DATABASE - modifies a database
CREATE TABLE - creates a new table
ALTER TABLE - modifies a table
DROP TABLE - deletes a table
CREATE INDEX - creates an index (search key)
DROP INDEX - deletes an index
[http://www.w3schools.com/sql/sql_syntax.asp]

sql'Data-Manipulation-Language

name::
* McsEngl.sql'Data-Manipulation-Language@cptIt,
* McsEngl.Data-Manipulation-Language@cptIt,
* McsEngl.DML-sql@cptIt,

_DESCRIPTION:
Data Manipulation Language (DML)
? INSERT - Insert data into db table
? UPDATE - Update data in db table
? DELETE - Delete data from table
[http://www.sql-tutorial.net/SQL-Cheat-Sheet.pdf]
===
The query and update commands form the DML part of SQL:
SELECT - extracts data from a database
UPDATE - updates data in a database
DELETE - deletes data from a database
INSERT INTO - inserts new data into a database
[http://www.w3schools.com/sql/sql_syntax.asp]

sql'Data-Query-Language

name::
* McsEngl.sql'Data-Query-Language@cptIt,
* McsEngl.sql'DQL@cptIt,

Data Query Language (DQL)
? SELECT - Retrieve data from table(s)

sql'FROM

name::
* McsEngl.sql'FROM@cptIt,

_Example:
SELECT SUM(SaleAmount)
FROM Sales
[http://www.sql-tutorial.net/SQL-SUM.asp]

sql'GROUP-BY

name::
* McsEngl.sql'GROUP-BY@cptIt,

The SQL GROUP BY statement is used along with the SQL aggregate functions like SUM to provide means of grouping the result dataset by certain database table column(s).
[http://www.sql-tutorial.net/SQL-GROUP-BY.asp]

_Example:
SELECT Employee, SUM (Hours)
FROM EmployeeHours
GROUP BY Employee
[http://www.sql-tutorial.net/SQL-GROUP-BY.asp]
===
SELECT <Column List>, <Aggregate Function>(<Column Name>)
FROM <Table Name>
WHERE <Search Condition>
GROUP BY <Column List>
Example:
SELECT LastName, SUM(OrderValue)
FROM Orders
WHERE OrderDate > '10/10/2010'
GROUP BY LastName
[http://www.sql-tutorial.net/SQL-Cheat-Sheet.pdf]

sql'INNER-JOIN

name::
* McsEngl.sql'INNER-JOIN@cptIt,

_DESCRIPTION:
The INNER JOIN keyword return rows when there is at least one match in both tables.

SQL INNER JOIN Syntax

SELECT column_name(s)
FROM table_name1
INNER JOIN table_name2
ON table_name1.column_name=table_name2.column_name
[http://www.w3schools.com/sql/sql_join_inner.asp]

sql'INSERT-INTO

name::
* McsEngl.sql'INSERT-INTO@cptIt,

How to insert data in a table
INSERT INTO <Table Name>
(<Column List>) VALUES (<Values>)
Example:
INSERT INTO Orders
(FirstName, LastName, OrderDate) VALUES
('John', 'Smith', '10/10/2010')
[http://www.sql-tutorial.net/SQL-Cheat-Sheet.pdf]

sql'JOIN

name::
* McsEngl.sql'JOIN@cptIt,

How to select data from more than one table
SELECT <Column List>
FROM <Table1> JOIN <Table2>
ON <Table1>.<Column1> = <Table2>.<Column1>
Example:
SELECT Orders.LastName, Countries.CountryName
FROM Orders JOIN Countries
ON Orders.CountryID = Countries.ID
[http://www.sql-tutorial.net/SQL-Cheat-Sheet.pdf]

sql'ORDER-BY

name::
* McsEngl.sql'ORDER-BY@cptIt,

SELECT <Column List>
FROM <Table Name>
WHERE <Search Condition>
ORDER BY <Column List>
Example:
SELECT FirstName, LastName, OrderDate
FROM Orders
WHERE OrderDate > '10/10/2010'
ORDER BY OrderDate
[http://www.sql-tutorial.net/SQL-Cheat-Sheet.pdf]

sql'SELECT

name::
* McsEngl.sql'SELECT@cptIt,

_Example:
SELECT SUM(SaleAmount)
FROM Sales
[http://www.sql-tutorial.net/SQL-SUM.asp]

sql'SUM

name::
* McsEngl.sql'SUM@cptIt,

_Example:
SELECT SUM(SaleAmount)
FROM Sales
[http://www.sql-tutorial.net/SQL-SUM.asp]

sql'UNION

name::
* McsEngl.sql'UNION@cptIt,

SELECT <Column List> FROM <Table1>
UNION
SELECT <Column List> FROM <Table2>
Example:
SELECT FirstName, LastName FROM Orders2010
UNION
SELECT FirstName, LastName FROM Orders2011
[http://www.sql-tutorial.net/SQL-Cheat-Sheet.pdf]

sql'UPDATE

name::
* McsEngl.sql'UPDATE@cptIt,

How to update data in a table
UPDATE <Table Name>
SET <Column1> = <Value1>, <Column2> = <Value2>, …
WHERE <Search Condition>
Example:
UPDATE Orders
SET FirstName = 'John', LastName = 'Who' WHERE LastName='Wo'
[http://www.sql-tutorial.net/SQL-Cheat-Sheet.pdf]

sql'WHERE

name::
* McsEngl.sql'WHERE@cptIt,

SELECT <Column List>
FROM <Table Name>
WHERE <Search Condition>
Example:
SELECT FirstName, LastName, OrderDate
FROM Orders WHERE OrderDate > '10/10/2010'
[http://www.sql-tutorial.net/SQL-Cheat-Sheet.pdf]

sql'Database

name::
* McsEngl.sql'Database@cptIt,

_DESCRIPTION:
A database is essentially a smart container for tables#ql:sql'table#.
[http://java.sun.com/developer/onlineTraining/Database/JDBC20Intro/JDBC20.html]

sql'Doing

name::
* McsEngl.sql'Doing@cptIt,

sql'doing.Show.status-info

name::
* McsEngl.sql'doing.Show.status-info@cptIt,

SELECT CURRENT_DATE;
===> shows current date.

SELECT USER();
===> shows the user.

SELECT VERSION(), CURRENT_DATE;
===> shows the version of the server.

sql'Function

name::
* McsEngl.sql'Function@cptIt,

SQL has many built-in functions for performing calculations on data.

SQL Aggregate Functions

SQL aggregate functions return a single value, calculated from values in a column.

Useful aggregate functions:

AVG() - Returns the average value
COUNT() - Returns the number of rows
FIRST() - Returns the first value
LAST() - Returns the last value
MAX() - Returns the largest value
MIN() - Returns the smallest value
SUM() - Returns the sum
SQL Scalar functions

SQL scalar functions return a single value, based on the input value.

Useful scalar functions:

UCASE() - Converts a field to upper case
LCASE() - Converts a field to lower case
MID() - Extract characters from a text field
LEN() - Returns the length of a text field
ROUND() - Rounds a numeric field to the number of decimals specified
NOW() - Returns the current system date and time
FORMAT() - Formats how a field is to be displayed
[http://www.w3schools.com/sql/sql_functions.asp]

sql'Pattern-Matching

name::
* McsEngl.sql'Pattern-Matching@cptIt,
* McsEngl.sql'regex@cptIt,

The % wildcard matches zero or more characters of any type. If you're familiar with DOS pattern matching, it's the equivalent of the * wildcard in that syntax.
The _ wildcard matches exactly one character of any type. It's the equivalent of the ? wildcard in DOS pattern matching.
You can specify a list of characters by enclosing them in square brackets. For example, the wildcard [aeiou] will match any vowel.
You can specify a range of characters by enclosing the range in square brackets. For example, the wildcard [a-m] will match any letter in the first half of the alphabet.
You can negate a range of characters by including the carat character immediately inside of the opening square bracket. For example, [^aeiou] matches any non-vowel character while [^a-m] matches any character not in the first half of the alphabet.
[http://databases.about.com/od/sqlserver/a/PatternMatching.htm]

sql'Resource

name::
* McsEngl.sql'Resource@cptIt,

_SPECIFIC:
* http://www.sql-tutorial.net/SQL-Cheat-Sheet.pdf,

_Tutorial:
There are also many nice tutorials available online:
* http://www.intermedia.net/support/sql/sqltut.shtm,
* http://sqlcourse.com/,
* http://www.w3schools.com/sql/default.asp,
* http://mysite.verizon.net/Graeme_Birchall/id1.html,
* http://sqlzoo.net/,

* SQL for Web Nerds (Philip Greenspun) http://philip.greenspun.com/sql/?=,
* http://databases.about.com/od/sql/u/learning_sql.htm#s1,

sql'Standard

name::
* McsEngl.sql'Standard@cptIt,

DRDA {DISTRIBUTED RELATIONAL DATABASE ACCEESS} IBM STANDARD
ODBC {OPEN DATABASE CONNECTIVITY} MICROSOFT STANDARD
SAG {SQL ACCESS GROUP}

sql'Statement

name::
* McsEngl.sql'Statement@cptIt,

Most of the actions you need to perform on a database are done with SQL statements.

The following SQL statement will select all the records in the "Persons" table:

SELECT * FROM Persons
[http://www.w3schools.com/sql/sql_syntax.asp]

Keep in Mind That...

SQL is not case sensitive
[http://www.w3schools.com/sql/sql_syntax.asp]

Semicolon after SQL Statements?

Some database systems require a semicolon at the end of each SQL statement.

Semicolon is the standard way to separate each SQL statement in database systems that allow more than one SQL statement to be executed in the same call to the server.

We are using MS Access and SQL Server 2000 and we do not have to put a semicolon after each SQL statement, but some database programs force you to use it.
[http://www.w3schools.com/sql/sql_syntax.asp]

sql'Table

name::
* McsEngl.sql'Table@cptIt,

_WHOLE:
* database#ql:sql'database#

_DESCRIPTION:
A table is a container comprised of rows#ql:sql'row#.
[http://java.sun.com/developer/onlineTraining/Database/JDBC20Intro/JDBC20.html]

sql'Column

name::
* McsEngl.sql'Column@cptIt,

_DESCRIPTION:
A column is a single data item having a name, type, and value.
[http://java.sun.com/developer/onlineTraining/Database/JDBC20Intro/JDBC20.html]

sql'Row

name::
* McsEngl.sql'Row@cptIt,

_DESCRIPTION:
A row is (conceptually) a container comprised of columns#ql:sql'column#.
[http://java.sun.com/developer/onlineTraining/Database/JDBC20Intro/JDBC20.html]

SPECIFIC

_SPECIFIC: sql.Alphabetically:
* postgreSQL#ql:postgres'sql#

SQL is a Standard - BUT....

Although SQL is an ANSI (American National Standards Institute) standard, there are many different versions of the SQL language.

However, to be compliant with the ANSI standard, they all support at least the major commands (such as SELECT, UPDATE, DELETE, INSERT, WHERE) in a similar manner.

Note: Most of the SQL database programs also have their own proprietary extensions in addition to the SQL standard!
[http://www.w3schools.com/sql/sql_intro.asp]

lcp.instance.ML {1973}

_CREATED: {2014-02-03}

name::
* McsEngl.lngPgm.ML,
* McsEngl.ML-lngPgm,

_DESCRIPTION:
ML is a general-purpose functional programming language developed by Robin Milner and others in the early 1970s at the University of Edinburgh,[1] whose syntax is inspired by ISWIM. Historically, ML stands for metalanguage: it was conceived to develop proof tactics in the LCF theorem prover (whose language, pplambda, a combination of the first-order predicate calculus and the simply typed polymorphic lambda calculus, had ML as its metalanguage). It is known for its use of the Hindley–Milner type inference algorithm, which can automatically infer the types of most expressions without requiring explicit type annotations. Additionally, the use of this algorithm ensures type safety—there is a formal proof that a well-typed ML program does not cause runtime type errors.[2]
[http://en.wikipedia.org/wiki/ML_(programming_language)]

lcp.instance.C {1972}

name::
* McsEngl.conceptIt419,
* McsEngl.c@cptIt419,
* McsEngl.c-language@cptIt419,
* McsEngl.language.c@cptIt419,
* McsEngl.pl.c,
* McsEngl.plC,
* McsEngl.programing-language.C,

plC'DEFINITION

C (pronounced like the letter C) is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system.[2]

Although C was designed for implementing system software,[4] it is also widely used for developing portable application software.

C is one of the most widely used programming languages of all time[5][6] and there are very few computer architectures for which a C compiler does not exist. C has greatly influenced many other popular programming languages, most notably C++, which began as an extension to C.
[http://en.wikipedia.org/wiki/C_(programming_language)]

plC'GENERIC

_GENERIC:
* programming-language#cptItsoft248#

plC'Compilation

name::
* McsEngl.plC'Compilation@cptIt,

The four steps of compilation
To understand how compilation works (and so, to be able to solve possible problems), one has to know its four steps. Its object is to little by little convert a text written in a language that is comprehensible by a trained human being (i.e. C language), towards a language that is comprehensible by a machine (or a very trained human being and even so, in few cases). GCC executes four programs one after the other, each of which takes on one step:
1) cpp: the first step consists in replacing directives (preprocessors) by pure C instructions. Typically, that means inserting a header (#include) or defining a macro (#define). At the end of this stage, a pure C code is generated.
2) cc1: this step consists in converting C into assembly language. The generated code depends on the target architecture.
3) as: this step consists in generating object (or binary) code from the assembly language. At the end of this stage, a .o file is generated.
4) ld: the last step (linkage) links all the object files (.o) and the associated libraries, and produces an executable file.
[mandrake 7.0 docs]

plC'EVOLUTION#cptCore546.171#

name::
* McsEngl.plC'EVOLUTION@cptIt,

{time.1988}:
In 1988, the American National Standards Institute (ANSI) adopted a ``new and improved'' version of C, known today as ``ANSI C''. This is the version described in the current edition of ``The C Programming Language -- ANSI C''. The ANSI version contains many revisions to the syntax and the internal workings of the language, the major ones being improved calling syntax for procedures and standarization of most (but, unfortunately, not quite all!) system libraries.
[http://einstein.drexel.edu/courses/Comp_Phys/General/C_basics/]

_1969_1973:
C (pronounced like the letter C) is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system.[4]
[http://en.wikipedia.org/wiki/C_(programming_language)]

plC'Function

name::
* McsEngl.plC'Function@cptIt,

plC'Human

name::
* McsEngl.plC'Human@cptIt,

Dennis Ritchie designed and implemented the first C compiler on a PDP-11 (a prehistoric machine by today's standards, yet one which had enormous influence on modern scientific computation).
[http://einstein.drexel.edu/courses/Comp_Phys/General/C_basics/]

plC'Program

name::
* McsEngl.plC'Program@cptIt,

Let's be polite and start by saluting the world! Type the following program into your favorite editor:

#include < stdio.h>

void main()
{
printf("\nHello World\n");
}

Save the code in the file hello.c, then compile it by typing:
 gcc hello.c
This creates an executable file a.out, which is then executed simply by typing its name. The result is that the characters `` Hello World'' are printed out, preceded by an empty line.
[http://einstein.drexel.edu/courses/Comp_Phys/General/C_basics/]

plC'Resource

name::
* McsEngl.plC'Resource@cptIt,

_SPECIFIC:
* http://en.wikipedia.org/wiki/C_(programming_language),
* http://einstein.drexel.edu/courses/Comp_Phys/General/C_basics//

_Book:
An excellent textbook on C by two well-known and widely respected authors is:
The C Programming Language -- ANSI C
Brian W. C. Kernighan & Dennis M. Ritchie
Prentice Hall, 1988

plC'Variable

name::
* McsEngl.plC'Variable@cptIt,

_WHOLE:
* c-program,

DEFINITION

Prolog is a logic programming language. It is a general purpose language often associated with artificial intelligence and computational linguistics. It has a purely logical subset, called "pure Prolog", as well as a number of extralogical features. Prolog was one of the first logic programming languages, and remains among the most popular such languages today, with many free and commercial implementations available.
As in all logic programming languages, a Prolog program consists of a set of clauses. Each clause defines a case for which some user-defined predicate (relationship between some number of logical variables) is true. The Prolog interpreter attempts to determine, based on the clauses it knows, whether a given predicate is true for a given set of values of its variables. If not all of those variables are given values, then the interpreter tries to determine all possible values of the unspecified variables which would make the statement true. This makes Prolog (and other logic programming languages) particularly useful for database, symbolic mathematics, and language parsing applications. Because Prolog allows impure predicates, checking the truth value of certain special predicates may have some deliberate side effect, such as printing a value to the screen. This permits the programmer to use some amount of conventional imperative programming when the logical paradigm is inconvenient.
[http://en.wikipedia.org/wiki/Prolog]
===
To understand simply how Prolog works:
The database + search mechanism
[http://www.computing.dcu.ie/~jhayes/Logic/tutorial1.html]

lcpProlog'GENERIC

_GENERIC:
* logic-knowledge-method#cptItsoft.525.6#
* programming_language#cptItsoft248#
* Logic Programming Language#ql:lcp.logic#

lcpProlog'ENVIRONMENT#cptCore756#

name::
* McsEngl.lcpProlog'ENVIRONMENT@cptIt,

prolog & LISP

name::
* McsEngl.prolog-and-lisp@cptIt364i,

Both Lisp and Prolog are popular languages for artificial intelligence systems implementation... In the late 1970s and early 1980s, Lisp was more prevalent in the United States while Europe and Japan were more oriented towards Prolog
[Tanimoto, 1990, 254#cptResource461]

lcpProlog'ATTRIBUTE

name::
* McsEngl.lcpProlog'ATTRIBUTE@cptIt,

_ATTRIBUTE:
* SYSTEM PREDICATES#ql:"",prolog## εχω μια ινφομπεις με αυτά#
LIST,
===
PROGRAM PARTS:
COMMENTS/ΣΧΟΛΙΑ:
SOURCE CODE MODULES:
GLOBAL PARTS/ΚΑΘΟΛΙΚΑ ΤΜΗΜΑΤΑ
 GLOBAL DOMAINS/ΚΑΘΟΛΙΚΑ ΠΕΔΙΑ ΔΕΔΟΜΕΝΩΝ
 GLOLBAL DATABASE/ΚΑΘΟΛΙΚΗ ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ
 GLOBAL PREDICATES/ΚΑΘΟΛΙΚΑ ΚΑΤΗΓΟΡΗΜΑΤΑ
DATABASE/ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ:
 ΟΙ ΔΗΛΩΣΕΙΣ ΕΔΩ ΜΟΙΑΖΟΝ ΜΕ ΤΑ ΚΑΤΗΓΟΡΗΜΑΤΑ.
DATA OBJECT=

lcpProlog'archetype

name::
* McsEngl.lcpProlog'archetype@cptIt,

lcpProlog'archetype'DomainIn

name::
* McsEngl.lcpProlog'archetype'DomainIn@cptIt,

Prolog is very useful in some problem areas, such as articial intelligence, natural
language processing, databases, . . . , but pretty useless in others, such as graphics or
numerical algorithms.
[http://staff.science.uva.nl/~ulle/teaching/prolog/prolog.pdf]

This makes Prolog (and other logic programming languages) particularly useful for
- database,
- symbolic mathematics, and
- language parsing applications.
[http://en.wikipedia.org/wiki/Prolog]

DOMAINS/ΠΕΔΙΑ ΟΡΙΣΜΟΥ:
 integerlist = integer* (δηλώνει λίστες)
 thing = char ('t', '\232')
 thing = integer (9, -2,)
 thing = real (3.0, 3, 1e308)
 thing = symbol (fred, "έννοια νεα" ΧΡΗΣΙΜΟΠΟΙΕΙ ΛΙΓΟΤΕΡΗ ΜΝΗΜΗ)
 thing, name = symbol
 thing = string (like symbol, uses a lot memory)

lcpProlog.archetype.COLLECTION

name::
* McsEngl.lcpProlog.archetype.COLLECTION@cptIt,
* McsEngl.lcpProlog'compound-term@cptIt,
* McsEngl.lcpProlog'term.COMPOUND@cptIt,

_DESCRIPTION:
A compound term is composed of an atom called a "functor" and a number of "arguments", which are again terms. Compound terms are ordinarily written as a functor followed by a comma-separated list of argument terms, which is contained in parentheses. The number of arguments is called the term's arity. An atom can be regarded as a compound term with arity zero. Examples of compound terms are truck_year('Mazda', 1986) and 'Person_Friends'(zelda,[tom,jim]).
Special cases of compound terms:
A List is an ordered collection of terms. It is denoted by square brackets with the terms separated by commas or in the case of the empty list, []. For example [1,2,3] or [red,green,blue].
Strings: A sequence of characters surrounded by quotes is equivalent to a list of (numeric) character codes, generally in the local character encoding, or Unicode if the system supports Unicode. For example, "to be, or not to be".
[http://en.wikipedia.org/wiki/Prolog]

lcpProlog.archetype.collection.LIST

name::
* McsEngl.lcpProlog.archetype.collection.LIST@cptIt,

_DESCRIPTION:
Lists themselves have the following syntax. They always start and end with square brackets, and each of the items they contain is separated by a comma. Here is a simple list [a,freddie,A_Variable,apple]
[http://www.doc.gold.ac.uk/~mas02gw/prolog_tutorial/prologpages/lists.html]

lcpProlog'archetype.collection.PREDICATE

name::
* McsEngl.lcpProlog'archetype.collection.PREDICATE@cptIt,
* McsEngl.lcpProlog'predicate@cptIt,
* McsEngl.lcpProlog'relation@cptIt,

_DESCRIPTION:
PREDICATES/ΚΑΤΗΓΟΡΗΜΑΤΑ
 ΚΑΤΗΓΟΡΗΜΑΤΑ ΣΥΣΤΗΜΑΤΟΣ.
 ΚΑΤΗΓΟΡΗΜΑΤΑ ΧΡΗΣΤΗ.
 ΤΑ ΟΝΟΜΑΤΑ ΚΑΤΗΓΟΡΗΜΑΤΩΝ ΜΠΟΡΕΙ ΝΑ ΕΙΝΑΙ ΜΕΧΡΙ 250 ΧΑΡΑΚΤ, ΟΧΙ ΚΕΝΑ.
 ΕΙΝΑΙ ΟΙ "ΓΕΝΙΚΕΣ" ΠΡΟΤΑΣΕΙΣ.

_CODE.PROLOG:
blue(sky).
mammal(rabbit).
plays(john,hockey).

lcpProlog'archetype.COLLECTION.NO

name::
* McsEngl.lcpProlog'archetype.COLLECTION.NO@cptIt,

lcpProlog'archetype.VARIABLE

name::
* McsEngl.lcpProlog'archetype.VARIABLE@cptIt,
* McsEngl.lcpProlog'variable@cptIt,
* McsEngl.lcpProlog'term.VARIABLE@cptIt,
* McsEngl.lcpProlog'code.VARIANT@cptIt,
* McsEngl.lcpProlog'variant@cptIt,
* McsEngl.prologvariable@cptIt,

_DESCRIPTION:
A variable is a symbol that refers to an unspecied individual, like X and Y above.
[http://www.ida.liu.se/~ulfni/lpp/bok/bok.pdf]
===
Identifiers starting with lower-case letters denote data values (almost like values in an enumerated type) while all other identifiers denote variables.
[http://classes.soe.ucsc.edu/cmps112/Spring03/languages/prolog/PrologIntro.pdf]
===
Variables are denoted by a string consisting of letters, numbers and underscore characters, and beginning with an upper-case letter or underscore. Variables closely resemble variables in logic in that they are placeholders for arbitrary terms.
[http://en.wikipedia.org/wiki/Prolog]

_DESCRIPTION:
Variables are denoted by a string consisting of letters, numbers and underscore characters, and beginning with an upper-case letter or underscore. Variables closely resemble variables in logic in that they are placeholders for arbitrary terms.
[http://en.wikipedia.org/wiki/Prolog#Data_types]

lcpProlog'archetype.VARIABLE.NO (constant)

name::
* McsEngl.lcpProlog'archetype.VARIABLE.NO (constant)@cptIt,
* McsEngl.lcpProlog'constant@cptIt,
* McsEngl.lcpProlog'individual@cptIt,

_DESCRIPTION:
A constant is either a number (integer or ?oating-point) or an atom. Constants are
de?nite elementary objects, and correspond to proper nouns in natural language.
[http://xsb.sourceforge.net/downloads/manual1.pdf]
===
CONSTANTS/ΣΤΑΘΕΡΕΣ (VERSION 2.0):
 pi = 3.14
 ideal_class = 15
 ΠΡΕΠΕΙ ΝΑ ΑΡΧΙΖΟΥΝ ΜΕ ΜΙΚΡΟ ΓΡΑΜΜΑ.
===
CONSTANT= cow, ibm_pc, 12, 13.10

_SPECIFIC:
In prolog there are two types of constants: atoms and numbers. We have already looked at atoms. Please recheck the first tutorial if you are unsure what they are. In the above example 'harry', 'tony', 'rachel', 'eunice' are all atoms.
[http://www.computing.dcu.ie/~jhayes/Logic/tutorial2.html]

lcpProlog'archetype.variableNo.ATOM

name::
* McsEngl.lcpProlog'archetype.variableNo.ATOM@cptIt,
* McsEngl.lcpProlog'term.ATOM@cptIt,
* McsEngl.lcpProlog'atom@cptIt,

_DESCRIPTION:
An atom is a general-purpose name with no inherent meaning. Examples of atoms include x, blue, 'Waffle', and 'some atom'.
[http://en.wikipedia.org/wiki/Prolog]

_CODE.PROLOG:
"atom" is not an atom.
===
| ?- atom("horse").

no
[http://www.computing.dcu.ie/~jhayes/Logic/tutorial1.html]

lcpProlog'archetype.variableNo.NUMBER

name::
* McsEngl.lcpProlog'archetype.variableNo.NUMBER@cptIt,
* McsEngl.lcpProlog'number@cptIt,
* McsEngl.lcpProlog'term.NUMBER@cptIt,

_DESCRIPTION:
Numbers in Prolog include integral numbers and real numbers. Numbers are generally used to keep count or increase a counter in a program. Prolog is not used for number crunching as it's primary use is in symbolic computation.
[http://www.computing.dcu.ie/~jhayes/Logic/tutorial2.html]
===
Numbers can be floats or integers.
[http://en.wikipedia.org/wiki/Prolog]

_DESCRIPTION:
Numbers can be floats or integers.
[http://en.wikipedia.org/wiki/Prolog#Data_types]

lcpProlog'archetype.STRING

name::
* McsEngl.lcpProlog'archetype.STRING@cptIt,

_DESCRIPTION:
Strings: A sequence of characters surrounded by quotes is equivalent to a list of (numeric) character codes, generally in the local character encoding, or Unicode if the system supports Unicode. For example, "to be, or not to be".
[http://en.wikipedia.org/wiki/Prolog#Data_types]

lcpProlog'archetype.NAME#cptCore93.42#

name::
* McsEngl.lcpProlog'archetype.NAME@cptIt,
* McsEngl.lcpProlog'term@cptIt,
* McsEngl.lcpProlog'archetype.type@cptIt,

_DESCRIPTION:
Prolog's single data type is the term. Terms are either atoms, numbers, variables or compound terms.
[http://en.wikipedia.org/wiki/Prolog]
===
TERMS/ΟΡΟΙ (ΧΡΗΣΙΜΟΟΙΟΥΝΤΑΙ ΣΑΝ ΟΡΙΣΜΑΤΑ/ARGUMENTS):

lcpProlog'code

name::
* McsEngl.lcpProlog'code@cptIt,

lcpProlog'code'DomainOut

name::
* McsEngl.lcpProlog'code'DomainOut@cptIt,
* McsEngl.lcpProlog'code-set@cptIt,
* McsEngl.lcpProlog'domainOut@cptIt,

_DESCRIPTION:
While initially aimed at natural language processing, the language has since then stretched far into other areas like theorem proving,[8] expert systems,[9] games, automated answering systems, ontologies and sophisticated control systems. Modern Prolog environments support creating graphical user interfaces, as well as administrative and networked applications.
[http://en.wikipedia.org/wiki/Prolog]

lcpProlog'code.GOAL

name::
* McsEngl.lcpProlog'code.GOAL@cptIt,
* McsEngl.lcpProlog'goal@cptIt,

GOALS/ΣΤΟΧΟΙ:
 ΕΙΝΑΙ ΠΡΟΤΑΣΕΙΣ ΠΟΥ ΕΧΟΥΝ ΜΕΤΑΒΛΗΤΕΣ ΣΤΑ ΟΡΙΣΜΑΤΑ.
 ΜΕΤΑΒΛΗΤΗ= ΕΧΕΙ ΤΟ ΠΡΩΤΟ ΓΡΑΜΜΑ ΚΕΦΑΛΑΙΟ.
 ΑΝΩΝΥΜΗ ΜΕΤΑΒΛΗΤΗ=_: ΟΤΑΝ ΔΕΝ ΜΑΣ ΕΝΔΙΑΦΕΡΕΙ ΚΑΠΟΙΟ ΣΥΓΚΕΚΡΙΜΕΝΟ
   ΟΡΙΣΜΑ ΑΛΛΑ, ΓΕΝΙΚΑ Η ΥΠΑΡΞΗ-ΤΟΥ.
 ΜΙΑ ΠΡΟΤΑΣΗ ΣΥΓΚΕΚΡΙΜΕΝΗ ΣΤΟ ΣΤΟΧΟ, ΔΙΝΕΙ ΝΑΙ/ΟΧΙ ΑΠΟΤΕΛΕΣΜΑ.
 AND=,
 OR=;

lcpProlog'code.PROGRAM

name::
* McsEngl.lcpProlog'code.PROGRAM@cptIt,

_DESCRIPTION:
Technically, you don't create a Prolog program; you create a Prolog database.
In the database are two types of clauses: Facts and Rules.
[http://www.cs.utexas.edu/~cannata/cs345/Class%20Notes/12%20prolog_intro.pdf]
===
A program is made up of a sequence of clauses, directives, and
comments. The text of a program is normally created separately in a file
(or files), using an editor.

Any characters following the `%' character on any line are treated as part
of a comment and are ignored.

Directives are ways of directing the compiler to execute some goal or
goals during the compilation process. Typically like this:
 :-op( =>, xfx, 9000).
[http://cse.csusb.edu/dick/cs320/prolog/intro.prolog.html]
===
a logic program consists of a sequence of relation definitions.
[http://classes.soe.ucsc.edu/cmps112/Spring03/languages/prolog/PrologIntro.pdf]

_Step 2. Writing a Program

Any ol' text editor will do
Save your program somewhere easy to remember, and most importantly, easy to type (ex. "\prolog\hello.pl")
Load the program into the interpreter in this fashion:
type consult('/path/filename'). in the interpreter
path is the directory on disk where your program is located, in unix-style notation
filename is the name of your file
So, you would type, for example, consult('/prolog/hello.pl').
Note that ['/prolog/hello.pl']. can be used as shorthand for the consult predicate
You can also enter your program directly into the interpreter by typing [user].
[http://actlab.csc.villanova.edu/quickstart/prolog/]

plprogram'executing

name::
* McsEngl.plprogram'executing@cptIt,

_DESCRIPTION:
A Prolog program is executed by asking a question. The question is called a query.
[http://web.archive.org/web/20041028043137/http://cs.wwc.edu/~cs_dept/KU/PR/Prolog.html]

lcpProlog'code.FORMULA

name::
* McsEngl.lcpProlog'code.FORMULA@cptIt,

_DESCRIPTION:
In natural language only certain combinations of words are meaningful sentences.
The counterpart of sentences in predicate logic are special constructs built from terms.
These are called formulas or well-formed formulas (w) and their syntax is dened as
follows:
Denition 1.2 (Formulas) Let T be the set of terms over the alphabet A. The set
F of w (with respect to A) is the smallest set such that:
if p=n is a predicate symbol in A and t1;:::;tn 2 T then p(t1;:::;tn) 2 F;
if F and G 2 F then so are (:F), (F ^G), (F _G), (F G) and (F $ G);
if F 2 F and X is a variable in A then (8XF) and (9XF) 2 F.
[http://www.ida.liu.se/~ulfni/lpp/bok/bok.pdf]

lcpProlog'code.SENTENCE-STRUCTURE

name::
* McsEngl.lcpProlog'code.SENTENCE-STRUCTURE@cptIt,
* McsEngl.lcpProlog'sentence-structure@cptIt,

lcpProlog'sentence-structure.RULE

name::
* McsEngl.lcpProlog'sentence-structure.RULE@cptIt,
* McsEngl.lcpPrologo'condition@cptIt,
* McsEngl.lcpProlog'rule@cptIt,

_DESCRIPTION:
facts (unconditionally true) and rules (truth is conditional),
[http://classes.soe.ucsc.edu/cmps112/Spring03/languages/prolog/PrologIntro.pdf]
===
A rule is of the form
Head :- Body.
and is read as "Head is true if Body is true". A rule's body consists of calls to predicates, which are called the rule's goals. The built-in predicate ,/2 (meaning a 2-arity operator with name ,) denotes conjunction of goals, and ;/2 denotes disjunction. Conjunctions and disjunctions can only appear in the body, not in the head of a rule.
[http://en.wikipedia.org/wiki/Prolog]
===
ΚΑΝΟΝΕΣ: ΕΙΝΑΙ IF(:-) CLAUSES.
 ΟΙ ΚΑΝΟΝΕΣ ΜΠΟΡΟΥΝ ΝΑ ΕΧΟΥΝ ΜΕΤΑΒΛΗΤΕΣ, ΚΑΙ ΝΑ ΟΡΙΖΟΥΝ ΚΑΤΗΓΟΡΗΜΑΤΑ.

prologrule'body

name::
* McsEngl.prologrule'body@cptIt,

prologrule'head

name::
* McsEngl.prologrule'head@cptIt,

prologrule.RECURSIVE

name::
* McsEngl.prologrule.RECURSIVE@cptIt,

_DESCRIPTION:
Rules may be recursive. Consider: ancestor(X,Y) :- parent(Z,Y) , ancestor(X,Z). This says that X
is an ancestor of Y when Y has a parent Z and X is an ancestor of Z. If that's confusing, plug in your name for
Y, one of your parent's names for Z (your mom, for example), and one of your mom's parent's names for X.
...
ancestor(X,Y) :- parent(X,Y).
ancestor(X,Y) :- parent(Z,Y) , ancestor(X,Z).
[http://www.cs.utexas.edu/~cannata/cs345/Class%20Notes/12%20prolog_intro.pdf]

lcpProlog'code.SENTENCE

name::
* McsEngl.lcpProlog'code.SENTENCE@cptIt,
* McsEngl.lcpProlog'code.CLAUSE@cptIt,
* McsEngl.lcpProlog'clause@cptIt,

_WHOLE:
* prolog-program##

_DESCRIPTION:
Prolog programs describe relations, defined by means of clauses. Pure Prolog is restricted to Horn clauses. There are two types of clauses: facts and rules.
[http://en.wikipedia.org/wiki/Prolog]
===
CLAUSES/ΠΡΟΤΑΣΕΙΣ:
 ΤΕΛΕΙΩΝΟΥΝ ΜΕ ΤΕΛΕΙΑ.
 ΜΠΟΡΟΥΝ ΝΑ ΠΑΡΟΥΝ "ΑΝΩΝΥΜΗ ΜΕΤΑΒΛΗΤΗ".
 ΓΕΓΟΝΟΤΑ:  ΕΙΝΑΙ ΟΙ "ΣΥΓΚΕΚΡΙΜΕΝΕΣ" ΠΡΟΤΑΣΕΙΣ. ΕΞ ΟΡΙΣΜΟΥ ΑΛΗΘΙΝΑ.
 ΚΑΝΟΝΕΣ: ΕΙΝΑΙ IF(:-) CLAUSES.
 ΟΙ ΚΑΝΟΝΕΣ ΜΠΟΡΟΥΝ ΝΑ ΕΧΟΥΝ ΜΕΤΑΒΛΗΤΕΣ, ΚΑΙ ΝΑ ΟΡΙΖΟΥΝ ΚΑΤΗΓΟΡΗΜΑΤΑ.

lcpProlog'sentence.DECLERATIVE

name::
* McsEngl.lcpProlog'sentence.DECLERATIVE@cptIt,

_DESCRIPTION:
declarative statements (facts and rules)
[http://classes.soe.ucsc.edu/cmps112/Spring03/languages/prolog/PrologIntro.pdf]

lcpProlog'sentence.HORN

name::
* McsEngl.lcpProlog'sentence.HORN@cptIt,
* McsEngl.lcpProlog'code.HORN-CLAUSE@cptIt,
* McsEngl.lcpProlog'horn-clause@cptIt,

_DESCRIPTION:
A Horn clause is a disjunction of predicates in which at most one of the predicates is not negated.
[http://www.cs.utexas.edu/~cannata/cs345/Class%20Notes/12%20prolog_intro.pdf]
===
In mathematical logic and logic programming, a Horn clause is a logical formula of a particular rule-like form which gives it good properties for use in logic programming, formal specification, and model theory. Horn clauses are named for the logician Alfred Horn, who first pointed out their significance in 1951, in the article "On sentences which are true of direct unions of algebras", Journal of Symbolic Logic, 16, 14–21.
Definition[edit]
Horn clause is a clause (a disjunction of literals) with at most one positive, i.e. unnegated, literal.
Conversely, a disjunction of literals with at most one negated literal is called a dual-Horn clause.
[http://en.wikipedia.org/wiki/Horn_clauses]

lcpProlog'sentence.QUERY

name::
* McsEngl.lcpProlog'sentence.QUERY@cptIt,

_CODE.PROLOG:
?-gradparent(X, jeffrey).

lcpProlog'sentence.query.GROUND.NO

name::
* McsEngl.lcpProlog'sentence.query.GROUND.NO@cptIt,

_DESCRIPTION:
But queries can also have variables as parameters; such queries are called non-ground queries.
[http://classes.soe.ucsc.edu/cmps112/Spring03/languages/prolog/PrologIntro.pdf]

lcpProlog'sentence.FACT

name::
* McsEngl.lcpProlog'sentence.FACT@cptIt,
* McsEngl.lcpProlog'fact@cptIt,
* McsEngl.lcpProlog'hypothesis@cptIt,

_DESCRIPTION:
facts (unconditionally true) and rules (truth is conditional),
[http://classes.soe.ucsc.edu/cmps112/Spring03/languages/prolog/PrologIntro.pdf]
===
Clauses with empty bodies are called facts. An example of a fact is:
cat(tom).
which is equivalent to the rule:
cat(tom) :- true.
[http://en.wikipedia.org/wiki/Prolog]
===
ΓΕΓΟΝΟΤΑ:  ΕΙΝΑΙ ΟΙ "ΣΥΓΚΕΚΡΙΜΕΝΕΣ" ΠΡΟΤΑΣΕΙΣ. ΕΞ ΟΡΙΣΜΟΥ ΑΛΗΘΙΝΑ.
===
Structures ( also known as structured objects ) are objects that have several components. So in the example above 'boy( harry )' is a structure. In a structure we always have functor and arguments, e.g.

functor( arguments..... ).

In the structure 'boy( harry )', 'boy' is the functor and 'harry' is the argument. Notice that the functor is always an atom. You can't have a variable as a functor. However the arguments can be anything from other structures to numbers to atoms. Please bear this in mind.
[http://www.computing.dcu.ie/~jhayes/Logic/tutorial2.html]

_CODE.PROLOG:
1. Facts (or hypotheses):
father(albert,jeffrey).
[http://courses.cs.vt.edu/~cs3304/Spring02/lectures/lect08.pdf]

prologfact'argument

name::
* McsEngl.prologfact'argument@cptIt,

prologfact'functor

name::
* McsEngl.prologfact'functor@cptIt,

lcpProlog'code.ARCHETYPE-UNIT

name::
* McsEngl.lcpProlog'code.ARCHETYPE-UNIT@cptIt,

_SPECIFIC:
* atom##
* number##

lcpProlog'code.UNIT

name::
* McsEngl.lcpProlog'code.UNIT@cptIt,

lcpProlog'database

name::
* McsEngl.lcpProlog'database@cptIt,
* McsEngl.lcpProlog'knowledge-base@cptIt,

_DESCRIPTION:
There are only three basic constructs in Prolog: facts, rules, and queries. A collection
of facts and rules is called a knowledge base (or a database) and Prolog programming
is all about writing knowledge bases
. That is, Prolog programs simply are knowledge
bases, collections of facts and rules which describe some collection of relationships
that we ?nd interesting. So how do we use a Prolog program? By posing queries. That
is, by asking questions about the information stored in the knowledge base. Now this
probably sounds rather strange. It’s certainly not obvious that it has much to do with
programming at all – after all, isn’t programming all about telling the computer what
to do? But as we shall see, the Prolog way of programming makes a lot of sense, at
least for certain kinds of applications (computational linguistics being one of the most
important examples). But instead of saying more about Prolog in general terms, let’s
jump right in and start writing some simple knowledge bases; this is not just the best
way of learning Prolog, it’s the only way ...
[http://www.dbnet.ece.ntua.gr/~adamo/csbooksonline/prolog-notes.pdf]
===
Prolog is a programming language that is excellent at describing objects and the relations between objects. When we use Prolog we generally load information into what is known as the database. The information in this database is Prolog's world knowledge.
[http://www.computing.dcu.ie/~jhayes/Logic/tutorial1.html]

lcpProlog'doing.EVOLUTING#cptCore546.171#

name::
* McsEngl.lcpProlog'doing.EVOLUTING@cptIt,

{time.1972}:
ΠΡΩΤΟΕΜΦΑΝΙΣΤΗΚΕ ΣΤΙΣ ΑΡΧΕΣ ΤΗΣ ΔΕΚΑΕΤΙΑΣ ΤΟΥ 1970.
ΓΙΑ ΜΙΚΡΟΥΠΟΛΟΓΙΣΤΕΣ ΕΜΦΑΝΙΣΤΗΚΕ ΣΤΑ ΤΕΛΗ ΤΗΣ ΔΕΚΑΕΤΙΑΣ.
[Rich-et-al, 1989, 17#cptResource463]

lcpProlog'evaluation

name::
* McsEngl.lcpProlog'evaluation@cptIt,

Criticism[edit]

Although Prolog is widely used in research and education, Prolog and other logic programming languages have not had a significant impact on the computer industry in general.[37] Most applications are small by industrial standards, with few exceeding 100,000 lines of code.[37][38] Programming in the large is considered to be complicated because not all Prolog compilers support modules, and there are compatibility problems between the module systems of the major Prolog compilers.[20] Portability of Prolog code across implementations has also been a problem, but developments since 2007 have meant: "the portability within the family of Edinburgh/Quintus derived Prolog implementations is good enough to allow for maintaining portable real-world applications."[39]

Software developed in Prolog has been criticised for having a high performance penalty compared to conventional programming languages. However, advances in implementation methods have reduced the penalties to as little as 25%-50% for some applications.[40]

Prolog is not purely declarative: because of constructs like the cut operator, a procedural reading of a Prolog program is needed to understand it.[41] The order of clauses in a Prolog program is significant. Other logic programming languages, such as Datalog, are truly declarative but restrict the language.
[]

lcpProlog'human

name::
* McsEngl.lcpProlog'human@cptIt,

Colmerauer.Alain:
Developed in 1972 by Alain Colmerauer in Marseilles.

lcpProlog'resource

name::
* McsEngl.lcpProlog'resource@cptIt,

_ADDRESS.WPG:
* http://en.wikibooks.org/wiki/Prolog,
=== TUTORIAL:
* http://classes.soe.ucsc.edu/cmps112/Spring03/languages/prolog/PrologIntro.pdf,
* http://web.archive.org/web/20041028043137/http://cs.wwc.edu/~cs_dept/KU/PR/Prolog.html,
===
* http://vanemden.wordpress.com/2010/08/21/who-killed-prolog//

lcpProlog'tool

name::
* McsEngl.lcpProlog'tool@cptIt,

lcpProlog'tool.INTERPRETER

name::
* McsEngl.lcpProlog'tool.INTERPRETER@cptIt,

_SPECIFIC:
* javascript: http://ioctl.org/logic/prolog1,

SPECIFIC

* lcpProlog.specific,

_SPECIFIC:
Edinburgh dialect,
Marseille dialect,
micro-Prolog,
Turbo prolog, Borland International,

_SPECIFIC:
Each implementation of Prolog usually offers features and even syntax that differ from other implementations, so the examples here may not all work in another version of the language.
[http://www.cs.utexas.edu/~cannata/cs345/Class%20Notes/12%20prolog_intro.pdf]

lcpProlog.B-Prolog

name::
* McsEngl.lcpProlog.B-Prolog@cptIt,
* McsEngl.lcp.B-prolog@cptIt,
* McsEngl.b-prolog@cptIt,

_DESCRIPTION:
Welcome to B-Prolog, a versatile and efficient constraint logic programming (CLP) system. B-Prolog is being brought to you by Afany Software.
B-Prolog is a high-performance implementation of the standard Prolog language with several extended features including matching clauses, action rules for event handling, finite-domain constraint solving, arrays and hash tables, declarative loops, and tabling.
[http://www.probp.com/index.html]

lcpProlog.CHIA

name::
* McsEngl.lcpProlog.CHIA@cptIt,

_DESCRIPTION:
Ciao is a general-purpose programming language which supports logic, constraint, functional, higher-order, and object-oriented programming styles. Its main design objectives are high expressive power, extensibility, safety, reliability, and efficient execution.
[http://ciao-lang.org/]

lcpProlog.EDINBURGH {1977}

name::
* McsEngl.lcpProlog.EDINBURGH {1977}@cptIt,

_DESCRIPTION:
The use of Prolog as a practical programming language was given great momentum by the development of a compiler by David Warren in Edinburgh in 1977. Experiments demonstrated that Edinburgh Prolog could compete with the processing speed of other symbolic programming languages such as Lisp. Edinburgh Prolog became the de facto standard and strongly influenced the definition of ISO standard Prolog.
[http://en.wikipedia.org/wiki/Logic_programming]

lcpProlog.FLORA-2

name::
* McsEngl.lcpProlog.FLORA-2@cptIt,
* McsEngl.flora2@cptIt,
* McsEngl.flora-2@cptIt,

_DESCRIPTION:
The Flora-2 system integrates F-logic, HiLog, and Transaction Logic into a coherent knowledge representation and inference language.
[http://www.cs.sunysb.edu/~kifer/TechReports/flora-odbase2003.pdf]
===
Flora-2 is a sophisticated object-based knowledge representation and reasoning platform. It is
implemented as a set of run-time libraries and a compiler that translates a uni?ed language of
F-logic [9], HiLog [4], Transaction Logic [2, 1], and defeasible reasoning [14] into tabled Prolog
code.
[http://flora.sourceforge.net/docs/floraManual.pdf]

lcpFlora'archetype

name::
* McsEngl.lcpFlora'archetype@cptIt,

lcpFlora'code

name::
* McsEngl.lcpFlora'code@cptIt,

lcpFlora'code.MODULE

name::
* McsEngl.lcpFlora'code.MODULE@cptIt,

_DESCRIPTION:
Another important extension is the novel module system of Flora-2, which was designed explicitly with the goal of supporting intelligent agents and knowledge integration.
Unlike other module systems, which are tied to specic program code, Flora-2 modules are abstractions that represent structural components of a running system.
Program code can be loaded into any module on-the-fly, and the already loaded code can be replaced by other code while the system runs.
New modules can also be created and loaded at run time.
Finally, to accommodate a wide variety of semantic components in knowledge integration, different modules can have different (even customized) semantics.
[http://www.cs.sunysb.edu/~kifer/TechReports/flora-odbase2003.pdf]

lcpFlora'evaluation

name::
* McsEngl.lcpFlora'evaluation@cptIt,

_DESCRIPTION:
Although Flora-2 already provides a wealth of features in support of semantic reasoning on the Web, a number of important issues still need to be addressed. For instance, we believe that the ability to handle inconsistent information should be part of the infrastructure. Handling imprecise and probabilistic information is another important missing piece. These issues can possibly be addressed with the help of paraconsistent and probabilistic logics such as [2,21,22,31]. Another possible extension could be in the direction of prioritized rules, such as those described in [16].
[http://flora.sourceforge.net/docs/floraManual.pdf]

lcpFlora'F-logic

name::
* McsEngl.lcpFlora'F-logic@cptIt,

_DESCRIPTION:
Firstly, F-logic brings many
important object-oriented features such as complex objects, class hierarchies,
and inheritance.
[http://www.cs.sunysb.edu/~kifer/TechReports/flora-odbase2003.pdf]

lcpFlora'HiLog

name::
* McsEngl.lcpFlora'HiLog@cptIt,

_DESCRIPTION:
HiLog provides a basis for reification and enhances F-logic with meta-information processing capabilities.
[http://www.cs.sunysb.edu/~kifer/TechReports/flora-odbase2003.pdf]

lcpFlora'program

name::
* McsEngl.lcpFlora'program@cptIt,

_DESCRIPTION:
Flora-2 is a rule-based object-oriented knowledge base system designed for a variety of automated tasks on the Semantic Web, ranging from meta-data management to information integration to intelligent agents.
[http://www.cs.sunysb.edu/~kifer/TechReports/flora-odbase2003.pdf]

lcpFlora'resoure

name::
* McsEngl.lcpFlora'resoure@cptIt,

_ADDRESS.WPG:
* http://www.cs.sunysb.edu/~kifer/TechReports/flora-odbase2003.pdf,

lcpFlora'Transaction-Logic

name::
* McsEngl.lcpFlora'Transaction-Logic@cptIt,

_DESCRIPTION:
Finally, Transaction Logic supports declarative programming of "procedural knowledge" that is often embedded in intelligent agents or Semantic Web services.
[http://www.cs.sunysb.edu/~kifer/TechReports/flora-odbase2003.pdf]

lcpProlog.GNU-PROLOG

name::
* McsEngl.lcpProlog.GNU-PROLOG@cptIt,
* McsEngl.gprolog@cptIt,

_ADDRESS.WPG:
* http://www.gprolog.org/manual/gprolog.html,

_DESCRIPTION:
GNU Prolog [5] is a free Prolog compiler with constraint solving over finite domains developed by Daniel Diaz. For recent information about GNU Prolog please consult the GNU Prolog page.

GNU Prolog is a Prolog compiler based on the Warren Abstract Machine (WAM) [9, 1]. It first compiles a Prolog program to a WAM file which is then translated to a low-level machine independent language called mini-assembly specifically designed for GNU Prolog. The resulting file is then translated to the assembly language of the target machine (from which an object is obtained). This allows GNU Prolog to produce a native stand alone executable from a Prolog source (similarly to what does a C compiler from a C program). The main advantage of this compilation scheme is to produce native code and to be fast. Another interesting feature is that executables are small. Indeed, the code of most unused built-in predicates is not included in the executables at link-time.

A lot of work has been devoted to the ISO compatibility. Indeed, GNU Prolog is very close to the ISO standard for Prolog [6].
[http://www.gprolog.org/manual/gprolog.html#sec4]

lcpProlog.ISO

name::
* McsEngl.lcpProlog.ISO@cptIt,

_DESCRIPTION:
ISO Prolog[edit]
The ISO Prolog standard consists of two parts. ISO/IEC 13211-1,[18][22] published in 1995, aims to standardize the existing practices of the many implementations of the core elements of Prolog. It has clarified aspects of the language that were previously ambiguous and leads to portable programs. There are two corrigenda: Cor.1:2007[23] and Cor.2:2012.[24] ISO/IEC 13211-2,[18] published in 2000, adds support for modules to the standard. The standard is maintained by the ISO/IEC JTC1/SC22/WG17[25] working group. ANSI X3J17 is the US Technical Advisory Group for the standard.[26]
[http://en.wikipedia.org/wiki/Prolog]

lcpProlog.SWI-PROLOG {1987}

name::
* McsEngl.lcpProlog.SWI-PROLOG {1987}@cptIt,
* McsEngl.swi-prolog@cptIt,

_DESCRIPTION:
SWI-Prolog offers a comprehensive free Prolog environment. Since its start in 1987, SWI-Prolog development has been driven by the needs of real world applications. SWI-Prolog is widely used in research and education as well as commercial applications. Join over a million users who have downloaded SWI-Prolog.
[http://www.swi-prolog.org//]

lcpProlog.XSB

_CREATED: {2014-02-24}

name::
* McsEngl.lcpProlog.XSB@cptIt,
* McsEngl.lcp.xsb@cptIt,
* McsEngl.xsb@cptIt,

_DESCRIPTION:
Paradigm(s)  Logic Programming
Designed by  David S. Warren, Terrance Swift, Kostis Sagonas
Developer  XSB Research Group
Stable release  XSB Version 3.3.7
Influenced by  Prolog, PSB-Prolog, SB-Prolog
OS  Cross-platform
Website  http://xsb.sourceforge.net//
XSB is the name of a dialect of the Prolog programming language and its implementation developed at Stony Brook University in collaboration with the Katholieke Universiteit Leuven, the New University of Lisbon, Uppsala University and software vendor XSB, Inc.

XSB extends Prolog with tabled resolution and HiLog (a standard extension of Prolog permitting limited higher-order logic programming).

The open source XSB implementation includes an interface to the Java programming language.
[http://en.wikipedia.org/wiki/XSB]

lcp.instance.SMALLTALK (ool) {1972}

NAME

name::
* McsEngl.lcp.instance.SMALLTALK (ool) {1972}@cptIt,
* McsEngl.conceptItsoft1038,
* McsEngl.pl.smalltalk@cptIt,
* McsEngl.programing-language.SMALLTALK@cptIt,
* McsEngl.smalltalk-language@cptIt,
* McsEngl.smalltalk@cptItsoft1038,

DEFINITION

Alan Kay summarized five basic characteristics of Smalltalk, the first successful object-oriented language and one of the languages upon which Java is based. This represents a pure approach to object-oriented programming: 1. Everything is an object. Think of an object as a fancy variable: it stores data, but you can also ask it to perform oper•ations on itself by making requests. In theory, you can take any conceptual component in the problem you’re trying to solve (dogs, buildings, services, etc.) and represent it as an object in your program. 2. A program is a bunch of objects telling each other what to do by sending messages. To make a request of an object, you “send a message” to that object. More concretely, you can think of a message as a request to call a function for a particular object. 3. Each object has its own memory made up of other objects. Or, you make a new kind of object by making a package containing existing objects. Thus, you can build up complexity in a program while hiding it behind the simplicity of objects. 4. Every object has a type. Using the parlance, each object is an instance of a class, where “class” is synonymous with “type.” The most important distinguishing characteristic of a class is “what messages can you send to it?” 5. All objects of a particular type can receive the same messages. This is actually a very loaded statement, as you will see later: because an object of type circle is also an object of type shape, a circle is guaranteed to receive shape messages. This means you can write code that talks to shapes, and automatically handle anything that fits the description of a shape. This substitutability is one of the most powerful concepts in OOP.
[B. ECKEL, Thinking In Java, 1997aug18, 24]

NAME:  Michelle Mirpour
 COURSE:  CS 363 - Summer 1995  PROF:  Eugene Norris
 A little background on Smalltalk

 Smalltalk and the concepts of object-oriented programming were developed in the 1970's by Alan Kay and several others at Xerox Corporation's Palo Alto Research Center (PARC). However, the definite version, Smalltalk-80, was released in 1983 and it has only been available on widely used machines such as the Sun, Apollo, HP 9000, and Apple Macintosh, since 1987. Smalltalk/V is a 'dialect' of Smalltalk, which was initially launched into the market at the end of 1986 by Digitalk Inc. in Los Angeles. Some of its main characteristics were its low cost and its availability for the PC and Apple Macintosh. In the US it's now very widespread, with more than 100,000 copies sold. The Smalltalk/V language fully realizes the principles of object-oriented programming. Its programming environment is very powerful and it has a graphical user interface.
 Smalltalk is considered by some to be fairly similar to Lisp and to be suitable for artificial intelligence applications. In actuality, Smalltalk is a general-purpose language, although it handles lists and symbols as well as Lisp. In Smalltalk, everything is based on Objects, and together with objects is the notion of sending messages to objects to get things done.
 The areas where Smalltalk/V can be applied are those which need a sophisticated and error-proof user interface and have a complicated internal organization, such as:
 * management applications  * office automation  * expert systems and artificial intelligence  * authoring systems for computer-aided learning  * simulation  * graphics and CAD (however, the performance may be below that       of traditional languages)  * electronic publishing  * computer-aided software engineering.
 Another field of application which is rapidly gaining popularity is "rapid prototyping", a methodology for the specification and design of large software systems, using prototypes. Prototypes can be developed very quickly with Smalltalk, more so than with any other language.
 Conceptually, one can do anything in Smalltalk. In practice though, it is not a language for numerical calculations (it cannot compete in performance with FORTRAN!), and since Smalltalk/V is an interpreted system, it's not as efficient as some other systems, and it may be unsuitable for real-time applications. The same applies to graphical and CAD applications; Smalltalk is perfectly suitable as a language for the definition and rapid development of applications, but it may not provide sufficient performance to meet response time requirements.
 Although a formal definition of object-oriented programming does not exist, it is commonly recognized that an object-oriented language should have the following characteristics:
 * It should be based on the concept of an object, and therefore  supply tools to define, create and manage objects.
 * It should allow the creation of new types of objects from  existing ones, maintaining old characteristics and introducing new ones.
 * It should offer the possibility of using the same name for  similar operations acting on different objects (overloading) and allow  variables to refer to objects of different types (polymorphism).
 * It should allow dynamic binding and incremental recompilation,  i.e., it should be possible to modify and recompile a single object  definition without having to recompile the rest of a system.
 Smalltalk is among the 'purest' of the object-oriented languages, and it has all these features, and others, to increase productivity and the flexibility of software.
 The following are some of the fundamentals of Smalltalk and of object-oriented programming:
 * Objects and Messages  * Classes  * Inheritance
 A message is a request sent to an object to activate one of the operations defined on the object, and it is carried out by a method belonging to the object itself. The entities involved when a message is sent are:
The receiver of the message, which is being asked to execute one of its methods;
The selector, which identifies which method is being requested of the receiver; and
Arguments to the message, which are optional, and are passed as parameters of the method. They are also references to objects.

 In other words, a message says:
   Here's the Object that gets the Message (called the    "receiver Object").    Here's the Method I want done now (called the "Method    selector").    Here are the arguments to use.
 The operation is named in the message, but what is done is actually hidden (encapsulated) in the object that receives the message.
 A Smalltalk message is a selection of one of the manipulations that an object knows how to perform. A message says "do this one," and the object itself knows what actions to carry out in response.
 In Smalltalk, the syntax for sending a simple message to an object is straightforward. First, there is an identifier naming the receiver of the message. Then there is a selector followed by the argument, if the message only has one argument. If it has more than one argument, then the selector is composed of keywords, which each keyword ending in a colon and followed by an argument.
 An example of this is if "point1" and "point2" identify objects of the type Point, and if "aPen" is the identifier of a Pen, then the message:
 aPen setBlue
will make the Pen draw in blue, and the message:
 aPen drawTo: point1
will instruct the Pen to draw a line from its current location to the location specified as the argument, point1. The message:
 aPen drawFrom: point1 to: point2 will instruct the Pen to draw a line from point1 to point2. Notice that in the last message the selector of the message is drawFrom:to:. This is the Smalltalk way of passing the arguments to a method and it differs from the conventional way of calling procedures, which lists the arguments in parentheses after the procedure name:
 drawFromTo(aPen, point1, point2).
 In addition to objects and messages, Smalltalk has Classes. All object-oriented programming languages have such mechanisms. In Smalltalk, it's a mechanism for classifying data structures and processing according to their similarities and special-case extensions.
 Smalltalk classes express static descriptions of data and methods. Objects are run-time instances of a Class. For example, the "Integer" class defines the hidden data structure and the methods that apply to integers. At run time, a programmer can create an instance of a class, give it a value (via a message) and start doing things with it (again via messages).
 Hand-in-hand with Smalltalk classes comes Smalltalk Inheritance. Inheritance is a mechanism that simplifies the definition of software components that are similar to those previously defined. Inheritance is a powerful mechanism for reuse, and for explicitly capturing commonality of attributes and exclusive services on those attributes. It consists of four major aspects:
1. For each class, the class shares the data structure defined in its Superclass (those classes above it, working up through the hierarchy).
2. For each class, the class shares the methods defined in its superclasses.
3. For each class, the class can add to the data structure.
4. For each class, the class can add to or extend (even override, in the case of Smalltalk) inherited methods.
 Classification structure and inheritance provide ways to model problem space generalization/specialization, and then gain leverage by explicitly expressing commonality of data and processing at the upper levels, and then extending the data and processing at lower levels.


--------------------------------------------------------------------------------
For more information about Smalltalk, click here:
Smalltalk (files).
mmirpour@athena.gmu.edu

GENERIC

_GENERIC:
OBJECT-ORIENTED-LANGUAGE#ql:[Level CONCEPT:conceptIt220 rl?]##cptIt220#

EVALUATION#cptCore546.107#

Smalltalk, the first successful object-oriented language
[Eckel, Thinking in Java, 1998.01]

LANGUAGE'PROGRAM#cptIt430#

name::
* McsEngl.LANGUAGE'PROGRAM@cptIt,

smalltalk express#cptItsoft1036: attPar#

PRICE#cptEconomy541.44#

Hi,
after being swallowed up by ParcPlace, Digitalk's version of Smalltalk has been available for free at:
    http://www.objectshare.com/se/seinfo.htm#sedownload
It is windows based. It is very good. If I am not wrong, VisualAge Smalltalk is also based on Digitalk.
[1998oct]

SPECIFIC

_SPECIFIC#ql:_GENERIC cptItsoft1038#

lcp.instance.PASCAL {1970}

NAME

name::
* McsEngl.lcp.instance.PASCAL {1970}@cptIt,
* McsEngl.conceptItsoft1039,
* McsEngl.pascal-computer-language@cptIt,
* McsEngl.pascal'computer'language@cptItsoft1039,
* McsEngl.programing-language.PASCAL@cptIt,
* McsEngl.computer'language.pascal@cptItsoft1039,

DEFINITION

GENERIC

_GENERIC:
* programming_language#cptItsoft248#

COMMENT

Τα σχόλια περιέχονται μεταξύ δύο παρενθέσεων της μορφής
{...}
ή
(*...*)

DATA

ARRAY

ΔΗΛΩΣΗ:
mat: array[1..50] of integer >>> 50 θέσεις μνήμης.

EVOLUTION#cptCore546.171#

1970:
Created by Nicklaus Wirth.

GLOSSARY

CONSTANT

ΟΝΟΜΑ:
το όνομα των συμβολικών-σταθερών σχηματίζεται με βάση τους κανόνες δημιουργίας των μεταβλητών.

VARIABLE

NAME:
Το όνομα μιας μεταβλητής σχηματίζεται από αριθμητικούς και αλφαριθμητικούς χαρακτήρες με τον πρώτο υποχρεωτικά αλφαβητικό.
Δεν ξεχωρίζει τα κεφαλαία από τα πεζά γράμματα.

ΔΗΛΩΣΗ:
όνομα-μεταβλητής: τύπος

ΤΥΠΟΙ:
integer, longint, single, double, real, string, char, array, pointer, record, boolean ή τύπος δεδομένων του χρήστη.
[Βακάλη κα, Ανάπτυξη εφαρμογών..., γ' λυκείου, 1999]

ΠΑΡΑΔΕΙΓΜΑ:
mat: string[20] >>> μεταβλητή με μήκος ακριβώς 20 χαρακτήρες.
mat: string >>> μεταβλητή μήκους από 0 μέχρι 32767 χαρακτήρες.

PROGRAM#cptIt59#

ΔΟΜΗ ΠΡΟΓΡΆΜΜΑΤΟΣ:
heading (επικεφαλίδα)
declarations (δηλώσεις σταθερών/τύπου/μεταβλητών)
begin
commands
end.

STATEMENT

ASSIGNMENT STATEMENT

example:
cost:=quantity*value;

INPUT STATEMENT

readln(quantity);
* διαβάζει σε καινούργια γραμμή.

read(quatnity);
* διαβάζει στη θέση του δρομέα.

OUTPUT STATEMENT

writeln('το κόστος είναι: ', total:7:0)
* γράφει σε καινούργια γραμμή, η πραγματική μεταβλητή 'total' θα εμφανιστεί με 7 ψηφία και 0 δεκαδικά.

write('δώσε την ποσότητα')
* γράφει στη γραμμή του δρομέα.

SUBPROGRAMS

FUNCTION

example:
PROGRAM example;
VAR
 r,e:REAL;
...
FUNCTION area(z:REAL):REAL;
BEGIN
 area:=pi*sqr(z)
END;
...
BEGIN
 e:=area(r);
 ...
END.

PROCEDURE

example:
PROGRAM example;
VAR
 r,e:REAL;
...
PROCEDURE input(var x:REAL);
BEGIN
 REPEAT
   write('δώσε την ακτίνα:');
   readln(x)
 UNTIL x>0;
END;
...
BEGIN
 input(r);
 ...
END.

PROCEDURE

example:
PROGRAM example;
VAR
 r,e:REAL;
...
PROCEDURE input(var x:REAL);
BEGIN
 REPEAT
   write('δώσε την ακτίνα:');
   readln(x)
 UNTIL x>0;
END;
...
BEGIN
 input(r);
 ...
END.

SPECIFIC

_SPECIFIC#ql:_GENERIC cptItsoft1039#

OBJECT PASCAL

STANDARD PASCAL

TURBO-PASCAL-6.0#cptItsoft539: attSpe#

lcp.instance.LOGO {1967}

name::
* McsEngl.conceptIt445,
* McsEngl.logo@cptIt445,
* McsEngl.logo-programming-language@cptIt445,
* McsEngl.language.logo@cptIt445,
* McsEngl.pl.logo@cptIt,
* McsEngl.programing-language.LOGO@cptIt,
* McsEngl.plLogo@cptIt445,

plLogo'GENERIC

_GENERIC:
* programming-language#cptIt248#

plLogo'WHOLE

_WHOLE:
* techData#cptItsoft0#

plLogo'COMMAND

name::
* McsEngl.plLogo'COMMAND@cptIt,

Αντιστοιχία Αγγλικών - Ελληνικών πρωτογενών διαδικασιών:
logo.abs ==> logo.ΑπΤι
logo.and ==> logo.και
logo.announce ==> logo.ανακοίνωση
logo.answer ==> logo.απάντηση
logo.arctan ==> logo.ΤοξΕφ
logo.ascii ==> logo.ascii
logo.ask ==> logo.ΖήτησεΑπό (logo.ΖΑ)
logo.back (logo.bk) ==> logo.πίσω (logo.πι)
logo.bg ==> logo.φόντο (logo.φντ)
logo.bottom ==> logo.ΤέλοςΚειμένου (logo.ΤέλοςΚ)
logo.butfirst (logo.bf) ==> logo.ΕκτόςΠρώτου (logo.ΕκΠ)
logo.butlast (logo.bl) ==> logo.ΕκτόςΤελευταίου (logo.ΕκΤ)
logo.cancel ==> logo.ακύρωση
logo.carefully ==> logo.πρόσεξε
logo.cb ==> logo.ΔρομέαςΠίσω (logo.ΔρΠ)
logo.cc ==> logo.ΣβήσεΕντολές (logo.ΣβΕ)
logo.cd ==> logo.ΔρομέαςΚάτω (logo.ΔρΚ)
logo.cf ==> logo.ΔρομέαςΜπροστά (logo.ΔρΜ)
logo.cg ==> logo.ΣβήσεΓραφικά (logo.ΣβΓ)
logo.char ==> logo.χαρ
logo.chdir ==> logo.ΆλλαξεΚατάλογο (logo.ΑλΚτλ)
logo.clean ==> logo.σβήσε (logo.σβ)
logo.clearname ==> logo.Σβήσε'Ονομα (logo.ΣβΟ)
logo.clearnames ==> logo.ΣβήσεΟνόματα (logo.ΣβΑ)
logo.cleartext (logo.ct) ==> logo.ΣβήσεΚείμενο (logo.ΣβΚμν)
logo.clickoff ==> logo.ΜηΕνεργό
logo.clickon ==> logo.ενεργό
logo.clipboard ==> logo.πρόχειρο
logo.closeworksheet ==> logo.ΚλείσεΦύλλοΕργασίας
logo.color ==> logo.χρώμα
logo.colorunder ==> logo.ΧρώμαΑπόΚάτω
logo.copy ==> logo.αντιγραφή
logo.cos ==> logo.συν
logo.count ==> logo.μέτρησε
logo.createprojectvar ==> logo.ΝέεςΜεταβλητέςΕργασίας
logo.cu ==> logo.ΔρομέαςΆνω (logo.ΔρΑ)
logo.currentdir ==> logo.ΕνΚατάλογο (logo.ΕνΚτλ)
logo.cut ==> logo.αποκοπή
logo.delete ==> logo.διαγραφή
logo.difference ==> logo.διαφορά
logo.directories ==> logo.κατάλογοι
logo.distance ==> logo.απόσταση
logo.dolist ==> logo.ΕκτέλεσεΛίστα
logo.done? ==> logo.ολοκληρώθηκε?
logo.dotimes ==> logo.ΕκτέλεσεΦορές
logo.empty? ==> logo.κενό?
logo.eol ==> logo.ΤέλοςΓραμμής (logo.ΤέλοςΓ)
logo.eot? ==> logo.ΤέλοςΚειμένου? (logo.ΤέλοςΚ?)
logo.equal? ==> logo.ισούται?
logo.erfile ==> logo.ΔιαγραφήΑρχείου
logo.errormessage ==> logo.ΜήνυμαΛάθους
logo.everyone ==> logo.όλες
logo.exp ==> logo.exp
logo.exporttext ==> logo.ΕξαγωγήΚειμένου (logo.ΕξαγωγήΚμν)
logo.files ==> logo.αρχεία
logo.fill ==> logo.γέμισε
logo.first ==> logo.πρώτο
logo.fontsize ==> logo.ΜέγεθοςΓραμματοσειράς
logo.forever ==> logo.συνεχώς
logo.forward (logo.fd) ==> logo.μπροστά (logo.μπ)
logo.found? ==> logo.βρέθηκε?
logo.fput ==> logo.ΒάλεΠρώτο (logo.ΒάλεΠ)
logo.freeze ==> logo.πάγωσε
logo.freezebg ==> logo.ΠάγωσεΦντ
logo.get ==> logo.πάρε
logo.getcell ==> logo.ΠάρεΚελί (logo.ΠαρεΚ)
logo.getpage ==> logo.ΠάρεΣελίδα (logo.ΠαρεΣ)
logo.getproject ==> logo.ΠάρεΕργασία (logo.ΠαρεΕ)
logo.glide ==> logo.ολίσθηση
logo.greater? ==> logo.μεγαλύτερο?
logo.heading ==> logo.κατεύθυνση
logo.hidetext ==> logo.ΑπόκρυψηΚειμένου (logo.ΑπΚμν)
logo.home ==> logo.κέντρο
logo.ht ==> logo.ΑπόκρυψηΧελώνας (logo.ΑπΧ)
logo.identical? ==> logo.ταυτίζεται?
logo.if ==> logo.αν
logo.ifelse ==> logo.ΑνΔιαφορετικά (logo.ΑνΔιαφ)
logo.importtext ==> logo.ΕισαγωγήΚειμένου (logo.ΕισαγωγήΚμν)
logo.infront ==> logo.ΜεταφοράΕμπρός
logo.insert ==> logo.παρεμβολή
logo.int ==> logo.ακέραιος (logo.ακ)
logo.item ==> logo.στοιχείο
logo.key? ==> logo.πλήκτρο?
logo.last ==> logo.τελευταίο
logo.launch ==> logo.εκκίνηση
logo.left ==> logo.αριστερά (logo.αρ)
logo.less? ==> logo.μικρότερο?
logo.let ==> logo.έστω
logo.list ==> logo.λίστα
logo.list? ==> logo.λίστα?
logo.listen ==> logo.άκου
logo.ln ==> logo.ln
logo.loadpict ==> logo.ΦόρτωσεΕικόνα
logo.loadshape ==> logo.ΦόρτωσεΣχήμα
logo.loadtext ==> logo.ΦόρτωσεΚείμενο
logo.local ==> logo.τοπική
logo.log ==> logo.λογ
logo.lput ==> logo.ΒάλεΤελευταίο (logo.ΒάλεΤ)
logo.make ==> logo.κάνε
logo.member? ==> logo.ανήκει?
logo.merge ==> logo.συγχώνευση
logo.minus ==> logo.μείον
logo.mousepos ==> logo.ΘέσηΠοντικιού
logo.name ==> logo.ονόμασε
logo.name? ==> logo.όνομα?
logo.namepage (logo.np) ==> logo.'ΟνομαΣελίδας
logo.names ==> logo.ονόματα
logo.newbutton ==> logo.ΝέοΚουμπί
logo.newpage ==> logo.ΝέαΣελίδα
logo.newprojectsize ==> logo.ΜέγεθοςΝέαςΕργασίας
logo.newslider ==> logo.ΝέοςΜεταβολέας
logo.newtext ==> logo.ΝέοΚείμενο (logo.ΝέοΚμν)
logo.newturtle ==> logo.ΝέαΧελώνα
logo.not ==> logo.όχι
logo.note ==> logo.νότα
logo.number? ==> logo.αριθμός?
logo.onreadline ==> logo.ΕκτελέσιμηΓραμμή
logo.opaque ==> logo.αδιαφανές
logo.openworksheet ==> logo.ΆνοιξεΦύλλοΕργασίας
logo.or ==> logo.ή
logo.output (logo.op) ==> logo.έξοδος (logo.εξ)
logo.pagelist ==> logo.ΛίσταΣελίδων
logo.parse ==> logo.ανάλυση
logo.paste ==> logo.επικόλληση
logo.pd ==> logo.ΣτυλόΚάτω (logo.ΣτΚ)
logo.pensize ==> logo.ΠάχοςΣτυλό (logo.ΠάχοςΣτ)
logo.pi ==> logo.π
logo.pick ==> logo.διάλεξε
logo.pictlist ==> logo.ΛίσταΕικόνων
logo.placepict ==> logo.ΤοποθέτησηΕικόνας
logo.pos ==> logo.θέση
logo.power ==> logo.δύναμη
logo.presentationmode ==> logo.ΠεριβάλλονΠαρουσίασης
logo.print (logo.pr) ==> logo.τύπωσε (logo.τυ)
logo.product ==> logo.γινόμενο
logo.projectlist ==> logo.ΛίσταΕργασιών
logo.projectsize ==> logo.ΜέγεθοςΕργασίας
logo.projectvars ==> logo.ΜεταβλητέςΕργασίας
logo.pu ==> logo.ΣτυλόΆνω (logo.ΣτΑ)
logo.question ==> logo.ερώτηση
logo.quotient ==> logo.πηλίκο
logo.random ==> logo.τυχαίο
logo.readchar ==> logo.ΔιάβασεΧαρ
logo.recycle ==> logo.ανακύκλωση
logo.remainder ==> logo.υπόλοιπο
logo.remove ==> logo.κατάργηση
logo.repeat ==> logo.επανάλαβε
logo.rerandom ==> logo.ΑρχικοποίησηΤυχαίου
logo.resett ==> logo.ΑρχικοποίησηΧρονιστή
logo.resetvideo ==> logo.ΑρχικοποίησηΒίντεο
logo.rest ==> logo.παύση
logo.restore ==> logo.αποκατάσταση
logo.right (logo.rt) ==> logo.δεξιά (logo.δε)
logo.round ==> logo.στρογγυλοποίηση (logo.στρογγ)
logo.run ==> logo.εκτέλεσε
logo.savepict ==> logo.ΑποθΕικόνας
logo.saveproject ==> logo.ΑποθΕργασίας
logo.saveshape ==> logo.ΑποθΣχήματος
logo.savetext ==> logo.ΑποθΚειμένου
logo.search ==> logo.εύρεση
logo.select ==> logo.επιλογή
logo.selected ==> logo.επιλεγμένο
logo.sentence (logo.se) ==> logo.φράση (logo.φρ)
logo.set ==> logo.θέσε
logo.setbg ==> logo.ΘέσεΦόντο (logo.ΘέσεΦντ)
logo.setc ==> logo.ΘέσεΧρώμα (logo.ΘέσεΧρ)
logo.setcell ==> logo.ΘέσεΚελί
logo.setfont ==> logo.ΘέσεΓραμματοσειρά
logo.setfontsize ==> logo.ΘέσεΜέγεθοςΓραμματοσειράς
logo.setfooter ==> logo.ΘέσεΥποσέλιδο
logo.seth ==> logo.ΘέσεΚατεύθυνση (logo.ΘέσεΚτθ)
logo.setinstruction ==> logo.ΘέσεΟδηγία
logo.setinstrument ==> logo.Θέσε'Οργανο
logo.setpensize ==> logo.ΘέσεΠάχοςΣτυλό
logo.setpos ==> logo.ΘέσεΘέση
logo.setshape (logo.setsh) ==> logo.ΘέσεΣχήμα
logo.setsize ==> logo.ΘέσεΜέγεθος
logo.tstyle ==> logo.ΘέσεΣτυλ
logo.settc ==> logo.ΘέσεΧρώμαΚειμένου (logo.ΘέσεΧρΚμν)
logo.setx ==> logo.ΘέσεΧ
logo.sety ==> logo.ΘέσεΨ
logo.shape ==> logo.σχήμα
logo.show ==> logo.δείξε
logo.showtext ==> logo.ΕμφάνισηΚειμένου (logo.ΕμΚμν)
logo.sin ==> logo.ημ
logo.size ==> logo.μέγεθος
logo.snaparea ==> logo.ΑποτύπωμαΠεριοχής
logo.snapshape ==> logo.ΑποτύπωμαΣχήματος
logo.snapshot ==> logo.ΑποτύπωμαΦόντου
logo.sol ==> logo.ΑρχήΓραμμής (logo.ΑρχήΓ)
logo.space ==> logo.ΧώροςΜνήμης
logo.sqrt ==> logo.ΤετραγωνικήΡίζα (logo.ΤΡζ)
logo.st ==> logo.ΕμφάνισηΧελώνας (logo.ΕμΧ)
logo.stamp ==> logo.σφραγίδα (logo.σφρ)
logo.stamptext ==> logo.ΣφραγίδαΚειμένου (logo.ΣφρΚμν)
logo.stop ==> logo.στοπ
logo.stopall ==> logo.'ΟλαΣτοπ
logo.stopme ==> logo.ΣταμάτησέΜε
logo.sum ==> logo.άθροισμα
logo.talkto (logo.tto) ==> logo.ΜίλαΠρος
logo.tan ==> logo.εφ
logo.tc ==> logo.ΧρώμαΚειμένου (logo.ΧρΚμν)
logo.textcount ==> logo.ΜέτρησεΓραμμές
logo.textitem ==> logo.ΓραμμήΚειμένου
logo.textlist ==> logo.ΛίσταΑρχείωνΚειμένου
logo.textpick ==> logo.ΔιάλεξεΓραμμήΚειμένου
logo.textwho ==> logo.ΕνεργόΚείμενο (logo.ΕνΚμν)
logo.thing ==> logo.αντικείμενο
logo.timer ==> logo.χρονιστής
logo.top ==> logo.ΑρχήΚειμένου (logo.ΑρχήΚ)
logo.touching? ==> logo.αγγίζει?
logo.towards ==> logo.ΚοίταΠρος
logo.transparent ==> logo.διαφανές
logo.turtlesown ==> logo.χελωνοχαρακτηριστικό
logo.unfreeze ==> logo.ξεπάγωσε
logo.unfreezebg ==> logo.ΞεπάγωσεΦόντο (logo.ΞεπάγωσεΦντ)
logo.unselect ==> logo.ΑκύρωσηΕπιλογής
logo.wait ==> logo.περίμενε
logo.waituntil ==> logo.Περίμενε'Ωσπου
logo.when ==> logo.όταν
logo.who ==> logo.ΕνεργήΧελώνα
logo.word ==> logo.λέξη
logo.word? ==> logo.λέξη?
logo.xcor ==> logo.ΣυντΧ
logo.ycor ==> logo.ΣυντΨ

logo.project ==> logo.εργασία
logo.presentationmode? ==> logo.ΠεριβάλλονΠαρουσίασης?
logo.showtoolbar? ==> logo.ΕμφάνισηΓραμμήςΕργαλείων?
logo.showcc? ==> logo.ΕμφάνισηΚέντρουΕντολών?
logo.showtabs? ==> logo.ΕμφάνισηΚαρτελών?
logo.showstatusbar? ==> logo.ΕμφάνισηΓραμμήςΚατάστασης?
logo.turtles ==> logo.χελώνες
logo.texts ==> logo.κείμενα
logo.buttons ==> logo.κουμπιά
logo.sliders ==> logo.μεταβολείς
logo.melodies ==> logo.μελωδίες
logo.sounds ==> logo.ήχοι
logo.music ==> logo.μουσική
logo.videos ==> logo.βίντεο
logo.audiocds ==> logo.ΜουσικάCD
logo.hyperlinks ==> logo.δεσμοί
logo.colordemons ==> logo.χρωματοπαγίδες
logo.frozenbg? ==> logo.ΠαγωμένοΦόντο?
logo.transition ==> logo.ΕφφέΜετάβασης
logo.visible? ==> logo.ορατό?
logo.rule ==> logo.κανόνας
logo.on? ==> logo.ναι?
logo.own ==> logo.χαρακτηριστικό
logo.frozen? ==> logo.παγωμένο?
logo.pos ==> logo.θέση
logo.size ==> logo.μέγεθος
logo.showname? ==> logo.ΕμφάνισηΟνόματος?
logo.limits ==> logo.όρια
logo.value ==> logo.τιμή
logo.transparent? ==> logo.διαφανές?
logo.text ==> logo.κείμενο
logo.onreadline ==> logo.ΕκτελέσιμηΓραμμή
logo.turtlerule ==> logo.χελωνοκανόνας
logo.turtlemode (logo.once, eachtime) ==> logo.χελωνορύθμιση (logo.ΜίαΦορά, ΚάθεΦορά)
logo.mouseclick ==> logo.ΚλικΠοντικιού
logo.instrument ==> logo.όργανο
logo.volume ==> logo.ένταση
logo.tempo ==> logo.ρυθμός
logo.link ==> logo.σύνδεση
logo.music ==> logo.μουσική
logo.sound ==> logo.ήχος
logo.video ==> logo.βίντεο
logo.audiocd ==> logo.ΜουσικόCD
logo.black ==> logo.μαύρο
logo.gray ==> logo.γκρι
logo.red ==> logo.κόκκινο
logo.orange ==> logo.πορτοκαλί
logo.brown ==> logo.καφέ
logo.yellow ==> logo.κίτρινο
logo.green ==> logo.πράσινο
logo.lime ==> logo.λεμονί
logo.white ==> logo.λευκό
logo.turquoise ==> logo.τυρκουάζ
logo.cyan ==> logo.κυανό
logo.sky ==> logo.γαλάζιο
logo.blue ==> logo.μπλε
logo.violet ==> logo.μωβ
logo.magenta ==> logo.ροζ
logo.pink ==> logo.φούξια
logo.piano ==> logo.πιάνο
logo.harpsichord ==> logo.κλαβεσίνο
logo.vibraphone ==> logo.βιμπράφωνο
logo.guitar ==> logo.κιθάρα
logo.violin ==> logo.βιολί
logo.clarinet ==> logo.κλαρινέττο
logo.kalimba ==> logo.καλίμπα
logo.normal ==> logo.Κανονικά
logo.italic ==> logo.Πλάγια
logo.bold ==> logo.'Εντονα
logo.underline ==> logo.Υπογράμμιση
logo.to ==> logo.για
logo.end ==> logo.τέλος
logo.startup ==> logo.έναρξη
logo.TRUE ==> logo.ΣΩΣΤΟ
logo.FALSE ==> logo.ΛΑΘΟΣ

ΑΛΦΑΒΗΤΙΚΑ-ΕΛΛΗΝΙΚΑ

name::
* McsElln.ΑΛΦΑΒΗΤΙΚΑ-ΕΛΛΗΝΙΚΑ@cptIt,

Εντολές της MicroWorldsPro1.07 (γ'γυμνασίου):

01) δειξε (εξόδου): εμφανίζει πληροφορία στο κέντρο-εντολών.
 δείξε 2 * 3 ==> κε: 6
 δείξε "Νίκος ==> κε: Νίκος
 δείξε [το όνομά μου είναι Νίκος] ==> κε: το όνομά μου είναι Νίκος
 δείξε (φρ[κοστος] 200 / 25 "ευρώ) ==> κε: κόστος 8 ευρώ
 δείξε :χ ==> κε:

02) ανακοινωση(εξόδου): εμφανίζει πληροφορία σε παράθυρο.
 ανακοίνωση [μήνυμα] ==> παρ: [μήνυμα]
 ανακοίνωση (φρ[κοστος] απάντηση "ευρώ) ==> κε: κόστος 8 ευρώ

03) ερωτηση(εισόδου): ο ΧΡΗΣΤΗΣ δίνει πληροφορία στο κομπιούτερ.
 ερώτηση[μήνυμα] ==> παρ: μήνυμα με πεδίο εισαγωγής για το χρήστη. Η μεταβλητή "απαντηση" κρατάει το αποτέλεσμα.

04) ΕΝΤΟΛΕΣ_ΧΕΛΩΝΑΣ:
 κεντρο: ==> εε: μεταφέρει τη χελώνα στο κέντρο.
 σβησεΓραφικα (σβγ) ==> καθαρίζει την επιφ-εργ. η χελώνα στο κέντρο
 μπροστα (μπ) 20 ==> προχωρά η χελώνα 20 εικονοστοιχεία (pixel)
 πισω (πι) 20 ==>
 δεξια (δε) 90 ==> στρίβει δεξιά 90 μοίρες
 αριστερα (αρ) 90 ==>
 στυλοΚατω (στκ) ==> αφήνει ίχνος η μετακίνηση χελώνας
 στυλοΑνω (στα) ==> δεν αφήνει ίχνος η μετακίνηση χελώνας

05) επαναλαβε: εκτελεί πολλές φορές άλλες εντολές.
 επανάλαβε 4 [μπ 20 δε 90] ==> επαναλαμβάνει 4 φορές εντολές λίστας

06) κανε(εισόδου): ο ΠΡΟΓΡΑΜΜΑΤΙΣΤΗΣ δίνει πληροφορία σε μεταβλητή.
 κανε "χ 2 ==> στη μεταβλητή χ δίνει τιμή ο προγραμματιστής 2.

ΠΡΑΞΕΙΣ:
* δυναμη 2 3 ==> βρίσκει την 3η δύναμη του 2, δηλαδή 8
* τετραγωνικηΡιζα 3 (τρζ) ==>
* 2 + 3 ==> προσθέτει
* 2 * 3 ==> πολλαπλασιάζει
* 2 / 3 ==> διαιρεί
* τυχαιο 100 ==> βρίσκει έναν τυχαίο αριθμο μέχρι το 100.

14) για όνομα :μεταβλητή
  εντολή1
  εντολή2
 τελος ==> δημιουργεί νέες λέξεις (διαδικασίες/προγράμματα)
15) ανΔιαφορετικα συνθήκη [εντ1] [εντ2] ==> αν η συνθήκη είναι αληθής εκτελεί την εντολή1, διαφορετικά την εντολή2.
16) αρχικοποιησηΧρονιστη ==> μετρά χρόνο. Η μεταβλητή "χρονιστης" κρατά το χρόνο σε δέκατα του δευτερολέπτου (/10 δίνει τα δευτερόλεπτα).

MicroWorldsPro1.07:
λγκ.αγγίζει? ==> logo.touching?
λγκ.αδιαφανές ==> logo.opaque
λγκ.αθροισμα ==> logo.sum
λγκ.ακέραιος (λγκ.ακ) ==> logo.int
λγκ.ακου ==> logo.listen
λγκ.ακύρωση ==> logo.cancel
λγκ.ακύρωσηΕπιλογής ==> logo.unselect
λγκ.αλλαξεΚατάλογο (λγκ.αλΚτλ) ==> logo.chdir
λγκ.αν ==> logo.if
λγκ.ανΔιαφορετικά (λγκ.ανΔιαφ) ==> logo.ifelse
λγκ.ανάλυση ==> logo.parse
λγκ.ανήκει? ==> logo.member?
λγκ.ανακοίνωση ==> logo.announce
λγκ.ανακύκλωση ==> logo.recycle
λγκ.ανοιξεΦύλλοΕργασίας ==> logo.openworksheet
λγκ.αντιγραφή ==> logo.copy
λγκ.αντικείμενο ==> logo.thing
λγκ.απΤι ==> logo.abs
λγκ.απάντηση ==> logo.answer
λγκ.αποθΕικόνας ==> logo.savepict
λγκ.αποθΕργασίας ==> logo.saveproject
λγκ.αποθΚειμένου ==> logo.savetext
λγκ.αποθΣxήματος ==> logo.saveshape
λγκ.αποκατάσταση ==> logo.restore
λγκ.αποκοπή ==> logo.cut
λγκ.αποτύπωμαΠεριοxής ==> logo.snaparea
λγκ.αποτύπωμαΣxήματος ==> logo.snapshape
λγκ.αποτύπωμαΦόντου ==> logo.snapshot
λγκ.απόκρυψηΚειμένου (λγκ.απΚμν) ==> logo.hidetext
λγκ.απόκρυψηΧελώνας (λγκ.απΧ) ==> logo.ht
λγκ.απόσταση ==> logo.distance
λγκ.αριθμός? ==> logo.number?
λγκ.αριστερά (λγκ.αρ) ==> logo.left
λγκ.αρxήΓραμμής (λγκ.αρxήΓ) ==> logo.sol
λγκ.αρxήΚειμένου (λγκ.αρxήΚ) ==> logo.top
λγκ.αρxεία ==> logo.files
λγκ.αρxικοποίησηΒίντεο ==> logo.resetvideo
λγκ.αρxικοποίησηΤυxαίου ==> logo.rerandom
λγκ.αρxικοποίησηΧρονιστή ==> logo.resett
λγκ.βάλεΠρώτο (λγκ.βάλεΠ) ==> logo.fput
λγκ.βάλεΤελευταίο (λγκ.βάλεΤ) ==> logo.lput
λγκ.βίντεο ==> logo.video
λγκ.βίντεο ==> logo.videos
λγκ.βιμπράφωνο ==> logo.vibraphone
λγκ.βιολί ==> logo.violin
λγκ.βρέθηκε? ==> logo.found?
λγκ.γέμισε ==> logo.fill
λγκ.γαλάζιο ==> logo.sky
λγκ.για ==> logo.to
λγκ.γινόμενο ==> logo.product
λγκ.γκρι ==> logo.gray
λγκ.γραμμήΚειμένου ==> logo.textitem
λγκ.δείξε ==> logo.show
λγκ.δεξιά (λγκ.δε) ==> logo.right (λγκ.rt)
λγκ.δεσμοί ==> logo.hyperlinks
λγκ.διάβασεΧαρ ==> logo.readchar
λγκ.διάλεξε ==> logo.pick
λγκ.διάλεξεΓραμμήΚειμένου ==> logo.textpick
λγκ.διαγραφή ==> logo.delete
λγκ.διαγραφήΑρxείου ==> logo.erfile
λγκ.διαφανές ==> logo.transparent
λγκ.διαφανές? ==> logo.transparent?
λγκ.διαφορά ==> logo.difference
λγκ.δρομέαςΆνω (λγκ.δρΑ) ==> logo.cu
λγκ.δρομέαςΚάτω (λγκ.δρΚ) ==> logo.cd
λγκ.δρομέαςΜπροστά (λγκ.δρΜ) ==> logo.cf
λγκ.δρομέαςΠίσω (λγκ.δρΠ) ==> logo.cb
λγκ.δύναμη ==> logo.power
λγκ.εισαγωγήΚειμένου (λγκ.εισαγωγήΚμν) ==> logo.importtext
λγκ.εκκίνηση ==> logo.launch
λγκ.εκτέλεσε ==> logo.run
λγκ.εκτέλεσεΛίστα ==> logo.dolist
λγκ.εκτέλεσεΦορές ==> logo.dotimes
λγκ.εκτελέσιμηΓραμμή ==> logo.onreadline
λγκ.εκτόςΠρώτου (λγκ.εκΠ) ==> logo.butfirst (λγκ.bf)
λγκ.εκτόςΤελευταίου (λγκ.εκΤ) ==> logo.butlast (λγκ.bl)
λγκ.εμφάνισηΓραμμήςΕργαλείων? ==> logo.showtoolbar?
λγκ.εμφάνισηΓραμμήςΚατάστασης? ==> logo.showstatusbar?
λγκ.εμφάνισηΚέντρουΕντολών? ==> logo.showcc?
λγκ.εμφάνισηΚαρτελών? ==> logo.showtabs?
λγκ.εμφάνισηΚειμένου (λγκ.εμΚμν) ==> logo.showtext
λγκ.εμφάνισηΟνόματος? ==> logo.showname?
λγκ.εμφάνισηΧελώνας (λγκ.εμΧ) ==> logo.st
λγκ.ενΚατάλογο (λγκ.ενΚτλ) ==> logo.currentdir
λγκ.εναρξη ==> logo.startup
λγκ.ενεργήΧελώνα ==> logo.who
λγκ.ενεργό ==> logo.clickon
λγκ.ενεργόΚείμενο (λγκ.ενΚμν) ==> logo.textwho
λγκ.ενταση ==> logo.volume
λγκ.εντονα ==> logo.bold
λγκ.εξαγωγήΚειμένου (λγκ.εξαγωγήΚμν) ==> logo.exporttext
λγκ.εξοδος (λγκ.εξ) ==> logo.output (λγκ.op)
λγκ.επανάλαβε ==> logo.repeat
λγκ.επικόλληση ==> logo.paste
λγκ.επιλεγμένο ==> logo.selected
λγκ.επιλογή ==> logo.select
λγκ.εργασία ==> logo.project
λγκ.ερώτηση ==> logo.question
λγκ.εστω ==> logo.let
λγκ.εφ ==> logo.tan
λγκ.εφφέΜετάβασης ==> logo.transition
λγκ.εύρεση ==> logo.search
λγκ.ζήτησεΑπό (λγκ.ΖΑ) ==> logo.ask
λγκ.η ==> logo.or
λγκ.ημ ==> logo.sin
λγκ.ηxοι ==> logo.sounds
λγκ.ηxος ==> logo.sound
λγκ.θέσε ==> logo.set
λγκ.θέσε'Οργανο ==> logo.setinstrument
λγκ.θέσεΓραμματοσειρά ==> logo.setfont
λγκ.θέσεΘέση ==> logo.setpos
λγκ.θέσεΚατεύθυνση (λγκ.θέσεΚτθ) ==> logo.seth
λγκ.θέσεΚελί ==> logo.setcell
λγκ.θέσεΜέγεθος ==> logo.setsize
λγκ.θέσεΜέγεθοςΓραμματοσειράς ==> logo.setfontsize
λγκ.θέσεΟδηγία ==> logo.setinstruction
λγκ.θέσεΠάxοςΣτυλό ==> logo.setpensize
λγκ.θέσεΣτυλ ==> logo.tstyle
λγκ.θέσεΣxήμα ==> logo.setshape (λγκ.setsh)
λγκ.θέσεΥποσέλιδο ==> logo.setfooter
λγκ.θέσεΦόντο (λγκ.θέσεΦντ) ==> logo.setbg
λγκ.θέσεΧ ==> logo.setx
λγκ.θέσεΧρώμα (λγκ.θέσεΧρ) ==> logo.setc
λγκ.θέσεΧρώμαΚειμένου (λγκ.θέσεΧρΚμν) ==> logo.settc
λγκ.θέσεΨ ==> logo.sety
λγκ.θέση ==> logo.pos
λγκ.θέσηΠοντικιού ==> logo.mousepos
λγκ.ισούται? ==> logo.equal?
λγκ.κάνε ==> logo.make
λγκ.κέντρο ==> logo.home
λγκ.κίτρινο ==> logo.yellow
λγκ.και ==> logo.and
λγκ.καλίμπα ==> logo.kalimba
λγκ.κανονικά ==> logo.normal
λγκ.κανόνας ==> logo.rule
λγκ.κατάλογοι ==> logo.directories
λγκ.κατάργηση ==> logo.remove
λγκ.κατεύθυνση ==> logo.heading
λγκ.καφέ ==> logo.brown
λγκ.κείμενα ==> logo.texts
λγκ.κείμενο ==> logo.text
λγκ.κενό? ==> logo.empty?
λγκ.κιθάρα ==> logo.guitar
λγκ.κλαβεσίνο ==> logo.harpsichord
λγκ.κλαρινέττο ==> logo.clarinet
λγκ.κλείσεΦύλλοΕργασίας ==> logo.closeworksheet
λγκ.κλικΠοντικιού ==> logo.mouseclick
λγκ.κοίταΠρος ==> logo.towards
λγκ.κουμπιά ==> logo.buttons
λγκ.κυανό ==> logo.cyan
λγκ.κόκκινο ==> logo.red
λγκ.λΑΘΟΣ ==> logo.FALSE
λγκ.λέξη ==> logo.word
λγκ.λέξη? ==> logo.word?
λγκ.λίστα ==> logo.list
λγκ.λίστα? ==> logo.list?
λγκ.λίσταΑρxείωνΚειμένου ==> logo.textlist
λγκ.λίσταΕικόνων ==> logo.pictlist
λγκ.λίσταΕργασιών ==> logo.projectlist
λγκ.λίσταΣελίδων ==> logo.pagelist
λγκ.λεμονί ==> logo.lime
λγκ.λευκό ==> logo.white
λγκ.λογ ==> logo.log
λγκ.μέγεθος ==> logo.size
λγκ.μέγεθοςΓραμματοσειράς ==> logo.fontsize
λγκ.μέγεθοςΕργασίας ==> logo.projectsize
λγκ.μέγεθοςΝέαςΕργασίας ==> logo.newprojectsize
λγκ.μέτρησε ==> logo.count
λγκ.μέτρησεΓραμμές ==> logo.textcount
λγκ.μήνυμαΛάθους ==> logo.errormessage
λγκ.μίλαΠρος ==> logo.talkto (λγκ.tto)
λγκ.μαύρο ==> logo.black
λγκ.μείον ==> logo.minus
λγκ.μεγαλύτερο? ==> logo.greater?
λγκ.μελωδίες ==> logo.melodies
λγκ.μεταβλητέςΕργασίας ==> logo.projectvars
λγκ.μεταβολείς ==> logo.sliders
λγκ.μεταφοράΕμπρός ==> logo.infront
λγκ.μηΕνεργό ==> logo.clickoff
λγκ.μικρότερο? ==> logo.less?
λγκ.μουσικάCD ==> logo.audiocds
λγκ.μουσική ==> logo.music
λγκ.μουσικόCD ==> logo.audiocd
λγκ.μπλε ==> logo.blue
λγκ.μπροστά (λγκ.μπ) ==> logo.forward (λγκ.fd)
λγκ.μωβ ==> logo.violet
λγκ.νέαΣελίδα ==> logo.newpage
λγκ.νέαΧελώνα ==> logo.newturtle
λγκ.νέεςΜεταβλητέςΕργασίας ==> logo.createprojectvar
λγκ.νέοΚείμενο (λγκ.νέοΚμν) ==> logo.newtext
λγκ.νέοΚουμπί ==> logo.newbutton
λγκ.νέοςΜεταβολέας ==> logo.newslider
λγκ.ναι? ==> logo.on?
λγκ.νότα ==> logo.note
λγκ.ξεπάγωσε ==> logo.unfreeze
λγκ.ξεπάγωσεΦόντο (λγκ.ξεπάγωσεΦντ) ==> logo.unfreezebg
λγκ.ολίσθηση ==> logo.glide
λγκ.ολαΣτοπ ==> logo.stopall
λγκ.ολες ==> logo.everyone
λγκ.ολοκληρώθηκε? ==> logo.done?
λγκ.ονομα? ==> logo.name?
λγκ.ονομαΣελίδας ==> logo.namepage (λγκ.np)
λγκ.ονόμασε ==> logo.name
λγκ.ονόματα ==> logo.names
λγκ.ορατό? ==> logo.visible?
λγκ.οργανο ==> logo.instrument
λγκ.ορια ==> logo.limits
λγκ.οταν ==> logo.when
λγκ.οxι ==> logo.not
λγκ.π ==> logo.pi
λγκ.πάγωσε ==> logo.freeze
λγκ.πάγωσεΦντ ==> logo.freezebg
λγκ.πάρε ==> logo.get
λγκ.πάρεΕργασία (λγκ.παρεΕ) ==> logo.getproject
λγκ.πάρεΚελί (λγκ.παρεΚ) ==> logo.getcell
λγκ.πάρεΣελίδα (λγκ.παρεΣ) ==> logo.getpage
λγκ.πάxοςΣτυλό (λγκ.πάxοςΣτ) ==> logo.pensize
λγκ.πίσω (λγκ.πι) ==> logo.back (λγκ.bk)
λγκ.παγωμένο? ==> logo.frozen?
λγκ.παγωμένοΦόντο? ==> logo.frozenbg?
λγκ.παρεμβολή ==> logo.insert
λγκ.παύση ==> logo.rest
λγκ.περίμενε ==> logo.wait
λγκ.περίμενε'Ωσπου ==> logo.waituntil
λγκ.περιβάλλονΠαρουσίασης ==> logo.presentationmode
λγκ.περιβάλλονΠαρουσίασης? ==> logo.presentationmode?
λγκ.πηλίκο ==> logo.quotient
λγκ.πιάνο ==> logo.piano
λγκ.πλάγια ==> logo.italic
λγκ.πλήκτρο? ==> logo.key?
λγκ.πορτοκαλί ==> logo.orange
λγκ.πράσινο ==> logo.green
λγκ.πρόσεξε ==> logo.carefully
λγκ.πρόxειρο ==> logo.clipboard
λγκ.πρώτο ==> logo.first
λγκ.ροζ ==> logo.magenta
λγκ.ρυθμός ==> logo.tempo
λγκ.σΩΣΤΟ ==> logo.TRUE
λγκ.σβήσε (λγκ.σβ) ==> logo.clean
λγκ.σβήσε'Ονομα (λγκ.σβΟ) ==> logo.clearname
λγκ.σβήσεΓραφικά (λγκ.σβΓ) ==> logo.cg
λγκ.σβήσεΕντολές (λγκ.σβΕ) ==> logo.cc
λγκ.σβήσεΚείμενο (λγκ.σβΚμν) ==> logo.cleartext (λγκ.ct)
λγκ.σβήσεΟνόματα (λγκ.σβΑ) ==> logo.clearnames
λγκ.σταμάτησέΜε ==> logo.stopme
λγκ.στοιxείο ==> logo.item
λγκ.στοπ ==> logo.stop
λγκ.στρογγυλοποίηση (λγκ.στρογγ) ==> logo.round
λγκ.στυλόΆνω (λγκ.στΑ) ==> logo.pu
λγκ.στυλόΚάτω (λγκ.στΚ) ==> logo.pd
λγκ.συγxώνευση ==> logo.merge
λγκ.συν ==> logo.cos
λγκ.συνεxώς ==> logo.forever
λγκ.συντΧ ==> logo.xcor
λγκ.συντΨ==> logo.ycor
λγκ.σφραγίδα (λγκ.σφρ) ==> logo.stamp
λγκ.σφραγίδαΚειμένου (λγκ.σφρΚμν) ==> logo.stamptext
λγκ.σxήμα ==> logo.shape
λγκ.σύνδεση ==> logo.link
λγκ.τέλος ==> logo.end
λγκ.τέλοςΓραμμής (λγκ.τέλοςΓ) ==> logo.eol
λγκ.τέλοςΚειμένου (λγκ.τέλοςΚ) ==> logo.bottom
λγκ.τέλοςΚειμένου? (λγκ.τέλοςΚ?) ==> logo.eot?
λγκ.ταυτίζεται? ==> logo.identical?
λγκ.τελευταίο ==> logo.last
λγκ.τετραγωνικήΡίζα (λγκ.τΡζ) ==> logo.sqrt
λγκ.τιμή ==> logo.value
λγκ.τοξΕφ ==> logo.arctan
λγκ.τοπική ==> logo.local
λγκ.τοποθέτησηΕικόνας ==> logo.placepict
λγκ.τυρκουάζ ==> logo.turquoise
λγκ.τυxαίο ==> logo.random
λγκ.τύπωσε (λγκ.τυ) ==> logo.print (λγκ.pr)
λγκ.υπογράμμιση ==> logo.underline
λγκ.υπόλοιπο ==> logo.remainder
λγκ.φούξια ==> logo.pink
λγκ.φράση (λγκ.φρ) ==> logo.sentence (λγκ.se)
λγκ.φόντο (λγκ.φντ) ==> logo.bg
λγκ.φόρτωσεΕικόνα ==> logo.loadpict
λγκ.φόρτωσεΚείμενο ==> logo.loadtext
λγκ.φόρτωσεΣxήμα ==> logo.loadshape
λγκ.xαρ ==> logo.char
λγκ.xαρακτηριστικό ==> logo.own
λγκ.xελωνοκανόνας ==> logo.turtlerule
λγκ.xελωνορύθμιση (λγκ.μίαΦορά, ΚάθεΦορά) ==> logo.turtlemode (λγκ.once, eachtime)
λγκ.xελωνοxαρακτηριστικό ==> logo.turtlesown
λγκ.xελώνες ==> logo.turtles
λγκ.xρονιστής ==> logo.timer
λγκ.xρωματοπαγίδες ==> logo.colordemons
λγκ.xρώμα ==> logo.color
λγκ.xρώμαΑπόΚάτω ==> logo.colorunder
λγκ.xρώμαΚειμένου (λγκ.ΧρΚμν) ==> logo.tc
λγκ.xώροςΜνήμης ==> logo.space

plLogo'FUNCTION

name::
* McsEngl.plLogo'FUNCTION@cptIt,

plLogo'GRAMMAR

name::
* McsEngl.plLogo'GRAMMAR@cptIt,

plLogo'INTEGRATED-DEVELOPMENT-ENVIRONMENT#cptIt430#

name::
* McsEngl.plLogo'INTEGRATED-DEVELOPMENT-ENVIRONMENT@cptIt,

plLogo'PROGRAM CREATION

name::
* McsEngl.plLogo'PROGRAM CREATION@cptIt,

1. open the editor (File/Edit)

2. write the program.

3. close the editor (File/Exit)

4. run the program (on commader)

5. if the program runs save it, otherwise go to the editor and edit it.

plLogo'STORAGE#cptIt14#

name::
* McsEngl.plLogo'STORAGE@cptIt,

FD-83 logo for windows 1993

plLogo'variable

name::
* McsEngl.plLogo'variable@cptIt,

_SPECIFIC:
1) :χ ==> για, δείξε
2) "χ ==> κάνε
3) απάντηση ==> ερωτηση

lcp.instance.SIMULA {1965}

_CREATED: {2014-01-15}

name::
* McsEngl.lcp.instance.SIMULA {1965}@cptIt,
* McsEngl.pgmlng.simula@cptIt,
* McsEngl.simula@cptIt,

_DESCRIPTION:
Finally, historians of the concept should remember the influential Simula 67. Simula was the first object-oriented programming language, and its classes are nearly identical to the modern concept as used in Java, C++, and C#. The class concept of Simula was also a progenitor of the package in Ada and the module of Modula-2.[5] Even when developed originally in 1965, Simula classes could be included in library files and added at compile time.[6]
[http://en.wikipedia.org/wiki/Library_(computing)]

lcp.instance.APL {1964}

NAME

name::
* McsEngl.lcp.instance.APL {1964}@cptIt,
* McsEngl.conceptIt410,
* McsEngl.APL@cptIt410,
* McsEngl.pgmlng.APL@cptIt,

DEFINITION

APL stands for "A Programming Language", which was the title of a book written in 1962 by the creator of the language, Kenneth E. Iverson. Based on what was originally referred to as Iverson Notation, APL is an extremely concise programming language, designed for the manipulation of arrays. The arrays may be scalars, vectors, tables, or matrices of two or more dimensions, and may be composed of either numeric or alphanumeric information. Under Iverson's leadership, IBM introduced APL\360 in 1966.
Since APL predates the introduction of personal computers, it was originally used only on mainframe computers. Since 1983, versions of APL have been available for the PC. Because of its expanded special character set, APL requires a special keyboard or macros for data entry.
IBM's current mainframe and PC versions of APL are called APL2.
[SOURCE: PC-GLOSSARY 1993]

lcp.instance.BASIC {1964}

NAME

name::
* McsEngl.lcp.instance.BASIC {1964}@cptIt,
* McsEngl.conceptIt353,
* McsEngl.BASIC-computer-language@cptIt,
* McsEngl.basic@cptIt353,
* McsEngl.begginers's-All-purpose-symbolic-instruction-code@cptIt,
* McsEngl.language.basic@cptIt353,

DEFINITION

_DESCRIPTION:

ALGORITHM#cptIt458#

SEQUENCE

SELECTION

LOOP

RECURSION

ALPHABET

DIGIT

LETTER

SPECIAL SYMBOL

SEPARATOR

API#cptIt80#

COMMENT

DATA#cptIt242#

ARRAY

LIST

QUEUE

RECORD

STACK

TREE

EVALUATION#cptCore546.107#

EVOLUTION#cptCore546.171#

1965:
Was designed at Dartmouth College by J.Kemeny and T.Kutz.

FUNCTION

GARBAGE COLLECTION

GLOSSARY

CONSTANT

VARIABLE

IDENTIFIER

LITERAL

KEYWORD

OPERATOR

GRAMMAR

INSTRUCTION

INTEGRATED-DEVELOPMENT-ENVIRONMENT#cptIt430#

LEARNING

ORGANIZATION#cptIt968#

PEOPLE

PROGRAM#cptIt59#

SEMANTICS

resourceInfHmn#cptResource843#

STATEMENT

ASSIGNMENT STATEMENT

SYNTAX

USER'INTERFACE#cptIt420.1#

name::
* McsEngl.USER'INTERFACE@cptIt,

DEFINITION

_DESCRIPTION:
COBOL /'ko?b?l/ is one of the oldest programming languages, primarily designed by Grace Hopper. Its name is an acronym for COmmon Business-Oriented Language, defining its primary domain in business, finance, and administrative systems for companies and governments.
The COBOL 2002 standard includes support for object-oriented programming and other modern language features.[1]
[http://en.wikipedia.org/wiki/COBOL]

DEFINITION

LISP is a GENERAL computer language.

LISP'INFORMATION#ql:"",lisp## εχω μια βάση πληροφοριων σε φολιο 2.1#

lisp'GENERIC

_GENERIC:
* programing-language#cptItsoft248#
* INTEGRATED_DEVELOPMENT_ENVIRONMENT#cptItsoft430#

lisp'code.CHARACTERISTIC

name::
* McsEngl.lisp'code.CHARACTERISTIC@cptIt,

* lisp'chc.a_list
See association list.

* lisp'chc.accessor_function
A function such as STARSHIP-SPEED, defined automatically by DEFSTRUCT, that allows you to access a particular field of a structure.

* lisp'chc.address
A number describing the location of an object in memory.

* lisp'chc.applicative_operator
A function that takes another function as input, and applies it to some data. Examples include MAPCAR and FIND-IF.

* lisp'chc.applicative_programming
A style of programming in which functions are frequently passed as data to other functions, and explicit assignment is avoided. Repetitive operations are performed by passing functions to applicative operators.

* lisp'chc.APPLY
The Lisp primitive that applies a function to a set of arguments. EVAL and APPLY are the two basic functions from which Lisp interpreters are constructed. Applicative operators are all constructed from APPLY (or from FUNCALL.)

* lisp'chc.argument
A piece of data serving as input to a function, or an expression which, when evaluated, will produce that piece of data. The term is also used to refer to the names a function uses for its inputs, as in ‘‘AVERAGE is a function of two arguments: X and Y.’’

* lisp'chc.argument_list
A list that specifies the names a function gives to each of its inputs, and how many inputs it requires. When defining a new function, the second input to DEFUN is the new function’s argument list.G-2 Common Lisp: A Gentle Introduction to Symbolic Computation array A contiguous block of storage whose elements are accessed by numeric subscripts. One-dimensional arrays are called vectors, and are a type of sequence.

* lisp'chc.array_header
A small amount of storage at the beginning of an array where Lisp keeps information about the organization of the array, such as its length, and the number of dimensions it has.

* lisp'chc.assignment_free_style
A style of programming that avoids explicit assignment to variables. Once a variable is given a value, such as by a function call or by LET, that value never changes. Assignment-free programs are considered very elegant and easy to read.

* lisp'chc.association_list
A list of pairs, or, more generally, of lists, called entries. The car of each entry is the key searched for by ASSOC.

* lisp'chc.atom
Any Lisp object that is not a cons cell. All non-lists are atoms. So is the empty list, NIL.

* lisp'chc.augmentation
The process of adding something on to a result to derive a new result.

* lisp'chc.augmenting_recursion
A type of recursion in which the final result is built up bit by bit, by adding something to the result of each recursive call.

* lisp'chc.backtrace
A display of the execution stack showing the function currently being evaluated, the function that called it, the function that called that function, and so on. Backtraces are displayed by the debugger upon command.

* lisp'chc.bignum
An integer with an arbitrary number of digits. Internally, bignums are usually represented as a special type of sequence. Compare fixnum.

* lisp'chc.binary_tree
A tree in which each nonterminal node has exactly two children. Lists may be viewed as binary trees whose nonterminal nodes are cons cells and whose terminal nodes are atoms.

* lisp'chc.binding
An archaic term with conflicting uses. Essentially, binding means creating a variable and assigning it a value. See also rebinding.

* lisp'chc.block
A named sequence of Lisp expressions, forming the body of a BLOCK expression. Blocks may be exited using RETURN-FROM.Glossary G-3

* lisp'chc.block_name
A symbol serving as the name of a block. DO, DO*, DOTIMES, and DOLIST create implicit blocks named NIL. Functions defined by DEFUN or LABELS surround their bodies with implicit blocks whose name is the same as the function.

* lisp'chc.body
The body of a form, such as a function definition or a LET, LABELS, or DO expression, contains expressions to be evaluated sequentially within the lexical context of the form. Normally, the value of the last expression in the body is returned by the form.

* lisp'chc.Boolean_function
A function whose inputs and outputs are truth values. Boolean functions are truth functions.

* lisp'chc.bucket
One of the slots of a hash table, in which a chain of items is stored. The more buckets a hash table has, the fewer items each bucket must hold, and the faster the access time for an item will be.

* lisp'chc.call
To call or invoke a function means to pass it some inputs and ask it to produce an output or side effect.

* lisp'chc.cardinality
The cardinality of a set is the number of elements it contains.

* lisp'chc.character_object
A Lisp object such as#\A that denotes a character.

* lisp'chc.character_string
See string.

* lisp'chc.circular_list
A cons cell structure in which there is a path from some cons cell back to itself, possibly via intervening cons cells. If a list is circular, it is not a tree.

* lisp'chc.clause
An element of a COND, AND, or OR conditional expression. A conditional can decide which of its clauses will be evaluated.G-4 Common Lisp: A Gentle Introduction to Symbolic Computation comment A remark included in a program to make it more understandable to humans. Lisp comments are preceded by at least one semicolon.

* lisp'chc.composite_number
An integer that is the product of a prime and some other integer. The opposite of a prime number.

* lisp'chc.conditional
A special function or macro function that makes decisions about which parts of its input to evaluate. Examples include IF, COND, AND, and OR.

* lisp'chc.conditional_augmentation
A style of recursion in which the results of each recursive call are sometimes augmented and sometimes not, under the control of a conditional.

* lisp'chc.constructor_function
A function such as MAKE-STARSHIP that constructs new instances of a structure type.

* lisp'chc.cryptogram
A puzzle in which a piece of text is encoded by a substitution cipher. Cryptograms can be solved by applying knowledge of letter frequencies, and the limited number of words with three or fewer letters, to arrive at a partial decoding.

* lisp'chc.database
A data structure that holds a collection of facts. For example, a ‘‘blocks world’’ database would contain facts about the properties of individual blocks and their relationships to each other.

* lisp'chc.debugger
A tool for examining the state of Lisp programs after an error occurs. It is used to find and eliminate the ‘‘bug’’ responsible for the error.

* lisp'chc.DeMorgan’s_Theorem
A theorem showing the interchangeability of AND and OR when combined with NOT.

* lisp'chc.destructive_operation
An operation that replaces one pointer with another, thereby changing the value of a variable or altering the contents of a cons cell.Glossary G-5

* lisp'chc.destructuring
A macro function’s breaking up one of its unevaluated inputs (a list) into its component elements. Destructuring may be requested by writing a list in place of a symbol in the macro’s argument list.

* lisp'chc.discrimination_net
A network of nodes, each containing a question, that may be used to solve diagnostic problems. The user’s response to the current node’s question determines which of the node’s descendants will become the new current node.

* lisp'chc.documentation_string
A character string serving as the online documentation for a function or variable. Documentation strings may be established using DEFUN or DEFVAR.

* lisp'chc.dot_notation
A notation for writing lists in which cons cells are written as dotted pairs, that is, each cons cell is displayed as a car and cdr separated by a dot, enclosed in parentheses. The list (A (B) C) is written (A . ((B . NIL) . (C . NIL))) in dot notation. See also hybrid notation.

* lisp'chc.dotted_pair
A single cons cell written in do notation. Usually the cdr is a non-NIL atom. A typical dotted pair is (A . B).

* lisp'chc.double_test_recursion
A style of recursion in which there are two end tests. Often, one test is for success, such as finding a particular element when searching a list, and the other is for failure, such as running off the end of the list.

* lisp'chc.element
The elements of a list are the cars of its top-level cons cells, that is, the things that appear within only one level of parentheses.

* lisp'chc.empty_list
The list with no elements. It is written () or NIL.G-6 Common Lisp: A Gentle Introduction to Symbolic Computation end-of-file error When READ tries to read an object beyond the last object in the file, an end-of-file error is signalled. This error can be disabled by supplying an optional argument to READ.

* lisp'chc.entry
An element of an association list (such as a dotted pair), or of a hash table.

* lisp'chc.escape_character
Characters such as the double quote used to enclose strings. Escape characters are necessary to print objects containing special characters; otherwise it will not be possible to read the objects back in again using READ.

* lisp'chc.EVAL
The heart of Lisp: EVAL is a function that evaluates a Lisp expression according to a set of evaluation rules, and returns the result.

* lisp'chc.evaltrace_diagram
A graphical notation unique to this book. Evaltrace diagrams illustrate the evaluation of expressions, and are particularly useful for explaining lexical and dynamic scoping.

* lisp'chc.evaluation
The process of deriving a result from an expression.

* lisp'chc.finite_state_machine
A theoretical machine consisting of a finite number of nodes, representing states, connected by labeled arcs. The machine moves from one state to the next depending on which arc label matches its input. Finite state machines are useful as abstract descriptions of the mechanisms governing devices such as traffic lights, vending machines, and bits of computer circuitry.

* lisp'chc.fixnum
An integer small enough to be represented more efficiently than a bignum. In most implementations, fixnums are represented as binary integers 24 to 32 bits long. Larger integers must be represented as bignums.

* lisp'chc.flat_list
A list of atoms. Since it contains no lists as elements, it is called flat rather than nested.Glossary G-7

* lisp'chc.floating_point_number
A number containing a decimal point, such as 5.0 or 3.14159.

* lisp'chc.form
An expression. Forms are evaluated to yield results. The term is also used to refer to macros and special functions themselves, as in ‘‘LET* is a form for sequentially binding variables.’’

* lisp'chc.format_control_string
A string given as a second argument to format containing text to be printed, interspersed with format directives such as ~S. Several other functions also accept format control string arguments, such as YES-OR-NO-P, BREAK, and ERROR.

* lisp'chc.function
Functions transform inputs to outputs. Lisp functions are defined with DEFUN. Lisp programs are organized as collections of functions.

* lisp'chc.function_cell
One of the five components of a symbol. The function cell holds a pointer to the function object representing the global function named by that symbol. (Local functions created by LABELS do not reside in the function cell.)

* lisp'chc.function_object
A piece of Lisp data that is a function, and can be applied to arguments. The representation of function objects is implementation dependent.

* lisp'chc.garbage_collection
The process of reclaiming storage that is no longer in use, so that it may be reused.

* lisp'chc.generalized_variable
Any place a pointer may reside, such as an ordinary variable, the car or cdr half of a cons cell, an element of an array, a slot in a structure, or one of the five cells making up a symbol.

* lisp'chc.gensym
A symbol created automatically, with a name such as#:G0037, that is not registered in any package. Gensyms are often found in the expansions of complex macros such as SETF.

* lisp'chc.global_variable
A variable that exists in the global lexical context rather than being local to some particular function or LET expression.

* lisp'chc.hash_table
A Lisp data structure that efficiently associates keys with entries. Hash tables serve the same purpose as association lists, but they provide faster lookups of items when the number of entries is large.G-8 Common Lisp: A Gentle Introduction to Symbolic Computation hashing algorithm The method by which a hash table assigns an entry to a bucket. When looking up a key in the table, the hashing algorithm determines which of the table’s buckets to look in.

* lisp'chc.hybrid_notation
A notation for writing lists in which dots are used only when necessary, that is, only when a cons cell chain ends in an atom other than NIL. The dot notation list ((A . NIL) . (C . (D . E))) is written in hybrid notation as ((A) C D . E).

* lisp'chc.i/o
Input/output. The process of transferring information between the computer and an external device, such as the keyboard, the display, or a disk file.

* lisp'chc.indicator
An atom (normally a symbol) that serves as the name of a property on a property list.

* lisp'chc.input
The inputs to a function are the pieces of data it receives. The term input also refers to the act of reading an object or character string from the keyboard, or from a file.

* lisp'chc.integer
A whole number, such as two. Integers are divided into fixnums and bignums. See also floating point number and ratio.

* lisp'chc.intersection
The intersection of two sets contains only those elements that appear in both sets. See union.

* lisp'chc.invoke
To invoke a function means to call it, in other words, to give it some inputs and ask it to produce an output.

* lisp'chc.iteration
To iterate means to repeat. Iteration in Lisp is accomplished by macros such as DO, DO*, DOTIMES, and DOLIST, which ultimately rely on the LOOP special function.

* lisp'chc.key
The item that names an entry in an association list or hash table. Entries can be retrieved (by ASSOC or GETHASH) given the associated key.

* lisp'chc.keyword
A special kind of symbol that is written with a preceding colon, such as :TEST. Keywords evaluate to themselves.Glossary G-9

* lisp'chc.keyword_argument
An optional argument named by a keyword. For example, the MEMBER function takes an optional :TEST argument.

* lisp'chc.lambda
A marker indicating that a list is a lambda expression and is to be interpreted as a description of a function.

* lisp'chc.lambda_list_keyword
A special symbol such as &OPTIONAL or &REST that has a special meaning when it appears in the argument list of a function.

* lisp'chc.lambda_calculus
A logical formalism defined by the mathematician Alonzo Church. John McCarthy, the creator of Lisp (and a former student of Church), borrowed lambda notation from the lambda calculus and used it for describing functions in Lisp.

* lisp'chc.lambda_expression
A list that describes a function. Its first element must be the symbol LAMBDA, its second element must be an argument list, and its remaining elements constitute the body of the function. Lambda expressions must be quoted with#’. For example,#’(LAMBDA (N) (* N 2)).

* lisp'chc.lexical_closure
A type of function. Lexical closures are created automatically by Lisp when functions passed as arguments to other functions need to remember their lexical context.

* lisp'chc.list
A chain of cons cells. One of the fundamental data structures of Lisp.

* lisp'chc.list_surgery
Destructive modification of a list by changing the pointers stored in its cons cells. Used to efficiently insert or delete elements because it avoids copying the list.

* lisp'chc.local_variable
A lexically scoped variable whose scope is limited to the body of a function or LET expression. Compare global variable.

* lisp'chc.logically_complete
A truth function is logically complete if all other truth functions can be constructed from combinations of it. NAND is logically complete; AND is not because you cannot construct the NOT function by putting ANDs together.G-10 Common Lisp: A Gentle Introduction to Symbolic Computation macro function A special kind of function whose arguments are not evaluated. Macro functions must return Lisp expressions, which are then evaluated.

* lisp'chc.macro_expansion
The act of invoking a macro on some inputs to obtain a Lisp expression. For example, the macro call (INCF A) may expand to the expression (SETQ A (+ A 1)).

* lisp'chc.member
An item is a member of a set if it appears in (is an element of) the set.

* lisp'chc.multiple_recursion
A style of recursion in which each call to a function results in several recursive calls, for example, to examine both the car and cdr halves of a tree.

* lisp'chc.nested_IF
An IF appearing as the true-part or false-part of an enclosing IF. Nested IFs may be used to duplicate the multiple-clause capabilities of COND.

* lisp'chc.nested_list
A list that contains other lists as elements.

* lisp'chc.NIL
The only way to say false in Lisp. NIL is also the empty list. It is both a symbol and a list, and it evaluates to itself.

* lisp'chc.nondestructive_function
A function that does not change the value of any variable or modify pointers stored in any existing Lisp object, such as cons cells. APPEND is nondestructive; NCONC is the destructive version.

* lisp'chc.nonterminal_node
A node of a tree with at least one descendant.

* lisp'chc.output
The output of a function is the result it returns. The term may also refer to a program’s outputting information to the display, or to a file.

* lisp'chc.package
Packages are the name spaces in which symbols are registered. The default package is called USER. Lisp functions and variables are named by symbols in package LISP.

* lisp'chc.package_name
A character string giving the name of a package, such as "USER". APROPOS
takes a package name as an optional second argument.

* lisp'chc.pattern_matcher
A function that matches an input list against a pattern that may contain wildcards. For example, the input (B1 COLOR GREEN) matches the pattern (B1 COLOR ?).Glossary G-11 pointer
A pointer to an object gives the address of that object in memory. Pointers are drawn as arrows in cons cell diagrams.

* lisp'chc.predicate_expression
An expression whose value is interpreted as true or false. Used with conditionals.

* lisp'chc.prime_number
An integer that is not divisible by any other integers except one and itself. Every composite number is a product of two or more primes.

* lisp'chc.primitive
An elementary function that is built in to Lisp, not defined by the user. CONS and + are primitives.

* lisp'chc.proper_list
A cons cell chain ending in NIL. NIL itself is also a proper list (a chain of zero cons cells.)

* lisp'chc.proper_subset
A proper subset is a subset that is not equal to the whole set. Set x is a proper subset of set y if x is a subset of y but y is not a subset of x.

* lisp'chc.property_list
A list composed of alternating property indicators and values, such as (SIBLINGS (GEORGE WANDA) AGE 23 SEX MALE). Every symbol contain a plist cell that points to its associated property list. Properties can be retrieved using the GET function.

* lisp'chc.pushdown_stack
A data structure where new elements are pushed on or popped off only at one end, usually called the ‘‘top’’ of the stack. Named after spring loaded stacks of dishes in cafeterias. Also called a LIFO (Last In, First Out) stack. Stacks are implemented as lists or vectors in Lisp.

* lisp'chc.ratio
A fractional number composed of a numerator and denominator, both of which are integers. For example: 3/4. The denominator cannot be zero. In Common Lisp, the denominator also cannot be one, or the number would be an integer, not a ratio.

* lisp'chc.rational
A number expressible as the ratio of two integers. In Common Lisp, rationals are either integers or ratios.G-12 Common Lisp: A Gentle Introduction to Symbolic Computation read-eval-print loop The part of a Lisp interpreter that reads expressions from the keyboard, evaluates them, and prints the result.

* lisp'chc.rebinding
Rebinding a special variable means creating a new dynamic variable with the same name, such as with LET. The name is then dynamically associated with the new variable when it appears anywhere in the program, and the old variable is inaccessible until the form that bound the new variable returns.

* lisp'chc.reciprocal
The reciprocal of a number is one divided by that number. For example, the reciprocal of two is one-half.

* lisp'chc.recursion
A thing is recursive if it contains a reference to itself in its definition. Recursive functions call themselves.

* lisp'chc.recursion_template
A fill-in-the-blanks description of a class of recursive functions. For example, CAR/CDR recursion describes a class of functions for searching binary trees.

* lisp'chc.result
The output of (or value returned by) a function or expression.

* lisp'chc.return
When a function ‘‘returns a value,’’ it is outputting a piece of data.

* lisp'chc.root_node
The topmost node of a tree. The only node with no parent.

* lisp'chc.sequence
A linear collection of elements. Sequences in Lisp include lists and vectors, and hence strings, which are a type of vector. Many functions that worked only lists in previous Lisp dialects work on all types of sequences in Common Lisp. Examples include LENGTH and REVERSE.

* lisp'chc.side_effect
Any action a function takes other than returning a value. Assignment to variables, and input/output operations are examples of side effects.

* lisp'chc.single_test_recursion
A style of recursive function in which there is only one end test. Single-test recursion is used when the function is guaranteed to eventually find what it’s looking for, so there is no need to check for failure. An example would be the recursive definition of FACT, where the end test is ZEROP.

* lisp'chc.special_form
See special function.

* lisp'chc.special_function
A built-in function that does not evaluate its arguments. Special functions provide the primitive constructs, such as assignment, block structure, looping, and variable binding, from which the rest of Lisp is built. They do not return Lisp expressions to be evaluated, as macros do. Lisp programmers can create new macros, but they cannot create new special functions.

* lisp'chc.special_variable
A dynamically scoped variable. When a name is declared special, all variables with that name will be dynamically scoped.

* lisp'chc.stream_object
A Lisp object describing a connection to a file. Lisp programs read and write files by supplying an appropriate stream object as optional input to READ or FORMAT.

* lisp'chc.string
A sequence of characters enclosed in double quotes, such as the string "Foo Bar". Strings are vectors of character objects.

* lisp'chc.structure
A user-defined datatype composed of named slots. An example is the STARSHIP structure, whose slots are NAME, CAPTAIN, SPEED, SHIELDS, and CONDITION.

* lisp'chc.subset
A set x is a subset of a set y if every element of x is an element of y. See also proper subset.G-14 Common Lisp: A Gentle Introduction to Symbolic Computation substitution cipher A method of secret writing in which one letter is substituted for another throughout the message. Substitution ciphers are easy to crack using letter frequency information. For example, E is the most frequently occurring letter in English text, so if a coded message contains more Qs than any other letter, Q probably deciphers to E.

* lisp'chc.T
The standard way to say true in Lisp. T is a symbol. It evaluates to itself.

* lisp'chc.tail_recursive
A function is tail recursive if it does all its work before making the recursive call. Tail recursive functions return the result of the recursive call without augmenting (modifying) it, or doing any other additional work. Clever Lisp compilers turn tail recursive calls into jump instructions, eliminating the need for a call stack.

* lisp'chc.terminal_call
A call to a function that results in no further recursive calls. The function simply returns a value.

* lisp'chc.terminal_node
A node of a tree with no descendants, in other words, a bottommost node. Terminal nodes are also called leaves.

* lisp'chc.top_level_prompt
A prompt character such as ‘‘>’’ or ‘‘*’’ that indicates to the user that he or she is typing to the top-level read-eval-print loop.

* lisp'chc.TRACE
A tool for displaying function entries and exits.

* lisp'chc.tree
A structure composed of nodes and links, where each node has zero or more children and exactly one parent. An exception is the topmost node, or root, which has no parent. Trees may be represented as lists in Lisp.

* lisp'chc.truth_function
A function whose inputs and output are truth values, that is, true or false.Glossary G-15

* lisp'chc.type_predicate
A predicate such as NUMBERP or CONSP that returns true if its input is a particular type of data.

* lisp'chc.type_system
The set of datatypes a language offers, and their organization. The Lisp type system includes type predicates, a TYPE-OF function for generating type descriptions, and a facility for creating new datatypes with DEFSTRUCT.

* lisp'chc.unassigned_variable
A variable that has no value.

* lisp'chc.unbound_variable
‘‘Unbound’’ is an archaic term for ‘‘unassigned,’’ and is avoided in this book. See unassigned variable.

* lisp'chc.union
The union of two sets contains all the elements of each set. Each element appears only once in the union. See also intersection.

* lisp'chc.value_cell
A cell in the internal representation of a symbol where Lisp keeps the value of the global lexical variable (or the currently accessible dynamic variable) named by that symbol.

* lisp'chc.variable
A place where a value is stored. Ordinary variables are named by symbols. Generalized variables are named by place descriptions, which may be Lisp expressions.

* lisp'chc.vector
A one-dimensional array.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'code.ATOM

name::
* McsEngl.lisp'code.ATOM@cptIt,
* McsEngl.lisp'atom@cptIt,

_DESCRIPTION:
A Lisp list is written with its elements separated by whitespace, and surrounded by parentheses. For example, (1 2 foo) is a list whose elements are three atoms: the values 1, 2, and foo. These values are implicitly typed: they are respectively two integers and a Lisp-specific data type called a "symbolic atom", and do not have to be declared as such.
[http://en.wikipedia.org/wiki/Lisp_(programming_language)]

_SPECIFIC:
* integer
* nil: The empty list () is also represented as the special atom nil.
* symbolic atom

lisp'code.DATA

name::
* McsEngl.lisp'code.DATA@cptIt,
* McsEngl.lisp'data@cptIt,

_DESCRIPTION:
The term data means information, such as numbers, words, or lists of things.
...
* lisp'chc.data
Data means information. Lisp data comes in several forms, including numbers, symbols, and lists.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'data.DATATYPE

name::
* McsEngl.lisp'data.DATATYPE@cptIt,

_SPECIFIC:
In the original LISP there were two fundamental data types: atoms and lists. A list was a finite ordered sequence of elements, where each element is in itself either an atom or a list, and an atom was a number or a symbol. A symbol was essentially a unique named item, written as an alphanumeric string in source code, and used either as a variable name or as a data item in symbolic processing. For example, the list (FOO (BAR 1) 2) contains three elements: the symbol FOO, the list (BAR 1), and the number 2.
The essential difference between atoms and lists was that atoms were immutable and unique. Two atoms that appeared in different places in source code but were written in exactly the same way represented the same object[citation needed], whereas each list was a separate object that could be altered independently of other lists and could be distinguished from other lists by comparison operators.
As more data types were introduced in later Lisp dialects, and programming styles evolved, the concept of an atom lost importance.[citation needed] Many dialects still retained the predicate atom for legacy compatibility[citation needed], defining it true for any object which is not a cons.
[http://en.wikipedia.org/wiki/Lisp_(programming_language)]

_SPECIFIC:
o lists
o symbols
o strings
o integers
o characters
o floats
o objects
o arrays
o streams
o subrs (built-in functions)
o fsubrs (special forms)
o closures (user defined functions)

lisp'data.NUMBER

name::
* McsEngl.lisp'data.NUMBER@cptIt,
* McsEngl.lisp'number@cptIt,

_DESCRIPTION:
In this book we will work mostly with integers, which are whole numbers.
Common Lisp provides many other kinds of numbers. One kind you should
know about is floating point numbers. A floating point number is always
written with a decimal point; for example, the number five would be written
5.0.
...
Ratios are yet another kind of number. On a pocket calculator, one-half
must be written in floating point notation, as 0.5, but in Common Lisp we can
also write one-half as the ratio 1/2.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

SPECIFIC

_SPECIFIC:
* floating-point-number
* integer-number
* ratio-number

lisp'integer

name::
* McsEngl.lisp'integer@cptIt,

_DESCRIPTION:
integer A sequence of digits ‘‘0’’ through ‘‘9,’’ optionally preceded by a plus or minus sign.
So FOUR is a symbol, 4 is an integer, +4 is an integer, but + is a symbol. And
7-11 is also a symbol.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'data.SET

name::
* McsEngl.lisp'data.SET@cptIt,

_DESCRIPTION:
* lisp'chc.set
An unordered collection of elements, each of which appears only once in the set. In Lisp, sets are implemented as lists.

* lisp'chc.set_difference
The set difference (or set subtraction) of sets x and y is the set of elements that appear in x and do not appear in y.

* lisp'chc.set_exclusive_or
The exclusive or of two sets is the set of elements that appear in one set but not the other.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'code.FUNCTION

name::
* McsEngl.lisp'code.FUNCTION@cptIt,
* McsEngl.lisp'function@cptIt,

_DESCRIPTION:
You can think of a function as a box through which data flows. The function operates on the data in some way, and the result is what flows out.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]
===
The reliance on expressions gives the language great flexibility. Because Lisp functions are themselves written as lists, they can be processed exactly like data. This allows easy writing of programs which manipulate other programs (metaprogramming). Many Lisp dialects exploit this feature using macro systems, which enables extension of the language almost without limit.
[http://en.wikipedia.org/wiki/Lisp_(programming_language)]

_CODE.LISP:
For example, the function list returns its arguments as a list, so the expression
(list '1 '2 'foo)
evaluates to the list (1 2 foo).
[http://en.wikipedia.org/wiki/Lisp_(programming_language)]

lisp'fcn'argument (input)

name::
* McsEngl.lisp'fcn'argument (input)@cptIt,
* McsEngl.lisp'fcn'input@cptIt,
* McsEngl.lisp'input-of-function@cptIt,

_DESCRIPTION:
functions are applied to arguments.

lisp'fcn'argument-number

name::
* McsEngl.lisp'fcn'argument-number@cptIt,

_DESCRIPTION:
Some functions require a fixed number of inputs, such as ODDP, which
accepts exactly one input, and EQUAL, which takes exactly two. But many
functions accept a variable number of inputs.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'fcn'argument-order

name::
* McsEngl.lisp'fcn'argument-order@cptIt,

_DESCRIPTION:
By convention, when we refer to the ‘‘first’’ input to a function, we mean the
topmost arrow entering the function box. The ‘‘second’’ input is the next
highest arrow, and so on. The order in which inputs are supplied to a function
is important. For example, dividing 8 by 2 is not the same as dividing 2 by 8
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'fcn'doing.CREATING

name::
* McsEngl.lisp'fcn'doing.CREATING@cptIt,

_DESCRIPTION:
After covering some of the built-in functions provided by Lisp, we will learn how to put existing functions together to make new ones—the essence of computer programming.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'fcn'definition

name::
* McsEngl.lisp'fcn'definition@cptIt,
* McsEngl.lisp'definition-of-function@cptIt,

A function must have a definition before we can use it.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'fcn'doing.USING

name::
* McsEngl.lisp'fcn'doing.USING@cptIt,
* McsEngl.lisp'function-call@cptIt,
* McsEngl.lisp'function-invocation@cptIt,
* McsEngl.lisp'function-usage@cptIt,

lisp'fcn'notation

name::
* McsEngl.lisp'fcn'notation@cptIt,

_BOX_NOTATION:

_EVAL_NOTATION:
* lisp'chc.EVAL_notation
A way to write Lisp expressions as lists. The first element of a list specifies a function, and the remaining elements specify arguments to be evaluated before the function is called.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

_LAMBDA_NOTATION:
John McCarthy, the originator of Lisp, was a student of Church. He
adopted Church’s notation for specifying functions. The Lisp equivalent of
the unnamed function λx.(3+x) is the list
(lambda (x) (+ 3 x))
A function f(x,y) = 3x+y2 would be written λ(x,y).(3x+y2) in lambda
notation. In Lisp it is written
(lambda (x y) (+ (* 3 x) (* y y)))
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'fcn'relation-to-data

name::
* McsEngl.lisp'fcn'relation-to-data@cptIt,

_DESCRIPTION:
• In Lisp, functions are data, and EVAL notation allows us to write
functions that accept other functions as inputs. We’ll explore this
possibility further in chapter 7.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'fcn'return (output)

name::
* McsEngl.lisp'fcn'return (output)@cptIt,

_DESCRIPTION:
When we say that an object such as a list or symbol is an input to a function,
we are speaking informally. Inside the computer, everything is done with
pointers, so the real input to the function isn’t the object itself, but a pointer to
the object. Likewise, the result returned by a function is really a pointer.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

SPECIFIC

name::
* McsEngl.lisp'fcn.specific@cptIt,

_SPECIFIC:

lisp'fcn.ARITHMETIC

name::
* McsEngl.lisp'fcn.ARITHMETIC@cptIt,

_DESCRIPTION:
Probably the most familiar functions are the simple arithmetic functions of addition, subtraction, multiplication, and division.
...
Here is a table of Lisp functions that do useful things with numbers:
+ Adds two numbers
- Subtracts the second number from the first
* Multiplies two numbers
/ Divides the first number by the second
ABS Absolute value of a number
SQRT Square root of a number
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'fcn.DEFUN

name::
* McsEngl.lisp'fcn.DEFUN@cptIt,
* McsEngl.lisp'defun-function@cptIt,

_DESCRIPTION:
The AVERAGE function is defined in EVAL notation this way:
(defun average (x y)
(/ (+ x y) 2.0))
DEFUN is a special kind of function, called a macro function, that does
not evaluate its arguments. Therefore they do not have to be quoted. DEFUN
is used to define other functions. The first input to DEFUN is the name of the
function being defined. The second input is the argument list: It specifies the
names the function will use to refer to its arguments. The remaining inputs to
DEFUN define the body of the function: what goes on ‘‘inside the box.’’ By
the way, DEFUN stands for define function.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'fcn.EVAL

name::
* McsEngl.lisp'fcn.EVAL@cptIt,
* McsEngl.lisp'eval-function@cptIt,
* McsEngl.lisp'evaluation@cptIt,

_DESCRIPTION:
The EVAL function is the heart of Lisp. EVAL’s job is to evaluate Lisp
expressions to compute their result. Most expressions consist of a function
followed by a set of inputs. If we give EVAL the expression (+ 2 3), for
example, it will invoke the built-in function + on the inputs 2 and 3, and + will
return 5. We therefore say the expression (+ 2 3) evaluates to 5.
...
We won’t use EVAL explicitly in any of the programs we write, but we
make implicit use of it all the time. You can think of the computer as a
physical manifestation of EVAL. When it runs Lisp, everything you type is
evaluated.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

_RULE:
Evaluation Rule for Numbers, T, and NIL: Numbers, and the symbols T
and NIL, evaluate to themselves.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

_RULE:
Evaluation Rule for Lists: The first element of the list specifies a
function to be called. The remaining elements specify arguments to the
function. The function is called on the evaluated arguments.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

_RULE:
Evaluation Rule for Symbols: A symbol evaluates to the value of the variable it refers to.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

_RULE:
Evaluation Rule for Quoted Objects: A quoted object evaluates to the
object itself, without the quote.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'fcn.LIST-MANIPULATION

name::
* McsEngl.lisp'fcn.LIST-MANIPULATION@cptIt,
* McsEngl.lisp'list-manipulation-function@cptIt,

* lisp'fcn.APPEND:
APPEND takes two lists as input; it returns a list containing all the elements of
the first list followed by all the elements of the second.*
> (append ’(friends romans) ’(and countrymen))
(FRIENDS ROMANS AND COUNTRYMEN)
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

* lisp'fcn.LIST:
LIST makes new lists by accepting an arbitrary number of inputs
and building a chain of cons cells ending in NIL. The car of each
cell points to the corresponding input.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

* lisp'fcn.REMOVE:
REMOVE removes an item from a list. Normally it removes all occurrences
of the item, although there are ways to tell it to remove only some (see the
Advanced Topics section). The result returned by REMOVE is a new list,
without the deleted items.
(remove ’a ’(b a n a n a)) ? (b n n)
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'fcn.NAMED

name::
* McsEngl.lisp'fcn.NAMED@cptIt,
* McsEngl.lisp'named-function@cptIt,

_DESCRIPTION:
Named functions are created by storing a lambda expression in a symbol using the defun macro.
(defun foo (a b c d) (+ a b c d))
[http://en.wikipedia.org/wiki/Lisp_(programming_language)]

lisp'fcn.NAMED.NO

name::
* McsEngl.lisp'fcn.NAMED.NO@cptIt,
* McsEngl.lisp'namedNo-function@cptIt,

lisp'fcn.PREDICATE

name::
* McsEngl.lisp'fcn.PREDICATE@cptIt,
* McsEngl.lisp'chc.predicate@cptIt,
* McsEngl.lisp'predicate@cptIt,

_DESCRIPTION:
A predicate is a question-answering function. Predicates output the symbol T when they mean yes and the symbol NIL when they mean no.
...
More importantly, certain Lisp functions answer questions with T or NIL. Such yes-or-no functions are called predicates.
...
A function that answers a question by returning T (or some other non-NIL value) for true, or NIL for false.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

SPECIFIC

_SPECIFIC:
* lisp'predicate.eq
* lisp'predicate.eql
* lisp'predicate.equal
* lisp'predicate.equalP
* lisp'predicate.isgreaterthan (>)
* lisp'predicate.islessthan (<)

lisp'predicate.NOT

name::
* McsEngl.lisp'predicate.NOT@cptIt,

_DESCRIPTION:
NOT is the ‘‘opposite’’ predicate: It turns yes into no, and no into yes. In
Lisp terminology, given an input of T, NOT returns NIL. Given an input of
NIL, NOT returns T. The neat thing about NOT is that it can be attached to
any other predicate to derive its opposite; for example, we can make a ‘‘not
equal’’ predicate from NOT and EQUAL, or a ‘‘nonzero’’ predicate from
NOT and ZEROP.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'predicate.NUMBERP

name::
* McsEngl.lisp'predicate.NUMBERP@cptIt,

_CODE.LISP:
>> (numberp "cat")
>NIL

lisp'predicate.SYMBOLP

name::
* McsEngl.lisp'predicate.SYMBOLP@cptIt,

_CODE.LISP:
>> (symbolp 'cat)
>T

lisp'fcn.PRIMITIVE

name::
* McsEngl.lisp'fcn.PRIMITIVE@cptIt,
* McsEngl.lisp'primitive-function@cptIt,

_DESCRIPTION:
So far we’ve covered about a dozen of the many functions built into Common
Lisp. These built-in functions are called primitive functions, or primitives.
We make new functions by putting primitives together in various ways.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'fcn.PRIMITIVE.NO

name::
* McsEngl.lisp'fcn.PRIMITIVE.NO@cptIt,
* McsEngl.lisp'primitiveNo-function@cptIt,

lisp'fcn.RECURSIVE

name::
* McsEngl.lisp'fcn.RECURSIVE@cptIt,
* McsEngl.lisp'recursive-function@cptIt,

_DESCRIPTION:
A function is said to be ‘‘recursive’’ if it calls itself.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'fcn.SETF

name::
* McsEngl.lisp'fcn.SETF@cptIt,
* McsEngl.lisp'SETF-function@cptIt,

The SETF macro function assigns a value to a variable. If the variable already
has a value, the new value replaces the old one. Here is an example of SETF
assigning a value to a global variable, and later changing its value.
> vowels VOWELS initially has no value.
Error: VOWELS unassigned variable.
> (setf vowels ’(a e i o u)) SETF gives VOWELS a
(A E I O U)
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'fcn.SPECIAL

name::
* McsEngl.lisp'fcn.SPECIAL@cptIt,
* McsEngl.lisp'special-function@cptIt,

lisp'code.LIST

name::
* McsEngl.lisp'code.LIST@cptIt,
* McsEngl.lisp'list@cptIt,

_GENERIC:
* codetype##

_DESCRIPTION:
List is a codetype not datatype.
[hmnSngo.2014-01-27]
===
The name ‘‘Lisp’’ is an acronym for List Processor. Even though the
language has matured in many ways over the years, lists remain its central data
type. Lists are important because they can be made to represent practically
anything: sets, tables, and graphs, and even English sentences. Functions can
also be represented as lists, but we’ll save that topic for the next chapter.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]
===
Lisp offers a handy set of primitives for working with lists.
[Winston-et-al, 1990, 34#cptResource112]

lisp'list'element

name::
* McsEngl.lisp'list'element@cptIt,

_DESCRIPTION:
In its printed form, a list is a bunch of items enclosed in parentheses.
These items are called the elements of the list.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'list'doing.CREATING

name::
* McsEngl.lisp'list'doing.CREATING@cptIt,

_DESCRIPTION:
We have three ways to make lists using EVAL notation. We can write the list
out directly, using a quote to prevent its evaluation, like this:
’(foo bar baz) ? (foo bar baz)
Or we can use LIST or CONS to build the list up from individual elements. If
we use this method, we must quote each argument to the function:
(list ’foo ’bar ’baz) ? (foo bar baz)
(cons ’foo ’(bar baz)) ? (foo bar baz)
One advantage of building the list up from individual elements is that some of
the elements can be computed rather than specified directly.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'list'length

name::
* McsEngl.lisp'list'length@cptIt,

_DESCRIPTION:
The length of a list is the number of elements it has, for example, the list (HI
MOM) is of length two. But what about lists of lists? When a list is written in
parenthesis notation, its elements are the things that appear inside only one
level of parentheses. For example, the elements of the list (A (B C) D) are A,
the list (B C), and D. The symbols B and C are not elements themselves, they
are merely components of the element (B C).
Remember that the computer does not use parentheses internally. From the
computer’s point of view, the list (A (B C) D) contains three elements because
its internal representation contains three top-level cons cells,
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'list'representationINTERNAL

name::
* McsEngl.lisp'list'representationINTERNAL@cptIt,

_DESCRIPTION:
Every list has two forms: a printed representation and an internal one. The
printed representation is most convenient for people to use, because it’s
compact and easy to type on a computer keyboard. The internal representation
is the way the list actually exists in the computer’s memory. We will use a
graphical notation when we want to refer to lists in their internal form.
...
The internal representation of lists does not involve parentheses. Inside the
computer’s memory, lists are organized as chains of cons cells, which we’ll
draw as boxes. The cons cells are linked together by pointers, which we’ll
draw as arrows. Each cons cell has two pointers. One of them always points
to an element of the list, such as RED, while the other points to the next cons
cell in the chain.* When we say ‘‘lists may include symbols or numbers as
elements,’’ what we are really saying is that cons cells may contain pointers to
symbols or numbers, as well as pointers to other cons cells. The computer’s
internal representation of the list (RED GREEN BLUE) is drawn this way:**

RED GREEN BLUE
NIL
Looking at the rightmost cell, you’ll note that the cons cell chain ends in
NIL. This is a convention in Lisp. It may be violated in some circumstances,
but most of the time lists will end in NIL. When the list is written in
parenthesis notation, the NIL at the end of the chain is omitted, again by
convention.
*What each cons cell actually is, internally, is a small piece of memory, split in two, big enough to hold two addresses (pointers) to other places in memory where the actual data (like RED, or NIL, or another cons cell) is stored. On most computers pointers are four bytes long, so each cons cells is eight bytes.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

* lisp'chc.cons_cell
The unit of computer memory from which lists are composed. Each cons cell holds two pointers, one in the car half, and one in the cdr half.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

* lisp'chc.CAR
The left half of a cons cell. Also, a function that returns the contents of the left half of a cons cell. The name stands for Contents of Address portion of Register.
* lisp'chc.CDR
The right half of a cons cell. Also, a function that returns the contents of the right half of a cons cell. The name stands for Contents of Decrement portion of Register. See also CDR, cons.
By now you know that each half of a cons cell points to something. The two
halves have obscure names. The left half is called the CAR, and the right half
is called the CDR (pronounced ‘‘cou-der,’’ rhymes with ‘‘good-er’’). These
names are relics from the early days of computing, when Lisp first ran on a
machine called the IBM 704. The 704 was so primitive it didn’t even have
transistors—it used vacuum tubes. Each of its ‘‘registers’’ was divided into
several components, two of which were the address portion and the decrement
portion. Back then, the name CAR stood for Contents of Address portion of
Register, and CDR stood for Contents of Decrement portion of Register. Even
though these terms don’t apply to modern computer hardware, Common Lisp
still uses the acronyms CAR and CDR when referring to cons cells, partly for
historical reasons, and partly because these names can be composed to form
longer names such as CADR and CDDAR, as you will see shortly.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

SPECIFIC

lisp'list.DOTTED

name::
* McsEngl.lisp'list.DOTTED@cptIt,

_DESCRIPTION:
When printing a list in parenthesis notation, Lisp starts by printing a left
parenthesis followed by all the elements, separated by spaces. Then, if the list
ends in NIL, Lisp prints a right parenthesis. If it does not end in NIL, before
printing the right parenthesis Lisp prints a space, a period, another space, and
the atom that ends the chain. The list above, which is called a dotted list
rather than a proper list, is written like this:
(A B C . D)
* lisp'chc.dotted_list
A cons cell chain ending in an atom other than NIL. For example, (A B C . D) is a chain of three cons cells ending in the symbol D. This list must be written with a dot to show that the D is the cdr of the third cell, not the car of a fourth cell.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'list.EMPTY

name::
* McsEngl.lisp'list.EMPTY@cptIt,

_DESCRIPTION:
A list of zero elements is called an empty list. It has no cons cells. It is
written as an empty pair of parentheses:
()
Inside the computer the empty list is represented by the symbol NIL. This
is a tricky point: the symbol NIL is the empty list; that’s why it is used to mark
the end of a cons cell chain. Since NIL and the empty list are identical, we are
always free to write NIL instead of (), and vice versa. Thus (A NIL B) can
also be written (A () B). It makes no difference which printed form is used;
inside the computer the two are the same.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'list.NESTED

name::
* McsEngl.lisp'list.NESTED@cptIt,

_DESCRIPTION:
Lists that contain other lists are called nested lists. In parenthesis notation,
a nested list has one or more sets of parentheses nested within the outermost
pair. In cons cell notation, a nested list has at least one level of cons cells
below the top-level chain. Lists that are not nested are called flat lists.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'list.PROPER

name::
* McsEngl.lisp'list.PROPER@cptIt,

_DESCRIPTION:
A proper list is a cons cell chain ending in NIL. The convention is to omit
this NIL when writing lists in parenthesis notation, so the structure below is
written (A B C).
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'code.OPERATOR

name::
* McsEngl.lisp'code.OPERATOR@cptIt,
* McsEngl.lisp'operator@cptIt,

lisp'opr.ARITHMETIC

name::
* McsEngl.lisp'opr.ARITHMETIC@cptIt,
* McsEngl.lisp'arithmetic-operator@cptIt,

_DESCRIPTION:
Arithmetic operators are treated similarly. The expression
(+ 1 2 3 4)
evaluates to 10. The equivalent under infix notation would be "1 + 2 + 3 + 4".
[http://en.wikipedia.org/wiki/Lisp_(programming_language)]

lisp'opr.IF

name::
* McsEngl.lisp'opr.IF@cptIt,
* McsEngl.lisp'if@cptIt,

_DESCRIPTION:
"Special operators" (sometimes called "special forms") provide Lisp's control structure. For example, the special operator if takes three arguments. If the first argument is non-nil, it evaluates to the second argument; otherwise, it evaluates to the third argument. Thus, the expression

(if nil
(list 1 2 "foo")
(list 3 4 "bar"))
evaluates to (3 4 "bar"). Of course, this would be more useful if a non-trivial expression had been substituted in place of nil.
[http://en.wikipedia.org/wiki/Lisp_(programming_language)]

lisp'opr.LAMBDA

name::
* McsEngl.lisp'opr.LAMBDA@cptIt,
* McsEngl.lisp'lambda-operator@cptIt,

lisp'code.PROGRAM

name::
* McsEngl.lisp'code.PROGRAM@cptIt,

FUNCTIONS:
(EXIT)=to quit

lisp'code.S-EXPRESSION

name::
* McsEngl.lisp'code.S-EXPRESSION@cptIt,
* McsEngl.lisp'sexpression@cptIt,
* McsEngl.lisp'symbolic-expression@cptIt,

_DESCRIPTION:
Lisp is an expression-oriented language. Unlike most other languages, no distinction is made between "expressions" and "statements";[dubious – discuss] all code and data are written as expressions. When an expression is evaluated, it produces a value (in Common Lisp, possibly multiple values), which then can be embedded into other expressions. Each value can be any data type
* lisp'chc.S_expression
Lisp objects in printed form used to be called S-expressions, meaning symbolic expressions.
[http://en.wikipedia.org/wiki/Lisp_(programming_language)]
===
* lisp'chc.expression
Expressions are the Lisp equivalent of sentences in English. Every Lisp object (number, symbol, list) is an expression. Lisp interpreters read expressions from the keyboard, evaluate them, and print the results.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'expression.PREDICATE

name::
* McsEngl.lisp'expression.PREDICATE@cptIt,
* McsEngl.lisp'predicate-expression@cptIt,

_DESCRIPTION:
A predicate expression is an expression whose value is interpreted as either
‘‘true’’ or ‘‘false.’’
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'code.SYMBOL

name::
* McsEngl.lisp'code.SYMBOL@cptIt,
* McsEngl.lisp'symbol@cptIt,

_DESCRIPTION:
symbol Any sequence of letters, digits, and permissible special characters that is not a number.
So FOUR is a symbol, 4 is an integer, +4 is an integer, but + is a symbol. And
7-11 is also a symbol.
...
* lisp'chc.symbol
One of the fundamental Lisp datatypes. Internally, symbols are composed of five cells: the name, value, function, plist, and package cells. Besides serving as data, symbols also serve as names for things, such as functions, variables, types, and blocks.

* lisp'chc.symbol_name
Symbols are named by character strings. Each symbol contains a name cell that holds a pointer to the character string that is the symbol’s name.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'code.VARIABLE

name::
* McsEngl.lisp'code.VARIABLE@cptIt,
* McsEngl.lisp'variable@cptIt,

_DESCRIPTION:
A variable is a place where data is stored.* Let’s consider the AVERAGE
function again. When we call AVERAGE, Lisp creates two new variables to
hold the inputs so that the expression in the body can refer to them by name.
The names of the variables are X and Y. It is important to distinguish here
between variables and symbols. Variables are not symbols; variables are
named by symbols. Functions are also named by symbols.
The value of a variable is the data it holds. When we evaluate (AVERAGE
3 7), Lisp creates variables named X and Y and assigns them the values 3 and
7, respectively. In the body of AVERAGE, the symbol X refers to the first
variable and the symbol Y refers to the second. These variables can only be
referenced inside the body; outside of AVERAGE they are inaccessible. Of
course the symbols X and Y still exist outside of AVERAGE, but they don’t
have the same meanings outside as they have inside.
*This use of the term ‘‘variable’’ is peculiar to computer programming. In mathematics, a variable is a notation for an unknown quantity, not a physical place in computer memory. But these two meanings are not incompatible, since the inputs to a function are in fact unknown quantities at the time the function is defined.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'variable'name

name::
* McsEngl.lisp'variable'name@cptIt,
* McsEngl.lisp'variable'symbol@cptIt,

_DESCRIPTION:
It is important to distinguish here between variables and symbols. Variables are not symbols; variables are named by symbols. Functions are also named by symbols.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'variable'scope

name::
* McsEngl.lisp'variable'scope@cptIt,

_DESCRIPTION:
The scope of a variable is the region in which it may be referenced. For
example, the variable N that holds the input to HALF has scope limited to the
body of HALF. Another way to express this is to say that the variable N is
local to HALF. Global variables have unbounded scope; they may be
referenced anywhere.
...
* lisp'chc.scope
The scope of an object is the region of the program in which the object can be referenced. For example, if a variable names the input to some function, the scope of the variable is limited to the body of that function. See also lexical-scoping#ql:lisp'chc.lexical_scoping# and dynamic scoping.
* lisp'chc.lexical_scoping
A scoping discipline in which the only variables a function can see are those it defined itself, plus those defined by forms that contain the function, as when a function defined with DEFUN contains a lambda expression inside it. Compare dynamic-scoping#ql:lisp'chc.dynamic_scoping#.
* lisp'chc.dynamic_scoping
A scoping discipline in which a symbol is dynamically associated with the most recently-created variable with that name still in existence, independent of the lexical context in which the variable was created. Special variables are dynamically scoped. Compare lexical scoping.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'variable'value

name::
* McsEngl.lisp'variable'value@cptIt,

_DESCRIPTION:
The value of a variable is the data it holds.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'variable.GLOBAL

name::
* McsEngl.lisp'variable.GLOBAL@cptIt,

_DESCRIPTION:
A global variable is one that is not associated with
any function. PI is an example of a global variable that is built in to Common
Lisp.
pi ? 3.14159
Informally, Lisp programmers sometimes talk of evaluating variables.
They might say ‘‘variables evaluate to their values.’’ What they really mean
is that a symbol evaluates to the value of the variable it refers to. Since there
can be many variables named N, which one you get depends on where the
symbol N appears. If it appears inside the body of SQUARE, you get the
variable that holds the input to SQUARE. If it appears outside of any
function, you get the global variable named N.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'doing#cptCore475#

name::
* McsEngl.lisp'doing@cptIt,

language#cptIt444-4#

lisp'doing.EVOLUTING#cptCore546.171#

name::
* McsEngl.lisp'doing.EVOLUTING@cptIt,

The original version of the programming language lisp was developed at the Massachusetts Institute of Technology in the late 1950s under the direction of J. McCarthy. It was designed specifically for list processing, that is, the manipulation of symbolic information.
[Tanimoto, 1990, 15#cptResource461]

lisp'error

name::
* McsEngl.lisp'error@cptIt,

_DESCRIPTION:
Learning to recognize errors is an important part of programming. You
will undoubtedly get lots of practice in this art, since few computer programs
are ever written correctly the first time.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lisp'operating-system#cptIt434#

name::
* McsEngl.lisp'operating-system@cptIt,

UNIX MAC DOS:

lisp'resource

name::
* McsEngl.lisp'resource@cptIt,

_BOOK:
* Practical Common Lisp: http://www.gigamonkeys.com/book/
* COMMON LISP: A Gentle Introduction to Symbolic Computation
David S. Touretzky, Carnegie Mellon University, Copyright 1990 by Symbolic Technology, Ltd
http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf,

SPECIFIC

lisp.specific,

_SPECIFIC:
COMMON LISP
INTERLISP
MACLISP
 LISP MACHINE LISP
 SPICE LISP
 NIL
 ZETALISP

lcp.instance.FORTRAN {1957} (imperative)

_CREATED: {2014-01-27}

name::
* McsEngl.lcp.instance.FORTRAN {1957} (imperative)@cptIt,
* McsEngl.fortran@cptIt,

_DESCRIPTION:
Fortran (previously FORTRAN, derived from Formula Translating System) is a general-purpose, imperative programming language that is especially suited to numeric computation and scientific computing. Originally developed by IBM at their campus in south San Jose, California[1] in the 1950s for scientific and engineering applications, Fortran came to dominate this area of programming early on and has been in continual use for over half a century in computationally intensive areas such as numerical weather prediction, finite element analysis, computational fluid dynamics, computational physics and computational chemistry. It is one of the most popular languages in the area of high-performance computing[2] and is the language used for programs that benchmark and rank the world's fastest supercomputers.
Fortran encompasses a lineage of versions, each of which evolved to add extensions to the language while usually retaining compatibility with previous versions. Successive versions have added support for structured programming and processing of character-based data (FORTRAN 77), array programming, modular programming and generic programming (Fortran 90), high performance Fortran (Fortran 95), object-oriented programming (Fortran 2003) and concurrent programming (Fortran 2008).
[http://en.wikipedia.org/wiki/FORTRAN]
===
Elsewhere in the 1950s a new language called FORTRAN was being
developed. FORTRAN was designed for the sort of numerical calculations
that are common in scientific computing. It allowed the programmer to think
in terms of algebraic expressions such as A=(X+Y)*Z instead of writing
assembly language instructions. The idea that programmers should expresss
their ideas in familiar mathematical notation, and the computer should be the
one to translate these expressions into assembly language, was a radical
innovation. It made FORTRAN a powerful numerical computing language.
McCarthy wanted to build an equally powerful language for symbolic
computing.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lcp.instance.IPL {1954}

_CREATED: {2014-01-26}

name::
* McsEngl.lcp.instance.IPL {1954}@cptIt,
* McsEngl.information-processing-language@cptIt,
* McsEngl.IPL@cptIt,
* McsEngl.IPL-pgmlng@cptIt,
* McsEngl.pgmlng.ipl@cptIt,

_DESCRIPTION:
Information Processing Language (IPL) is a programming language created by Allen Newell, Cliff Shaw, and Herbert A. Simon at RAND Corporation and the Carnegie Institute of Technology at about 1956. Newell had the job of language specifier-application programmer, Shaw was the system programmer, and Simon took the job of application programmer-user.

The language includes features intended to help with programs that perform simple problem solving actions such as lists, associations[when defined as?], schemas (frames)[This?], dynamic memory allocation, data types, recursion, associative retrieval[when defined as?], functions as arguments, generators (streams)[when defined as?], and cooperative multitasking. IPL invented the concept of list processing, albeit in an assembly-language style.
[http://en.wikipedia.org/wiki/Information_Processing_Language]
===
The origins of Lisp date back to 1956, when a summer research meeting on
artificial intelligence was held at Dartmouth College. At the meeting, John
McCarthy learned about a technique called ‘‘list processing’’ that Allen
Newell, J. C. Shaw, and Herbert Simon had developed. Most programming in
the 1950s was done in assembly language, a primitive language defined
directly by the circuitry of the computer. Newell, Shaw, and Simon had
created something more abstract, called IPL (for Information Processing
Language), that manipulated symbols and lists, two important datatypes in
artificial intelligence programming. But IPL’s syntax was similar to (and as
akward as) assembly language.
[http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/dst/www/LispBook/book.pdf]

lcp.instance.TINY

name::
* McsEngl.lcp.instance.TINY@cptIt,
* McsEngl.pgmlng.tiny@cptIt,
* McsEngl.tiny-pgmlng@cptIt,

_DESCRIPTION:
Tiny is an extremely simple programming language used in computer science courses to teach compiler construction techniques to students.

The language itself is so basic that it only includes reading of integer numbers, addition and subtraction arithmetic operations, and displaying numerical values.

The grammar of the language follows:

<program> -> BEGIN <stmt list> END
<stmt list> -> <stmt list> <stmt> | <stmt>
<stmt> -> <ident> := <expr>;
<stmt> -> READ ( <id list> ) ;
<stmt> -> WRITE ( <expr list> ) ;
<id list> -> <id list>, <ident> | <ident>
<expr list> -> <expr list>, <expr> | <expr>
<expr> -> <expr> <op> <factor> | <factor>
<factor> -> ( <expr> ) | <ident> | INT
<op> -> + | -
<ident> -> ID
As can be deduced from this simplistic grammar, the language is of limited practical use, gaining the most value as a teaching aid.
[http://en.wikipedia.org/wiki/Tiny_programming_language]

lcp.instance.WOLFRAM-LANGUAGE

_CREATED: {2013-11-16}

name::
* McsEngl.lcp.instance.WOLFRAM-LANGUAGE@cptIt,
* McsEngl.lagWlfm@cptIt,
* McsEngl.lcp.wolfram@cptIt,
* McsEngl.lcpWolfram@cptIt,
* McsEngl.pgmlng.wolfram@cptIt,
* McsEngl.wolfram-language@cptIt,
* McsEngl.wfmlng@cptIt,
* McsEngl.lagWlfm@cptIt,
* McsEngl.wl@cptIt, {2014-09-18}
* McsEngl.lcpWfm@cptIt, {2014-04-30}

_DESCRIPTION:
The Wolfram Language is a highly developed knowledge-based language that unifies a broad range of programming paradigms and uses its unique concept of symbolic programming to add a new level of flexibility to the very concept of programming.
[http://reference.wolfram.com/language/guide/LanguageOverview.html]
===
Wolfram Language
Η γλώσσα προγραμματισμού για όλους που μπορεί να φέρει την επάνασταση
16/11/201300:28
Σε αντίθεση με τις κραταιές γλώσσες προγραμματισμού, η Wolfram Language θα ενσωματώνει στον πυρήνα της όσο το δυνατόν περισσότερες λειτουργίες και δε θα βασίζεται τόσο έντονα σε εξωτερικές libraries

Η Wolfram Alpha είναι ίσως η πιο εξελιγμένη μηχανή αναζήτησης διαθέσιμη για το κοινό, η οποία δίνει αποτελέσματα από τις πιο απλές αναζητήσεις μέχρι και λύσεις για πολύπλοκες μαθηματικές εξισώσεις. Τώρα, ο δημιουργός της (Stephen Wolfram) ανακοίνωσε ότι θα την ενσωματώσει στη νέα γλώσσα προγραμματισμού που ετοιμάζει, η οποία θα είναι ό,τι σημαντικότερο έχει φτιάξει ποτέ και ίσως φέρει την επανάσταση στον χώρο της Πληροφορικής.

Η Wolfram Language θα ενσωματώνει και όλα τα στοιχεία του πασίγνωστου Mathematica, αλλά βασικός στόχος είναι να μπορεί να χρησιμοποιηθεί με ευκολία απ’ όλους για τη δημιουργία ποικίλλων εφαρμογών και λύσεων, χωρίς να χρειάζονται ιδιαίτερες γνώσεις προγραμματισμού, αφού θα μπορεί να κατανοεί εντολές σε φυσική γλώσσα (natural language)!

Σε αντίθεση με τις κραταιές γλώσσες προγραμματισμού (όπως C++, PHP και Java), μας λέει το techgear.gr, η Wolfram Language θα ενσωματώνει στον πυρήνα της όσο το δυνατόν περισσότερες λειτουργίες και δε θα βασίζεται τόσο έντονα σε εξωτερικές libraries, ενώ θα είναι προσβάσιμη σε όλους μέσω cloud (θα υπάρχει όμως και desktop έκδοση).

“Θέλουμε να φέρουμε τη Wolfram Language σε όσο το δυνατόν περισσότερο κόσμο. Είναι μια καταπληκτική πρώτη γλώσσα προγραμματισμού για οποιονδήποτε”

Να προστεθεί ότι σύντομα (δεν διευκρίνησε πόσο σύντομα) θα είναι διαθέσιμο και το Mathematica Online, το οποίο θα μπορούμε να χρησιμοποιούμε όπως το κανονικό λογισμικό από τον web browser.

Ακόμα ένα βήμα, λοιπόν, για την προώθηση του Προγραμματισμού σε όλο τον κόσμο και μάλιστα με σοβαρές προσπάθειες για να είναι κατανοητός-προσβάσιμος-φιλικός σε όλους, τη στιγμή που κάποιοι φωστήρες σε κάποιες χώρες καταργούν το μάθημα από τα σχολεία…
[http://www.protothema.gr/technology/article/328830/i-glossa-programmatismou-gia-olous-pou-borei-na-ferei-tin-epanastasi/]

lagWlfm'ATTRIBUTE

name::
* McsEngl.lagWlfm'ATTRIBUTE@cptIt,
* McsEngl.lagWlfm'feature@cptIt,

_DESCRIPTION:
the Wolfram Language's symbolic programming paradigm,
[http://reference.wolfram.com/language/guide/Expressions.html]
===
The Wolfram Language is a highly developed knowledge-based language that unifies a broad range of programming paradigms and uses its unique concept of symbolic programming to add a new level of flexibility to the very concept of programming.
[http://reference.wolfram.com/language/guide/LanguageOverview.html]
===
As the world's best-developed tree-oriented symbolic language,
[http://reference.wolfram.com/language/guide/XMLImportAndExport.html]
===
Wolfram Language
Paradigm(s)    multi-paradigm: term-rewriting, functional, procedural, array
Typing discipline    dynamic, strong
Influenced    Julia
OS        Cross-platform
License      Proprietary (available at no-cost for some platforms)
Filename extension(s)  .nb, .m, .wl
[http://en.wikipedia.org/wiki/Wolfram_Language]
===
SOME OF WHAT'S BUILT INTO THE WOLFRAM LANGUAGE:
2D, 3D Visualization
Graph Analysis
Data Analytics
Image Processing
Audio Processing
Machine Learning
Equation Solving
Algebraic Computation
Arbitrary Precision
Calculus Computation
Matrix Computation
String Manipulation
Combinatorial Optimization
Computational Geometry
Database Connectivity
Built-In Testing
Device Connectivity
Functional Programming
Natural Language Understanding
Sequence Analysis
Time Series
Geographic Data
Geomapping
Weather Data
Physics & Chemistry Data
Genomic Data
Units & Measures
Control Theory
Reliability Analysis
Parallel Computation
Engineering Data
Financial Data
Financial Computation
Socioeconomic Data
Popular Culture Data
Boolean Computation
Number Theory
Document Generation
Table Formatting
Mathematical Typesetting
Interactive Controls
Interface Building
Form Construction
XML Templating
Data Import & Export
Semantic Interpretation
API Connectivity
Interprocess Communication
[http://www.wolfram.com/programming-cloud/?source=footer]

lagWlfm'automation-principle

name::
* McsEngl.lagWlfm'automation-principle@cptIt,

_DESCRIPTION:
Meta-algorithms and superfunctions
Automate as much as possible
The philosophy of the Wolfram Language is to automate as much as possible, so programmers can concentrate on defining what they want to do, and the language will automatically figure out how to do it.
Thousands of original meta-algorithms for automatic algorithmic selection
Fine-grained control for experts; automatic operation for others
Automation of computation, presentation, connectivity, interface...
Minimize size and complexity of code
[http://www.wolfram.com/language/principles/]

lagWlfm'compatibility

name::
* McsEngl.lagWlfm'compatibility@cptIt,

_DESCRIPTION:
A Language for the Ages
The Wolfram Language is clean enough to have been able to maintain compatibility all the way back to its earliest origins in Mathematica 1.0 from 1988.
[http://www.wolfram.com/language/for-experts/]

lagWlfm'extensibility

name::
* McsEngl.lagWlfm'extensibility@cptIt,

_DESCRIPTION:
One of the most important features of the Wolfram Language is that it is an extensible system. There is a certain amount of mathematical and other functionality that is built into the Wolfram Language. But by using the Wolfram Language, it is always possible to add more functionality.
[http://reference.wolfram.com/language/tutorial/WolframLanguagePackages.html]

lagWlfm'universal-deployment-principle

name::
* McsEngl.lagWlfm'universal-deployment-principle@cptIt,

Universal deployment
Deploy the language everywhere: desktop, cloud, mobile, embedded...
Building on 25+ years of software engineering, any Wolfram Language program can immediately be deployed across the full spectrum of modern production environments.
Run transparently in the cloud or locally
Instantly create a web API for any Wolfram Language program
Seamlessly embed the Wolfram Language into software or hardware systems
Use the Wolfram Language to symbolically describe its own deployment
[http://www.wolfram.com/language/principles/]

lagWlfm'TECH

name::
* McsEngl.lagWlfm'TECH@cptIt,

lagWlfm'Wolfram-System

name::
* McsEngl.lagWlfm'Wolfram-System@cptIt,
* McsEngl.Wlfmlapp@cptIt,
* McsEngl.wolfram-engine@cptIt,
* McsEngl.Wolfram-System@cptIt,
* McsEngl.Wlfmstm@cptIt,
* McsEngl.Wlfmsm@cptIt,

_DESCRIPTION:
Indeed, one of the main points of the Wolfram System is that it provides an environment where you can perform mathematical and other operations without having to think in detail about how these operations are actually carried out inside your computer.
... For most purposes it suffices to view the Wolfram System simply as an abstract system which performs certain specified mathematical and other operations.
[http://reference.wolfram.com/language/tutorial/WhyYouDoNotUsuallyNeedToKnowAboutInternals.html]
===
At the core of the Wolfram Language is the foundational idea that everything—data, programs, formulas, graphics, documents—can be represented as symbolic expressions. And it is this unifying concept that underlies the Wolfram Language's symbolic programming paradigm, and makes possible much of the unique power of the Wolfram Language and the Wolfram System.
[http://reference.wolfram.com/language/guide/Expressions.html]

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/TheInternalsOfTheWolframSystemOverview.html,
* http://reference.wolfram.com/language/tutorial/SomeNotesOnInternalImplementation.html,

Wlfmlapp'codeSOURCE

name::
* McsEngl.Wlfmlapp'codeSOURCE@cptIt,

_DESCRIPTION:
The Wolfram System is one of the more complex software systems ever constructed. It is built from several million lines of source code, written in C/C++, Java, and the Wolfram Language.
[http://reference.wolfram.com/language/tutorial/TheSoftwareEngineeringOfTheWolframSystem.html]

Wlfmlapp'directory

name::
* McsEngl.Wlfmlapp'directory@cptIt,

_DESCRIPTION:
The main installation directory has three standard subdirectories that contain material distributed with the Wolfram System. Under normal circumstances, none of the contents of these directories should ever be modified, except, for example, if you choose to edit a shared stylesheet.
AddOns  bundled Wolfram System add-ons
Documentation  Wolfram Language documentation
SystemFiles  Wolfram System files
Top-level subdirectories of the main installation directory.
[http://reference.wolfram.com/language/tutorial/WolframSystemFileOrganization.html]

Wlfmlapp'doing.ADMINISTRATION

name::
* McsEngl.Wlfmlapp'doing.ADMINISTRATION@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/MathematicaSystemAdministrationOverview.html,
* http://reference.wolfram.com/language/guide/WolframSystemSetup.html,

Wlfmlapp'doing.INSTALATION

name::
* McsEngl.Wlfmlapp'doing.INSTALATION@cptIt,

Wlfmlapp'doing.INTITIALIZATION

name::
* McsEngl.Wlfmlapp'doing.INTITIALIZATION@cptIt,

_DESCRIPTION:
Initialization
On startup, the Wolfram Language kernel does the following:
Performs license management operations.
Runs Wolfram Language commands specified in any options passed to the kernel executable.
Runs the Wolfram Language commands in the systemwide initialization file .
Runs the Wolfram Language commands in the user-specific initialization file .
Loads and files in Autoload directories.
Begins running the main loop.
[http://reference.wolfram.com/language/tutorial/WolframSystemSessions.html]

Wlfmlapp'doing.TERMINATION

name::
* McsEngl.Wlfmlapp'doing.TERMINATION@cptIt,

_DESCRIPTION:
Termination
Exit[]or Quit[]  terminate the Wolfram System
$Epilog  symbol to evaluate before the Wolfram System exits
$IgnoreEOF  whether to exit an interactive Wolfram System session when an end-of-file character is received
end.m  file to read when the Wolfram System terminates
Wolfram System termination.

There are several ways to end a Wolfram System session. If you are using the Wolfram System interactively, typing Exit[] or Quit[] on an input line will always terminate the Wolfram System.

If you are taking input for the Wolfram Language from a file, the Wolfram System will exit when it reaches the end of the file. If you are using the Wolfram System interactively, it will still exit if it receives an end-of-file character (typically Ctrl+d). You can stop the Wolfram System from doing this by setting $IgnoreEOF=True.
[http://reference.wolfram.com/language/tutorial/WolframSystemSessions.html]

Wlfmlapp'doing.TESTING

name::
* McsEngl.Wlfmlapp'doing.TESTING@cptIt,

_DESCRIPTION:
Testing and Verification

Every version of the Wolfram System is subjected to a large amount of testing before it is released. The vast majority of this testing is done by an automated system that is written in the Wolfram Language.

The automated system feeds millions of pieces of input to the Wolfram System, and checks that the output obtained from them is correct. Often there is some subtlety in doing such checking: one must account for different behavior of randomized algorithms and for such issues as differences in machine-precision arithmetic on different computers.

The test inputs used by the automated system are obtained in several ways:

For every Wolfram Language function, inputs are devised that exercise both common and extreme cases.
Inputs are devised to exercise each feature of the internal code.
All the examples in the Wolfram Language's documentation system are used, as well as those from many books about the Wolfram System.
Tests are constructed from mathematical benchmarks and test sets from numerous websites.
Standard numerical tables are optically scanned for test inputs.
Formulas from standard mathematical tables are entered.
Exercises from textbooks are entered.
For pairs of functions such as Integrate and D or Factor and Expand, random expressions are generated and tested.
When tests are run, the automated testing system checks not only the results, but also side effects such as messages, as well as memory usage and speed.

There is also a special instrumented version of the Wolfram System which is set up to perform internal consistency tests. This version of the Wolfram System runs at a small fraction of the speed of the real Wolfram System, but at every step it checks internal memory consistency, interruptibility, and so on.

The instrumented version of the Wolfram System also records which pieces of the Wolfram Language source code have been accessed, allowing one to confirm that all of the various internal functions in the Wolfram System have been exercised by the tests given.

All standard Wolfram System tests are routinely run on current versions of the Wolfram System, on each different computer system. Depending on the speed of the computer system, these tests take from a few hours to a few days of computer time.

Even with all this testing, however, it is inevitable in a system as complex as the Wolfram System that errors will remain.

The standards of correctness for the Wolfram System are certainly much higher than for typical mathematical proofs. But just as long proofs will inevitably contain errors that go undetected for many years, so also a complex software system such as the Wolfram System will contain errors that go undetected even after millions of people have used it.

Nevertheless, particularly after all the testing that has been done on it, the probability that you will actually discover an error in the Wolfram System in the course of your work is extremely low.

Doubtless there will be times when the Wolfram System does things you do not expect. But you should realize that the probabilities are such that it is vastly more likely that there is something wrong with your input to the Wolfram System or your understanding of what is happening than with the internal code of the Wolfram System itself.

If you do believe that you have found a genuine error in the Wolfram System, then you should contact Wolfram Research Technical Support, so that the error can be corrected in future versions.
[http://reference.wolfram.com/language/tutorial/TestingAndVerification.html]

Wlfmlapp'doing.evaluation

name::
* McsEngl.Wlfmlapp'doing.evaluation@cptIt,
* McsEngl.lagWlfm'evaluator@cptIt,
* McsEngl.lagWlfm'evaluation@cptIt,
* McsEngl.lagWlfm'execution@cptIt,
* McsEngl.Wlfmstm'evaluator@cptIt,

* McsEngl.Wlfmevn@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/PrinciplesOfEvaluation.html,
* http://reference.wolfram.com/language/guide/EvaluationControl.html,
* http://reference.wolfram.com/language/tutorial/ControllingNumericalEvaluation.html,
* http://reference.wolfram.com/language/tutorial/TracingEvaluation.html,
* http://reference.wolfram.com/language/guide/SymbolicExecutionHistory.html,

_DESCRIPTION:
At the heart of the Wolfram Language is a conceptually simple procedure known as the evaluator, which takes every function that appears in an expression and evaluates that function.
When the function is one of the thousand or so that are built into the Wolfram Language, what the evaluator does is to execute directly internal code in the Wolfram Language. This code is set up to perform the operations corresponding to the function, and then to build a new expression representing the result.
[http://reference.wolfram.com/language/tutorial/BasicInternalArchitecture.html]
===
The Wolfram Language follows the principle of applying definitions until the result it gets no longer changes. This means that if you take the final result that the Wolfram Language gives, and enter it as Wolfram Language input, you will get back the same result again. (There are some subtle cases discussed in "Controlling Infinite Evaluation" in which this does not occur.)
... The simplest examples of evaluation involve using definitions such as which transform one expression directly into another. But evaluation is also the process used to execute programs written in the Wolfram Language. Thus, for example, if you have a procedure consisting of a sequence of Wolfram Language expressions, some perhaps representing conditionals and loops, the execution of this procedure corresponds to the evaluation of these expressions. Sometimes the evaluation process may involve evaluating a particular expression several times, as in a loop.
[http://reference.wolfram.com/language/tutorial/PrinciplesOfEvaluation.html]

wlevn'control

name::
* McsEngl.wlevn'control@cptIt,

_DESCRIPTION:
Evaluation Control
The Wolfram Language normally takes any expression it is given, and evaluates it as far as possible. But built into the Wolfram Language is a collection of flexible primitives that allow finer control over the process of evaluation in cases where it is needed.
[http://reference.wolfram.com/language/guide/EvaluationControl.html]

wlevn'evaluation-stack

name::
* McsEngl.wlevn'evaluation-stack@cptIt,
* McsEngl.lagWlfm'evaluation-stack@cptIt,

_DESCRIPTION:
Throughout any computation, the Wolfram System maintains an evaluation stack containing the expressions it is currently evaluating. You can use the function Stack to look at the stack. This means, for example, that if you interrupt the Wolfram System in the middle of a computation, you can use Stack to find out what the Wolfram System is doing.
[http://reference.wolfram.com/language/tutorial/TheEvaluationStack.html]

wlevn'execution-history

name::
* McsEngl.wlevn'execution-history@cptIt,

_DESCRIPTION:
Symbolic Execution History
The Wolfram Language can represent not only data and programs, but also the execution history of programs, as symbolic expressions—which can be displayed, manipulated, and analyzed using the full power of the Wolfram
[http://reference.wolfram.com/language/guide/SymbolicExecutionHistory.html]

wlevn.STANDARD

name::
* McsEngl.wlevn.STANDARD@cptIt,

_DESCRIPTION:
¦ Evaluate the head of the expression.
¦ Evaluate each element in turn.
¦ Apply transformations associated with the attributes Orderless, Listable, and Flat.
¦ Apply any definitions that you have given.
¦ Apply any built-in definitions.
¦ Evaluate the result.
The standard evaluation procedure.
As discussed in "Principles of Evaluation", the Wolfram System follows the principle that each expression is evaluated until no further definitions apply. This means that the Wolfram System must continue reevaluating results until it gets an expression which remains unchanged through the evaluation procedure.
[http://reference.wolfram.com/language/tutorial/TheStandardEvaluationProcedure.html]

wlevn.STANDARD.NO

name::
* McsEngl.wlevn.STANDARD.NO@cptIt,

_DESCRIPTION:
While most built-in Wolfram Language functions follow the standard evaluation procedure, some important ones do not. For example, most of the Wolfram Language functions associated with the construction and execution of programs use non-standard evaluation procedures. In typical cases, the functions either never evaluate some of their arguments, or do so in a special way under their own control.
[http://reference.wolfram.com/language/tutorial/NonStandardEvaluation.html]

Wlfmlapp'front-end

name::
* McsEngl.Wlfmlapp'front-end@cptIt,
* McsEngl.lagWlfm'front-end@cptIt,

_DESCRIPTION:
For the front end, however, a significant amount of specialized code is needed to support each different type of user interface environment. The front end contains about 700,000 lines of system-independent C++ source code, of which roughly 200,000 lines are concerned with expression formatting. Then there are between 50,000 and 100,000 lines of specific code customized for each user interface environment.
[http://reference.wolfram.com/language/tutorial/TheSoftwareEngineeringOfTheWolframSystem.html]
===
Front End
The front end uses WSTP both for communication with the kernel, and for communication between its different internal components.
All menu items and other functions in the front end are specified using Wolfram Language expressions.
Configuration and preference files use Wolfram Language format.
Documentation is authored in Wolfram System notebooks. It is then processed by special Wolfram Language programs to create the final documentation notebooks and the online documentation website as well as other Wolfram Language content, such as the database of syntax coloring information and the usage messages.
The front end maintains syntax coloring information about user variables by querying the kernel after evaluations are finished. When several evaluations are queued, the query may not happen after every single evaluation. The query always happens after the last evaluation in the queue.
Many of the front end's built-in dialog boxes are implemented as Wolfram System notebooks.
[http://reference.wolfram.com/language/tutorial/SomeNotesOnInternalImplementation.html]

Wlfmlapp'frontend-kernel-connection

name::
* McsEngl.Wlfmlapp'frontend-kernel-connection@cptIt,

_DESCRIPTION:
The Wolfram System uses a client-server model of computing. The front end and kernel are connected via the Wolfram Symbolic Transfer Protocol (WSTP)—the same system as is used to communicate with other programs. WSTP supports multiple transport layers, including one based upon TCP/IP and one using shared memory.

The front end and kernel are connected via three independent WSTP connections. One is used for user-initiated evaluations. A second is used by the front end to resolve the values of Dynamic expressions. The third is used by the kernel to notify the front end of Dynamic objects which should be invalidated.
[http://reference.wolfram.com/language/tutorial/TheSoftwareEngineeringOfTheWolframSystem.html]

Wlfmlapp'grammar

name::
* McsEngl.Wlfmlapp'grammar@cptIt,
* McsEngl.lagWlfm'grammar@cptIt,

_DESCRIPTION:
The Wolfram Language has a definite grammar that specifies how your input should be converted to internal form. One aspect of the grammar is that it specifies how pieces of your input should be grouped. For example, if you enter an expression such as a+b^c, the Wolfram Language grammar specifies that this should be considered, following standard mathematical notation, as a+(b^c) rather than (a+b)^c. The Wolfram Language chooses this grouping because it treats the operator ^ as having a higher precedence than +. In general, the arguments of operators with higher precedence are grouped before those of operators with lower precedence.
[http://reference.wolfram.com/language/tutorial/SpecialWaysToInputExpressions.html]

Wlfmlapp'interpreter

name::
* McsEngl.Wlfmlapp'interpreter@cptIt,
* McsEngl.lagWlfm'compiler@cptIt,
* McsEngl.lagWlfm'universal-computation@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/Compile/tutorial/Overview.html,
* http://reference.wolfram.com/language/Compile/tutorial/Introduction.html,

_DESCRIPTION:
The Wolfram System Compiler
The Wolfram System compiler provides an important way both to speed up and also to work with Wolfram Language computations.
[http://reference.wolfram.com/language/Compile/tutorial/Overview.html]
===
A crucial feature of the built?in functions in the Wolfram Language is that they support universal computation. What this means is that out of these functions you can construct programs that perform absolutely any kinds of operations that are possible for a computer.

As it turns out, small subsets of the Wolfram Language's built?in functions would be quite sufficient to support universal computation. But having the whole collection of functions makes it in practice easier to construct the programs one needs.

The underlying point, however, is that because the Wolfram Language supports universal computation you never have to modify its built?in functions: all you have to do to perform a particular task is to combine these functions in an appropriate way.

Universal computation is the basis for all standard computer languages. But many of these languages rely on the idea of compilation. If you use C or Fortran, for example, you first write your program, then you compile it to generate machine code that can actually be executed on your computer.

The Wolfram Language does not require you to go through the compilation step: once you have input an expression, the functions in the expression can immediately be executed.

Often the Wolfram Language will preprocess expressions that you enter, arranging things so that subsequent execution will be as efficient as possible. But such preprocessing never affects the results that are generated, and can rarely be seen explicitly.
[http://reference.wolfram.com/language/tutorial/BasicInternalArchitecture.html]

Wlfmlapp'kernel

name::
* McsEngl.Wlfmlapp'kernel@cptIt,
* McsEngl.lagWlfm'kernel@cptIt,

_DESCRIPTION:
The Wolfram Language kernel is a process that runs under the operating system on your computer. Within the Wolfram Language there are several global variables that allow you to find the characteristics of this process and its environment.
[http://reference.wolfram.com/language/tutorial/GlobalSystemInformation.html]
===
In the Wolfram Language kernel the breakdown of different parts of the code is roughly as follows: language and system: 30%; numerical computation: 20%; algebraic computation: 20%; graphics and kernel output: 30%.
... The source code for the kernel, save a fraction of a percent, is identical for all computer systems on which the Wolfram System runs.
[http://reference.wolfram.com/language/tutorial/TheSoftwareEngineeringOfTheWolframSystem.html]

Wlfmlapp'main-loop

name::
* McsEngl.Wlfmlapp'main-loop@cptIt,

_DESCRIPTION:
The Main Loop
All Wolfram System sessions repeatedly execute the following main loop:

Read in input.
Apply $PreRead function, if defined, to the input string.
Print syntax warnings if necessary.
Apply $SyntaxHandler function if there is a syntax error.
Assign InString[n].
Apply $Pre function, if defined, to the input expression.
Assign In[n].
Evaluate expression.
Apply $Post function, if defined.
Assign Out[n], stripping off any formatting wrappers.
Apply $PrePrint function, if defined.
Assign MessageList[n] and clear $MessageList.
Print expression, if it is not Null.
Increment $Line.
Clear any pending aborts.
Note that if you call the Wolfram Language via the Wolfram Symbolic Transfer Protocol (WSTP) from within an external program, then you must effectively create your own main loop, which will usually differ from the one described above.
[http://reference.wolfram.com/language/tutorial/WolframSystemSessions.html]

Wlfmlapp'memory

name::
* McsEngl.Wlfmlapp'memory@cptIt,
* McsEngl.lagWlfm'memory@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/MemoryManagement.html,

_DESCRIPTION:
Particularly for symbolic computations, memory is usually the primary resource which limits the size of computations you can do. If a computation runs slowly, you can always potentially let it run longer. But if the computation generates intermediate expressions which simply cannot fit in the memory of your computer system, then you cannot proceed with the computation.
The Wolfram System is careful about the way it uses memory. Every time an intermediate expression you have generated is no longer needed, the Wolfram System immediately reclaims the memory allocated to it. This means that at any point in a session, the Wolfram System stores only those expressions that are actually needed; it does not keep unnecessary objects which have to be "garbage collected" later.
[http://reference.wolfram.com/language/tutorial/MemoryManagement.html]
===
Every piece of memory used by the Wolfram Language maintains a count of how many times it is referenced. Memory is automatically freed when this count reaches zero.
[http://reference.wolfram.com/language/tutorial/SomeNotesOnInternalImplementation.html]

Wlfmlapp'stack-space

name::
* McsEngl.Wlfmlapp'stack-space@cptIt,
* McsEngl.lagWlfm'evaluation-stack@cptIt,

_DESCRIPTION:
On most computer systems, the memory used by a running program is divided into two parts: memory explicitly allocated by the program, and "stack space". Every time an internal routine is called in the program, a certain amount of stack space is used to store parameters associated with the call. On many computer systems, the maximum amount of stack space that can be used by a program must be specified in advance. If the specified stack space limit is exceeded, the program usually just exits.
In the Wolfram System, one of the primary uses of stack space is in handling the calling of one Wolfram Language function by another. All such calls are explicitly recorded in the Wolfram System Stack discussed in "The Evaluation Stack". You can control the size of this stack by setting the global parameter $RecursionLimit. You should be sure that this parameter is set small enough that you do not run out of stack space on your particular computer system.
[http://reference.wolfram.com/language/tutorial/MemoryManagement.html]
===
Throughout any computation, the Wolfram System maintains an evaluation stack containing the expressions it is currently evaluating. You can use the function Stack to look at the stack. This means, for example, that if you interrupt the Wolfram System in the middle of a computation, you can use Stack to find out what the Wolfram System is doing.
The expression that the Wolfram System most recently started to evaluate always appears as the last element of the evaluation stack. The previous elements of the stack are the other expressions whose evaluation is currently in progress.
[http://reference.wolfram.com/language/tutorial/TheEvaluationStack.html]

Wlfmlapp'resource

name::
* McsEngl.Wlfmlapp'resource@cptIt,

_ADDRESS.WPG:
* http://www.wolfram.com/engine/?source=nav,

Wlfmlapp'session

name::
* McsEngl.Wlfmlapp'session@cptIt,
* McsEngl.lagWlfm'session@cptIt,
* McsEngl.wolfram-system-session@cptIt,

* McsEngl.Wlfmssn@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/WolframSystemSessions.html,
* http://reference.wolfram.com/language/tutorial/GlobalAspectsOfWolframSystemSessionsOverview.html,
===
* http://reference.wolfram.com/language/guide/WolframSystemSessions.html,
* http://reference.wolfram.com/language/guide/WolframSystemSessionInformation.html,
* http://reference.wolfram.com/language/guide/WolframSystemSessionHistory.html,
* http://reference.wolfram.com/language/guide/SessionCustomization.html,

_DESCRIPTION:
The Wolfram System provides a uniquely powerful interactive environment for building up arbitrarily complex computations, under convenient interactive or programmatic control.
[http://reference.wolfram.com/language/guide/WolframSystemSessions.html]

Wlfmlapp'structure

name::
* McsEngl.Wlfmlapp'structure@cptIt,

_DESCRIPTION:
A full Wolfram System installation consists of thousands of separate files, arranged in several hundred directories under the main installation directory.
[http://reference.wolfram.com/language/tutorial/WolframSystemFileOrganization.html]

Wlfmlapp'text-based-interface

name::
* McsEngl.Wlfmlapp'text-based-interface@cptIt,
* McsEngl.lagWlfm'text-based-interface@cptIt,

_DESCRIPTION:
The standard front end interface, as discussed in "Using a Notebook Interface", is appropriate for most users' purposes. In some cases, however, you may not need to use the notebook front end, and you may want instead to interact more directly with the Wolfram Language kernel. You can do this by using a text-based interface, in which text you type on the keyboard goes straight to the kernel.
It is important to note that while the text-based interface provides access to most of the capabilities of the Wolfram Language kernel, the graphics functionality and dynamic interactivity of the Wolfram System front end are not available.
[http://reference.wolfram.com/language/tutorial/UsingATextBasedInterface.html]

lagWlfm'atom

name::
* McsEngl.lagWlfm'atom@cptIt,
* McsEngl.Wlfmatm@cptIt,
* McsEngl.lagWlfm'atomic-object@cptIt,
* McsEngl.lagWlfm'atomic-element@cptIt,
* McsEngl.lagWlfm'unit@cptIt,

_WHOLE:
* wl-expression#ql:wl'expression#

_DESCRIPTION:
All expressions in the Wolfram Language are ultimately built from a small number of distinct types of atomic elements.
[http://reference.wolfram.com/language/guide/AtomicElementsOfExpressions.html]
===
All expressions in the Wolfram Language are ultimately made up from a small number of basic or atomic types of objects.

These objects have heads that are symbols that can be thought of as "tagging" their types. The objects contain "raw data", which can usually be accessed only by functions specific to the particular type of object. You can extract the head of the object using Head, but you cannot directly extract any of its other parts.

Symbol  symbol (extract name using SymbolName)
String  character string (extract characters using Characters)
Integer  integer (extract digits using IntegerDigits)
Real  approximate real number (extract digits using RealDigits)
Rational  rational number (extract parts using Numerator and Denominator)
Complex  complex number (extract parts using Re and Im)
Atomic objects.

Atomic objects in the Wolfram Language are considered to have depth 0 and yield True when tested with AtomQ.
[http://reference.wolfram.com/language/tutorial/BasicObjects.html#15871]

lagWlfm'atom.RAW-OBJECT

name::
* McsEngl.lagWlfm'atom.RAW-OBJECT@cptIt,
* McsEngl.lagWlfm'raw-object@cptIt,

_CODEBINARY:
Most raw objects such as strings and numbers are allocated separately; however, unique copies are maintained of small integers and of certain approximate numbers generated in computations.
[http://reference.wolfram.com/language/tutorial/SomeNotesOnInternalImplementation.html]

lagWlfm'atom.NUMBER-(nr)

name::
* McsEngl.lagWlfm'atom.NUMBER-(nr)@cptIt,
* McsEngl.Wlfmnr@cptIt,
* McsEngl.Wlfmn@cptIt,
* McsEngl.Wlfmnbr@cptIt,

_DESCRIPTION:
Numbers
Integer  integer nnnn
Real  approximate real number
Rational  rational number
Complex  complex number nnn+nnn I

Basic types of numbers.

All numbers in the Wolfram Language can contain any number of digits. The Wolfram Language does exact computations when possible with integers and rational numbers, and with complex numbers whose real and imaginary parts are integers or rational numbers.

There are two types of approximate real numbers in the Wolfram Language: arbitrary precision and machine precision. In manipulating arbitrary-precision numbers, the Wolfram Language tries to modify the precision so as to ensure that all digits actually given are correct.

With machine-precision numbers, all computations are done to the same fixed precision, so some digits given may not be correct.

Unless otherwise specified, the Wolfram Language treats as machine-precision numbers all approximate real numbers that lie between $MinMachineNumber and $MaxMachineNumber and that are input with less than $MachinePrecision digits.

In InputForm, the Wolfram Language prints machine-precision numbers with $MachinePrecision digits, except when trailing digits are zero.

In any implementation of the Wolfram Language, the magnitudes of numbers (except 0) must lie between $MinNumber and $MaxNumber. Numbers with magnitudes outside this range are represented by Underflow[] and Overflow[].
[http://reference.wolfram.com/language/tutorial/BasicObjects.html#10971]
===
Numbers
digits  integer
digits.digits  approximate number
base^^digits  integer in specified base
base^^digits.digits  approximate number in specified base
mantissa*^n  scientific notation (mantissaΧ)
base^^mantissa*^n  scientific notation in specified base (mantissaΧ)
number`  machine-precision approximate number
number`s  arbitrary-precision number with precision
number``s  arbitrary-precision number with accuracy
Input forms for numbers.
[http://reference.wolfram.com/language/tutorial/InputSyntax.html#7977]

wln'codeBinary

name::
* McsEngl.wln'codeBinary@cptIt,

_DESCRIPTION:
numbers  sequences of binary digits
[http://reference.wolfram.com/language/tutorial/BasicInternalArchitecture.html]

lagWlfm'atom.STRING-(sg)

name::
* McsEngl.lagWlfm'atom.STRING-(sg)@cptIt,
* McsEngl.Wlfmsg@cptIt, {2021-02-14}
* McsEngl.lagWlfm'character-string@cptIt,
* McsEngl.lagWlfm'string@cptIt,
* McsEngl.Wlfmc@cptIt,
* McsEngl.Wlfmstg@cptIt, {2014-09-21}

_CODE.WL:
"some text", "a+ί"  strings

_DESCRIPTION:
Character Strings
Character strings in the Wolfram Language can contain any sequence of characters. They are input in the form .

The individual characters can be printable ASCII (with character codes between 32 and 126), or in general any 8- or 16-bit characters. The Wolfram Language uses the Unicode character encoding for 16-bit characters.

In input form, 16-bit characters are represented when possible in the form , and otherwise as .

Null bytes can appear at any point within Wolfram Language strings.
[http://reference.wolfram.com/language/tutorial/BasicObjects.html#25023]

wlc'codeBinary

name::
* McsEngl.wlc'codeBinary@cptIt,

_DESCRIPTION:
strings  sequences of character code bytes or byte pairs
[http://reference.wolfram.com/language/tutorial/BasicInternalArchitecture.html]

lagWlfm'atom.SYMBOL-(sl)

name::
* McsEngl.lagWlfm'atom.SYMBOL-(sl)@cptIt,
* McsEngl.lagWlfm'symbol@cptIt,
* McsEngl.Wlfmlsl@cptIt,
* McsEngl.Wlfmsbl@cptIt, {2014-09-21}

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/BasicObjects.html#11134,
* http://reference.wolfram.com/language/tutorial/ModularityAndTheNamingOfThingsOverview.html,
* http://reference.wolfram.com/language/tutorial/InterceptingTheCreationOfNewSymbols.html,
===
* http://reference.wolfram.com/language/guide/SymbolHandling.html,
===
* http://reference.wolfram.com/language/ref/Symbol.html,

_CODE.WL:
a, xyz, aί?  symbols

_DESCRIPTION:
Wolfram Language symbols are the ultimate atoms of symbolic data. Every symbol has a unique name, exists in a certain Wolfram Language context or namespace, and can have a variety of types of values and attributes.
[http://reference.wolfram.com/language/guide/SymbolHandling.html]
===
Symbols are the basic named objects in the Wolfram Language.
[http://reference.wolfram.com/language/tutorial/BasicObjects.html#11134]
===
Exp, Do, ... — built-in symbols have names beginning with capital letters
===
For every symbol there is a central symbolic table entry that stores all information about the symbol.
[http://reference.wolfram.com/language/tutorial/SomeNotesOnInternalImplementation.html]
===
symbol = object
When you define a new object in the Wolfram Language, your definition will often depend on other objects that you defined before. If you are going to be able to reconstruct the definition of your new object in a subsequent Wolfram Language session, it is important that you store not only its own definition, but also the definitions of other objects on which it depends. The function Save looks through the definitions of the objects you ask it to save, and automatically also saves all definitions of other objects on which it can see that these depend. However, in order to avoid saving a large amount of unnecessary material, Save never includes definitions for symbols that have the attribute Protected. It assumes that the definitions for these symbols are also built in. Nevertheless, with such definitions taken care of, it should always be the case that reading the output generated by Save back into a new Wolfram Language session will set up the definitions of your objects exactly as you had them before.
[http://reference.wolfram.com/language/tutorial/ReadingAndWritingWolframSystemFiles.html]

Wlfmlsl'name

name::
* McsEngl.Wlfmlsl'name@cptIt,
* McsEngl.lagWlfm'name@cptIt,
* McsEngl.lagWlfm'name.symbol@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/guide/ScopingConstructs.html,

_SPECIFIC:
context `name or c1`c2… `name  a symbol in an explicitly specified context
`name  a symbol in the current context
`context`name or `c1`c2` … `name  a symbol in a specific context relative to the current context
name  a symbol in the current context, or found on the context search path
Specifying symbols in various contexts.
[http://reference.wolfram.com/language/tutorial/Contexts.html]

Wlfmlsl'name.GLOBAL#ql:wl'name.global#

name::
* McsEngl.Wlfmlsl'name.GLOBAL@cptIt,

Wlfmlsl'name.FULL

name::
* McsEngl.Wlfmlsl'name.FULL@cptIt,
* McsEngl.lagWlfm'fullname@cptIt,
* McsEngl.lagWlfm'full-name.symbol@cptIt,
* McsEngl.Wlfmlsl'full-name@cptIt,

_DESCRIPTION:
The basic idea is that the full name of any symbol is broken into two parts: a context and a short name. The full name is written as CONTEXT ` SHORT, where the ` is the backquote or grave accent character (ASCII decimal code 96), called a "context mark" in the Wolfram Language.
[http://reference.wolfram.com/language/tutorial/Contexts.html]
===
The full name of any symbol in the Wolfram Language consists of two parts: a context and a short name. The full name is written in the form context ` name.
[http://reference.wolfram.com/language/tutorial/BasicObjects.html#1832]
===
It is typical to have all the symbols that relate to a particular topic in a particular context. Thus, for example, symbols that represent physical units might have a context PhysicalUnits. Such symbols might have full names like PhysicalUnits`Joule or PhysicalUnits`Mole.

Wlfmlsl'name.SHORT

name::
* McsEngl.Wlfmlsl'name.SHORT@cptIt,
* McsEngl.lagWlfm'shortname@cptIt,
* McsEngl.lagWlfm'short-name.symbol@cptIt,
* McsEngl.Wlfmlsl'short-name@cptIt,

_DESCRIPTION:
In general, when you type in a short name for a symbol, the Wolfram Language assumes that you want the symbol with that name whose context appears earliest in the context search path. As a result, symbols with the same short name whose contexts appear later in the context search path or symbols with the same short name in the current context are effectively "shadowed". To refer to these symbols, you need to use their full-names#ql:wl'fullname#.
The Wolfram Language issues a message when you introduce new symbols that "shadow" existing symbols with your current choice for $ContextPath. In addition, in the notebook front end the Wolfram Language warns you of shadowed symbols by coloring them red.
[http://reference.wolfram.com/language/tutorial/Contexts.html]

Wlfmlsl'value

name::
* McsEngl.Wlfmlsl'value@cptIt,
* McsEngl.lagWlfm'value.symbol@cptIt,

_DESCRIPTION:
Any Wolfram Language symbol can have both a variety of types of values, and a variety of independently settable attributes that define overall aspects of its behavior.
[http://reference.wolfram.com/language/guide/Attributes.html]
===
Definitions such as f[x_]=x^2 specify values for functions. [http://reference.wolfram.com/language/tutorial/Attributes.html]
===
Types of Values
Attributes[f]  attributes of f
DefaultValues[f]  default values for arguments of f
DownValues[f]  values for , , etc.
FormatValues[f]  print forms associated with f
Messages[f]  messages associated with f
NValues[f]  numerical values associated with f
Options[f]  defaults for options associated with f
OwnValues[f]  values for f itself
UpValues[f]  values for
Types of values associated with symbols.
[http://reference.wolfram.com/language/tutorial/PatternsAndTransformationRules.html]

Wlfmlsl'attribute

name::
* McsEngl.Wlfmlsl'attribute@cptIt,
* McsEngl.lagWlfm'attribute.symbol@cptIt,

_DESCRIPTION:
Definitions such as f[x_]=x^2 specify values for functions.
Sometimes, however, you need to specify general properties of functions, without necessarily giving explicit values.
The Wolfram Language provides a selection of attributes that you can use to specify various properties of functions. For example, you can use the attribute Flat to specify that a particular function is "flat", so that nested invocations are automatically flattened, and it behaves as if it were associative.
[http://reference.wolfram.com/language/tutorial/Attributes.html]
===
Any Wolfram Language symbol can have both a variety of types of values, and a variety of independently settable attributes that define overall aspects of its behavior.
[http://reference.wolfram.com/language/guide/Attributes.html]

_SPECIFIC:
* wlabt.Locked#ql:wls.locked#,
* wlabt.Protected,
* wlabt.ReadProtected#ql:wls.readprotected#

_SPECIFIC:
The complete list of possible attributes for a symbol f is:
Constant  all derivatives of f are zero
Flat  f is associative
HoldAll  all the arguments of f are not evaluated
HoldAllComplete  the arguments of f are completely shielded from evaluation
HoldFirst  the first argument of f is not evaluated
HoldRest  all but the first argument of f are not evaluated
Listable  f is automatically "threaded" over lists
Locked  attributes of f cannot be changed
NHoldAll  the arguments of f are not affected by N
NHoldFirst  the first argument of f is not affected by N
NHoldRest  all but the first argument of f are not affected by N
NumericFunction  the value of f is assumed to be a number when its arguments are numbers
OneIdentity  , , etc. are equivalent to a in pattern matching
Orderless  f is commutative
Protected  values of f cannot be changed
ReadProtected  values of f cannot be read
SequenceHold  Sequence objects in the arguments of f are not flattened out
Stub  Needs is automatically called if the symbol is ever input
Temporary  f is a local variable, removed when no longer used
[http://reference.wolfram.com/language/ref/Attributes.html]

Orderless  orderless, commutative function (arguments are sorted into standard order)
Flat  flat, associative function (arguments are "flattened out")
OneIdentity  , etc. are equivalent to a for pattern matching
Listable  f is automatically "threaded" over lists that appear as arguments (e.g., becomes )
Constant  all derivatives of f are zero
NumericFunction  f is assumed to have a numerical value when its arguments are numeric quantities
Protected  values of f cannot be changed
Locked  attributes of f cannot be changed
ReadProtected  values of f cannot be read
HoldFirst  the first argument of f is not evaluated
HoldRest  all but the first argument of f are not evaluated
HoldAll  none of the arguments of f are evaluated
HoldAllComplete  the arguments of f are treated as completely inert
NHoldFirst  the first argument of f is not affected by N
NHoldRest  all but the first argument of f are not affected by N
NHoldAll  none of the arguments of f are affected by N
SequenceHold  Sequence objects appearing in the arguments of f are not flattened out
Temporary  f is a local variable, removed when no longer used
Stub  Needs is automatically called if f is ever explicitly input
The complete list of attributes for symbols in the Wolfram Language.
[http://reference.wolfram.com/language/guide/Attributes.html]

Wlfmlsl'context

name::
* McsEngl.Wlfmlsl'context@cptIt,
* McsEngl.lagWlfm'context@cptIt,
* McsEngl.lagWlfm'namespace@cptIt,
* McsEngl.Wlfmcxt@cptIt,

_DESCRIPTION:
Wolfram Language symbols are the ultimate atoms of symbolic data. Every symbol has a unique name, exists in a certain Wolfram Language context or namespace, and can have a variety of types of values and attributes.
[http://reference.wolfram.com/language/guide/SymbolHandling.html]
===
The context CONTEXT ` can contain the same characters as the short name. It may also contain any number of context mark characters , and must end with a context mark.
[http://reference.wolfram.com/language/tutorial/BasicObjects.html#1832]

wlcxt'context-mark

name::
* McsEngl.wlcxt'context-mark@cptIt,
* McsEngl.lagWlfm'context-mark@cptIt,

_DESCRIPTION:
The full name is written as CONTEXT ` SHORT, where the ` is the backquote or grave accent character (ASCII decimal code 96), called a "context mark" in the Wolfram Language.
[http://reference.wolfram.com/language/tutorial/Contexts.html]

wlcxt'context-search-path

name::
* McsEngl.wlcxt'context-search-path@cptIt,
* McsEngl.lagWlfm'context-search-path@cptIt,

_DESCRIPTION:
In order to let you easily access not only symbols in the context Global`, but also in contexts such as System`, the Wolfram Language supports the notion of a context search path. At any point in a Wolfram Language session, there is both a current context $Context, and also a current context search path $ContextPath. The idea of the search path is to allow you to type in the short name of a symbol, then have the Wolfram Language search in a sequence of contexts to find a symbol with that short name.
[http://reference.wolfram.com/language/tutorial/Contexts.html]

wlcxt.CURRENT

name::
* McsEngl.wlcxt.CURRENT@cptIt,

Wlfmlsl'context.CURRENT:
At any point in a Wolfram Language session, there is a current context $Context and a context search path $ContextPath consisting of a list of contexts. Symbols in the current context, or in contexts on the context search path, can be specified by giving only their short names, provided they are not shadowed by another symbol with the same short name.
[http://reference.wolfram.com/language/tutorial/BasicObjects.html#1832]

wlcxt.DEFAULT (Global)

name::
* McsEngl.wlcxt.DEFAULT (Global)@cptIt,
* McsEngl.Wlfmcxt'global@cptIt,

_DESCRIPTION:
The default context for Wolfram Language sessions is Global`.
[http://reference.wolfram.com/language/tutorial/Contexts.html]

wlcxt.SYSTEM

name::
* McsEngl.wlcxt.SYSTEM@cptIt,

_DESCRIPTION:
When you start a Wolfram Language session, the default current context is Global`. Symbols that you introduce will usually be in this context. However, built-in symbols such as Pi are in the context System`.
[http://reference.wolfram.com/language/tutorial/Contexts.html]

Wlfmlsl'central-symbol-table

name::
* McsEngl.Wlfmlsl'central-symbol-table@cptIt,
* McsEngl.lagWlfm'central-symbol-table@cptIt,
* McsEngl.lagWlfm'central-table-of-symbols@cptIt,
* McsEngl.lagWlfm'central-table-of-all-symbols@cptIt,
* McsEngl.lagWlfm'symbolic-table-entry@cptIt,
* McsEngl.Wlfmlsl'symbolic-table-entry@cptIt,

_DESCRIPTION:
Crucial to the operation of the Wolfram Language is the notion of symbols such as x. Whenever appears in an expression, the Wolfram Language represents it by a pointer. But the pointer is always to the same place in computer memory—an entry in a central table of all symbols defined in your Wolfram Language session.
This table is a repository of all information about each symbol. It contains a pointer to a string giving the symbol's name, as well as pointers to expressions that give rules for evaluating the symbol.
[http://reference.wolfram.com/language/tutorial/BasicInternalArchitecture.html]
===
For every symbol there is a central symbolic table entry that stores all information about the symbol.
[http://reference.wolfram.com/language/tutorial/SomeNotesOnInternalImplementation.html]

Wlfmlsl'codeBinary

name::
* McsEngl.Wlfmlsl'codeBinary@cptIt,

_DESCRIPTION:
symbols  pointers to the-central-table-of-symbols#ql:lagwlfm'central_symbol_table#.
[http://reference.wolfram.com/language/tutorial/BasicInternalArchitecture.html]

Wlfmlsl'function

name::
* McsEngl.Wlfmlsl'function@cptIt,

_FUNCTION: Wlfmlsl'function:
* Symbol#ql:wls.symbol# — the head of a symbol; create a symbol from a name
* SymbolName#ql:wls.symbolname# — give the name of a symbol as a string
* Context#ql:wls.context# — give the name of the context of a symbol
* Names#ql:wls.names# — find a list of symbols with names matching a pattern
* NameQ#ql:wls.nameq# — test whether a string corresponds to the name of any symbol
* Remove#ql:wls.remove# — completely remove a symbol so its name is no longer recognized
* $NewSymbol — a function to be applied to the name of any new symbol
* ValueQ#ql:wls.valueq# — test whether a symbol has any type of value
* OwnValues ? DownValues ? UpValues ? Options ? Attributes
* Information#ql:wls.information# — give information on the values of a symbol
* Clear#ql:wls.clear# — clear all values associated with a symbol
* Save#ql:wls.save# — save values associated with a symbol
* Unique#ql:wls.unique# — generate a symbol with a unique name
[http://reference.wolfram.com/language/guide/SymbolHandling.html]
===
* Attributes#ql:wls.attributes#,
* Clear#ql:wls.clear# — clear all values associated with a symbol,
* ClearAttributes#ql:wls.clearattributes#,
* NameQ#ql:wls.nameq# — test whether a string corresponds to the name of any symbol,
* Names#ql:wls.names# — find a list of symbols with names matching a pattern,
* Save#ql:wls.save# — save values associated with a symbol,
* SetAttributes#ql:wls.setattributes#,
* Symbol#ql:wls.symbol# — the head of a symbol; create a symbol from a name,
* SymbolName#ql:wls.symbolname# — give the name of a symbol as a string,
* Unique#ql:wls.unique# — generate a symbol with a unique name,

Wlfmlsl'doing.CLEARING-VALUES

name::
* McsEngl.Wlfmlsl'doing.CLEARING-VALUES@cptIt,
* McsEngl.Wlfmlsl'clearing@cptIt,

_CODE.WL:
Clear["form"]  clear the values of all symbols whose names match form
Clear["context`*"]  clear the values of all symbols in the specified context
[http://reference.wolfram.com/language/tutorial/ManipulatingSymbolsAndContextsByName.html]

Wlfmlsl'doing.CREATING

name::
* McsEngl.Wlfmlsl'doing.CREATING@cptIt,
* McsEngl.Wlfmlsl'creating@cptIt,

_DESCRIPTION:
The Wolfram Language creates a new symbol when you first enter a particular name.
[http://reference.wolfram.com/language/tutorial/InterceptingTheCreationOfNewSymbols.html]
===
The Wolfram Language itself cannot tell the difference between an intentionally new name, and a misspelling of a name it already knows. But by reporting all new names it encounters, the Wolfram Language allows you to see whether any of them are mistakes.
[http://reference.wolfram.com/language/tutorial/InterceptingTheCreationOfNewSymbols.html]

_CODE.WL:
Symbol["name"]  construct a symbol with a given name
[http://reference.wolfram.com/language/tutorial/ManipulatingSymbolsAndContextsByName.html]
===
If you type in a short name for which there is no symbol either in the current context, or in any context on the context search path, then the Wolfram Language has to create a new symbol with this name. It always puts new symbols of this kind in the current context, as specified by $Context.
This introduces the new symbol with short name tree.
In[18]:=  tree
Out[18]=  tree
The Wolfram Language puts in the current context .
In[19]:=  Context[tree]
Out[19]=  Global`
[http://reference.wolfram.com/language/tutorial/Contexts.html]

Wlfmlsl'doing.REMOVING

name::
* McsEngl.Wlfmlsl'doing.REMOVING@cptIt,
* McsEngl.Wlfmlsl'removing@cptIt,

_CODE.WL:
Remove["form"]  remove completely all symbols whose names match form
Remove["context`*"]  remove completely all symbols in the specified context
[http://reference.wolfram.com/language/tutorial/ManipulatingSymbolsAndContextsByName.html]

SPECIFIC

* wls.specific,

Wlfmlsl.GLOBAL

name::
* McsEngl.Wlfmlsl.GLOBAL@cptIt,
* McsEngl.lagWlfm'global-variable@cptIt,

_DESCRIPTION:
The Wolfram Language normally assumes that all your variables are global. This means that every time you use a name like , the Wolfram Language normally assumes that you are referring to the same object.
[http://reference.wolfram.com/language/tutorial/ModulesAndLocalVariables.html]

Wlfmlsl'global-name

name::
* McsEngl.Wlfmlsl'global-name@cptIt,
* McsEngl.lagWlfm'global-name@cptIt,
* McsEngl.lagWlfm'name.global@cptIt,

_SPECIFIC:
* full-name#ql:wl'fullname#,
* short-name#ql:wl'shortname#

Wlfmlsl.LOCAL

name::
* McsEngl.Wlfmlsl.LOCAL@cptIt,
* McsEngl.lagWlfm'local-variable@cptIt,

_DESCRIPTION:
The Wolfram Language normally assumes that all your variables are global. This means that every time you use a name like , the Wolfram Language normally assumes that you are referring to the same object.

Particularly when you write programs, however, you may not want all your variables to be global. You may, for example, want to use the name to refer to two quite different variables in two different programs. In this case, you need the in each program to be treated as a local variable.

You can set up local variables in the Wolfram Language using modules. Within each module, you can give a list of variables which are to be treated as local to the module.

Module[{x,y,…},body]  a module with local variables x, y, …
Creating modules in the Wolfram Language.
[http://reference.wolfram.com/language/tutorial/ModulesAndLocalVariables.html]

wls'local-name

name::
* McsEngl.wls'local-name@cptIt,
* McsEngl.lagWlfm'local-name@cptIt,
* McsEngl.lagWlfm'name.globalNo@cptIt,
* McsEngl.lagWlfm'name.local@cptIt,

_DESCRIPTION:
The Wolfram Language uses a uniform scheme to make sure that the names of formal parameters that appear in constructs like pure functions and rules are kept local, and are never confused with global names. The basic idea is to replace formal parameters when necessary by symbols with names of the form x$. By convention, x$ is never used as a global name.
[http://reference.wolfram.com/language/tutorial/VariablesInPureFunctionsAndRules.html]

_SPECIFIC:
* full-name#ql:wl'fullname#,
* short-name#ql:wl'shortname#

Wlfmlsl.PACKAGE#ql:wlpkg'symbol#

name::
* McsEngl.Wlfmlsl.PACKAGE@cptIt,

Wlfmlsl.SYSTEM-DEFINED

name::
* McsEngl.Wlfmlsl.SYSTEM-DEFINED@cptIt,

_DESCRIPTION:
System-defined symbols conventionally have names that consist of one or more complete English words. The first letter of each word is capitalized, and the words are run together.
[http://reference.wolfram.com/language/tutorial/BasicObjects.html#11134]

Wlfmlsl.ORDINARY

name::
* McsEngl.Wlfmlsl.ORDINARY@cptIt,

_DESCRIPTION:
Once created, an ordinary symbol in the Wolfram Language continues to exist unless it is explicitly removed using Remove. However, symbols created automatically in scoping constructs such as Module carry the attribute Temporary, which specifies that they should automatically be removed as soon as they no longer appear in any expression.

When a new symbol is to be created, the Wolfram Language first applies any value that has been assigned to $NewSymbol to strings giving the name of the symbol and the context in which the symbol would be created.

If the message General::newsym is switched on, then the Wolfram Language reports new symbols that are created. This message is switched off by default. Symbols created automatically in scoping constructs are not reported.
[http://reference.wolfram.com/language/tutorial/BasicObjects.html#11134]

Wlfmlsl.VARIABLE

name::
* McsEngl.Wlfmlsl.VARIABLE@cptIt,
* McsEngl.lagWlfm'session-symbol@cptIt,
* McsEngl.lagWlfm'variable@cptIt,
* McsEngl.Wlfmvbl@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/DefiningVariables.html,

_DESCRIPTION:
Defining Variables
When you do long calculations, it is often convenient to give names to your intermediate results. Just as in standard mathematics, or in other computer languages, you can do this by introducing named variables.
This sets the value of the variable x to be 5.
In[1]:=  x = 5
Out[1]=  5
Whenever x appears, the Wolfram Language now replaces it with the value 5.
...
It is very important to realize that values you assign to variables are permanent. Once you have assigned a value to a particular variable, the value will be kept until you explicitly remove it. The value will, of course, disappear if you start a whole new Wolfram Language session.
[http://reference.wolfram.com/language/tutorial/DefiningVariables.html]

wlvbl'name

name::
* McsEngl.wlvbl'name@cptIt,

_DESCRIPTION:
The variables you define can have almost any name. There is no limit on the length of their names. One constraint, however, is that variable names can never start with numbers. For example, could be a variable, but means .

The Wolfram Language uses both uppercase and lowercase letters. There is a convention that built-in Wolfram Language objects always have names starting with uppercase (capital) letters. To avoid confusion, you should always choose names for your own variables that start with lowercase letters.
[http://reference.wolfram.com/language/tutorial/DefiningVariables.html]

lagWlfm'EXPRESSION-(en)

name::
* McsEngl.lagWlfm'EXPRESSION-(en)@cptIt,
* McsEngl.Wlfmlen@cptIt,
* McsEngl.lagWlfm'symbolic-expression@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/ExpressionsOverview.html,
* http://reference.wolfram.com/language/tutorial/EverythingIsAnExpression.html,
* http://reference.wolfram.com/language/tutorial/LevelsInExpressions.html,
* http://reference.wolfram.com/language/guide/Expressions.html,
* http://reference.wolfram.com/language/tutorial/StructuralOperations.html,

_DESCRIPTION:
At the core of the Wolfram Language is the foundational idea that everything—data, programs, formulas, graphics, documents—can be represented as symbolic expressions. And it is this unifying concept that underlies the Wolfram Language's symbolic programming paradigm, and makes possible much of the unique power of the Wolfram Language and the Wolfram System.
[http://reference.wolfram.com/language/guide/Expressions.html]
===
The notion of expressions is a crucial unifying principle in the Wolfram System. It is the fact that every object in the Wolfram System has the same underlying structure that makes it possible for the Wolfram System to cover so many areas with a comparatively small number of basic operations.
[http://reference.wolfram.com/language/tutorial/TheMeaningOfExpressions.html]
===
Symbolic Expressions

Everything in the Wolfram Language is a symbolic expression.

numbers strings images arrays graphs formulas documents interfaces code ...

All symbolic expressions have the same fundamental structure: head[arguments]

The argument to a function can be any symbolic expression:
In[1]:=  
Out[1]=  

The Wolfram Language is fully symbolic, so “undefined variables” can always just
stand for themselves:
In[2]:=  
Out[2]=  

FullForm always shows the underlying structure.
Head always gives the head of an expression; Length gives the number of arguments.
[http://www.wolfram.com/language/fast-introduction-for-programmers/symbolic-expressions/]
===
wl is Symbolic
In the Wolfram Language, everything (code, data, images, documents, interfaces, programs, etc.) is a symbolic expression.
[http://www.wolfram.com/language/for-experts/]

Wlfmlen'atom#ql:wl'atomic_object#

name::
* McsEngl.Wlfmlen'atom@cptIt,

Wlfmlen'codeBinary

name::
* McsEngl.Wlfmlen'codeBinary@cptIt,

_DESCRIPTION:
A Wolfram Language expression internally consists of a contiguous array of pointers, the first to the head, and the rest to its successive elements.
Each expression contains a special form of hash code that is used both in pattern matching and evaluation.
[http://reference.wolfram.com/language/tutorial/SomeNotesOnInternalImplementation.html]
===
general expressions  sequences of pointers to the head and elements
[http://reference.wolfram.com/language/tutorial/BasicInternalArchitecture.html]

Wlfmlen'computation

name::
* McsEngl.Wlfmlen'computation@cptIt,

_FUNCTION:
* Length#ql:wls.length#

Wlfmlen'formating

name::
* McsEngl.Wlfmlen'formating@cptIt,

_DESCRIPTION:
Expression Formatting
The front end uses a directed acyclic graph to represent the box structure of formatted expressions.
Boxes are interpreted using a two-dimensional generalization of an operator precedence parser.
Graphics and typesetting are implemented in the same formatting language, which allows them to work together seamlessly.
Incremental parsing is used to minimize structure and display updating.
Character spacing and positioning are determined from font data and operator tables.
Line breaking is globally optimized throughout expressions, based on a method similar to the one used for text layout in TeX.
During input, line breaking is set up so that small changes to expressions rarely cause large-scale reformatting; if the input needs to jump, an elliptical cursor tracker momentarily appears to guide the eye.
The truncation of very large output is based upon a byte count of the box representation of the output. Some kinds of boxes, such as those used to represent graphics, are excluded from this byte count.
Expression formatting uses several thousand pages of C++ code.
[http://reference.wolfram.com/language/tutorial/SomeNotesOnInternalImplementation.html]

Wlfmlen'formFull

name::
* McsEngl.Wlfmlen'formFull@cptIt,
* McsEngl.lagWlfm'fullform@cptIt,

Wlfmlen'formINPUT

name::
* McsEngl.Wlfmlen'formINPUT@cptIt,
* McsEngl.lagWlfm'inputform@cptIt,
* McsEngl.Wlfmlen'enterform@cptIt,
* McsEngl.Wlfmlen'inputform@cptIt,
* McsEngl.Wlfmlen'writting@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/InputSyntax.html,

_DESCRIPTION:
The Wolfram Language allows you to use special notation for many common operators. For example, although internally the Wolfram System represents a sum of two terms as Plus[x,y], you can enter this expression in the much more convenient form x+y.
... The Wolfram Language has a definite grammar that specifies how your input should be converted to internal form.
[http://reference.wolfram.com/language/tutorial/SpecialWaysToInputExpressions.html]
===
f[x,y]  standard form for f
f@x  prefix form for f[x]
x//f  postfix form for f[x]
x~f~y  infix form for f
Four ways to write expressions in the Wolfram Language.
[http://reference.wolfram.com/language/tutorial/SpecialWaysToInputExpressions.html]

Wlfmlen'formINTERNAL

name::
* McsEngl.Wlfmlen'formINTERNAL@cptIt,
* McsEngl.lagWlfm'internalform@cptIt,
* McsEngl.Wlfmlen'internal-representation@cptIt,

_DESCRIPTION:
The Wolfram Language allows you to use special notation for many common operators. For example, although internally the Wolfram System represents a sum of two terms as Plus[x,y], you can enter this expression in the much more convenient form x+y.
... The Wolfram Language has a definite grammar that specifies how your input should be converted to internal form.
[http://reference.wolfram.com/language/tutorial/SpecialWaysToInputExpressions.html]

Wlfmlen'formMathML

name::
* McsEngl.Wlfmlen'formMathML@cptIt,
* McsEngl.lagWlfm'MathMlform@cptIt,

Wlfmlen'formStandard

name::
* McsEngl.Wlfmlen'formStandard@cptIt,
* McsEngl.lagWlfm'standardform@cptIt,

Wlfmlen'formTEX

name::
* McsEngl.Wlfmlen'formTEX@cptIt,
* McsEngl.lagWlfm'texform@cptIt,

Wlfmlen'formTree

name::
* McsEngl.Wlfmlen'formTree@cptIt,
* McsEngl.lagWlfm'treeform@cptIt,

Wlfmlen'head

name::
* McsEngl.Wlfmlen'head@cptIt,
* McsEngl.lagWlfm'head.expression@cptIt,

_DESCRIPTION:
The object f in an expression is known as the head of the expression. You can extract it using Head[expr]. Particularly when you write programs in the Wolfram Language, you will often want to test the head of an expression to find out what kind of thing the expression is.

Head gives the "function name" .
In[5]:=  
Click for copyable input
Out[5]=  
Here Head gives the name of the "operator".
In[6]:=  
Click for copyable input
Out[6]=  
Everything has a head.
In[7]:=  
Click for copyable input
Out[7]=  
Numbers also have heads.
In[8]:=  
Click for copyable input
Out[8]=  
You can distinguish different kinds of numbers by their heads.
In[9]:=  
Click for copyable input
Out[9]=  
Head[expr]  give the head of an expression: the f in
FullForm[expr]  display an expression in the full form used by the Wolfram Language
Functions for manipulating expressions.
[http://reference.wolfram.com/language/tutorial/EverythingIsAnExpression.html]

Wlfmlen'level

name::
* McsEngl.Wlfmlen'level@cptIt,

_DESCRIPTION:
Levels provide a general way of specifying collections of parts in Wolfram Language expressions. Many Wolfram Language functions allow you to specify the levels in an expression on which they should act.
... You can think of levels in expressions in terms of trees. The level of a particular part in an expression is simply the distance down the tree at which that part appears, with the top of the tree considered as level 0.
[http://reference.wolfram.com/language/tutorial/LevelsInExpressions.html]

Wlfmlen'part

name::
* McsEngl.Wlfmlen'part@cptIt,

Wlfmlen'structure

name::
* McsEngl.Wlfmlen'structure@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/ExpressionsAsTrees.html,

_DESCRIPTION:
You can think of any Wolfram Language expression as a tree.
[http://reference.wolfram.com/language/tutorial/ExpressionsAsTrees.html]
===
Expression Structure
A foundational idea in the Wolfram Language is that all expressions—whatever they may represent—ultimately have a uniform tree-like structure. [http://reference.wolfram.com/language/guide/ExpressionStructure.html]
===
Thus, for example, the pattern (1+x_)^2 can stand for expressions like (1+a)^2 or (1+b^3)^2 that have the same structure. However, it cannot stand for the expression 1+2a+a^2. Although this expression is mathematically equal to (1+a)^2, it does not have the same structure as the pattern (1+x_)^2.
The fact that patterns in the Wolfram Language specify the structure of expressions is crucial in making it possible to set up transformation rules which change the structure of expressions, while leaving them mathematically equal.
It is worth realizing that in general it would be quite impossible for the Wolfram Language to match patterns by mathematical, rather than structural, equivalence.
[http://reference.wolfram.com/language/tutorial/Introduction-Patterns.html]

Wlfmlen'testing

name::
* McsEngl.Wlfmlen'testing@cptIt,

_DESCRIPTION:
Wolfram Language symbolic expressions can represent an immense range of types of objects. The Wolfram Language provides a rich collection of functions to test expressions. Functions that "ask a question" have names that end in Q. They return True for an explicit true answer, and False otherwise.
[http://reference.wolfram.com/language/guide/TestingExpressions.html]

Wlfmlen'usage

name::
* McsEngl.Wlfmlen'usage@cptIt,

_DESCRIPTION:
Although all expressions have the same basic structure, there are many different ways that expressions can be used.
[http://reference.wolfram.com/language/tutorial/TheMeaningOfExpressions.html]
===
Expressions in the Wolfram System are often used to specify operations. So, for example, typing in causes and to be added together, while Factor[x^6-1] performs factorization.
Perhaps an even more important use of expressions in the Wolfram System, however, is to maintain a structure, which can then be acted on by other functions. An expression like does not specify an operation. It merely maintains a list structure, which contains a collection of three elements. Other functions, such as Reverse or Dot, can act on this structure.

The full form of the expression is List[a,b,c]. The head List performs no operations. Instead, its purpose is to serve as a "tag" to specify the "type" of the structure.

You can use expressions in the Wolfram System to create your own structures. For example, you might want to represent points in three?dimensional space, specified by three coordinates. You could give each point as . The "function" again performs no operation. It serves merely to collect the three coordinates together, and to label the resulting object as a .

You can think of expressions like as being "packets of data", tagged with a particular head. Even though all expressions have the same basic structure, you can distinguish different "types" of expressions by giving them different heads. You can then set up transformation rules and programs which treat different types of expressions in different ways.
[http://reference.wolfram.com/language/tutorial/TheMeaningOfExpressions.html]

SPECIFIC

* wle.specific,

_SPECIFIC:
You can tell a lot about what "type" of expression something is by looking at its head. Thus, for example, an integer has head Integer, while a list has head List.
[http://reference.wolfram.com/language/tutorial/SpecifyingTypesOfExpressionInPatterns.html]
===
x+y+z  Plus[x,y,z]
xyz    Times[x,y,z]
x^n  Power[x,n]
{a,b,c}  List[a,b,c]
a->b  Rule[a,b]
a=b  Set[a,b]
Some examples of Wolfram Language expressions.
[http://reference.wolfram.com/language/tutorial/EverythingIsAnExpression.html]

Wlfmlen.ASSIGNMENT

name::
* McsEngl.Wlfmlen.ASSIGNMENT@cptIt,
* McsEngl.lagWlfm'assignment@cptIt,
* McsEngl.lagWlfm'definition@cptIt,
* McsEngl.Wlfmdfn@cptIt,

_DESCRIPTION:
You may have noticed that there are two different ways to make assignments in the Wolfram Language: lhs = rhs and lhs := rhs. The basic difference between these forms is when the expression rhs is evaluated. lhs = rhs is an immediate assignment, in which rhs is evaluated at the time when the assignment is made. lhs := rhs, on the other hand, is a delayed assignment, in which rhs is not evaluated when the assignment is made, but is instead evaluated each time the value of lhs is requested.
[http://reference.wolfram.com/language/tutorial/ImmediateAndDelayedDefinitions.html]

wldfn'ordering

name::
* McsEngl.wldfn'ordering@cptIt,

_DESCRIPTION:
¦ The Wolfram System tries to put specific definitions before more general definitions.
Treatment of definitions in the Wolfram System.

If the Wolfram System did not follow the principle of putting special rules before more general ones, then the special rules would always be "shadowed" by more general ones.
[http://reference.wolfram.com/language/tutorial/TheOrderingOfDefinitions.html]

Wlfmlen.RULE-(rl)

name::
* McsEngl.Wlfmlen.RULE-(rl)@cptIt,
* McsEngl.Wlfmlrl@cptIt,
* McsEngl.Wlfmrule@cptIt,
* McsEngl.lagWlfm'rule@cptIt,
* McsEngl.lagWlfm'transformation-rule@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/guide/RulesAndPatterns.html,
===
* http://reference.wolfram.com/language/howto/CreateAndUseRules.html,
===
* http://reference.wolfram.com/language/ref/Rule.html,

_DESCRIPTION:
Transformation rules in the Wolfram Language let you set local values for symbols, functions, and all other types of expressions. Using rules provides a powerful and extensible method to replace all or part of another expression with the value you specify.
[http://reference.wolfram.com/language/howto/CreateAndUseRules.html]
===
Rule represents a rule that transforms one expression to another. The expression Rule[lhs,rhs] is commonly written and displayed using the shorthand syntax or . Rule-based programming is an extremely powerful paradigm that allows many programs to be written both compactly and lucidly.
[http://reference.wolfram.com/language/ref/Rule.html]
===
At the core of the Wolfram Language's symbolic programming paradigm is the concept of transformation rules for arbitrary symbolic patterns. The Wolfram Language's pattern language conveniently describes a very general set of classes of expressions, making possible uniquely readable, elegant and efficient programs.
[http://reference.wolfram.com/language/guide/RulesAndPatterns.html]

wlrule'left-hand-side

name::
* McsEngl.wlrule'left-hand-side@cptIt,
* McsEngl.Wlfmrule'lhs@cptIt,

wlrule'rigt-hand-side

name::
* McsEngl.wlrule'rigt-hand-side@cptIt,
* McsEngl.Wlfmrule'rhs@cptIt,

lagWlfm'ASSOCIATION <|...|>

name::
* McsEngl.lagWlfm'ASSOCIATION <|...|>@cptIt,
* McsEngl.lagWlfm'association@cptIt,

_DESCRIPTION:
Along with lists, associations are fundamental constructs in the Wolfram Language. They associate keys with values, allowing highly efficient lookup and updating, even with millions of elements. Associations provide generalizations of symbolically indexed lists, associative arrays, dictionaries, hashmaps, structs, and a variety of other powerful data structures.
[http://reference.wolfram.com/language/guide/Associations.html]

lagWlfm'FUNCTION-(fn)

name::
* McsEngl.lagWlfm'FUNCTION-(fn)@cptIt,
* McsEngl.lagWlfm'function@cptIt,
* McsEngl.Wlfmfn@cptIt,

_DESCRIPTION:
f[x,y] — function arguments go in square brackets
===
% refers to previous output.

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/DefiningFunctions.html,
* http://reference.wolfram.com/language/tutorial/FunctionsAndProgramsOverview.html,
* http://reference.wolfram.com/language/tutorial/FunctionalOperationsOverview.html,
===
* http://reference.wolfram.com/language/guide/FunctionalProgramming.html,

Wlfmfn'name

name::
* McsEngl.Wlfmfn'name@cptIt,

_DESCRIPTION:
Function Names
The names of built?in functions follow some general guidelines.

The name consists of complete English words, or standard mathematical abbreviations. American spelling is used.
The first letter of each word is capitalized.
Functions whose names end with usually "ask a question", and return either True or False.
Mathematical functions that are named after people usually have names in the Wolfram Language of the form PersonSymbol.
[http://reference.wolfram.com/language/tutorial/SomeGeneralNotationsAndConventions.html]

Wlfmfn'doing.APPLYING

name::
* McsEngl.Wlfmfn'doing.APPLYING@cptIt,
* McsEngl.Wlfmfn'application@cptIt,
* McsEngl.Wlfmfn'calling@cptIt,

_DESCRIPTION:
f @ expr — prefix function application
expr // f — postfix function application ("slash slash")
[http://reference.wolfram.com/language/guide/Syntax.html]

Wlfmfn'doing.CREATING

name::
* McsEngl.Wlfmfn'doing.CREATING@cptIt,
* McsEngl.Wlfmfn'definition@cptIt,

_DESCRIPTION:
f[x_]:=x^2  define the function f
?f    show the definition of f
Clear[f]  clear all definitions for f
[http://reference.wolfram.com/language/tutorial/DefiningFunctions.html]
===
Function Definitions
In the Wolfram Language, function definitions are just assignments that give transformation rules for patterns.
Define a function of two arguments named x and y:
In[1]:= f[x_,y_] := x+y
[http://www.wolfram.com/language/fast-introduction-for-programmers/function-definitions/]

Wlfmfn'option

name::
* McsEngl.Wlfmfn'option@cptIt,
* McsEngl.lagWlfm'option@cptIt,

_DESCRIPTION:
Options Management
Directly integrated into the Wolfram Language is a convenient symbolic options mechanism that allows arbitrary sequences of named parameters to be given to both built-in and user-defined functions.
[http://reference.wolfram.com/language/guide/OptionsManagement.html]

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/ManipulatingOptions.html,
* http://reference.wolfram.com/language/guide/OptionsManagement.html,

Wlfmfn'parameter

name::
* McsEngl.Wlfmfn'parameter@cptIt,
* McsEngl.Wlfmfn'argument@cptIt,

_DESCRIPTION:
Function Arguments
The main expression or object on which a built?in function acts is usually given as the first argument to the function. Subsidiary parameters appear as subsequent arguments.

The following are exceptions:
In functions like Map and Apply, the function to apply comes before the expression it is to be applied to.
In scoping constructs such as Module and Function, local variables and parameter names come before bodies.

In functions like Write and Export, the name of the file is given before the objects to be written to it.
For mathematical functions, arguments that are written as subscripts in standard mathematical notation are given before those that are written as superscripts.

SPECIFIC

* Wlfmfn.specific,

_SPECIFIC:
* There are more than 5000 functions built into the Wolfram Language.
[http://www.wolfram.com/language/elementary-introduction/02-introducing-functions.html]
===
* http://reference.wolfram.com/language/ref/Nameofsymbol.html,
The Wolfram Language has over 4000 built-in functions and other objects, all based on a single unified framework, and all carefully designed to work together, both in simple interactive applications and programs of any complexity.

_SPECIFIC:
* arrow-function##
* color-function##
* data-function##
* distribution-function##
* query-function##
* list-function##

Wlfmfn.$

name::
* McsEngl.Wlfmfn.$@cptIt,

[http://reference.wolfram.com/language/ref/.html]

SblDlr = SymbolDolar = $

* Wlfmfn.SblDlrAborted
* Wlfmfn.SblDlrAssertFunction
* Wlfmfn.SblDlrAssumptions
* Wlfmfn.SblDlrAsynchronousTask
* Wlfmfn.SblDlrBaseDirectory
* Wlfmfn.SblDlrBatchInput
* Wlfmfn.SblDlrBatchOutput
* Wlfmfn.SblDlrByteOrdering
* Wlfmfn.SblDlrCanceled
* Wlfmfn.SblDlrCharacterEncoding
* Wlfmfn.SblDlrCharacterEncodings
* Wlfmfn.SblDlrCloudBase
* Wlfmfn.SblDlrCloudConnected
* Wlfmfn.SblDlrCloudCreditsAvailable
* Wlfmfn.SblDlrCloudEvaluation

* Wlfmfn.SblDlrCloudRootDirectory:
CloudObject[
https://www.wolframcloud.com/objects/user-bb930aa9-340d-48bd-8a1c-ae9648d6b5cc
]

* Wlfmfn.SblDlrCloudSymbolBase:
CloudObject[
https://www.wolframcloud.com/objects/user-bb930aa9-340d-48bd-8a1c-ae9648d6b5cc/CloudSymbol
]
===
$CloudSymbolBase
gives the base for storing the values of CloudSymbol objects.
Details
By default, $CloudSymbolBase is the CloudSymbol subdirectory of $CloudRootDirectory for the current user.
[http://reference.wolfram.com/language/ref/$CloudSymbolBase.html]

* Wlfmfn.SblDlrCommandLine
* Wlfmfn.SblDlrCompilationTarget
* Wlfmfn.SblDlrConfiguredKernels

* Wlfmfn.SblDlrContext:
$Context
is a global variable that gives the current context.
Details
Contexts are specified by strings of the form .
$Context is modified by Begin, BeginPackage, End, and EndPackage.
$Context is a rough analog for Wolfram Language symbols of the current working directory for files in many operating systems.
[http://reference.wolfram.com/language/ref/$Context.html]

* Wlfmfn.SblDlrContextPath

* Wlfmfn.SblDlrControlActiveSetting
* Wlfmfn.SblDlrCreationDate
* Wlfmfn.SblDlrCurrentLink
* Wlfmfn.SblDlrDateStringFormat
* Wlfmfn.SblDlrDefaultImagingDevice
* Wlfmfn.SblDlrDisplay
* Wlfmfn.SblDlrDisplayFunction
* Wlfmfn.SblDlrDistributedContexts
* Wlfmfn.SblDlrDynamicEvaluation
* Wlfmfn.SblDlrEcho
* Wlfmfn.SblDlrEmbedCodeEnvironments
* Wlfmfn.SblDlrEpilog

* Wlfmfn.SblDlrEvaluationCloudObject:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SblDlrEvaluationEnvironment
* Wlfmfn.SblDlrExportFormats
* Wlfmfn.SblDlrFailed
* Wlfmfn.SblDlrFrontEnd
* Wlfmfn.SblDlrFrontEndSession
* Wlfmfn.SblDlrGeoLocation
* Wlfmfn.SblDlrGeoLocationCity
* Wlfmfn.SblDlrGeoLocationCountry
* Wlfmfn.SblDlrGeoLocationSource
* Wlfmfn.SblDlrHTTPCookies
* Wlfmfn.SblDlrHistoryLength

* Wlfmfn.SblDlrHomeDirectory:
/wolframcloud/userfiles/bb9/bb930aa9-340d-48bd-8a1c-ae9648d6b5cc
===
$HomeDirectory
gives your "home" directory.
Details
$HomeDirectory returns the full name of the directory as a string.
On multi-user operating systems, $HomeDirectory gives the main directory for the current user.
[http://reference.wolfram.com/language/ref/$HomeDirectory.html]

* Wlfmfn.SblDlrIgnoreEOF
* Wlfmfn.SblDlrImageFormattingWidth
* Wlfmfn.SblDlrImagingDevice
* Wlfmfn.SblDlrImagingDevices
* Wlfmfn.SblDlrImportFormats
* Wlfmfn.SblDlrInitialDirectory
* Wlfmfn.SblDlrInput
* Wlfmfn.SblDlrInputFileName
* Wlfmfn.SblDlrInputStreamMethods
* Wlfmfn.SblDlrInspector

* Wlfmfn.http://reference.wolfram.com/language/ref/$InstallationDirectory.html:
gives the top-level directory in which your Wolfram System installation resides.
===
$InstallationDirectory returns the full name of the directory as a string.
Typical values are:
\Program?Files\Wolfram?Research\Mathematica\10.0  Windows
/Applications/Mathematica?10.0.app      Macintosh
/usr/local/Wolfram/Mathematica/10.0      Linux

* Wlfmfn.SblDlrInterpreterTypes
* Wlfmfn.SblDlrIterationLimit
* Wlfmfn.SblDlrKernelCount
* Wlfmfn.SblDlrKernelID
* Wlfmfn.SblDlrLanguage
* Wlfmfn.SblDlrLibraryPath
* Wlfmfn.SblDlrLicenseExpirationDate
* Wlfmfn.SblDlrLicenseID
* Wlfmfn.SblDlrLicenseServer
* Wlfmfn.SblDlrLine
* Wlfmfn.SblDlrLinked
* Wlfmfn.SblDlrMachineAddresses
* Wlfmfn.SblDlrMachineDomains
* Wlfmfn.SblDlrMachineEpsilon
* Wlfmfn.SblDlrMachineID
* Wlfmfn.SblDlrMachineName
* Wlfmfn.SblDlrMachinePrecision
* Wlfmfn.SblDlrMachineType
* Wlfmfn.SblDlrMaxExtraPrecision
* Wlfmfn.SblDlrMaxMachineNumber
* Wlfmfn.SblDlrMaxNumber
* Wlfmfn.SblDlrMaxPiecewiseCases
* Wlfmfn.SblDlrMaxPrecision
* Wlfmfn.SblDlrMaxRootDegree
* Wlfmfn.SblDlrMessageGroups

* Wlfmfn.SblDlrMessageList:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SblDlrMessagePrePrint
* Wlfmfn.SblDlrMessages
* Wlfmfn.SblDlrMinMachineNumber
* Wlfmfn.SblDlrMinNumber
* Wlfmfn.SblDlrMinPrecision
* Wlfmfn.SblDlrModuleNumber
* Wlfmfn.SblDlrNewMessage
* Wlfmfn.SblDlrNewSymbol

* Wlfmfn.http://reference.wolfram.com/language/ref/$Notebooks.html:
is True if the Wolfram System is being used with a notebook-based front end.
===
$Notebooks is automatically set by the front end when it starts the Wolfram Language kernel.

* Wlfmfn.SblDlrNumberMarks
* Wlfmfn.SblDlrOperatingSystem
* Wlfmfn.SblDlrOutput
* Wlfmfn.SblDlrOutputSizeLimit
* Wlfmfn.SblDlrOutputStreamMethods
* Wlfmfn.SblDlrPackages
* Wlfmfn.SblDlrParentLink
* Wlfmfn.SblDlrParentProcessID

* Wlfmfn.SblDlrPath:
$Path
gives the default list of directories to search in attempting to find an external file.
Details
The structure of directory and file names may differ from one computer system to another.
$Path is used both for files in Get and for external programs in Install.
The setting for $Path can be overridden in specific functions using the Path option.
The directory names are specified by strings. The full file names tested are of the form ToFileName[directory,name].
On most computer systems, the following special characters can be used in directory names:
.  the current directory
..  the directory one level up in the hierarchy
~  the user’s home directory
$Path can contain nested sublists.
[http://reference.wolfram.com/language/ref/$Path.html]

* Wlfmfn.SblDlrPathnameSeparator
* Wlfmfn.SblDlrPerformanceGoal
* Wlfmfn.SblDlrPermissions
* Wlfmfn.SblDlrPlotTheme
* Wlfmfn.SblDlrPost
* Wlfmfn.SblDlrPre
* Wlfmfn.SblDlrPrePrint
* Wlfmfn.SblDlrPreRead
* Wlfmfn.SblDlrProcessID
* Wlfmfn.SblDlrProcessorCount
* Wlfmfn.SblDlrProcessorType
* Wlfmfn.SblDlrRecursionLimit
* Wlfmfn.SblDlrReleaseNumber
* Wlfmfn.SblDlrRequesterAddress
* Wlfmfn.SblDlrRequesterWolframID
* Wlfmfn.SblDlrRequesterWolframUUID
* Wlfmfn.SblDlrRootDirectory
* Wlfmfn.SblDlrScheduledTask
* Wlfmfn.SblDlrScriptCommandLine
* Wlfmfn.SblDlrServices

* Wlfmfn.SblDlrSessionID:
If you have a variable such as x in a particular Wolfram Language session, you may or may not want that variable to be the same as an x in another Wolfram Language session. In order to make it possible to maintain distinct objects in different sessions, the Wolfram Language supports the variable $SessionID, which uses information such as starting time, process ID and machine ID to try to give a different value for every single Wolfram Language session, whether it is run on the same computer or a different one.
[http://reference.wolfram.com/language/tutorial/GlobalSystemInformation.html]

* Wlfmfn.SblDlrSharedFunctions
* Wlfmfn.SblDlrSharedVariables
* Wlfmfn.SblDlrSoundDisplayFunction
* Wlfmfn.SblDlrSyntaxHandler
* Wlfmfn.SblDlrSystem
* Wlfmfn.SblDlrSystemCharacterEncoding
* Wlfmfn.SblDlrSystemID
* Wlfmfn.SblDlrSystemShell
* Wlfmfn.SblDlrSystemWordLength
* Wlfmfn.SblDlrTemplatePath
* Wlfmfn.SblDlrTemporaryDirectory
* Wlfmfn.SblDlrTimeUnit
* Wlfmfn.SblDlrTimeZone
* Wlfmfn.SblDlrTimedOut
* Wlfmfn.SblDlrUnitSystem
* Wlfmfn.SblDlrUrgent
* Wlfmfn.SblDlrUserAgentString
* Wlfmfn.SblDlrUserBaseDirectory
* Wlfmfn.SblDlrUserDocumentsDirectory
* Wlfmfn.SblDlrUserName
* Wlfmfn.SblDlrVersion

* Wlfmfn.SblDlrVersionNumber:
The Wolfram Language provides various global variables that allow you to tell which version of the kernel you are running. This is important if you write programs that make use of features that are, say, new in Version 6. You can then check $VersionNumber to find out if these features will be available.
[http://reference.wolfram.com/language/tutorial/GlobalSystemInformation.html]

* Wlfmfn.SblDlrWolframID
* Wlfmfn.SblDlrWolframUUID

Wlfmfn.A

name::
* McsEngl.Wlfmfn.A@cptIt,

http://reference.wolfram.com/language/ref/.html,

* Wlfmfn.AASTriangle
* Wlfmfn.APIFunction
* Wlfmfn.ARCHProcess
* Wlfmfn.ARIMAProcess
* Wlfmfn.ARMAProcess
* Wlfmfn.ARProcess
* Wlfmfn.ASATriangle
* Wlfmfn.AbelianGroup
* Wlfmfn.Abort
* Wlfmfn.AbortKernels
* Wlfmfn.AbortProtect
* Wlfmfn.Above
* Wlfmfn.Abs
* Wlfmfn.AbsoluteCorrelation
* Wlfmfn.AbsoluteCorrelationFunction
* Wlfmfn.AbsoluteCurrentValue
* Wlfmfn.AbsoluteDashing
* Wlfmfn.AbsoluteFileName

* Wlfmfn.AbsoluteOptions:
AbsoluteOptions[expr]
gives the absolute settings of options specified in an expression such as a graphics object.
AbsoluteOptions[expr,name]
gives the absolute setting for the option name.
AbsoluteOptions[expr,{name1,name2,…}]
gives a list of the absolute settings for the options .
AbsoluteOptions[object]
gives the absolute settings for options associated with an external object such as a NotebookObject.
Details
AbsoluteOptions gives the actual settings for options used internally by the Wolfram Language when the setting given is Automatic or All.
AbsoluteOptions returns lists of rules, just like Options.
You can use AbsoluteOptions on graphics options such as PlotRange and Ticks.
If object is a front end object such as $FrontEnd, NotebookObject, or CellObject, the kernel will send a request to the front end to find the result.
[http://reference.wolfram.com/language/ref/AbsoluteOptions.html]

* Wlfmfn.AbsolutePointSize
* Wlfmfn.AbsoluteThickness

* Wlfmfn.AbsoluteTime:
AbsoluteTime[]
gives the total number of seconds since the beginning of January 1, 1900, in your time zone.
AbsoluteTime[{y,m,d,h,m,s}]
gives the absolute time specification corresponding to a date list.
AbsoluteTime["string"]
gives the absolute time specification corresponding to a date string.
AbsoluteTime[{"string",{"e1","e2",…}}]
takes the date string to contain the elements .
Details and Options
AbsoluteTime[] uses whatever date and time have been set on your computer system. It performs no corrections for time zones, daylight saving time, etc.
AbsoluteTime[TimeZone -> z] gives the date and time inferred for time zone z by assuming that your computer is set for the time zone specified by $TimeZone. »
AbsoluteTime[] is always accurate down to a granularity of $TimeUnit seconds, but on many systems is much more accurate.
Shorter lists can be used in AbsoluteTime[{y,m,…}]: {y} is equivalent to , to , etc.
Values of m, d, h, m, s outside their normal ranges are appropriately reduced. Noninteger values of d, h, m, s can also be used. »
[http://reference.wolfram.com/language/ref/AbsoluteTime.html]

* Wlfmfn.AbsoluteTiming
* Wlfmfn.AccountingForm
* Wlfmfn.Accumulate
* Wlfmfn.Accuracy
* Wlfmfn.AccuracyGoal
* Wlfmfn.ActionMenu
* Wlfmfn.ActionMenuBoxOptions
* Wlfmfn.Activate
* Wlfmfn.ActiveStyle
* Wlfmfn.AcyclicGraphQ
* Wlfmfn.AddTo
* Wlfmfn.AdjacencyGraph

* Wlfmfn.AdjacencyList:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.AdjacencyMatrix
* Wlfmfn.AdjustTimeSeriesForecast
* Wlfmfn.AdjustmentBox
* Wlfmfn.AdjustmentBoxOptions

* Wlfmfn.http://reference.wolfram.com/language/ref/AdministrativeDivisionData.html:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.AffineStateSpaceModel
* Wlfmfn.AffineTransform
* Wlfmfn.After:

* Wlfmfn.AirPressureData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.AirTemperatureData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.AircraftData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.AirportData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.AiryAi
* Wlfmfn.AiryAiPrime
* Wlfmfn.AiryAiZero
* Wlfmfn.AiryBi
* Wlfmfn.AiryBiPrime
* Wlfmfn.AiryBiZero
* Wlfmfn.AlgebraicIntegerQ
* Wlfmfn.AlgebraicNumber
* Wlfmfn.AlgebraicNumberDenominator
* Wlfmfn.AlgebraicNumberNorm
* Wlfmfn.AlgebraicNumberPolynomial
* Wlfmfn.AlgebraicNumberTrace
* Wlfmfn.AlgebraicUnitQ
* Wlfmfn.Algebraics
* Wlfmfn.Alignment
* Wlfmfn.AlignmentPoint

* Wlfmfn.All:
All
is a setting used for certain options. In Part and related functions, All specifies all parts at a particular level.
Details
For example, PlotRange->All specifies that all points are to be included in a plot.
[http://reference.wolfram.com/language/ref/All.html]

* Wlfmfn.AllTrue
* Wlfmfn.AllowGroupClose
* Wlfmfn.AllowInlineCells
* Wlfmfn.AllowReverseGroupClose
* Wlfmfn.AllowedDimensions
* Wlfmfn.AlphaChannel
* Wlfmfn.AlternateImage
* Wlfmfn.AlternatingFactorial
* Wlfmfn.AlternatingGroup
* Wlfmfn.AlternativeHypothesis
* Wlfmfn.Alternatives

* Wlfmfn.http://reference.wolfram.com/language/ref/AmbiguityFunction.html:
AmbiguityFunction
is an option for SemanticInterpretation, Interpreter, and related functions that specifies how to resolve ambiguities generated during semantic interpretation.
Details
Common settings are:
Automatic  always pick the first choice
All  return all choices
AmbiguityFunction is typically given as a function to be applied to expressions containing AmbiguityList objects.

* Wlfmfn.http://reference.wolfram.com/language/ref/AmbiguityList.html:
AmbiguityList[{expr1,expr2,…}]
represents possible results derived from an ambiguous semantic interpretation.
AmbiguityList[{expr1,expr2,…},"string"]
represents possible results from semantic interpretation of an input string.
AmbiguityList[{expr1,expr2,…},"string",{assoc1,assoc2,…}]
includes a sequence of associations giving details of the interpretations used to obtain the .
Details
AmbiguityList is typically processed using the setting given for AmbiguityFunction.

* Wlfmfn.AnchoredSearch
* Wlfmfn.And
* Wlfmfn.AndersonDarlingTest
* Wlfmfn.AngerJ
* Wlfmfn.AngleBracket
* Wlfmfn.AngularGauge
* Wlfmfn.Animate
* Wlfmfn.AnimationDirection
* Wlfmfn.AnimationRate
* Wlfmfn.AnimationRepetitions
* Wlfmfn.AnimationRunning
* Wlfmfn.Animator
* Wlfmfn.AnimatorBoxOptions
* Wlfmfn.Annotation
* Wlfmfn.Annuity
* Wlfmfn.AnnuityDue
* Wlfmfn.Antialiasing
* Wlfmfn.AntihermitianMatrixQ
* Wlfmfn.Antisymmetric
* Wlfmfn.AntisymmetricMatrixQ
* Wlfmfn.AnyTrue
* Wlfmfn.Apart
* Wlfmfn.ApartSquareFree
* Wlfmfn.Appearance
* Wlfmfn.AppearanceElements
* Wlfmfn.AppearanceRules
* Wlfmfn.AppellF1
* Wlfmfn.Append
* Wlfmfn.AppendTo

* Wlfmfn.Apply:
* wlopr.Apply, wlopr.sblAtAt: @@
Apply[f,expr]
or replaces the head of expr by f.
Apply[f,expr,{1}]
or replaces heads at level of expr by f.
Apply[f,expr,levelspec]
replaces heads in parts of expr specified by levelspec.
Apply[f]
represents an operator form of Apply that can be applied to an expression.
Details and Options
Apply uses standard level specifications:
n  levels through n
Infinity  levels through Infinity
{n}  level n only
{n1,n2}  levels through
The default value for levelspec in Apply is .
is equivalent to Apply[f,expr,{1}].
A positive level n consists of all parts of expr specified by n indices.
A negative level -n consists of all parts of expr with depth n.
Level consists of numbers, symbols, and other objects that do not have subparts.
Level corresponds to the whole expression.
Apply always effectively constructs a complete new expression and then evaluates it.
Apply operates on SparseArray objects just as it would on the corresponding ordinary lists.
Apply operates on values only in Association objects.
Apply[f][expr] is equivalent to Apply[f,expr].
[http://reference.wolfram.com/language/ref/Apply.html]

* Wlfmfn.ArcCos
* Wlfmfn.ArcCosh
* Wlfmfn.ArcCot
* Wlfmfn.ArcCoth
* Wlfmfn.ArcCsc
* Wlfmfn.ArcCsch
* Wlfmfn.ArcCurvature
* Wlfmfn.ArcLength
* Wlfmfn.ArcSec
* Wlfmfn.ArcSech
* Wlfmfn.ArcSin
* Wlfmfn.ArcSinDistribution
* Wlfmfn.ArcSinh
* Wlfmfn.ArcTan
* Wlfmfn.ArcTanh
* Wlfmfn.Area
* Wlfmfn.Arg
* Wlfmfn.ArgMax
* Wlfmfn.ArgMin
* Wlfmfn.ArithmeticGeometricMean
* Wlfmfn.Array
* Wlfmfn.ArrayComponents
* Wlfmfn.ArrayDepth
* Wlfmfn.ArrayFlatten
* Wlfmfn.ArrayPad
* Wlfmfn.ArrayPlot
* Wlfmfn.ArrayQ
* Wlfmfn.ArrayResample
* Wlfmfn.ArrayReshape
* Wlfmfn.ArrayRules
* Wlfmfn.Arrays
* Wlfmfn.Arrow
* Wlfmfn.Arrowheads
* Wlfmfn.AspectRatio
* Wlfmfn.Assert
* Wlfmfn.AssociateTo

* Wlfmfn.http://reference.wolfram.com/language/ref/Association.html:
Association[key1?val1,key2?val2,…] or
represents an association between keys and values.
Details
The value associated with a given key can be extracted using .
An Association acts like a symbolically indexed list. The value associated with a given key can be extracted by using the part specification Key[key]. If key is a string, Key can be omitted.
If key is not present in assoc, yields Missing["KeyAbsent",key].
Typical list operations (such as Map, Select, and Sort) apply to the values in an association, leaving the keys unchanged.
Association[{key1->val1,…}] gives .
If there are multiple elements with the same key, all but the last of these elements are dropped. Merge yields instead a list of values for repeated keys.
Association can be input using the characters \[LeftAssociation] and \[RightAssociation].
Normal converts an Association to a list of rules.
... Introduced in 2014 (10.0)
[http://reference.wolfram.com/language/ref/Association.html]

* Wlfmfn.AssociationFormat
* Wlfmfn.AssociationMap
* Wlfmfn.AssociationThread

* Wlfmfn.Assuming:
Assuming[assum,expr]
evaluates expr with assum appended to $Assumptions, so that assum is included in the default assumptions used by functions such as Refine, Simplify, and Integrate.
Details
Assuming affects the default assumptions for all functions that have an Assumptions option.
The assumptions can be equations, inequalities, or domain specifications, or lists or logical combinations of these.
Assumptions from nested invocations of Assuming are combined.
Assuming[assum,expr] is effectively equivalent to Block[{$Assumptions=$Assumptions&&assum},expr].
Assuming converts lists of assumptions to .
[http://reference.wolfram.com/language/ref/Assuming.html]

* Wlfmfn.Assumptions
* Wlfmfn.AsymptoticOutputTracker
* Wlfmfn.Asynchronous

* Wlfmfn.AsynchronousTaskObject:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.AsynchronousTasks
* Wlfmfn.AtomQ

* Wlfmfn.http://reference.wolfram.com/language/ref/Attributes.html:
Attributes[symbol]
gives the list of attributes for a symbol.
Details
The attributes of a symbol can be set by assigning a value to Attributes[s]. If a single attribute is assigned, it need not be in a list.
Attributes[s]={} clears all attributes of a symbol.
Attributes[{s1,s2,…}] gives a list of the attributes for each of the .
Attributes["string"] gives the attributes for Symbol["string"].
Attributes[HoldPattern[s]] is treated as equivalent to Attributes[s].
Attributes for functions must be set before any definitions that involve the functions are given.
The complete list of possible attributes for a symbol f is:
Constant  all derivatives of f are zero
Flat  f is associative
HoldAll  all the arguments of f are not evaluated
HoldAllComplete  the arguments of f are completely shielded from evaluation
HoldFirst  the first argument of f is not evaluated
HoldRest  all but the first argument of f are not evaluated
Listable  f is automatically "threaded" over lists
Locked  attributes of f cannot be changed
NHoldAll  the arguments of f are not affected by N
NHoldFirst  the first argument of f is not affected by N
NHoldRest  all but the first argument of f are not affected by N
NumericFunction  the value of f is assumed to be a number when its arguments are numbers
OneIdentity  , , etc. are equivalent to a in pattern matching
Orderless  f is commutative
Protected  values of f cannot be changed
ReadProtected  values of f cannot be read
SequenceHold  Sequence objects in the arguments of f are not flattened out
Stub  Needs is automatically called if the symbol is ever input
Temporary  f is a local variable, removed when no longer used
[http://reference.wolfram.com/language/ref/Attributes.html]

* Wlfmfn.AugmentedSymmetricPolynomial
* Wlfmfn.AutoAction
* Wlfmfn.AutoDelete
* Wlfmfn.AutoIndent
* Wlfmfn.AutoItalicWords
* Wlfmfn.AutoMultiplicationSymbol
* Wlfmfn.AutoScroll
* Wlfmfn.AutoSpacing
* Wlfmfn.AutocorrelationTest
* Wlfmfn.Automatic
* Wlfmfn.AutorunSequencing
* Wlfmfn.Axes
* Wlfmfn.AxesEdge
* Wlfmfn.AxesLabel
* Wlfmfn.AxesOrigin
* Wlfmfn.AxesStyle
* Wlfmfn.Axis

Wlfmfn.B

name::
* McsEngl.Wlfmfn.B@cptIt,

http://reference.wolfram.com/language/ref/.html,
* Wlfmfn.BSplineBasis
* Wlfmfn.BSplineCurve
* Wlfmfn.BSplineCurve3DBoxOptions
* Wlfmfn.BSplineCurveBoxOptions
* Wlfmfn.BSplineFunction
* Wlfmfn.BSplineSurface
* Wlfmfn.BSplineSurface3DBoxOptions
* Wlfmfn.BabyMonsterGroupB
* Wlfmfn.Back
* Wlfmfn.Background
* Wlfmfn.Backslash
* Wlfmfn.Backward
* Wlfmfn.Ball
* Wlfmfn.Band
* Wlfmfn.BandpassFilter
* Wlfmfn.BandstopFilter
* Wlfmfn.BarChart
* Wlfmfn.BarChart3D
* Wlfmfn.BarLegend
* Wlfmfn.BarOrigin
* Wlfmfn.BarSpacing
* Wlfmfn.BarabasiAlbertGraphDistribution
* Wlfmfn.BarcodeImage
* Wlfmfn.BarcodeRecognize
* Wlfmfn.BarlowProschanImportance
* Wlfmfn.BarnesG
* Wlfmfn.BartlettHannWindow
* Wlfmfn.BartlettWindow
* Wlfmfn.BaseForm
* Wlfmfn.BaseStyle
* Wlfmfn.Baseline
* Wlfmfn.BaselinePosition
* Wlfmfn.BatesDistribution
* Wlfmfn.BattleLemarieWavelet
* Wlfmfn.Because
* Wlfmfn.BeckmannDistribution
* Wlfmfn.Beep
* Wlfmfn.Before
* Wlfmfn.Begin
* Wlfmfn.BeginDialogPacket
* Wlfmfn.BeginPackage
* Wlfmfn.BellB
* Wlfmfn.BellY
* Wlfmfn.Below
* Wlfmfn.BenfordDistribution
* Wlfmfn.BeniniDistribution
* Wlfmfn.BenktanderGibratDistribution
* Wlfmfn.BenktanderWeibullDistribution
* Wlfmfn.BernoulliB
* Wlfmfn.BernoulliDistribution
* Wlfmfn.BernoulliGraphDistribution
* Wlfmfn.BernoulliProcess
* Wlfmfn.BernsteinBasis
* Wlfmfn.BesselFilterModel
* Wlfmfn.BesselI
* Wlfmfn.BesselJ
* Wlfmfn.BesselJZero
* Wlfmfn.BesselK
* Wlfmfn.BesselY
* Wlfmfn.BesselYZero
* Wlfmfn.Beta
* Wlfmfn.BetaBinomialDistribution
* Wlfmfn.BetaDistribution
* Wlfmfn.BetaNegativeBinomialDistribution
* Wlfmfn.BetaPrimeDistribution
* Wlfmfn.BetaRegularized
* Wlfmfn.BetweennessCentrality
* Wlfmfn.BezierCurve
* Wlfmfn.BezierCurve3DBoxOptions
* Wlfmfn.BezierCurveBoxOptions
* Wlfmfn.BezierFunction
* Wlfmfn.BilateralFilter
* Wlfmfn.BinCounts
* Wlfmfn.BinLists
* Wlfmfn.Binarize
* Wlfmfn.BinaryFormat
* Wlfmfn.BinaryImageQ
* Wlfmfn.BinaryRead

* Wlfmfn.BinaryReadList:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.BinaryWrite
* Wlfmfn.Binomial
* Wlfmfn.BinomialDistribution
* Wlfmfn.BinomialProcess
* Wlfmfn.BinormalDistribution
* Wlfmfn.BiorthogonalSplineWavelet
* Wlfmfn.BipartiteGraphQ
* Wlfmfn.BirnbaumImportance
* Wlfmfn.BirnbaumSaundersDistribution
* Wlfmfn.BitAnd
* Wlfmfn.BitClear
* Wlfmfn.BitGet
* Wlfmfn.BitLength
* Wlfmfn.BitNot
* Wlfmfn.BitOr
* Wlfmfn.BitSet
* Wlfmfn.BitShiftLeft
* Wlfmfn.BitShiftRight
* Wlfmfn.BitXor
* Wlfmfn.Black
* Wlfmfn.BlackmanHarrisWindow
* Wlfmfn.BlackmanNuttallWindow
* Wlfmfn.BlackmanWindow
* Wlfmfn.Blank
* Wlfmfn.BlankNullSequence
* Wlfmfn.BlankSequence
* Wlfmfn.Blend
* Wlfmfn.Block
* Wlfmfn.BlockRandom
* Wlfmfn.BlomqvistBeta
* Wlfmfn.BlomqvistBetaTest
* Wlfmfn.Blue
* Wlfmfn.Blur
* Wlfmfn.BodePlot
* Wlfmfn.BohmanWindow
* Wlfmfn.Bold
* Wlfmfn.Bookmarks
* Wlfmfn.Boole
* Wlfmfn.BooleanConsecutiveFunction
* Wlfmfn.BooleanConvert
* Wlfmfn.BooleanCountingFunction
* Wlfmfn.BooleanFunction
* Wlfmfn.BooleanGraph
* Wlfmfn.BooleanMaxterms
* Wlfmfn.BooleanMinimize
* Wlfmfn.BooleanMinterms
* Wlfmfn.BooleanQ
* Wlfmfn.BooleanRegion
* Wlfmfn.BooleanStrings
* Wlfmfn.BooleanTable
* Wlfmfn.BooleanVariables

* Wlfmfn.Booleans:
Booleans
represents the domain of Booleans, as in .
Details
The domain of Booleans is taken to consist of the symbols True and False.
evaluates immediately if x is explicitly True or False.
Simplify[expr?Booleans] can be used to try to determine whether an expression is Boolean, with no undetermined variables.
Booleans is output in TraditionalForm as .
[http://reference.wolfram.com/language/ref/Booleans.html]

* Wlfmfn.BorderDimensions
* Wlfmfn.BorelTannerDistribution
* Wlfmfn.Bottom
* Wlfmfn.BottomHatTransform
* Wlfmfn.BoundaryDiscretizeGraphics
* Wlfmfn.BoundaryDiscretizeRegion
* Wlfmfn.BoundaryMesh
* Wlfmfn.BoundaryMeshRegion
* Wlfmfn.BoundaryMeshRegionQ
* Wlfmfn.BoundaryStyle
* Wlfmfn.BoundedRegionQ

* Wlfmfn.BoxData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.BoxMatrix

* Wlfmfn.BoxObject:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.BoxRatios
* Wlfmfn.BoxStyle
* Wlfmfn.BoxWhiskerChart
* Wlfmfn.Boxed
* Wlfmfn.BracketingBar
* Wlfmfn.BrayCurtisDistance
* Wlfmfn.BreadthFirstScan
* Wlfmfn.Break

* Wlfmfn.BridgeData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.BroadcastStationData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Brown
* Wlfmfn.BrownForsytheTest
* Wlfmfn.BrownianBridgeProcess
* Wlfmfn.BubbleChart
* Wlfmfn.BubbleChart3D
* Wlfmfn.BubbleScale
* Wlfmfn.BubbleSizes

* Wlfmfn.BuildingData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.BulletGauge
* Wlfmfn.BusinessDayQ
* Wlfmfn.ButterflyGraph
* Wlfmfn.ButterworthFilterModel
* Wlfmfn.Button
* Wlfmfn.ButtonBar
* Wlfmfn.ButtonBox
* Wlfmfn.ButtonBoxOptions

* Wlfmfn.ButtonData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ButtonFunction
* Wlfmfn.ButtonMinHeight
* Wlfmfn.ButtonNotebook
* Wlfmfn.ButtonSource
* Wlfmfn.Byte

* Wlfmfn.http://reference.wolfram.com/language/ref/ByteCount.html, ByteCount[expr]
gives the number of bytes used internally by the Wolfram System to store expr.

* Wlfmfn.ByteOrdering

Wlfmfn.C

name::
* McsEngl.Wlfmfn.C@cptIt,

http://reference.wolfram.com/language/ref/.html,
* Wlfmfn.CDF
* Wlfmfn.CDFDeploy
* Wlfmfn.CDFInformation
* Wlfmfn.CDFWavelet
* Wlfmfn.CForm
* Wlfmfn.CMYKColor
* Wlfmfn.CalendarConvert

* Wlfmfn.CalendarData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.CalendarType
* Wlfmfn.CallPacket
* Wlfmfn.CanberraDistance
* Wlfmfn.Cancel
* Wlfmfn.CancelButton
* Wlfmfn.CandlestickChart
* Wlfmfn.CanonicalGraph
* Wlfmfn.CanonicalName
* Wlfmfn.CantorStaircase
* Wlfmfn.Cap
* Wlfmfn.CapForm
* Wlfmfn.CapitalDifferentialD
* Wlfmfn.CarlemanLinearize
* Wlfmfn.CarmichaelLambda

* Wlfmfn.Cases:
Cases[{e1,e2,…},pattern]
gives a list of the that match the pattern.
Cases[{e1,…},pattern?rhs]
gives a list of the values of rhs corresponding to the that match the pattern.
Cases[expr,pattern,levelspec]
gives a list of all parts of expr on levels specified by levelspec that match the pattern.
Cases[expr,pattern?rhs,levelspec]
gives the values of rhs that match the pattern.
Cases[expr,pattern,levelspec,n]
gives the first n parts in expr that match the pattern.
Cases[pattern]
represents an operator form of Cases that can be applied to an expression.
Details and Options
The first argument to Cases need not have head List.
When used on an Association, Cases picks out elements according to their values.
Cases[expr,pattern:>rhs] evaluates rhs only when the pattern is found.
Cases[pattern][list] is equivalent to Cases[list,pattern].
Cases uses standard level specifications:
n  levels through n
Infinity  levels through Infinity
{n}  level n only
{n1,n2}  levels through
The default value for levelspec in Cases is .
A positive level n consists of all parts of expr specified by n indices.
A negative level -n consists of all parts of expr with depth n.
Level consists of numbers, symbols and other objects that do not have subparts.
Level corresponds to the whole expression.
With the option setting Heads->True, Cases looks at heads of expressions, and their parts.
Cases traverses the parts of expr in a depth-first order, with leaves visited before roots.
[http://reference.wolfram.com/language/ref/Cases.html]

* Wlfmfn.Cashflow
* Wlfmfn.Casoratian
* Wlfmfn.Catalan
* Wlfmfn.CatalanNumber
* Wlfmfn.Catch
* Wlfmfn.Catenate
* Wlfmfn.CauchyDistribution
* Wlfmfn.CauchyWindow
* Wlfmfn.CayleyGraph
* Wlfmfn.Ceiling
* Wlfmfn.CelestialSystem

* Wlfmfn.Cell:
Cell[contents]
is the low-level representation of a cell inside a Wolfram System notebook.
Cell[contents,"style"]
represents a cell in the specified style.
Details
Wolfram System notebooks consist of lists of Cell objects.
You can see the form of a cell as an expression by using the Show Expression menu command in the standard Wolfram System front end.
You can access cells in a notebook directly using the front end. You can also access the cells from the kernel using NotebookRead and NotebookWrite, or using Options, and SetOptions on NotebookSelection[obj].
The contents of cells can be the following:
"text"  plain text
TextData[exprs]  general text objects
BoxData[boxes]  formatted Wolfram Language expressions
OutputFormData["itext","otext"]
text as generated by OutputForm
RawData[data]  unformatted expressions
GraphicsData["type",data]  non-expression graphics or sound data
CellGroupData[{cell1,cell2,…},status]  group of cells
StyleData["style"]  sample cell for a particular style
In any given notebook, a collection of possible cell styles is defined, typically with names such as , , , and .
Cells can have many options, including:
Background  the color of the background for the cell
CellFrame  whether to draw a frame around the cell
CellTags  tags for the cell
Editable  whether to allow the contents of the cell to be edited
FontSize  the default size of text in the cell
TextAlignment  how to align text in the cell
[http://reference.wolfram.com/language/ref/Cell.html]

* Wlfmfn.CellAutoOverwrite
* Wlfmfn.CellBaseline
* Wlfmfn.CellBracketOptions
* Wlfmfn.CellChangeTimes
* Wlfmfn.CellContext
* Wlfmfn.CellDingbat
* Wlfmfn.CellDynamicExpression
* Wlfmfn.CellEditDuplicate
* Wlfmfn.CellEpilog
* Wlfmfn.CellEvaluationDuplicate
* Wlfmfn.CellEvaluationFunction
* Wlfmfn.CellEventActions
* Wlfmfn.CellFrame
* Wlfmfn.CellFrameMargins
* Wlfmfn.CellGroup

* Wlfmfn.CellGroupData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.CellGrouping

* Wlfmfn.CellID:
CellID
is an option for Cell that specifies a unique ID number for a cell.
Details
Typically, a CellID will be created automatically by the system for each new cell inserted in a notebook that has the setting CreateCellID->True.
When CellID is managed by the Wolfram System, its value is guaranteed to be unique in a given notebook. It is possible for a CellID to be set by hand, but its uniqueness will no longer be guaranteed.
[http://reference.wolfram.com/language/ref/CellID.html]

* Wlfmfn.CellLabel:
CellLabel
is an option for Cell which gives the label to use for a particular cell.
Details
CellLabel->"" specifies that no label should be used for a cell.
Cell labels are displayed when the setting ShowCellLabel->True is made.
Cell labels are typically generated automatically when cells appear as input or output to the Wolfram Language kernel.
Cell labels are automatically deleted when a cell is modified if CellLabelAutoDelete->True.
[http://reference.wolfram.com/language/ref/CellLabel.html]

* Wlfmfn.CellLabelAutoDelete:
CellLabelAutoDelete
is an option for Cell which specifies whether a label for the cell should be automatically deleted if the contents of the cell are modified or the notebook containing the cell is saved in a file.
Details
Cell styles that represent Wolfram System input and output typically have CellLabelAutoDelete->True.
CellLabelAutoDelete is more often set for styles of cells than for individual cells.
[http://reference.wolfram.com/language/ref/CellLabelAutoDelete.html]

* Wlfmfn.CellMargins:
CellMargins
is an option for Cell that specifies the absolute margins in printer's points to leave around a cell.
Details
Possible settings are:
m  the same margins on all sides
{{left,right},{bottom,top}}  different margins on different sides
The left margin gives the distance from the edge of the window to the left-hand side of the cell.
The right margin gives the distance from the inside of the cell bracket to the right-hand side of the cell.
The left and right margins can be set interactively in the front end using Show Ruler.
The top and bottom margins determine the amount of space to leave above and below the cell.
The margins go to the edge of any cell frame that is present.
Cell dingbats are placed to the left of the left-hand side of the cell, and extend into the left cell margin.
[http://reference.wolfram.com/language/ref/CellMargins.html]

* Wlfmfn.CellObject:
CellObject[id]
is an object that represents a cell in an open notebook in the front end.
Details
CellObject expressions are typically generated using Cells, SelectedCells, or EvaluationCell.
id is an integer that gives a serial number for the cell that is unique to this front end session.
In StandardForm, cell objects are printed so as to indicate the current style of the cell. Clicking on the cell object will act as a hyperlink that targets that cell.
CellObject is useful for designating target cells for various notebook operations without altering the state of the current selection in the notebook.
Some notebook manipulation functions, such as NotebookRead and NotebookDelete, which operate on a notebook's current selection, also support forms using CellObject.
Any function that takes a NotebookSelection can also take a CellObject or a list of CellObject expressions.
If the cell targeted by CellObject is deleted or if its container notebook is closed, the CellObject will no longer be valid for use. Functions that attempt to use it will generally return $Failed.
A CellObject is permanently invalid after a notebook is closed or the cell is deleted, even if that notebook is reopened or the cell is pasted into the notebook again. Any changes that only affect the contents of the cell without deleting the cell entirely will leave the CellObject intact.
[http://reference.wolfram.com/language/ref/CellObject.html]

* Wlfmfn.CellOpen:
CellOpen
is an option for Cell that specifies whether the contents of a cell should be explicitly displayed.
Details
With CellOpen->False, a small cell bracket is still shown to indicate the presence of a cell.
Cells that are not open can still be evaluated automatically if you set InitializationCell->True.
[http://reference.wolfram.com/language/ref/CellOpen.html]

* Wlfmfn.CellPrint:

* Wlfmfn.CellProlog:

* Wlfmfn.CellStyle:

* Wlfmfn.CellTags:

* Wlfmfn.Cells:
Cells[]
returns a list of CellObject expressions corresponding to cells in the current notebook.
Cells[obj]
returns the list of CellObject expressions in obj.
Cells[NotebookSelection[notebook]]
returns the list of CellObject expressions for currently selected cells.
Details and Options
Cells always returns a list if the value of obj is valid. Otherwise, it returns $Failed.
obj may be a NotebookObject or a CellObject. If obj is a CellObject, then Cells returns the inline cells in the specified cell.
Cells can further refine the list of returned CellObject expressions by specifying one or more of the following options.
CellID  cell IDs to match
CellLabel  In/Out label strings to match
CellStyle  named cell styles to match
CellTags  cell tags to match
Evaluator  cells that match the specified evaluator
GeneratedCell  match only generated output cells if True, or only non-generated cells if False
When multiple options are passed to Cells, the return result will only include CellObject expressions matching cells that meet all conditions.
If a list of values is given to any single option of Cells, then it will match any of the given values.
If the selection in a notebook is inside of a cell, then Cells[NotebookSelection[notebook]] returns the cell containing the selection.
[http://reference.wolfram.com/language/ref/Cells.html]

* Wlfmfn.CellularAutomaton
* Wlfmfn.CensoredDistribution
* Wlfmfn.Censoring
* Wlfmfn.Center
* Wlfmfn.CenterDot
* Wlfmfn.CentralMoment
* Wlfmfn.CentralMomentGeneratingFunction
* Wlfmfn.ChampernowneNumber
* Wlfmfn.ChanVeseBinarize

* Wlfmfn.http://reference.wolfram.com/language/ref/Character.html:
Character
represents a single character in Read.
[http://reference.wolfram.com/language/ref/Character.html]

* Wlfmfn.http://reference.wolfram.com/language/ref/CharacterEncoding.html:
CharacterEncoding
is an option for input and output functions which specifies what raw character encoding should be used.
Details
The default is CharacterEncoding:>$CharacterEncoding.
The possible settings for CharacterEncoding are the same as for $CharacterEncoding.
$CharacterEncodings gives a list of all installed character encodings.
[http://reference.wolfram.com/language/ref/CharacterEncoding.html]

* Wlfmfn.CharacterRange:
CharacterRange["c1","c2"]
yields a list of the characters in the range from to .
Details
CharacterRange["a","z"] yields the English alphabet.
CharacterRange["c1","c2"] gives the list of characters with character codes from ToCharacterCode["c1"] to ToCharacterCode["c2"].
CharacterRange["b","a"] gives .
[http://reference.wolfram.com/language/ref/CharacterRange.html]

* Wlfmfn.CharacteristicFunction
* Wlfmfn.CharacteristicPolynomial

* Wlfmfn.Characters:
Characters["string"]
gives a list of the characters in a string.
Details
Each character is given as a length one string.
Characters handles both ordinary and special characters.
Characters has attribute Listable.
[http://reference.wolfram.com/language/ref/Characters.html]

* Wlfmfn.ChartBaseStyle
* Wlfmfn.ChartElementFunction
* Wlfmfn.ChartElements
* Wlfmfn.ChartLabels
* Wlfmfn.ChartLayout
* Wlfmfn.ChartLegends
* Wlfmfn.ChartStyle
* Wlfmfn.Chebyshev1FilterModel
* Wlfmfn.Chebyshev2FilterModel
* Wlfmfn.ChebyshevT
* Wlfmfn.ChebyshevU

* Wlfmfn.Check:
Check[expr,failexpr]
evaluates expr, and returns the result, unless messages were generated, in which case it evaluates and returns failexpr.
Check[expr,failexpr,{s1::t1,s2::t2,…}]
checks only for the specified messages.
Check[expr,failexpr,"name"]
checks only for messages in the named message group.
Details
Check has attribute HoldAll.
Check does not test for messages that have been switched off using Off, or by uses of Quiet that occur inside it.
The operation of Check is not affected by being enclosed inside Quiet.
In Check[expr,failexpr,"name"], possible named message groups are given by $MessageGroups.
Explicit message names of the form can be mixed with named message groups.
[http://reference.wolfram.com/language/ref/Check.html]

* Wlfmfn.CheckAbort

* Wlfmfn.Checkbox

* Wlfmfn.CheckboxBar

* Wlfmfn.CheckboxBoxOptions

* Wlfmfn.http://reference.wolfram.com/language/ref/ChemicalData.html:
ChemicalData["name","property"]
gives the value of the specified property for the chemical .
ChemicalData["name"]
gives a structure diagram for the chemical with the specified name.
ChemicalData["class"]
gives a list of available chemicals in the specified class.
[http://reference.wolfram.com/language/ref/Characters.html]

* Wlfmfn.ChessboardDistance
* Wlfmfn.ChiDistribution
* Wlfmfn.ChiSquareDistribution
* Wlfmfn.ChineseRemainder
* Wlfmfn.ChoiceButtons
* Wlfmfn.ChoiceDialog
* Wlfmfn.CholeskyDecomposition
* Wlfmfn.Chop
* Wlfmfn.ChromaticPolynomial
* Wlfmfn.ChromaticityPlot
* Wlfmfn.ChromaticityPlot3D
* Wlfmfn.Circle
* Wlfmfn.CircleDot
* Wlfmfn.CircleMinus
* Wlfmfn.CirclePlus
* Wlfmfn.CircleTimes
* Wlfmfn.CirculantGraph
* Wlfmfn.Circumsphere

* Wlfmfn.CityData:
CityData["name","property"]
gives the value of the specified property for the city with the specified name.
CityData["name"]
gives a list of the full specifications of cities whose names are consistent with name.
Details
The full specification of a city is , where is a state, province or other administrative division.
Names of cities, regions, and countries are given in standard forms, such as , , and .
CityData["city"] gives a list of all available cities worldwide that use the name , sorted in order of decreasing population.
CityData[{"city","country"}] gives the full specifications for all available cities in the specified country that use the name . The results are sorted in order of decreasing population.
CityData[{"city","country"},"property"] gives the value of for the city with the largest population in the given country that has the specified name.
CityData[{"city","region","country"},"property"] gives the value of for the particular city represented by the full city specification .
If there is more than one city with a given name in a particular region and country, the standard name for that city will contain additional identifying information, such as a county name.
CityData[{All,"region","country"}] gives a list of all available cities in the specified region of a country, sorted in order of decreasing population.
CityData[{Large,"region","country"}] gives a list of all large cities in the specified region. Large cities are typically defined as having populations above 100,000.
CityData[{All,"country"}] and CityData[{Large,"country"}] give all available cities and all large cities, respectively, in the specified country.
CityData[] or CityData[All] gives a list of all available cities in the world.
Typical properties for cities include:
"Coordinates"  latitude, longitude for the city center
"Elevation"  elevation in meters of the city center
"Latitude"  latitude for the city center
"LocationLink"  URI for a map centered on the city
"Longitude"  longitude for the city center
"Population"  estimated total ordinary population
"TimeZone"  current time zone relative to UTC
Names and identification-related properties include:
"AlternateNames"  alternate names
"Country"  country in which the city lies
"FullName"  primary full English name (e.g. )
"Name"  primary short English name (e.g. )
"Region"  state, province, or other administrative division
"RegionName"  English or local name for region
CityData["name","property","ann"] gives various annotations associated with a property. Typical annotations include:
"Date"  date to which the data refers
"Description"  the description of the property
"Note"  special note about the property given
"Units"  units in which the value is given
"UnitsName"  English name for the units used
"UnitsNotation"  notation for the units used
"UnitsStandardName"  Wolfram Language standard name for the units used
[http://reference.wolfram.com/language/ref/CityData.html]

* Wlfmfn.ClassPriors:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ClassifierFunction:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ClassifierInformation:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ClassifierMeasurements:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Classify:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Clear:
* wlopr.sblDot:
x=.or Clear[x]  remove any value assigned to x
[http://reference.wolfram.com/language/tutorial/DefiningVariables.html]
===
Clear[symbol1,symbol2,…]
clears values and definitions for the symboli.
Clear["form1","form2",…]
clears values and definitions for all symbols whose names match any of the string patterns formi.
Details
Clear does not clear attributes, messages, or defaults associated with symbols.
Clear allows abbreviated string patterns containing the following metacharacters:
*  zero or more characters
@  one or more characters, excluding uppercase letters
\\*, etc.  literal *, etc.
Clear["context`*"] clears all symbols in a particular context.
Clear is HoldAll.
Clear does not affect symbols with the attribute Protected.
[http://reference.wolfram.com/language/ref/Clear.html]

* Wlfmfn.ClearAll:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ClearAttributes:
ClearAttributes[s,attr]
removes attr from the list of attributes of the symbol s.
Details
ClearAttributes modifies Attributes[s].
ClearAttributes[s,{attr1,attr2,…}] removes several attributes at a time.
ClearAttributes[{s1,s2,…},attrs] removes attributes from several symbols at a time.
ClearAttributes is HoldFirst.
ClearAttributes does not affect symbols with the attribute Locked.
[http://reference.wolfram.com/language/ref/ClearAttributes.html]

* Wlfmfn.ClearSystemCache:
ClearSystemCache[]
clears internal system caches of stored results.
Details
ClearSystemCache can be useful in generating worst-case timing results independent of previous computations.
ClearSystemCache["Numeric"] clears only caches of numeric results.
ClearSystemCache["Symbolic"] clears only caches of symbolic results.
[http://reference.wolfram.com/language/ref/ClearSystemCache.html]

* Wlfmfn.ClebschGordan:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ClickPane:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Clip:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ClipPlanes:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ClipPlanesStyle:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ClipRange:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ClippingStyle:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Clock:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ClockGauge:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Close:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.CloseKernels:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ClosenessCentrality:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Closing:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.CloudAccountData:
CloudAccountData[]
gives data associated with the cloud account currently being used.
CloudAccountData["prop"]
gives the property prop associated with the cloud account being used.
Details
CloudAccountData[] gives an association containing elements for each property.
Basic properties supported include:
"Products"  products activated for this account
"CloudStorage"  total cloud storage allocated for this account
"CloudStorageUsed"  cloud storage currently used by this account
"CloudStorageAvailable"  cloud storage currently free for use by this account
"CloudCreditsAvailable"  total cloud credits currently available
"WolframAlphaCallsAvailable"  total Wolfram|Alpha calls currently available
The setting for is a list with an association for each product with elements including:
"Product"  name of the product
"Plan"  name of the purchase or usage plan
"StartDate"  start date for this product
"EndDate"  end date (if any) for this product
"NextBillingDate"  date when next billing is due for this product
"CloudStoragePoolable"  cloud storage contributed to the pool by this product
"CloudCreditsRecurring"  recurring cloud credits contributed by this product
"CloudCreditsPurchasingAllowed"  whether additional cloud credits can be purchased
"WolframAlphaCallsRecurring"  recurring Wolfram|Alpha calls contributed by this product
"DeveloperSeats"  number of developer seats allowed for this product
"TechnicalSupportType"  what type of technical support is provided for this product
"FileSizeLimit"  maximum file size this product can put in the cloud
"SessionEvaluationTimeLimit"  maximum time for an evaluation in an interactive session
"SessionMemoryLimit"  maximum memory for evaluation in an interactive session
"DeployedEvaluationTimeLimit"  maximum evaluation time for APIs, forms, etc.
"DeployedMemoryLimit"  maximum memory for evaluations in APIs, forms, etc.
"ScheduledTaskEvaluationTimeLimit"  maximum evaluation time for a scheduled task
"ScheduledTaskMemoryLimit"  maximum memory for a scheduled task
[http://reference.wolfram.com/language/ref/CloudAccountData.html]

* Wlfmfn.CloudConnect:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.CloudDeploy:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.CloudDirectory:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.CloudDisconnect:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.CloudEvaluate:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.CloudExport:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.CloudFunction:
CloudFunction[fun]
represents a pure function that evaluates in the cloud.
CloudFunction[CloudObject[…]]
represents a function that applies the contents of the specified cloud object.
Details
CloudFunction[fun][args] evaluates args locally, then evaluates in the cloud, and returns the result.
CloudFunction[CloudObject[…]][args] works only if the content of the CloudObject is a Wolfram Language expression.
[http://reference.wolfram.com/language/ref/CloudFunction.html]

* Wlfmfn.CloudGet:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.CloudImport:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.CloudObject:
CloudObject[]
represents a new anonymous cloud object.
CloudObject["http://…"], CloudObject["https://…"]
represents a cloud object with a given URI.
CloudObject["user:user/path"]
represents a cloud object of a given user with a given path.
CloudObject["/abspath"]
represents a cloud object of the currently authenticated user at an absolute path.
CloudObject["relpath"]
represents a cloud object of the currently authenticated user at a relative path.
CloudObject["relpath",cbase]
represents a cloud object with a path relative to the base cbase.
Details and Options
Absolute paths are resolved with respect to $CloudRootDirectory. Relative paths are resolved with respect to CloudDirectory.
New anonymous cloud objects are created in the cloud defined by $CloudBase.
CloudObject allows the following options:
IconRules  {}  icons for the object in different deployments
MetaInformation  {}  rules giving meta-information
Permissions  $Permissions  permissions for access etc.
Options[CloudObject[…],…] gives the current options of a CloudObject. SetOptions can be used to reset them.
[http://reference.wolfram.com/language/ref/CloudObject.html]

* Wlfmfn.CloudObjects:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.CloudPut:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.CloudSave:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.CloudSymbol:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ClusteringComponents
* Wlfmfn.CodeAssistOptions
* Wlfmfn.Coefficient
* Wlfmfn.CoefficientArrays

* Wlfmfn.CoefficientList:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.CoefficientRules
* Wlfmfn.CoifletWavelet
* Wlfmfn.Collect
* Wlfmfn.Colon
* Wlfmfn.ColorCombine
* Wlfmfn.ColorConvert
* Wlfmfn.ColorCoverage

* Wlfmfn.ColorData:
[http://reference.wolfram.com/language/ref/ColorData.html]

* Wlfmfn.ColorDataFunction
* Wlfmfn.ColorDistance
* Wlfmfn.ColorFunction
* Wlfmfn.ColorFunctionScaling
* Wlfmfn.ColorNegate

* Wlfmfn.ColorProfileData:
[http://reference.wolfram.com/language/ref/ColorProfileData.html]

* Wlfmfn.ColorQ
* Wlfmfn.ColorQuantize
* Wlfmfn.ColorReplace
* Wlfmfn.ColorRules
* Wlfmfn.ColorSeparate
* Wlfmfn.ColorSetter
* Wlfmfn.ColorSetterBoxOptions
* Wlfmfn.ColorSlider
* Wlfmfn.ColorSpace
* Wlfmfn.Colorize
* Wlfmfn.Column
* Wlfmfn.ColumnAlignments
* Wlfmfn.ColumnLines
* Wlfmfn.ColumnSpacings
* Wlfmfn.ColumnWidths
* Wlfmfn.ColumnsEqual
* Wlfmfn.CombinerFunction

* Wlfmfn.CometData:
[http://reference.wolfram.com/language/ref/CometData.html]

* Wlfmfn.CommonName:
CommonName[entity]
gives the common name for the entity specified by entity.
CommonName[{entity1,…,entityn}]
gives the common name for through .
Details
For CommonName[entity], entity can be an Entity, EntityClass, EntityProperty, or EntityPropertyClass expression.
CommonName[entity] will look up the common name from the online Wolfram Knowledgebase or from the system cache.
[http://reference.wolfram.com/language/ref/CommonName.html]

* Wlfmfn.CommonUnits
* Wlfmfn.Commonest
* Wlfmfn.CommonestFilter
* Wlfmfn.CommunityBoundaryStyle
* Wlfmfn.CommunityGraphPlot
* Wlfmfn.CommunityLabels
* Wlfmfn.CommunityRegionStyle

* Wlfmfn.CompanyData:
[http://reference.wolfram.com/language/ref/.html]
* Wlfmfn.CompatibleUnitQ
* Wlfmfn.CompilationOptions
* Wlfmfn.CompilationTarget

* Wlfmfn.Compile:
Compile[{x1,x2,…},expr]
creates a compiled function that evaluates expr assuming numerical values of the .
Compile[{{x1,t1},…},expr]
assumes that is of a type that matches .
Compile[{{x1,t1,n1},…},expr]
assumes that is a rank array of objects, each of a type that matches .
Compile[vars,expr,{{p1,pt1},…}]
assumes that subexpressions in expr that match are of types that match .
Details and Options
The types handled by Compile are:
_Integer  machine-size integer
_Real  machine-precision approximate real number (default)
_Complex  machine-precision approximate complex number
True | False  logical variable
Nested lists given as input to a compiled function must be full arrays of numbers.
Compile handles numerical functions, matrix operations, procedural programming constructs, list manipulation functions, and functional programming constructs, etc.
Compile generates a CompiledFunction object.
Compiled code does not handle numerical precision and local variables in the same way as ordinary Wolfram Language code.
If a compiled function cannot be evaluated with particular arguments using compiled code, ordinary Wolfram Language code is used instead.
Ordinary Wolfram Language code can be called from within compiled code. Results obtained from the Wolfram Language code are assumed to be approximate real numbers, unless specified otherwise by the third argument of Compile.
The number of times and the order in which objects are evaluated by Compile may be different from ordinary Wolfram Language code.
Compile has attribute HoldAll, and does not by default do any evaluation before compilation.
You can use Compile[…,Evaluate[expr]] to specify that expr should be evaluated symbolically before compilation.
The following options can be given:
CompilationOptions  Automatic  options for the compilation process
CompilationTarget  $CompilationTarget  the target runtime for code generation
Parallelization  Automatic  parallel controls for compiled function execution
RuntimeAttributes  {}  evaluation attributes for the compiled function
RuntimeOptions  Automatic  runtime options for the compiled function
[http://reference.wolfram.com/language/ref/Compile.html]

* Wlfmfn.Compiled

* Wlfmfn.CompiledFunction:
CompiledFunction[args…]
represents compiled code for evaluating a compiled function.
Details
Compile generates a CompiledFunction object that can be executed by applying it to appropriate arguments.
CompiledFunction objects that are constructed explicitly can also be executed. Basic consistency checks are done when such objects are first evaluated by the Wolfram Language.
The code in a CompiledFunction object is based on an idealized register machine.
A CompiledFunction object can additionally refer to natively compiled code.
[http://reference.wolfram.com/language/ref/CompiledFunction.html]

* Wlfmfn.Complement
* Wlfmfn.CompleteGraph
* Wlfmfn.CompleteGraphQ
* Wlfmfn.CompleteKaryTree
* Wlfmfn.Complex
* Wlfmfn.ComplexExpand
* Wlfmfn.ComplexInfinity
* Wlfmfn.Complexes
* Wlfmfn.ComplexityFunction
* Wlfmfn.ComponentMeasurements

* Wlfmfn.ComposeList:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ComposeSeries
* Wlfmfn.CompositeQ
* Wlfmfn.Composition
* Wlfmfn.CompoundExpression
* Wlfmfn.CompoundPoissonDistribution
* Wlfmfn.CompoundPoissonProcess
* Wlfmfn.CompoundRenewalProcess
* Wlfmfn.Compress

* Wlfmfn.Condition:
* wlopr.Condition, wlopr.sblSlashSemicolon,
pat /; test
is a pattern which matches only if the evaluation of test yields True.
lhs :> rhs /; test
represents a rule which applies only if the evaluation of test yields True.
lhs := rhs /; test
is a definition to be used only if test yields True.
Details
All pattern variables used in test must also appear in patt.
lhs:=Module[{vars},rhs/;test] allows local variables to be shared between test and rhs. You can use the same construction with Block and With. »
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ConditionalExpression:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Conditioned:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Cone
* Wlfmfn.ConfidenceLevel
* Wlfmfn.ConfidenceRange
* Wlfmfn.ConfidenceTransform
* Wlfmfn.ConformImages
* Wlfmfn.Congruent
* Wlfmfn.ConicHullRegion

* Wlfmfn.Conjugate:
Conjugate[z]
or z? gives the complex conjugate of the complex number z.
Details
Mathematical function, suitable for both symbolic and numerical manipulation.
can be entered as EsccoEsc, EscconjEsc, or \[Conjugate].
Conjugate automatically threads over lists.
[http://reference.wolfram.com/language/ref/Conjugate.html]

* Wlfmfn.ConjugateTranspose:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Conjunction:
Conjunction[expr,{a1,a2,...}]
gives the conjunction of expr over all choices of the Boolean variables .
Details
Conjunction[expr,{a1,a2,…}] effectively applies And to the results of substituting all possible combinations of True and False for the in expr.
Conjunction gives a resolved form of .
Conjunction is to And what Product is to Times.
[http://reference.wolfram.com/language/ref/Conjunction.html]

* Wlfmfn.ConnectLibraryCallbackFunction
* Wlfmfn.ConnectedComponents
* Wlfmfn.ConnectedGraphQ
* Wlfmfn.ConnectedMeshComponents
* Wlfmfn.ConnesWindow
* Wlfmfn.ConoverTest
* Wlfmfn.Constant
* Wlfmfn.ConstantArray
* Wlfmfn.ConstantImage
* Wlfmfn.ConstantRegionQ
* Wlfmfn.Constants

* Wlfmfn.ConstellationData:
[http://reference.wolfram.com/language/ref/ConstellationData.html]

* Wlfmfn.ContentPadding:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ContentSelectable:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ContentSize:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Context:
Context[]
gives the current context.
Context[symbol]
gives the context in which a symbol appears.
Details
The current context is the value of $Context#ql:wls.sbldlrcontext#.
[http://reference.wolfram.com/language/ref/Context.html]

* Wlfmfn.ContextToFileName:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Contexts:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Continue:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ContinuedFraction:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ContinuedFractionK:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ContinuousAction:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ContinuousMarkovProcess:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ContinuousTimeModelQ:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ContinuousWaveletData:
[http://reference.wolfram.com/language/ref/ContinuousWaveletData.html]

* Wlfmfn.ContinuousWaveletTransform
* Wlfmfn.ContourDetect
* Wlfmfn.ContourLabels
* Wlfmfn.ContourPlot
* Wlfmfn.ContourPlot3D
* Wlfmfn.ContourShading
* Wlfmfn.ContourStyle
* Wlfmfn.Contours
* Wlfmfn.ContraharmonicMean
* Wlfmfn.Control
* Wlfmfn.ControlActive
* Wlfmfn.ControlPlacement
* Wlfmfn.ControlType
* Wlfmfn.ControllabilityGramian
* Wlfmfn.ControllabilityMatrix
* Wlfmfn.ControllableDecomposition
* Wlfmfn.ControllableModelQ
* Wlfmfn.ControllerInformation
* Wlfmfn.ControllerLinking
* Wlfmfn.ControllerManipulate
* Wlfmfn.ControllerMethod
* Wlfmfn.ControllerPath
* Wlfmfn.ControllerState
* Wlfmfn.ControlsRendering
* Wlfmfn.Convergents
* Wlfmfn.ConversionRules
* Wlfmfn.ConvexHullMesh
* Wlfmfn.Convolve
* Wlfmfn.ConwayGroupCo1
* Wlfmfn.ConwayGroupCo2
* Wlfmfn.ConwayGroupCo3

* Wlfmfn.CoordinateChartData:
[http://reference.wolfram.com/language/ref/Data.html]

* Wlfmfn.CoordinateTransform

* Wlfmfn.CoordinateTransformData:
[http://reference.wolfram.com/language/ref/Data.html]

* Wlfmfn.CoordinatesToolOptions
* Wlfmfn.CoprimeQ
* Wlfmfn.Coproduct
* Wlfmfn.CopulaDistribution
* Wlfmfn.CopyDirectory
* Wlfmfn.CopyFile
* Wlfmfn.CopyToClipboard
* Wlfmfn.Copyable
* Wlfmfn.CornerFilter
* Wlfmfn.CornerNeighbors
* Wlfmfn.Correlation
* Wlfmfn.CorrelationDistance
* Wlfmfn.CorrelationFunction
* Wlfmfn.CorrelationTest
* Wlfmfn.Cos
* Wlfmfn.CosIntegral
* Wlfmfn.Cosh
* Wlfmfn.CoshIntegral
* Wlfmfn.CosineDistance
* Wlfmfn.CosineWindow
* Wlfmfn.Cot
* Wlfmfn.Coth
* Wlfmfn.Count
* Wlfmfn.CountDistinct
* Wlfmfn.CountDistinctBy
* Wlfmfn.CountRoots
* Wlfmfn.CounterBoxOptions

* Wlfmfn.CountryData:
[http://reference.wolfram.com/language/ref/CountryData.html]

* Wlfmfn.Counts
* Wlfmfn.CountsBy
* Wlfmfn.Covariance
* Wlfmfn.CovarianceEstimatorFunction
* Wlfmfn.CovarianceFunction
* Wlfmfn.CoxIngersollRossProcess
* Wlfmfn.CoxModel
* Wlfmfn.CoxModelFit
* Wlfmfn.CoxianDistribution
* Wlfmfn.CramerVonMisesTest
* Wlfmfn.CreateArchive
* Wlfmfn.CreateCellID

* Wlfmfn.CreateDatabin:
CreateDatabin[]
creates a databin in the Wolfram Data Drop and returns the corresponding Databin object.
CreateDatabin[options]
creates a databin with the specified options.
Details
CreateDatabin returns a Databin object with a universally unique ID.
Options can be given as an association or a list. Possible options include:
"Name"  name to assign to the databin
"Class"  predefined class of databin to create
"Interpretation"  specification for how to interpret entries added
"Administrator"  Wolfram ID of the databin administrator
Permissions  permissions for the databin
The setting for the option has the same form as the first argument of APIFunction.
Options[databin] gives the options settings for a databin. SetOptions can be used to reset them.
[http://reference.wolfram.com/language/ref/CreateDatabin.html]

* Wlfmfn.CreateDialog
* Wlfmfn.CreateDirectory
* Wlfmfn.CreateDocument
* Wlfmfn.CreateIntermediateDirectories
* Wlfmfn.CreateManagedLibraryExpression
* Wlfmfn.CreateNotebook
* Wlfmfn.CreatePalette
* Wlfmfn.CreateScheduledTask
* Wlfmfn.CreateTemporary

* Wlfmfn.CreateUUID:
CreateUUID[]
creates a random universally unique UUID string.
CreateUUID["base"]
appends a UUID string to the specified base string.
Details
CreateUUID[] gives a UUID based on a 128-bit number, formatted as 32 hexadecimal digits grouped in the format 8-4-4-4-12.
CreateUUID[] is intended to produce a globally unique string, that will statistically never be repeated.
CreateUUID[] makes uses of detailed local system and session information, as well as absolute time.
CreateUUID[] is intended to generate a random distribution of UUIDs.
Some Wolfram System features depend on assuming the UUIDs will not collide.
[http://reference.wolfram.com/language/ref/CreateUUID.html]

* Wlfmfn.CreateWindow
* Wlfmfn.CriticalSection
* Wlfmfn.CriticalityFailureImportance
* Wlfmfn.CriticalitySuccessImportance
* Wlfmfn.Cross
* Wlfmfn.CrossMatrix
* Wlfmfn.CrossingDetect
* Wlfmfn.Csc
* Wlfmfn.Csch
* Wlfmfn.CubeRoot
* Wlfmfn.Cubics
* Wlfmfn.Cuboid
* Wlfmfn.Cumulant
* Wlfmfn.CumulantGeneratingFunction
* Wlfmfn.Cup
* Wlfmfn.CupCap
* Wlfmfn.Curl

* Wlfmfn.CurrencyConvert:
CurrencyConvert[quantity,target]
attempts to convert the specified currency quantity to the specified target currency.
Details
The target can be a canonical unit or a Quantity expression.
When target is a Quantity, the resulting output will have the same unit as target.
An internet connection is required for conversion between currency units.
CurrencyConvert uses exchange rate information provided by FinancialData for conversion between currency units.
CurrencyConvert uses InflationAdjust for historical currency conversions involving DatedUnit.
CurrencyConvert is Listable.
[http://reference.wolfram.com/language/ref/CurrencyConvert.html]

* Wlfmfn.CurrentImage
* Wlfmfn.CurrentValue
* Wlfmfn.CurvatureFlowFilter
* Wlfmfn.CurveClosed
* Wlfmfn.Cyan
* Wlfmfn.CycleGraph
* Wlfmfn.CycleIndexPolynomial
* Wlfmfn.Cycles
* Wlfmfn.CyclicGroup
* Wlfmfn.Cyclotomic
* Wlfmfn.Cylinder
* Wlfmfn.CylindricalDecomposition

Wlfmfn.D

name::
* McsEngl.Wlfmfn.D@cptIt,

http://reference.wolfram.com/language/ref/.html,

* Wlfmfn.D:
D[f,x]
gives the partial derivative .
D[f,{x,n}]
gives the multiple derivative .
D[f,x,y,…]
differentiates f successively with respect to .
D[f,{{x1,x2,…}}]
for a scalar f gives the vector derivative .
D[f,{array}]
gives a tensor derivative.
Details and Options
D[f,x] can be input as . The character is entered as EscpdEsc or . The variable x is entered as a subscript.
All quantities that do not explicitly depend on the variables given are taken to have zero partial derivative.
D[f,var1,…,NonConstants->{u1,…}] specifies that every implicitly depends on every , so that they do not have zero partial derivative.
D[f,…] threads over lists that appear in f.
D[f,{list}] effectively threads D over each element of list.
D[f,{list,n}] is equivalent to D[f,{list},{list},…] where {list} is repeated n times. If f is a scalar, and list has depth 1, then the result is a tensor of rank n, as in the n^(th) term of the multivariate Taylor series of f.
D[f,{list1},{list2},…] is normally equivalent to First[Outer[D,{f},list1,list2,…]].
If f is a list, then D[f,{list}] effectively threads first over each element of f, and then over each element of list. The result is an array with dimensions Join[Dimensions[f],Dimensions[list]].
Numerical approximations to derivatives can be found using N.
D uses the chain rule to simplify derivatives of unknown functions.
D[f,x,y] can be input as . The character , entered as Esc,Esc, can be used instead of an ordinary comma. It does not display, but is still interpreted just like a comma.
If any of the arguments to D are SparseArray objects, the result will be a SparseArray object. »
[http://reference.wolfram.com/language/ref/D.html]

* Wlfmfn.DGaussianWavelet

* Wlfmfn.DMSList:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.DMSString
* Wlfmfn.DSolve
* Wlfmfn.DSolveValue
* Wlfmfn.DagumDistribution

* Wlfmfn.DamData:
[http://reference.wolfram.com/language/ref/Data.html]

* Wlfmfn.DamerauLevenshteinDistance
* Wlfmfn.Darker
* Wlfmfn.Dashed
* Wlfmfn.Dashing

* Wlfmfn.DataDistribution
* Wlfmfn.DataRange
* Wlfmfn.DataReversed

* Wlfmfn.Databin:
Databin["id"]
represents a databin in the Wolfram Data Drop.
Details
In Databin["id"], id can be a short ID, a complete UUID, or a URL.
The URL for a databin is always of the form datadrop.wolfram.com/.
Databin["id"][request,…] executes an operation on the databin.
Basic requests for retrieving databin content include:
"Data"  default view of data in the databin
"Values"  values for data in the databin
"EventSeries"  event series for data in the databin
"TimeSeries"  time series for data in the databin
"Latest"  the latest entry added, with metadata
"Recent"  recent entries, with metadata
"FullRecords"  all databin entries, with metadata
request,params  make a request with parameters params
Possible parameters params include:
n  most recent n entries
<|key1?val1,…|>  detailed specification
Possible entries in the detailed specification include:
"Count"  total number of entries
"StartIndex"  index of first entry to include
"EndIndex"  index of last entry to include
"StartTime"  time of first entry to include
"EndTime"  time of last entry to include
Databin["id"]["Data"] is equivalent to Get[Databin["id"]].
Databin["id"]["Values"] is equivalent to Values[Databin["id"]].
Requests related to adding data to a databin include:
"Add",data  add data to the databin
"WebForm"  cloud-deployed form for adding data to the databin
Databin["id"]["Add",data] is equivalent to DatabinAdd["id",data].
Databin["id"]["Add",data,"Authorization"->token] includes an authorization token, which must match a token specified when the databin was created.
Databin["id"]["Add",data,"Timestamp"?date] includes a custom time stamp for a databin entry.
Databin identification operations include:
"ShortID"  short ID for the databin
"UUID"  full UUID for the databin
"ShortURL"  short URL for the databin
"URL"  full UUID-based URL for the databin
"Name"  name assigned to the databin
Databin metadata requests include:
"Information"  information about the databin
"Interpretation"  interpretation signature for the databin
"Entries"  number of entries in the databin
"Size"  size of the databin contents
"Keys"  key names in the databin interpretation signature
"LatestDate"  date the latest entry was added
"CreationDate"  date the databin was first created
"ExpirationDate"  date the databin expires
"Class"  class used to create the databin
Databin["id"]["Keys"] is equivalent to Keys[Databin["id"]].
Databin access control operations include:
"Permissions"  permissions for the databin
"Owner"  Wolfram ID of the owner of the databin
"Administrators"  Wolfram IDs of the administrators of the databin
"Creator"  Wolfram ID of the creator of the databin
Databin report generation operations include:
"Report"  report on the databin, given as a local notebook
"WebReport"  report on the databin, given as a cloud notebook
Some operations on a databin may require authentication in the Wolfram Cloud.
The options, such as permissions of a databin, can be found using Options and set using SetOptions.
[http://reference.wolfram.com/language/ref/Databin.html]

* Wlfmfn.DatabinAdd:
DatabinAdd[bin,data]
adds the specified data to a databin.
Details
In DatabinAdd[bin,…], bin can be a Databin object or databin ID.
The data will typically be an association of the form , but can be any expression.
For databins with private write permissions, DatabinAdd requires authentication in the Wolfram Cloud.
[http://reference.wolfram.com/language/ref/DatabinAdd.html]

* Wlfmfn.Databins:
Databins[]
gives a list of databins associated with the currently connected user.
Details
Databins gives a list including bins for which the currently connected user is the creator, owner, or administrator, or a contributor.
[http://reference.wolfram.com/language/ref/Databins.html]

* Wlfmfn.Dataset:
Dataset[data]
represents a structured dataset based on a hierarchy of lists and associations.
Details
Dataset can represent not only full rectangular multidimensional arrays of data, but also arbitrary tree structures, corresponding to data with arbitrary hierarchical structure.
Dataset[…][op1,op2,…] is equivalent to Query[op1,op2,…][Dataset[…]], which applies the sequence of operators at successively deeper levels and yields the resulting Dataset object.
The can be any of the following forms:
All,i,i;;j,"key",Key[…]  part operators
Select[…],MaximalBy[…],…  filtering operators
Counts,Total,Mean,Max,…  aggregation operators
Query[…],{op1,op2,…},…  subquery operators
Function[…],f  arbitrary functions
In Dataset[…][op1,op2,…], the are applied at successively deeper levels in expr, but any given one may be applied either while "descending" into expr or while "ascending" out of it. In general, part specifications and filtering operators are "descending" operators. Aggregation operators, subquery operators, and arbitrary functions are "ascending" operators.
A "descending" operator is applied to corresponding parts of the original dataset, before subsequent operators are applied at deeper levels. Descending operators have the feature that they do not change the structure of deeper levels of the data when applied at a certain level. This ensures that subsequent operators will encounter subexpressions whose structure is identical to the corresponding levels of the original dataset. The simplest descending operator is All, which selects all parts at a given level and therefore leaves the structure of the data at that level unchanged.
An "ascending" operator is applied after all subsequent operators have been applied to deeper levels. Whereas descending operators correspond to the levels of the original data, ascending operators correspond to the levels of the result. Unlike descending operators, ascending operators do not necessarily preserve the structure of the data they operate on. Unless an operator is specifically recognized to be descending, it is assumed to be ascending.
The "descending" part operators specify which elements to take at a level before applying any subsequent operators to deeper levels:
All  apply subsequent operators to each part of a list or association
i;;j  take parts i through j and apply subsequent operators to each part
i  take only part i and apply subsequent operators to it
"key",Key[key]  take value of key in an association and apply subsequent operators to it
Keys  take keys of an association and apply subsequent operators to each key
Values  take values of an association and apply subsequent operators to each value
{part1,part2,…}  take given parts and apply subsequent operators to each part
The "descending" filtering operators specify how to rearrange or filter elements at a level before applying subsequent operators to deeper levels:
Select[test]  take only those parts of a list or association that satisfy test
SelectFirst[test]  take the first part that satisfies test
KeySelect[test]  take those parts of an association whose keys satisfy test
MaximalBy[crit],MinimalBy[crit]  take the parts for which criteria crit is minimal or maximal
SortBy[crit]  sort parts in order of crit
KeySortBy[crit]  sort parts of an association based on their keys, in order of crit
DeleteDuplicatesBy[crit]  take parts that are unique according to crit
DeleteMissing  drop elements with head Missing
The "ascending" aggregation operators combine or summarize the results of applying subsequent operators to deeper levels:
Total  total all quantities in the result
Min,Max  give minimum, maximum quantity in the result
Mean,Median,Quantile,…  give statistical summary of the result
Histogram,ListPlot,…  calculate a visualization on the result
Merge[f]  merge common keys of associations in the result using function f
Catenate  catenate the elements of lists or associations together
Counts  give association that counts occurences of values in the result
CountsBy[crit]  give association that counts occurences of values according to crit
CountDistinct  give number of distinct values in the result
CountDistinctBy[crit]  give number of distinct values in the result according to crit
The "ascending" subquery operators perform a subquery after applying subsequent operators to deeper levels:
Query[…]  perform a subquery on the result
{op1,op2,…}  apply multiple operators at once to the result, yielding a list
op1/* op2/* …  apply , then apply at the same level, etc.
<|key1?op1,key2?op2,…|>  apply multiple operators at once to the result, yielding an association with the given keys
{key1?op1,key2?op2,…}  apply different operators to specific parts in the result
When one or more descending operators are composed with one or more ascending operators (e.g. ), the descending part will be applied, then subsequent operators will be applied to deeper levels, and lastly the ascending part will be applied to the result.
The special descending operator GroupBy[spec] will introduce a new association at the level at which it appears, and can be inserted or removed from an existing query without affecting the behavior of other operators.
Where possible, type inference is used to determine whether operations will succeed. Operations that are guaranteed to fail will result in a Failure object being generated.
When a Dataset operation returns structured data (e.g. a list or association or nested combinations of these), the result will be given in the form of another Dataset object. Otherwise, the result will be given as an ordinary Wolfram Language expression.
Normal can be used to convert any Dataset object to a combination of lists and associations.
[http://reference.wolfram.com/language/ref/Dataset.html]

* Wlfmfn.DateDifference:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.DateFormat:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.DateFunction:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.DateList:
DateList

DateList[]
gives the current local date and time in the form .
DateList[time]
gives a date list corresponding to an AbsoluteTime specification.
DateList[{y,m,d,h,m,s}]
converts a date list to standard normalized form.
DateList["string"]
converts a date string to a date list.
DateList[{"string",{"e1","e2",…}}]
gives the date list obtained by extracting elements from .
Details and Options
DateList[] uses whatever date and time have been set on your computer system. It performs no corrections for time zones, daylight saving time, etc.
DateList[TimeZone->z] gives the date and time inferred for time zone z by assuming that your computer is set for the time zone specified by $TimeZone. »
All values returned by DateList[] are integers, except the number of seconds. The number of seconds is never more accurate than $TimeUnit.
Shorter lists can be used in DateList[{y,m,…}]: {y} is equivalent to , to , etc.
Values of m, d, h, m, s outside their normal ranges are appropriately reduced. Noninteger values of d, h, m, s can also be used. »
You can compare two lists returned by DateList using Order. »
In the form DateList[{"string",{"e1","e2",…}}] the can be , , , , , , , , , , , , or .
DateList[{"string",{"e1","e2",…}}] uses the to fill in elements of . Those not filled in are taken to have default values , where is the current year. »
In DateList[{"string",{"e1","e2",…}}], the are extracted from in the order given, and can be separated by any non-alphanumeric characters. »
DateList[{"string",{"e1","sep12","e2","sep23",…}}] extracts elements using the explicit separators specified.
[http://reference.wolfram.com/language/ref/DateList.html]

* Wlfmfn.DateListLogPlot:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.DateListPlot:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.DateObject:
* entity: time-computation#ql:wl'time_computation#,
===
DateObject[]
represents the current local date.
DateObject[date,time]
represents the specified date list and TimeObject time.
DateObject[time]
gives a date object corresponding to an AbsoluteTime specification.
DateObject[{y,m,d,h,m,s}]
represents a date object of standard normalized form.
DateObject["string"]
converts a date string to a date object.
Details and Options
DateObject[] uses whatever date and time have been set on your computer system by default.
DateObject[{y,m,d,h,m,s}] is canonicalized to DateObject[{y,m,d},TimeObject[{h,m,s}], where values of m, d, h, m, s outside their normal ranges are appropriately reduced.
Shorter lists can be used in DateObject[{y,m,…}], which represents the date to whatever accuracy is specified: {y} is not treated as being equivalent to .
DateObject allows addition and subtraction of time quantities.
Subtracting two DateObject constructs yields a time quantity.
The following options can be given:
CalendarType  Automatic  calendar system being used
DateFormat  $DateStringFormat  format used to display date
TimeZone  $TimeZone  time zone being used
Possible CalendarType specifications are: Automatic, , , , and .
TimeZone specifications should be a numerical offset from GMT.
With a typical value for $DateStringFormat, the display of DateObject[{y,m,d,h,m,s}] will truncate fractional seconds.
[http://reference.wolfram.com/language/ref/DateObject.html]

* Wlfmfn.DateObjectQ:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.DatePattern:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.DatePlus:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.DateRange:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.DateString:
DateString[]
gives a string representing the complete current local date and time.
DateString["elem"]
gives the specified element or format for date and time.
DateString[{"elem1","elem2",…}]
concatenates the specified elements in the order given.
DateString[{y,m,d,h,m,s}]
gives a string corresponding to a DateList specification.
DateString[time]
gives a string corresponding to an AbsoluteTime specification.
DateString[spec,elems]
gives elements elems of the date or time specification spec.
Details and Options
DateString[] by default gives its output in the form specified by $DateStringFormat.
The following output elements can be given:
"Date"  full date
"DateShort"  full date, with short day and month names
"Time"  full time
"DateTime"  full date and time
"DateTimeShort"  full date and time, with short names
"Year"  full year (e.g. 2005)
"YearShort"  2?digit year (e.g. 05)
"QuarterName"  quarter of year (e.g. "Quarter 1")
"QuarterNameShort"  quarter of year in short form (e.g. "Q1")
"Quarter"  quarter number (e.g. 1)
"MonthName"  month name (e.g. "August")
"MonthNameShort"  month name in short form (e.g. "Aug")
"MonthNameInitial"  first letter of month name (e.g. "A")
"Month"  2?digit month number (e.g. 08)
"MonthShort"  1? or 2?digit month number (e.g. 8)
"DayName"  day of the week (e.g. "Wednesday")
"DayNameShort"  day of the week in short form (e.g. "Wed")
"DayNameInitial"  first letter of day name (e.g. "W")
"Day"  2?digit day of the month (e.g. 09)
"DayShort"  1? or 2?digit day of the month (e.g. 9 or 29)
"Hour"  2?digit hour based on system preferences
"Hour12"  2?digit hour on 12?hour clock (e.g. 07)
"Hour24"  2?digit hour on 24?hour clock (e.g. 19)
"HourShort"  1? or 2?digit hour based on system preferences
"Hour12Short"  1? or 2?digit hour on 12?hour clock (e.g. 7)
"Hour24Short"  1? or 2?digit hour on 24?hour clock (e.g. 7, 19)
"AMPM"  AM or PM
"AMPMLowerCase"  am or pm
"Minute"  2?digit minute (e.g. 05)
"MinuteShort"  1? or 2?digit minute (e.g. 5 or 35)
"Second"  2?digit seconds
"SecondShort"  1? or 2?digit seconds
"SecondExact"  seconds including fractions
"Millisecond"  3?digit milliseconds
"MillisecondShort"  1?, 2?, or 3?digit milliseconds
Any other string given in the list of elements is concatenated literally in the output string.
With a typical value for $DateStringFormat, DateString[{y,m,d,h,m,s}] will truncate fractional seconds.
Shorter lists can be used in DateString[{y,m,…}]: {y} is equivalent to , to , etc.
Values of m, d, h, m, s outside their normal ranges are appropriately reduced. Non-integer values of d, h, m, s can also be used. »
In DateString[spec,elems]the following date and time specifications can be given as spec:
time  absolute time specification
{y,m,d,h,m,s}  DateList specification
"string"  DateString output
{"string",{"e1","e2",…}}  date string formed from specific elements
In the form DateString[{"string",{"e1","e2",…},…] the can be , , , , , , , , , , , or .
DateString[{"string",{"e1","e2",…},…] uses the to fill in elements of . Those not filled in are taken to have default values , where is the current year. »
In DateString[{"string",{"e1","e2",…},…], the are extracted from in the order given, and can be separated by any non-alphanumeric characters. »
DateString[{"string",{"e1","sep12","e2","sep23",…},…] extracts elements using the explicit separators specified. »
In DateString[spec,elems] the time and date corresponding to spec are by default assumed to be in the time zone specified by $TimeZone, unless spec explicitly specifies another time zone.
DateString[spec,elems,TimeZone->z] gives output converted to time zone z.
DateString[] uses whatever date and time have been set on your computer system. It performs no corrections for time zones, daylight saving time, etc.
DateString[TimeZone -> z] gives the date and time inferred for time zone z by assuming that your computer is set for the time zone specified by $TimeZone. »
[http://reference.wolfram.com/language/ref/DateString.html]

* Wlfmfn.DateTicksFormat:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.DateValue:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.DatedUnit:
DatedUnit[unit,date]
represent the specified unit at a specific date.
Details
DatedUnit allows you to associate a specific date directly with a specific unit, for use in functions like InflationAdjust.
unit specifications should be a single canonical unit string like or .
date can be specified as either year or DateList.
[http://reference.wolfram.com/language/ref/DatedUnit.html]

* Wlfmfn.DaubechiesWavelet
* Wlfmfn.DavisDistribution
* Wlfmfn.DawsonF
* Wlfmfn.DayCount
* Wlfmfn.DayCountConvention
* Wlfmfn.DayHemisphere
* Wlfmfn.DayMatchQ
* Wlfmfn.DayName
* Wlfmfn.DayNightTerminator
* Wlfmfn.DayPlus
* Wlfmfn.DayRange
* Wlfmfn.DayRound
* Wlfmfn.DaylightQ
* Wlfmfn.DeBruijnGraph
* Wlfmfn.DeclarePackage
* Wlfmfn.Decompose
* Wlfmfn.Decrement
* Wlfmfn.DedekindEta

* Wlfmfn.DeepSpaceProbeData:
[http://reference.wolfram.com/language/ref/Data.html]

* Wlfmfn.Default
* Wlfmfn.DefaultAxesStyle
* Wlfmfn.DefaultBaseStyle
* Wlfmfn.DefaultBoxStyle
* Wlfmfn.DefaultButton
* Wlfmfn.DefaultDuplicateCellStyle
* Wlfmfn.DefaultDuration
* Wlfmfn.DefaultElement
* Wlfmfn.DefaultFaceGridsStyle
* Wlfmfn.DefaultFieldHintStyle
* Wlfmfn.DefaultFrameStyle
* Wlfmfn.DefaultFrameTicksStyle
* Wlfmfn.DefaultGridLinesStyle
* Wlfmfn.DefaultLabelStyle
* Wlfmfn.DefaultMenuStyle
* Wlfmfn.DefaultNewCellStyle
* Wlfmfn.DefaultOptions
* Wlfmfn.DefaultTicksStyle
* Wlfmfn.DefaultTooltipStyle
* Wlfmfn.Defer
* Wlfmfn.DefineInputStreamMethod
* Wlfmfn.DefineOutputStreamMethod

* Wlfmfn.Definition:
Definition[symbol]
prints as the definitions given for a symbol.
Details
Definition has attribute HoldAll.
Definition[symbol] prints as all values and attributes defined for symbol.
?s uses Definition.
Definition does not show rules associated with symbols that have attribute ReadProtected.
[http://reference.wolfram.com/language/ref/Definition.html]

* Wlfmfn.Degree:
Degree
gives the number of radians in one degree. It has a numerical value of .
Details
You can multiply by Degree to convert from degrees to radians, so that represents 30°.
Degree can be entered in StandardForm and InputForm as , EscdegEsc or \[Degree].
Degree is printed in StandardForm as .
[http://reference.wolfram.com/language/ref/Degree.html]

* Wlfmfn.DegreeCentrality
* Wlfmfn.DegreeGraphDistribution
* Wlfmfn.Deinitialization
* Wlfmfn.Del
* Wlfmfn.DelaunayMesh
* Wlfmfn.Delayed
* Wlfmfn.Deletable
* Wlfmfn.Delete
* Wlfmfn.DeleteBorderComponents
* Wlfmfn.DeleteCases
* Wlfmfn.DeleteContents
* Wlfmfn.DeleteDirectory
* Wlfmfn.DeleteDuplicates
* Wlfmfn.DeleteDuplicatesBy
* Wlfmfn.DeleteFile
* Wlfmfn.DeleteMissing
* Wlfmfn.DeleteSmallComponents
* Wlfmfn.DelimitedSequence
* Wlfmfn.Delimiter
* Wlfmfn.DelimiterFlashTime
* Wlfmfn.Delimiters:
* Wlfmfn.Denominator
* Wlfmfn.DensityHistogram
* Wlfmfn.DensityPlot
* Wlfmfn.DependentVariables
* Wlfmfn.Deploy
* Wlfmfn.Deployed
* Wlfmfn.Depth
* Wlfmfn.DepthFirstScan
* Wlfmfn.Derivative
* Wlfmfn.DerivativeFilter
* Wlfmfn.DescriptorStateSpace
* Wlfmfn.DesignMatrix
* Wlfmfn.Det
* Wlfmfn.DeviceClose
* Wlfmfn.DeviceConfigure
* Wlfmfn.DeviceExecute
* Wlfmfn.DeviceExecuteAsynchronous

* Wlfmfn.DeviceObject:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.DeviceOpen
* Wlfmfn.DeviceRead
* Wlfmfn.DeviceReadBuffer
* Wlfmfn.DeviceReadLatest

* Wlfmfn.DeviceReadList:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.DeviceReadTimeSeries
* Wlfmfn.DeviceStreams
* Wlfmfn.DeviceWrite
* Wlfmfn.DeviceWriteBuffer
* Wlfmfn.Devices
* Wlfmfn.Diagonal
* Wlfmfn.DiagonalMatrix
* Wlfmfn.DiagonalizableMatrixQ

* Wlfmfn.http://reference.wolfram.com/language/ref/Dialog.html:
Dialog[]
initiates a dialog.
Dialog[expr]
initiates a dialog with expr as the current value of .
===
Within a standard interactive session, you can create "subsessions" or dialogs using the Wolfram Language command Dialog. Dialogs are often useful if you want to interact with the Wolfram Language while it is in the middle of doing a calculation. As mentioned in "Tracing Evaluation", TraceDialog for example automatically calls Dialog at specified points in the evaluation of a particular expression. In addition, if you interrupt the Wolfram Language during a computation, you can typically "inspect" its state using a dialog.
[http://reference.wolfram.com/language/tutorial/Dialogs.html]

* Wlfmfn.DialogInput
* Wlfmfn.DialogNotebook
* Wlfmfn.DialogProlog
* Wlfmfn.DialogReturn

* Wlfmfn.http://reference.wolfram.com/language/ref/DialogSymbols.html:
is an option for Dialog that gives a list of symbols whose values should be localized in the dialog.

* Wlfmfn.Diamond
* Wlfmfn.DiamondMatrix
* Wlfmfn.DiceDissimilarity
* Wlfmfn.DictionaryLookup
* Wlfmfn.DifferenceDelta
* Wlfmfn.DifferenceRoot
* Wlfmfn.DifferenceRootReduce
* Wlfmfn.Differences
* Wlfmfn.DifferentialD
* Wlfmfn.DifferentialRoot
* Wlfmfn.DifferentialRootReduce
* Wlfmfn.DifferentiatorFilter
* Wlfmfn.DigitBlock

* Wlfmfn.DigitCharacter:
DigitCharacter
represents a digit character 0–9 in StringExpression.
[http://reference.wolfram.com/language/ref/DigitCharacter.html]

* Wlfmfn.DigitCount
* Wlfmfn.DigitQ
* Wlfmfn.DihedralGroup
* Wlfmfn.Dilation
* Wlfmfn.DimensionalCombinations
* Wlfmfn.DimensionalMeshComponents
* Wlfmfn.Dimensions
* Wlfmfn.DiracComb
* Wlfmfn.DiracDelta
* Wlfmfn.DirectedEdge
* Wlfmfn.DirectedEdges
* Wlfmfn.DirectedGraph
* Wlfmfn.DirectedGraphQ
* Wlfmfn.DirectedInfinity
* Wlfmfn.Direction
* Wlfmfn.Directive

* Wlfmfn.http://reference.wolfram.com/language/ref/Directory.html:
Directory[]
gives the current working directory.
===
Directory returns the full name of the directory as a string.
===
At any given time, however, you have a current working directory, and you can refer to files or other directories by specifying where they are relative to this directory. Typically you can refer to files or directories that are actually in this directory simply by giving their names, with no directory information.
[http://reference.wolfram.com/language/tutorial/NamingAndFindingFiles.html]

* Wlfmfn.DirectoryName
* Wlfmfn.DirectoryQ
* Wlfmfn.DirectoryStack
* Wlfmfn.DirichletBeta
* Wlfmfn.DirichletCharacter
* Wlfmfn.DirichletCondition
* Wlfmfn.DirichletConvolve
* Wlfmfn.DirichletDistribution
* Wlfmfn.DirichletEta
* Wlfmfn.DirichletL
* Wlfmfn.DirichletLambda
* Wlfmfn.DirichletTransform
* Wlfmfn.DirichletWindow
* Wlfmfn.DiscreteChirpZTransform
* Wlfmfn.DiscreteConvolve
* Wlfmfn.DiscreteDelta
* Wlfmfn.DiscreteHadamardTransform
* Wlfmfn.DiscreteIndicator
* Wlfmfn.DiscreteLQEstimatorGains
* Wlfmfn.DiscreteLQRegulatorGains
* Wlfmfn.DiscreteLyapunovSolve
* Wlfmfn.DiscreteMarkovProcess
* Wlfmfn.DiscretePlot
* Wlfmfn.DiscretePlot3D
* Wlfmfn.DiscreteRatio
* Wlfmfn.DiscreteRiccatiSolve
* Wlfmfn.DiscreteShift
* Wlfmfn.DiscreteTimeModelQ
* Wlfmfn.DiscreteUniformDistribution
* Wlfmfn.DiscreteVariables

* Wlfmfn.DiscreteWaveletData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.DiscreteWaveletPacketTransform
* Wlfmfn.DiscreteWaveletTransform
* Wlfmfn.DiscretizeGraphics
* Wlfmfn.DiscretizeRegion
* Wlfmfn.Discriminant
* Wlfmfn.DisjointQ
* Wlfmfn.Disjunction

* Wlfmfn.Disk:
Disk[{x,y},r]
represents a disk of radius r centered at .
Disk[{x,y}]
gives a disk of radius 1.
Disk[{x,y},{rx,ry}]
gives an axis-aligned elliptical disk with semiaxes lengths and .
Disk[{x,y},…,{?1,?2}]
gives a sector of a disk from angle to .
Details
Disk can be used as a geometric region and a graphics primitive.
Disk[] is equivalent to Disk[{0,0}]. »

Disk represents the filled region .
Angles are measured in radians counterclockwise from the positive x direction.
Disk can be used in Graphics.
In graphics, the points can be Scaled, Offset, ImageScaled, and Dynamic expressions.
The option RoundingRadius->r can be used to specify rounded corners rendered using circles of radius r.
Graphics rendering is affected by directives such as FaceForm, EdgeForm, and color.
[http://reference.wolfram.com/language/ref/Disk.html]

* Wlfmfn.DiskMatrix
* Wlfmfn.Dispatch
* Wlfmfn.DispersionEstimatorFunction
* Wlfmfn.DisplayAllSteps
* Wlfmfn.DisplayEndPacket
* Wlfmfn.DisplayForm
* Wlfmfn.DisplayFunction
* Wlfmfn.DisplayPacket
* Wlfmfn.DistanceFunction
* Wlfmfn.DistanceTransform
* Wlfmfn.Distribute
* Wlfmfn.DistributeDefinitions
* Wlfmfn.Distributed
* Wlfmfn.DistributedContexts
* Wlfmfn.DistributionChart
* Wlfmfn.DistributionFitTest
* Wlfmfn.DistributionParameterAssumptions
* Wlfmfn.DistributionParameterQ
* Wlfmfn.Dithering
* Wlfmfn.Div
* Wlfmfn.Divide
* Wlfmfn.DivideBy
* Wlfmfn.Dividers
* Wlfmfn.Divisible
* Wlfmfn.DivisorSigma
* Wlfmfn.DivisorSum
* Wlfmfn.Divisors

* Wlfmfn.Do:
* entity: looping#ql:wl'loop#,
===
Do[expr,{imax}]
evaluates expr times.
Do[expr,{i,imax}]
evaluates expr with the variable i successively taking on the values through (in steps of ).
Do[expr,{i,imin,imax}]
starts with .
Do[expr,{i,imin,imax,di}]
uses steps di.
Do[expr,{i,{i1,i2,…}}]
uses the successive values , , ….
Do[expr,{i,imin,imax},{j,jmin,jmax},…]
evaluates expr looping over different values of j, etc. for each i.
Details
Do uses the standard Wolfram Language iteration specification.
You can use Return, Break, Continue, and Throw inside Do.
Unless an explicit Return is used, the value returned by Do is Null.
Do[expr,spec] first evaluates spec, then localizes the variable specified and successively assigns values to it, each time evaluating expr.
Do effectively uses Block to localize values or variables.
In Do[expr,spec1,spec2] is effectively equivalent to Do[Do[expr,spec2],spec1].
[http://reference.wolfram.com/language/ref/Do.html]

* Wlfmfn.DockedCells
* Wlfmfn.DocumentNotebook
* Wlfmfn.DominantColors
* Wlfmfn.Dot
* Wlfmfn.DotDashed
* Wlfmfn.DotEqual
* Wlfmfn.Dotted
* Wlfmfn.DoubleBracketingBar
* Wlfmfn.DoubleDownArrow
* Wlfmfn.DoubleLeftArrow
* Wlfmfn.DoubleLeftRightArrow
* Wlfmfn.DoubleLeftTee
* Wlfmfn.DoubleLongLeftArrow
* Wlfmfn.DoubleLongLeftRightArrow
* Wlfmfn.DoubleLongRightArrow
* Wlfmfn.DoubleRightArrow
* Wlfmfn.DoubleRightTee
* Wlfmfn.DoubleUpArrow
* Wlfmfn.DoubleUpDownArrow
* Wlfmfn.DoubleVerticalBar
* Wlfmfn.DownArrow
* Wlfmfn.DownArrowBar
* Wlfmfn.DownArrowUpArrow
* Wlfmfn.DownLeftRightVector
* Wlfmfn.DownLeftTeeVector
* Wlfmfn.DownLeftVector
* Wlfmfn.DownLeftVectorBar
* Wlfmfn.DownRightTeeVector
* Wlfmfn.DownRightVector
* Wlfmfn.DownRightVectorBar
* Wlfmfn.DownTee
* Wlfmfn.DownTeeArrow
* Wlfmfn.DownValues
* Wlfmfn.Downsample
* Wlfmfn.DragAndDrop
* Wlfmfn.Drop
* Wlfmfn.Dt
* Wlfmfn.DualSystemsModel

* Wlfmfn.DumpSave:
DumpSave["file.mx",symbol]
writes definitions associated with a symbol to a file in internal Wolfram System format.
DumpSave["file.mx","context`"]
writes out definitions associated with all symbols in the specified context.
DumpSave["file.mx",{object1,object2,…}]
writes out definitions for several symbols or contexts.
DumpSave["package`",objects]
chooses the name of the output file based on the computer system used.
Details and Options
DumpSave writes out definitions in a binary format that is optimized for input by the Wolfram Language.
Each file has a plain text header identifying its type and contents.
Files written by DumpSave can be read by Get.
Files written by DumpSave can only be read on the same type of computer system on which they were written.
DumpSave will not preserve open stream and link objects.
Files written by DumpSave conventionally have names that end with .mx.
DumpSave["package`",…] writes a file with a name such as package.mx/(value of $SystemID)/package.mx.
You can use DumpSave["file","s"] to write out the definition for the value of a symbol s itself.
You can typically read a dump file when you start the Wolfram System by using the command-line option.
[http://reference.wolfram.com/language/ref/DumpSave.html]

* Wlfmfn.DuplicateFreeQ
* Wlfmfn.Dynamic
* Wlfmfn.DynamicBoxOptions
* Wlfmfn.DynamicEvaluationTimeout
* Wlfmfn.DynamicModule
* Wlfmfn.DynamicModuleBoxOptions
* Wlfmfn.DynamicModuleValues
* Wlfmfn.DynamicSetting
* Wlfmfn.DynamicWrapper
* Wlfmfn.DynamicWrapperBoxOptions

Wlfmfn.E

name::
* McsEngl.Wlfmfn.E@cptIt,

http://reference.wolfram.com/language/ref/.html,

* Wlfmfn.EarthImpactData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.EarthquakeData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.EccentricityCentrality
* Wlfmfn.EclipseType
* Wlfmfn.EdgeAdd
* Wlfmfn.EdgeBetweennessCentrality
* Wlfmfn.EdgeCapacity
* Wlfmfn.EdgeConnectivity
* Wlfmfn.EdgeContract
* Wlfmfn.EdgeCost
* Wlfmfn.EdgeCount
* Wlfmfn.EdgeCoverQ
* Wlfmfn.EdgeCycleMatrix
* Wlfmfn.EdgeDelete
* Wlfmfn.EdgeDetect
* Wlfmfn.EdgeForm
* Wlfmfn.EdgeIndex
* Wlfmfn.EdgeLabelStyle
* Wlfmfn.EdgeLabeling
* Wlfmfn.EdgeLabels

* Wlfmfn.EdgeList:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.EdgeQ
* Wlfmfn.EdgeRenderingFunction
* Wlfmfn.EdgeRules
* Wlfmfn.EdgeShapeFunction
* Wlfmfn.EdgeStyle
* Wlfmfn.EdgeWeight
* Wlfmfn.EditDistance
* Wlfmfn.Editable
* Wlfmfn.EffectiveInterest
* Wlfmfn.Eigensystem
* Wlfmfn.Eigenvalues
* Wlfmfn.EigenvectorCentrality
* Wlfmfn.Eigenvectors

* Wlfmfn.Element:
Element[x,dom]
or asserts that x is an element of the domain dom.
Element[x,reg]
or asserts that x is an element of the region reg.
Element[x1|x2|…,dom]
asserts that all the are elements of dom.
Element[patt,dom]
asserts that any expression matching the pattern patt is an element of dom.
Details
can be entered as x EscelEsc dom or .
Element can be used to set up assumptions in Simplify and related functions.
dom may be a numeric domain or a region in .
Possible domains dom are:
Algebraics  algebraic numbers
Booleans  True or False
Complexes  complex numbers
Integers  integers
Primes  prime numbers
Rationals  rational numbers
Reals  real numbers
Possible regions reg are defined by RegionQ.
if possible evaluates immediately when x is numeric.
For a domain dom, is equivalent to .
For a region reg, asserts that the point with coordinates belongs to reg.
is equivalent to .
evaluates to if its truth or falsity cannot immediately be determined.
[http://reference.wolfram.com/language/ref/Element.html]

* Wlfmfn.ElementData:
[http://reference.wolfram.com/language/ref/ElementData.html]

* Wlfmfn.ElidedForms
* Wlfmfn.Eliminate
* Wlfmfn.Ellipsoid
* Wlfmfn.EllipticE
* Wlfmfn.EllipticExp
* Wlfmfn.EllipticExpPrime
* Wlfmfn.EllipticF
* Wlfmfn.EllipticFilterModel
* Wlfmfn.EllipticK
* Wlfmfn.EllipticLog
* Wlfmfn.EllipticNomeQ
* Wlfmfn.EllipticPi
* Wlfmfn.EllipticTheta
* Wlfmfn.EllipticThetaPrime
* Wlfmfn.EmbedCode
* Wlfmfn.EmbeddedHTML
* Wlfmfn.EmitSound
* Wlfmfn.EmpiricalDistribution
* Wlfmfn.EmptyGraphQ
* Wlfmfn.EmptyRegion
* Wlfmfn.Enabled

* Wlfmfn.Encode:
Encode["source","dest"]
writes an encoded version of the file source to the file dest.
<<dest
decodes the file before reading its contents.
Encode["source","dest","key"]
produces an encoded file that must be read in using Get["dest","key"].
Details and Options
Encoded files contain only printable ASCII characters. They begin with a special sequence that is recognized by Get.
On certain computer systems Encode["source","dest",MachineID->"ID"] can be used to generate an encoded file that can be read only on a computer with a particular $MachineID.
No function is provided in the Wolfram Language to convert encoded files back to their original form.
[http://reference.wolfram.com/language/ref/Encode.html]

* Wlfmfn.End
* Wlfmfn.EndDialogPacket
* Wlfmfn.EndOfBuffer
* Wlfmfn.EndOfFile
* Wlfmfn.EndOfLine
* Wlfmfn.EndOfString
* Wlfmfn.EndPackage
* Wlfmfn.EngineeringForm
* Wlfmfn.EnterExpressionPacket
* Wlfmfn.EnterTextPacket

* Wlfmfn.http://reference.wolfram.com/language/ref/Entity.html:
Entity["type",name]
represents an entity of specified type identified by name.
Details
Possible entity types include "Country", "Movie", "Person", "Polyhedron", and many more. A list of all available entity types can be found by evaluating EntityValue[].
Properties of an Entity object can be obtained from Entity[…][property] where property is an EntityProperty expression or a string.
Entity expressions format in StandardForm using a print form of the entity name, retrieved either from a Wolfram server or from the system cache.
The TraditionalForm of an entity is just the print form string.
Entity expressions can be created by using the Ctrl+Equal WolframAlpha interface.
The identifier is a string that represents the canonical entity type associated with a specific entity.
The identifier name is generally a string, but for certain entity types can also contain lists and integers.
Entity[type] is sometimes used in EntityValue to represent a generic entity of the specified type.

* Wlfmfn.EntityClass:
EntityClass["type",name]
represents a class of entities of the specified type identified by name.
Details
Possible entity types include , , , , and many more. A list of all available entity types can be found by evaluating EntityValue[].
EntityClass expressions format in StandardForm using a print form of the entity name, retrieved either from a Wolfram server or from the system cache.
EntityClass expressions can be created by using the Ctrl+Equal WolframAlpha interface.
The identifier is a string that represents the canonical entity type associated with a specific entity.
The identifier name is generally a string, but for certain entity types can also contain lists and integers.
[http://reference.wolfram.com/language/ref/EntityClass.html]

* Wlfmfn.EntityClassList:
EntityClassList["type"]
gives a list of entity classes for the specified type of entity.
Details
EntityClassList returns a list of EntityClass objects.
The identifier is a string that represents the canonical entity type associated with a specific entity.
[http://reference.wolfram.com/language/ref/EntityClassList.html]

* Wlfmfn.EntityList:
EntityList[class]
gives a list of entities in the specified entity class.
EntityList["type"]
gives a list of entities of the specified type.
Details
In EntityList[class], class is given as an EntityClass object.
EntityClass["type"] is systematically supported only for types allowing a fixed number of entities.
[http://reference.wolfram.com/language/ref/EntityList.html]

* Wlfmfn.EntityProperties

* Wlfmfn.EntityProperty:
EntityProperty[type,pname]
represents a property identified by pname for use in EntityValue.
EntityProperty[type,pname,{qual1?val1,qual2?val2,…}]
represents a property modified by the qualifier rules .
Details
The property standard name pname is typically a string, but can also be a list with strings and rules.
When referring to a property with a string standard name and no qualifiers, the EntityProperty wrapper is generally optional.
Use EntityValue[Entity[type],"Properties"] to get a list of valid properties. Use instead to just get the list of standard names.
Property values for an Entity object can be obtained using Entity[…][EntityProperty[…]].
[http://reference.wolfram.com/language/ref/EntityProperty.html]

* Wlfmfn.EntityPropertyClass

* Wlfmfn.EntityTypeName

* Wlfmfn.EntityValue:
{AdministrativeDivision,Aircraft,Airline,Airport,AmusementPark,AmusementParkRide,Artwork,AstronomicalObservatory,AtmosphericLayer,Beach,BoardGame,Book,Bridge,BroadcastStation,BroadcastStationClassification,Building,Canal,Castle,CatBreed,Cave,Cemetery,Character,Chemical,City,Cloud,Color,Comet,Company,ComputationalComplexityClass,Constellation,ContinuedFraction,Country,CrystalFamily,CrystallographicSpaceGroup,CrystalSystem,CurrencyDenomination,Dam,DeepSpaceProbe,Desert,Dinosaur,Disease,DisplayFormat,DistrictCourt,DogBreed,EarthImpact,Element,Exoplanet,FamousChemistryProblem,FamousGem,FamousMathGame,FamousMathProblem,FamousPhysicsProblem,FictionalCharacter,FileFormat,Financial,FiniteGroup,Forest,FrequencyAllocation,Galaxy,Gene,GeologicalLayer,GeologicalPeriod,GivenName,Glacier,Graph,HistoricalCountry,HistoricalEvent,HistoricalPeriod,HistoricalSite,IntegerSequence,InternetDomain,IPAddress,Island,Isotope,Knot,Lake,Lamina,Language,Lattice,LatticeSystem,MannedSpaceMission,MathWorld,MedicalTest,MeteorShower,MetropolitanArea,Mine,Mineral,MinorPlanet,Mountain,Movie,Museum,MusicAct,MusicAlbum,MusicAlbumRelease,MusicalInstrument,MusicWork,MusicWorkRecording,Mythology,Nebula,Neighborhood,NotableComputer,NuclearExplosion,NuclearReactor,NuclearTestSite,Ocean,OilField,Park,Particle,ParticleAccelerator,Periodical,PeriodicTiling,Person,PhysicalSystem,PlaneCurve,Planet,PlanetaryMoon,Plant,Pokemon,Polyhedron,PopularCurve,PreservationStatus,PrivateSchool,Protein,PublicSchool,Pulsar,Reef,Religion,ReserveLand,River,Rocket,Satellite,SchoolDistrict,Ship,Shipwreck,SNP,SolarSystemFeature,Solid,Source,SpaceCurve,Species,SportObject,Stadium,Star,StarCluster,Supernova,Surface,Surname,TimeZone,TropicalStorm,Tunnel,UnderseaFeature,University,USCongressionalDistrict,Volcano,Waterfall,WeatherStation,Word,ZIPCode}

* Wlfmfn.Entropy
* Wlfmfn.EntropyFilter
* Wlfmfn.Environment
* Wlfmfn.Epilog

* Wlfmfn.Equal:
* wlfopr.Equal, wlfopr.sblEqualsEquals: ==
lhs == rhs
returns True if lhs and rhs are identical.
Details
is used to represent a symbolic equation, to be manipulated using functions like Solve.
returns True if lhs and rhs are ordinary identical expressions.
returns False if lhs and rhs are determined to be unequal by comparisons between numbers or other raw data, such as strings.
Approximate numbers with machine precision or higher are considered equal if they differ in at most their last seven binary digits (roughly their last two decimal digits).
For numbers below machine precision the required tolerance is reduced in proportion to the precision of the numbers.
gives True.
gives True if all the are equal.
Equal[e] gives True.
For exact numeric quantities, Equal internally uses numerical approximations to establish inequality. This process can be affected by the setting of the global variable $MaxExtraPrecision.
Equal remains unevaluated when lhs or rhs contains objects such as Indeterminate and Overflow.
In StandardForm and InputForm, can be input as lhs\[Equal]rhs or .
It can also be input as \[LongEqual] or .
In TraditionalForm, is output as .
[http://reference.wolfram.com/language/ref/Equal.html]

* Wlfmfn.EqualTilde
* Wlfmfn.Equilibrium
* Wlfmfn.EquirippleFilterKernel
* Wlfmfn.Equivalent
* Wlfmfn.Erf
* Wlfmfn.Erfc
* Wlfmfn.Erfi
* Wlfmfn.ErlangB
* Wlfmfn.ErlangC
* Wlfmfn.ErlangDistribution
* Wlfmfn.Erosion
* Wlfmfn.ErrorBox
* Wlfmfn.EscapeRadius
* Wlfmfn.EstimatedBackground
* Wlfmfn.EstimatedDistribution
* Wlfmfn.EstimatedProcess
* Wlfmfn.EstimatorGains
* Wlfmfn.EstimatorRegulator
* Wlfmfn.EuclideanDistance
* Wlfmfn.EulerE
* Wlfmfn.EulerGamma
* Wlfmfn.EulerPhi
* Wlfmfn.EulerianGraphQ
* Wlfmfn.Evaluatable
* Wlfmfn.Evaluate
* Wlfmfn.EvaluatePacket
* Wlfmfn.EvaluationBox
* Wlfmfn.EvaluationCell

* Wlfmfn.EvaluationData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.EvaluationElements
* Wlfmfn.EvaluationMonitor
* Wlfmfn.EvaluationNotebook

* Wlfmfn.EvaluationObject
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Evaluator

* Wlfmfn.EvenQ

* Wlfmfn.EventData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.EventHandler

* Wlfmfn.EventLabels

* Wlfmfn.EventSeries:
EventSeries[{{t1,v1},{t2,v2}…}]
represents a series of events given as time-value pairs .
EventSeries[{v1,v2,…},tspec]
represents a series of events with values at times specified by tspec.
Details and Options
EventSeries represents a series of time-value pairs .
The values can be scalars or arrays of any dimension, but must all be of equal dimensionality.
The following times tspec can be given:
Automatic  use uniformly spaced times starting at 0
{tmin}  use uniformly spaced times starting at
{tmin,tmax}  use uniformly spaced times to
{tmin,tmax,dt}  use times to in steps of dt
{{t1,t2,…}}  use explicit times
The can be numbers or any valid input to AbsoluteTime.
The values , , and dt can be given as numbers, dates, or Automatic.
Specifying gives the event value at time t.
EventSeries is a special case of TemporalData allowing only a single path and no interpolation.
EventSeries objects of equal dimensionality can be combined into a TemporalData object using TemporalData[{es1,es2,…}].
Properties of a EventSeries object es can be obtained from es["property"].
A list of available properties can be obtained using es["Properties"].
Some properties of the event series include:
"Path"  time-value pairs
"Values"  the values
"ValueDimensions"  the dimensionality of the
"Times"  the times
"Dates"  the times as dates
If dates are given as input, es["Times"] returns them in AbsoluteTime.
Normal[es] is equivalent to es["Path"].
EventSeries takes the following options:
CalendarType  "Gregorian"  the calendar type to use
HolidayCalendar  {"UnitedStates","Default"}  the holiday calendar to use
MetaInformation  None  include additional meta-information
MissingDataMethod  None  method to use for missing values
TemporalRegularity  Automatic  whether to assume the data is regular
[http://reference.wolfram.com/language/ref/EventSeries.html]

* Wlfmfn.ExactBlackmanWindow
* Wlfmfn.ExactNumberQ

* Wlfmfn.ExampleData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Except

* Wlfmfn.ExcludePods:
ExcludePods

ExcludePods
is an option to WolframAlpha that specifies pod IDs to exclude from the results.
Details
ExcludePods->{pod1,pod2,…} specifies that the results of the WolframAlpha function should not include results matching the given pod IDs.
ExcludePods should not be used in combination with IncludePods.
[http://reference.wolfram.com/language/ref/ExcludePods.html]

* Wlfmfn.ExcludedForms
* Wlfmfn.ExcludedLines
* Wlfmfn.ExcludedPhysicalQuantities
* Wlfmfn.Exclusions
* Wlfmfn.ExclusionsStyle

* Wlfmfn.Exists:
* wloprExists, wlopr.sbl
Exists[x,expr]
represents the statement that there exists a value of x for which expr is True.
Exists[x,cond,expr]
states that there exists an x satisfying the condition cond for which expr is True.
Exists[{x1,x2,…},expr]
states that there exist values for all the for which expr is True.
Details
Exists[x,expr] can be entered as . The character can be entered as EscexEsc or \[Exists]. The variable is given as a subscript.
Exists[x,cond,expr] can be entered as .
In StandardForm, Exists[x,expr] is output as .
Exists[x,cond,expr] is output as .
Exists can be used in such functions as Reduce, Resolve, and FullSimplify.
The condition cond is often used to specify the domain of a variable, as in x?Integers.
Exists[x,cond,expr] is equivalent to Exists[x,cond&&expr].
Exists[{x1,x2,…},…] is equivalent to .
The value of in Exists[x,expr] is taken to be localized, as in Block.
[http://reference.wolfram.com/language/ref/Exists.html]

* Wlfmfn.Exit

* Wlfmfn.ExoplanetData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Exp
* Wlfmfn.ExpGammaDistribution
* Wlfmfn.ExpIntegralE
* Wlfmfn.ExpIntegralEi
* Wlfmfn.ExpToTrig

* Wlfmfn.Expand:
Expand[expr]
expands out products and positive integer powers in expr.
Expand[expr,patt]
leaves unexpanded any parts of expr that are free of the pattern patt. »
Details and Options
Expand works only on positive integer powers.
Expand applies only to the top level in expr.
Expand[expr,Modulus->p] expands expr reducing the result modulo p. »
Expand automatically threads over lists in expr, as well as equations, inequalities and logic functions.
[http://reference.wolfram.com/language/ref/Expand.html]

* Wlfmfn.ExpandAll
* Wlfmfn.ExpandDenominator
* Wlfmfn.ExpandFileName
* Wlfmfn.ExpandNumerator
* Wlfmfn.Expectation
* Wlfmfn.Exponent
* Wlfmfn.ExponentFunction
* Wlfmfn.ExponentStep
* Wlfmfn.ExponentialDistribution
* Wlfmfn.ExponentialFamily
* Wlfmfn.ExponentialGeneratingFunction
* Wlfmfn.ExponentialMovingAverage
* Wlfmfn.ExponentialPowerDistribution

* Wlfmfn.http://reference.wolfram.com/language/ref/Export.html:
Export["file.ext",expr]
exports data to a file, converting it to the format corresponding to the file extension ext.
Export[file,expr,"format"]
exports data in the specified format.
Export[file,exprs,elems]
exports data by treating exprs as elements specified by elems.
Details
Export handles a large number of formats, each typically with many different possible elements. The possible formats are given in the list $ExportFormats, and in the "Listing of All Formats".
Export["file.ext",expr] attempts to render expr in the appropriate format for the file. Among the possible forms for expr is normally the form that would be obtained from Import["file.ext"].
There are four common types of element specifications:
data representation specifications (e.g. , )
format specifications (e.g. "GIF", "GZIP", "XLS")
options, properties, and settings (e.g. ImageSize, SampleRate)
metadata information (e.g. )
In Export[file,exprs,elems] the elements can have the following basic forms:
"format"  use the default element for the specified format
elem  export a single element assuming the default format
{"format",elem}  export an element assuming the specified format
{"comp1",…,"format",…}  use also compression formats (e.g. "GZIP")
{elem1,{elem11,elem12,…}}  export the as subelements of
Forms of elements often supported include:
"Data"  give data in a generic form (list, string, etc.)
"Image"  give images as Image objects
"Graphics"  give graphics or geometry as a Graphics object
"Graphics3D"  give 3D graphics or geometry as a Graphics3D object
"Sound"  give sound as a Sound object
"Grid"  give a grid of data as a list or a Grid, etc.
"Rules"  give explicit rules for elements to export
With the element specification, the rules in exprs can have the following basic forms:
elem->val  a value for a single element
{elem1->val1,elem2->val2,…}  values for several elements
elem1->{elem11->val11,…}  values for subelements
Export["!prog",expr,…] exports data to a pipe.
Many options can be given using Export[file,exprs,elems,opts].
The names of options specific to particular formats and elements are normally strings.
Typical general options include Background, CharacterEncoding, ImageSize, ImageResolution, ImageFormattingWidth, SampleRate, etc.
Export[file,NotebookObject[…],…] when possible exports the content of the notebook referenced by the NotebookObject.
[http://reference.wolfram.com/language/ref/Export.html]
===
Export["file.html",nb]  save the notebook nb in HTML form

* Wlfmfn.ExportForm
* Wlfmfn.ExportString

* Wlfmfn.Expression:
Expression
is a symbol that represents an ordinary Wolfram Language expression in Read and related functions.
[http://reference.wolfram.com/language/ref/Expression.html]

* Wlfmfn.ExpressionCell

* Wlfmfn.ExtendedGCD
* Wlfmfn.Extension
* Wlfmfn.ExtentElementFunction
* Wlfmfn.ExtentMarkers
* Wlfmfn.ExtentSize
* Wlfmfn.ExternalBundle
* Wlfmfn.ExternalOptions
* Wlfmfn.ExternalTypeSignature
* Wlfmfn.Extract
* Wlfmfn.ExtractArchive
* Wlfmfn.ExtremeValueDistribution

Wlfmfn.F

name::
* McsEngl.Wlfmfn.F@cptIt,

http://reference.wolfram.com/language/ref/.html,
* Wlfmfn.FARIMAProcess
* Wlfmfn.FRatioDistribution
* Wlfmfn.FaceForm
* Wlfmfn.FaceGrids
* Wlfmfn.FaceGridsStyle
* Wlfmfn.Factor
* Wlfmfn.FactorInteger

* Wlfmfn.FactorList:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.FactorSquareFree:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.FactorSquareFreeList:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.FactorTerms:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.FactorTermsList:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Factorial
* Wlfmfn.Factorial2
* Wlfmfn.FactorialMoment
* Wlfmfn.FactorialMomentGeneratingFunction
* Wlfmfn.FactorialPower
* Wlfmfn.Failure
* Wlfmfn.FailureAction
* Wlfmfn.FailureDistribution

* Wlfmfn.False:
False
is the symbol for the Boolean value false.
Background
False is the symbol for the Boolean value false. Expressions that can be rigorously established to be false return this symbol. Examples of testing expressions that may return False include Equal, Unequal, SameQ, UnsameQ, Less/Greater/etc., Exists, and quantifier elimination via Resolve. Constructs that can be used to take a different evaluation path depending on if a condition is False or True include If, Which, and Piecewise.
The negation Not[False] of True is given by True. The domain consisting of False and True is denoted Booleans.
While TrueQ is a special case of If that yields True if an expression is explicitly True and otherwise yields False, there is no corresponding built-in function for False.
[http://reference.wolfram.com/language/ref/False.html]

* Wlfmfn.FareySequence
* Wlfmfn.FeedbackLinearize
* Wlfmfn.FeedbackSector
* Wlfmfn.FeedbackSectorStyle
* Wlfmfn.FeedbackType
* Wlfmfn.Fibonacci
* Wlfmfn.Fibonorial
* Wlfmfn.FieldHint
* Wlfmfn.FieldHintStyle
* Wlfmfn.FieldMasked
* Wlfmfn.FieldSize

* Wlfmfn.FileBaseName

* Wlfmfn.FileByteCount

* Wlfmfn.FileDate

* Wlfmfn.FileExistsQ

* Wlfmfn.FileExtension

* Wlfmfn.FileFormat

* Wlfmfn.FileHash

* Wlfmfn.FileNameDepth

* Wlfmfn.FileNameDrop:
FileNameDrop["name",n]
drops the first n path elements in the file name .
FileNameDrop["name",-n]
drops the last n path elements in the file name .
FileNameDrop["name",{m,n}]
drops elements m through n in the file name .
FileNameDrop["name"]
drops the last path element in the file name .
Details and Options
FileNameDrop by default assumes that path elements are separated by pathname separators suitable for your operating system.
FileNameDrop[…,OperatingSystem->"os"] uses the conventions of the specified operating system. Possible choices are , , and .
FileNameDrop just operates on names of files; it does not actually search for the file specified.
If more elements are specified to be dropped than are present, FileNameDrop just drops those that are present.
[http://reference.wolfram.com/language/ref/FileNameDrop.html]

* Wlfmfn.FileNameJoin:
FileNameJoin[{"name1","name2",…}]
joins the together into a file name suitable for your current operating system.
Details and Options
The can be either individual names or file paths containing pathname separators.
FileNameJoin[{"","name1",…}] gives an absolute file path beginning with a pathname separator.
FileNameJoin[…,OperatingSystem->"os"] yields a file name in the format for the specified operating system. Possible choices are , , and .
FileNameJoin just assembles a file name; it does not actually search for the file specified.
FileNameJoin["name"] canonicalizes the file name , making pathname separators appropriate for your operating system.
[http://reference.wolfram.com/language/ref/FileNameJoin.html]

* Wlfmfn.FileNameSetter

* Wlfmfn.FileNameSplit:
FileNameSplit["filename"]
splits a file name into a list of parts.
Details and Options
FileNameSplit by default uses pathname separators and other conventions suitable for your operating system.
FileNameSplit[…,OperatingSystem->"os"] uses the conventions of the specified operating system. Possible choices are , , and .
Absolute file names that begin with a pathname separator yield a list of parts that starts with .
Under Windows, the drive or share name is treated as the first part of the file name.
FileNameSplit just operates on names of files; it does not actually search for the file specified.
[http://reference.wolfram.com/language/ref/FileNameSplit.html]

* Wlfmfn.FileNameTake:
FileNameTake["name"]
gives the last path element in the file name .
FileNameTake["name",n]
gives the first n path elements in the file name .
FileNameTake["name",-n]
gives the last n path elements in the file name .
FileNameTake["name",{m,n}]
gives elements m through n in the file name .
Details and Options
FileNameTake by default assumes that path elements are separated by pathname separators suitable for your operating system.
FileNameTake[…,OperatingSystem->"os"] uses the conventions of the specified operating system. Possible choices are , , and .
FileNameTake just operates on names of files; it does not actually search for the file specified.
If more elements are requested than are present, FileNameTake just gives those that are present.
[http://reference.wolfram.com/language/ref/FileNameTake.html]

* Wlfmfn.FileNames:
FileNames[]
lists all files in the current working directory.
FileNames[form]
lists all files in the current working directory whose names match the string pattern form.
FileNames[{form1,form2,…}]
lists all files whose names match any of the .
FileNames[forms,{dir1,dir2,…}]
lists files with names matching forms in any of the directories .
FileNames[forms,dirs,n]
includes files that are in subdirectories up to n levels down.
Details and Options
File names can be given as literal strings, StringExpression string patterns, RegularExpression objects, or abbreviated string patterns.
In abbreviated string patterns, stands for any sequence of zero or more characters. stands for any sequence of one or more characters other than uppercase letters.
FileNames["*"] or FileNames[__] is equivalent to FileNames[].
All can also be used in place of .
In abbreviated string patterns, Verbatim["s"] specifies that the string should be matched with and treated literally.
FileNames[forms,dirs,Infinity] looks for files in all subdirectories of the dirs.
The list of files returned by FileNames is sorted in the order generated by the function Sort.
FileNames[forms,dirs,{n}] includes names of directories only if they appear exactly at level n.
The forms can include relative or absolute directory specifications, in addition to names of files.
Setting the option IgnoreCase->True makes FileNames treat lowercase and uppercase letters in file names as equivalent.
With the default setting IgnoreCase->Automatic, FileNames treats lowercase and uppercase letters in file names as equivalent under Microsoft Windows operating systems, but not elsewhere.
[http://reference.wolfram.com/language/ref/FileNames.html]

* Wlfmfn.FilePrint:
FilePrint["file"]
prints out the raw textual contents of file.
Details
In a notebook, FilePrint generates a cell with style .
With a text-based interface, FilePrint ends its output with a single newline (line feed).
[http://reference.wolfram.com/language/ref/FilePrint.html]

* Wlfmfn.FileTemplate

* Wlfmfn.FileTemplateApply

* Wlfmfn.FileType

* Wlfmfn.FilledCurve

* Wlfmfn.FilledCurveBoxOptions
* Wlfmfn.Filling
* Wlfmfn.FillingStyle
* Wlfmfn.FillingTransform
* Wlfmfn.FilterRules

* Wlfmfn.FinancialBond

* Wlfmfn.FinancialData:
FinancialData["name"]
gives the last known price or value for the financial entity specified by .
FinancialData["name",start]
gives a list of dates and daily closing values for from start until the current date.
FinancialData["name",{start,end}]
gives a list of dates and daily closing values for dates from start to end.
FinancialData["name",{start,end,period}]
gives a list of dates and prices for the specified periods lying between start and end.
FinancialData["name","prop"]
gives the value of the specified property for the financial entity .
FinancialData["name","prop",{start,end,…}]
gives a list of dates and values of a property for a sequence of dates or periods.
Details
FinancialData can retrieve data on U.S. and other stocks, mutual funds and other financial instruments, as well as indices, and currency exchange rates.
U.S. stocks and other financial instruments can be specified by standard ticker symbols such as .
Financial instruments can in general be specified by including the name of the exchange or listing, as in , , , etc. Indices are specified as etc. The alternative form can also be used.
FinancialData[patt,"Lookup"] gives a list of financial instruments whose symbols or names match the string pattern patt. The search is by default done only for U.S. financial instruments.
Prices are given in the currencies in which instruments are quoted.
Currency exchange rates are specified for example as or .
Times and dates can be given in any date format supported by DateList. {y} specifies the beginning of a year.
Possible periods include: , , , .
All specifies every available date or time.
FinancialData["name",…,{date}] gives results for a particular date.
FinancialData["name", "Properties"] gives a list of all properties available for a financial entity.
Properties related to the most recent available prices include:
"Ask"  the lowest offer to sell currently available
"Bid"  the highest offer to buy currently available
"LatestTrade"  the price and time for the most recent available trade
"Price"  the price for the most recent available trade
The default data sources used by FinancialData typically give data delayed by 15 minutes or more.
All times are given for the location of the exchange on which a financial instrument is traded, or New York time for global instruments such as currencies.
Properties related to daily prices and trading include:
"Change"  price change from the previous closing price
"Close"  latest known closing price
"FractionalChange"  fractional price change from the previous closing price
"High"  highest price during the trading day
"Low"  lowest price during the trading day
"Open"  opening price for the day
"OHLC"  list of open, high, low, and close values for the day
"OHLCV"  list of open, high, low, close, and volume for the day
"Range"  lowest and highest prices during the trading day
"Return"  daily return on a particular day, allowing dividends
"Volume"  number of units traded during the day
When markets are closed, daily information is given for the most recent trading day.
When historical price and trading properties are requested, daily values are given by default. Properties over longer periods can also be requested.
For historical data, properties such as , , are adjusted for stock splits, dividends and related changes.
Properties related to raw historical daily prices include:
"RawClose"  closing unadjusted price for a period
"RawRange"  lowest and highest unadjusted prices during a period
"RawHigh"  highest unadjusted price during a period
"RawLow"  lowest unadjusted price during a period
"RawOpen"  opening unadjusted price for a period
"RawOHLC"  list of unadjusted open, high, low, and close values for a period
Properties related to long-term historical prices and trends include:
"Average200Day"  200-day moving average
"Average50Day"  50-day moving average
"AverageVolume3Month"  3-month average of daily trading volume
"Change200Day"  change in price from 200-day moving average
"Change50Day"  change in price from 50-day moving average
"ChangeHigh52Week"  change in price from 52-week high
"ChangeLow52Week"  change in price from 52-week low
"CumulativeFractionalChange"  cumulative fractional change over a given range of dates
"CumulativeReturn"  cumulative return over a given range of dates
"FractionalChange200Day"  fractional change in price from 200-day moving average
"FractionalChange50Day"  fractional change in price from 50-day moving average
"FractionalChangeHigh52Week"  fractional change from 52-week high
"FractionalChangeLow52Week"  fractional change from 52-week low
"High52Week"  highest price over preceding 52 weeks
"Low52Week"  lowest price over preceding 52 weeks
"Range52Week"  price range over preceding 52 weeks
"Volatility20Day"  price volatility over preceding 20 days
"Volatility50Day"  price volatility over preceding 50 days
Name-related properties include:
"CIK"  CIK number
"Company"  name of corporate entity (if applicable)
"Exchange"  exchange to which financial entity refers
"ISIN"  International Securities Identifying Number
"Name"  English name for a financial entity
"StandardName"  standard Wolfram Language name for a financial entity
"Symbol"  ticker symbol
Company-related properties include:
"Sector"  industry sector in which a company operates
"SICCode"  primary SIC code for a company
"Website"  company website URL
Fundamentals-related properties for companies include:
"BookValuePerShare"  book value per share
"FloatShares"  number of shares available for trade in the open market
"ForwardPERatio"  forward price-to-earnings ratio estimate
"MarketCap"  market capitalization
"PEGRatio"  price-to-earnings divided by projected growth rate
"PERatio"  price-to-earnings ratio
"PriceTarget"  average of analysts' one-year price targets
"PriceToBookRatio"  price divided by book value
"PriceToSalesRatio"  price divided by annual sales
"ShortRatio"  fraction of trading volume sold short
"YearPERatioEstimate"  ratio of price to current year estimated earnings
Earnings-related properties for companies include:
"EarningsPerShare"  earnings for the most recent four quarters
"EBITDA"  standard cash flow measure
"ForwardEarnings"  average analysts' earnings per share for the next year
"QuarterForwardEarnings"  average analysts' earnings per share for the next quarter
"YearEarningsEstimate"  average analysts' earnings per share for the current year
Dividends-related properties for companies include:
"DividendYield"  ratio of annual dividend to current price
"DividendPerShare"  annual dividend per share
"Dividend"  dividend during a specified period
FinancialData["group","Members"] gives a list of the member entities of a specified group.
Groups include companies in an index, and companies on a particular exchange.
FinancialData["Classes"] gives a list of available classes.
FinancialData["name","property",…,"form"] can give data in various forms, including:
"Value"  value only
"DateValue"  list of the form
FinancialData["name","property",…,"ann"] gives various annotations associated with a property. Typical annotations include:
"Currency"  currency
"Description"  description of the property
"LongDescription"  longer textual description of the property
"Units"  units in which the value is given
"UnitsName"  English name for the units used
"UnitsNotation"  notation for the units used
"UnitsStandardName"  Wolfram Language standard name for the units used
FinancialData provides gateways to external financial data sources. Its use is subject to any restrictions associated with those sources, and may require additional licensing.
FinancialData requires internet connectivity.
Note: FinancialData is intended for informational purposes only. Wolfram Research is not responsible for the accuracy or timeliness of any data.
[http://reference.wolfram.com/language/ref/FinancialData.html]

* Wlfmfn.FinancialDerivative

* Wlfmfn.FinancialIndicator

* Wlfmfn.Find:
Find[stream,"text"]
finds the first line in an input stream that contains the specified string.
Find[stream,{"text1","text2",…}]
finds the first line that contains any of the specified strings.
Details and Options
Find breaks the input stream into records, delimited by record separators, and scans each record for the strings you specify.
Find returns as a string the first record which contains the specified text.
If Find does not find any record which contains the specified text before it reaches the end of the file, it returns EndOfFile.
The following options can be given:
AnchoredSearch  False  whether to require that the text searched for be at the beginning of a record
IgnoreCase  False  whether to treat lowercase and uppercase letters as equivalent
RecordSeparators  {"\r\n", "\n","\r"}  separators for records
WordSearch  False  whether to require that the text searched for appear as a word
WordSeparators  {" ","\t"}  separators for words
The first argument to Find can be InputStream["name",n], or simply if there is only one open input stream with the specified name.
You can open a file or pipe to get an InputStream object using OpenRead.
Find does not close streams after it finishes reading from them.
[http://reference.wolfram.com/language/ref/Find.html]

* Wlfmfn.FindArgMax

* Wlfmfn.FindArgMin

* Wlfmfn.FindClique

* Wlfmfn.FindClusters

* Wlfmfn.FindCurvePath

* Wlfmfn.FindCycle

* Wlfmfn.FindDevices

* Wlfmfn.FindDistributionParameters

* Wlfmfn.FindDivisions

* Wlfmfn.FindEdgeCover

* Wlfmfn.FindEdgeCut

* Wlfmfn.FindEdgeIndependentPaths

* Wlfmfn.FindEulerianCycle

* Wlfmfn.FindFaces

* Wlfmfn.FindFile

* Wlfmfn.FindFit

* Wlfmfn.FindFundamentalCycles

* Wlfmfn.FindGeneratingFunction

* Wlfmfn.FindGeoLocation

* Wlfmfn.FindGeometricTransform

* Wlfmfn.FindGraphCommunities

* Wlfmfn.FindGraphIsomorphism

* Wlfmfn.FindGraphPartition

* Wlfmfn.FindHamiltonianCycle

* Wlfmfn.FindHiddenMarkovStates

* Wlfmfn.FindIndependentEdgeSet

* Wlfmfn.FindIndependentVertexSet

* Wlfmfn.FindInstance

* Wlfmfn.FindIntegerNullVector

* Wlfmfn.FindKClan

* Wlfmfn.FindKClique

* Wlfmfn.FindKClub

* Wlfmfn.FindKPlex

* Wlfmfn.FindLibrary

* Wlfmfn.FindLinearRecurrence

* Wlfmfn.FindList:
FindList["file","text"]
gives a list of lines in the file that contain the specified string.
FindList["file",{"text1","text2",…}]
gives a list of all lines that contain any of the specified strings.
FindList[{"file1",…},…]
gives a list of lines containing the specified strings in any of the .
FindList[files,text,n]
includes only the first n lines found.
Details and Options
FindList returns if it fails to find any record which contains the specified text.
The following options can be given:
AnchoredSearch  False  whether to require that the text searched for be at the beginning of a record
IgnoreCase  False  whether to treat lowercase and uppercase as equivalent
RecordSeparators  {"\r\n", "\n","\r"}  separators for records
WordSearch  False  whether to require that the text searched for appear as a word
WordSeparators  {" ","\t"}  separators for words
The first argument to FindList can be InputStream["name",n], or simply if there is only one open input stream with the specified name.
If FindList opens a file or pipe, it closes it again when it has finished.
[http://reference.wolfram.com/language/ref/FindList.html]

* Wlfmfn.FindMaxValue

* Wlfmfn.FindMaximum

* Wlfmfn.FindMaximumFlow

* Wlfmfn.FindMinValue

* Wlfmfn.FindMinimum

* Wlfmfn.FindMinimumCostFlow

* Wlfmfn.FindMinimumCut

* Wlfmfn.FindPath

* Wlfmfn.FindPeaks

* Wlfmfn.FindPermutation

* Wlfmfn.FindPostmanTour

* Wlfmfn.FindProcessParameters

* Wlfmfn.FindRoot

* Wlfmfn.FindSequenceFunction

* Wlfmfn.FindSettings

* Wlfmfn.FindShortestPath

* Wlfmfn.FindShortestTour

* Wlfmfn.FindSpanningTree

* Wlfmfn.FindThreshold

* Wlfmfn.FindVertexCover

* Wlfmfn.FindVertexCut

* Wlfmfn.FindVertexIndependentPaths

* Wlfmfn.FinishDynamic
* Wlfmfn.FiniteAbelianGroupCount
* Wlfmfn.FiniteGroupCount

* Wlfmfn.FiniteGroupData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.First
* Wlfmfn.FirstCase
* Wlfmfn.FirstPassageTimeDistribution
* Wlfmfn.FirstPosition
* Wlfmfn.FischerGroupFi22
* Wlfmfn.FischerGroupFi23
* Wlfmfn.FischerGroupFi24Prime
* Wlfmfn.FisherHypergeometricDistribution
* Wlfmfn.FisherRatioTest
* Wlfmfn.FisherZDistribution
* Wlfmfn.Fit
* Wlfmfn.FittedModel
* Wlfmfn.FixedPoint

* Wlfmfn.FixedPointList:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Flat
* Wlfmfn.FlatTopWindow
* Wlfmfn.Flatten
* Wlfmfn.FlattenAt
* Wlfmfn.FlipView
* Wlfmfn.Floor
* Wlfmfn.FlowPolynomial
* Wlfmfn.Fold

* Wlfmfn.FoldList:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.FontColor
* Wlfmfn.FontFamily
* Wlfmfn.FontSize
* Wlfmfn.FontSlant
* Wlfmfn.FontSubstitutions
* Wlfmfn.FontTracking
* Wlfmfn.FontVariations
* Wlfmfn.FontWeight

* Wlfmfn.For:
* entity: looping#ql:wl'loop#,
===
For[start,test,incr,body]
executes start, then repeatedly evaluates body and incr until test fails to give True.
Details
For evaluates its arguments in a nonstandard way.
For[start,test,incr] does the loop with a null body.
The sequence of evaluation is test, body, incr. For exits as soon as test fails.
If Break[] is generated in the evaluation of body, the For loop exits.
Continue[] exits the evaluation of body, and continues the loop by evaluating incr.
Unless an explicit Return is used, the value returned by For is Null.
Note that in an example like For[tot=0;i=0,i<3,i++,tot+=f[i]] the roles of the semicolon and comma are reversed relative to C-like programming languages.
[http://reference.wolfram.com/language/ref/For.html]

* Wlfmfn.ForAll:
* wlopr.ForAll, wlopr.sblForall:
ForAll[x,expr]
represents the statement that expr is True for all values of .
ForAll[x,cond,expr]
states that expr is True for all x satisfying the condition cond.
ForAll[{x1,x2,…},expr]
states that expr is True for all values of all the .
Details
ForAll[x,expr] can be entered as . The character can be entered as EscfaEsc or \[ForAll]. The variable x is given as a subscript.
ForAll[x,cond,expr] can be entered as .
In StandardForm, ForAll[x,expr] is output as .
ForAll[x,cond,expr] is output as .
ForAll can be used in such functions as Reduce, Resolve, and FullSimplify.
The condition cond is often used to specify the domain of a variable, as in x?Integers.
ForAll[x,cond,expr] is equivalent to ForAll[x,Implies[cond,expr]].
ForAll[{x1,x2,…},…] is equivalent to .
The value of in ForAll[x,expr] is taken to be localized, as in Block.
[http://reference.wolfram.com/language/ref/ForAll.html]

* Wlfmfn.FormBox
* Wlfmfn.FormBoxOptions
* Wlfmfn.FormFunction
* Wlfmfn.FormLayoutFunction

* Wlfmfn.FormObject
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.FormTheme

* Wlfmfn.Format:
Format[expr]
prints as the formatted form of expr. Assigning values to Format[expr] defines print forms for expressions.
Format[expr,form]
gives a format for the specified form of output.
Details
Standard forms for formatted output are:
CForm  C language input form
FortranForm  Fortran input form
InputForm  one-dimensional form suitable for direct keyboard input
MathMLForm  MathML form
OutputForm  character-based two-dimensional form
StandardForm  standard two-dimensional form
TeXForm  TeX input form
TraditionalForm  form approximating traditional mathematical notation
You can add your own forms for formatted output.
Format[s]:=rhs defines a symbol s to print like rhs.
Format[f[…]]:=rhs defines a function f to print like rhs.
If you specify a new output format for an expression by giving a definition for Format, there is no guarantee that the Wolfram Language will be able to interpret this output format if it is used as input.
Definitions given for Format are used before those given for MakeBoxes.
[http://reference.wolfram.com/language/ref/Format.html]

* Wlfmfn.FormatType

* Wlfmfn.FormulaData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.FormulaLookup
* Wlfmfn.FortranForm
* Wlfmfn.Forward
* Wlfmfn.ForwardBackward
* Wlfmfn.Fourier
* Wlfmfn.FourierCoefficient
* Wlfmfn.FourierCosCoefficient
* Wlfmfn.FourierCosSeries
* Wlfmfn.FourierCosTransform
* Wlfmfn.FourierDCT
* Wlfmfn.FourierDCTFilter
* Wlfmfn.FourierDCTMatrix
* Wlfmfn.FourierDST
* Wlfmfn.FourierDSTMatrix
* Wlfmfn.FourierMatrix
* Wlfmfn.FourierParameters
* Wlfmfn.FourierSequenceTransform
* Wlfmfn.FourierSeries
* Wlfmfn.FourierSinCoefficient
* Wlfmfn.FourierSinSeries
* Wlfmfn.FourierSinTransform
* Wlfmfn.FourierTransform
* Wlfmfn.FourierTrigSeries
* Wlfmfn.FractionBox
* Wlfmfn.FractionBoxOptions
* Wlfmfn.FractionalBrownianMotionProcess
* Wlfmfn.FractionalGaussianNoiseProcess
* Wlfmfn.FractionalPart
* Wlfmfn.Frame
* Wlfmfn.FrameBox
* Wlfmfn.FrameBoxOptions
* Wlfmfn.FrameLabel
* Wlfmfn.FrameMargins
* Wlfmfn.FrameStyle
* Wlfmfn.FrameTicks
* Wlfmfn.FrameTicksStyle
* Wlfmfn.Framed
* Wlfmfn.FrechetDistribution
* Wlfmfn.FreeQ
* Wlfmfn.FrenetSerretSystem
* Wlfmfn.FrequencySamplingFilterKernel
* Wlfmfn.FresnelC
* Wlfmfn.FresnelF
* Wlfmfn.FresnelG
* Wlfmfn.FresnelS
* Wlfmfn.Friday
* Wlfmfn.FrobeniusNumber
* Wlfmfn.FrobeniusSolve
* Wlfmfn.FromCharacterCode
* Wlfmfn.FromCoefficientRules
* Wlfmfn.FromContinuedFraction
* Wlfmfn.FromDMS
* Wlfmfn.FromDigits
* Wlfmfn.FromEntity
* Wlfmfn.Front
* Wlfmfn.FrontEndDynamicExpression
* Wlfmfn.FrontEndEventActions
* Wlfmfn.FrontEndExecute
* Wlfmfn.FrontEndToken
* Wlfmfn.FrontEndTokenExecute
* Wlfmfn.Full

* Wlfmfn.FullDefinition:
FullDefinition[symbol]
prints as the definitions given for symbol, and all symbols on which these depend.
Details
FullDefinition has attribute HoldAll.
FullDefinition[symbol] recursively prints as all definitions for the symbol, and for the symbols that appear in these definitions, unless those symbols have the attribute Protected.
FullDefinition does not show rules associated with symbols that have attribute ReadProtected.
[http://reference.wolfram.com/language/ref/FullDefinition.html]

* Wlfmfn.FullForm
* Wlfmfn.FullGraphics
* Wlfmfn.FullInformationOutputRegulator
* Wlfmfn.FullRegion
* Wlfmfn.FullSimplify

* Wlfmfn.Function:
* wlopr.Function, wlopr.sblAmpersand: &
Function[body]
or body& is a pure function. The formal parameters are (or ), , etc.
Function[x,body]
is a pure function with a single formal parameter x.
Function[{x1,x2,…},body]
is a pure function with a list of formal parameters.
Details
When Function[body] or body& is applied to a set of arguments, (or ) is replaced by the first argument, by the second, and so on. is replaced by the function itself.
If there are more arguments supplied than# i in the function, the remaining arguments are ignored. »
stands for the sequence of all arguments supplied. »
stands for arguments from number n onward. »
When applied to an assocation, is equivalent to , and picks out elements in the association.
In the form , the characters in name can be any combination of alphanumeric characters not beginning with digits.
Function[x,body] can be input as x->body, where the character is entered as EscfnEsc or \[Function].
Function is analogous to ? in LISP or formal logic.
Function has attribute HoldAll. The function body is evaluated only after the formal parameters have been replaced by arguments.
The named formal parameters in Function[{x1,…},body] are treated as local, and are renamed when necessary to avoid confusion with actual arguments supplied to the function. »
Function constructs can be nested in any way. Each is treated as a scoping construct, with named inner variables being renamed if necessary. »
Function[params,body,{attr1,attr2,…}] represents
[http://reference.wolfram.com/language/ref/Function.html]

* Wlfmfn.FunctionDomain
* Wlfmfn.FunctionExpand
* Wlfmfn.FunctionInterpolation
* Wlfmfn.FunctionPeriod
* Wlfmfn.FunctionRange
* Wlfmfn.FunctionSpace
* Wlfmfn.FussellVeselyImportance

Wlfmfn.G

name::
* McsEngl.Wlfmfn.G@cptIt,

http://reference.wolfram.com/language/ref/.html,
* Wlfmfn.GARCHProcess
* Wlfmfn.GCD
* Wlfmfn.GaborFilter
* Wlfmfn.GaborMatrix
* Wlfmfn.GaborWavelet
* Wlfmfn.GainMargins
* Wlfmfn.GainPhaseMargins

* Wlfmfn.GalaxyData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Gamma
* Wlfmfn.GammaDistribution
* Wlfmfn.GammaRegularized
* Wlfmfn.GapPenalty
* Wlfmfn.Gather
* Wlfmfn.GatherBy
* Wlfmfn.GaugeFaceElementFunction
* Wlfmfn.GaugeFaceStyle
* Wlfmfn.GaugeFrameElementFunction
* Wlfmfn.GaugeFrameSize
* Wlfmfn.GaugeFrameStyle
* Wlfmfn.GaugeLabels
* Wlfmfn.GaugeMarkers
* Wlfmfn.GaugeStyle
* Wlfmfn.GaussianFilter
* Wlfmfn.GaussianIntegers
* Wlfmfn.GaussianMatrix
* Wlfmfn.GaussianWindow
* Wlfmfn.GegenbauerC

* Wlfmfn.General:
General
is a symbol to which general system messages are attached.
Details
When you refer to a message with name s::tag in On or Off, the text of the message is obtained from General::tag if no specific message named s::tag exists.
[http://reference.wolfram.com/language/ref/General.html]

* Wlfmfn.GeneralizedLinearModelFit
* Wlfmfn.GenerateConditions
* Wlfmfn.GenerateDocument
* Wlfmfn.GeneratedCell
* Wlfmfn.GeneratedParameters
* Wlfmfn.GeneratingFunction
* Wlfmfn.GenericCylindricalDecomposition

* Wlfmfn.GenomeData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.GenomeLookup
* Wlfmfn.GeoBackground
* Wlfmfn.GeoBoundingBox
* Wlfmfn.GeoBounds
* Wlfmfn.GeoCenter
* Wlfmfn.GeoCircle
* Wlfmfn.GeoDestination
* Wlfmfn.GeoDirection
* Wlfmfn.GeoDisk
* Wlfmfn.GeoDisplacement
* Wlfmfn.GeoDistance

* Wlfmfn.GeoElevationData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.GeoEntities
* Wlfmfn.GeoGraphics
* Wlfmfn.GeoGridLines
* Wlfmfn.GeoGridLinesStyle
* Wlfmfn.GeoGridPosition
* Wlfmfn.GeoGroup
* Wlfmfn.GeoIdentify
* Wlfmfn.GeoLabels
* Wlfmfn.GeoListPlot
* Wlfmfn.GeoLocation
* Wlfmfn.GeoMarker
* Wlfmfn.GeoModel
* Wlfmfn.GeoNearest
* Wlfmfn.GeoPath

* Wlfmfn.GeoPosition:
GeoPosition[{39.67,20.85}]

* Wlfmfn.GeoPositionENU
* Wlfmfn.GeoPositionXYZ
* Wlfmfn.GeoProjection

* Wlfmfn.GeoProjectionData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.GeoRange
* Wlfmfn.GeoRangePadding
* Wlfmfn.GeoRegionValuePlot
* Wlfmfn.GeoScaleBar
* Wlfmfn.GeoStyling
* Wlfmfn.GeoStylingImageFunction
* Wlfmfn.GeoVariant
* Wlfmfn.GeoVisibleRegion
* Wlfmfn.GeoVisibleRegionBoundary
* Wlfmfn.GeoWithinQ
* Wlfmfn.GeoZoomLevel
* Wlfmfn.GeodesicClosing
* Wlfmfn.GeodesicDilation
* Wlfmfn.GeodesicErosion
* Wlfmfn.GeodesicOpening

* Wlfmfn.GeodesyData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.GeologicalPeriodData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.GeometricBrownianMotionProcess
* Wlfmfn.GeometricDistribution
* Wlfmfn.GeometricMean
* Wlfmfn.GeometricMeanFilter
* Wlfmfn.GeometricTransformation
* Wlfmfn.GeometricTransformation3DBoxOptions
* Wlfmfn.GeometricTransformationBoxOptions
* Wlfmfn.GestureHandler

* Wlfmfn.Get:
* wlopr.Get: <<
<<name
reads in a file, evaluating each expression in it and returning the last one.
Get[stream]
reads from a stream, evaluating each expression in it and returning the last one.
Details and Options
If name is the name of a Wolfram Language context, ending with a context mark character, then Get will process this name to find the file to read.
If name is the name of a file, any extension must be included explicitly.
Get can read files of Wolfram Language definitions written by DumpSave.
Get can read notebook files, returning the Wolfram Language expressions they represent.
is equivalent to <<name. The double quotes can be omitted if the name is of the form specified in "Operator Input Forms".
If a file with name file.mx is found to be a directory, Get will look for a file with a name like file.mx/$SystemID/file.mx.
If the file found by <<name is a directory, the Wolfram Language will try to load the file in that directory.
Get by default successively searches for files in the directories specified by the elements of $Path.
Get[name,Path->{"dir1","dir2",…}] successively searches for files in each of the .
Syntax errors in Wolfram Language input files are reported in the standard form: . Get continues attempting to read a file even after a syntax error has been detected. However, if an error is detected, $Context and $ContextPath are reset to the values they had when Get was called.
Get[CloudObject[…]] can be used to get files from the cloud.
Get[Databin[…]] gets the contents of a databin in the Wolfram Data Drop.
During the execution of Get, the global variables $Input and $InputFileName are set to the file name and the full path of the file being read, respectively.
Get["file","key"] reads a file that has been encoded using Encode["source","file","key"].
With the Method option, the stream is opened using the given input stream method. This overrides the default way that Get resolves file names.
[http://reference.wolfram.com/language/ref/Get.html]

* Wlfmfn.GetEnvironment
* Wlfmfn.Glaisher
* Wlfmfn.GlobalClusteringCoefficient
* Wlfmfn.Glow
* Wlfmfn.GoldenRatio
* Wlfmfn.GompertzMakehamDistribution
* Wlfmfn.GoodmanKruskalGamma
* Wlfmfn.GoodmanKruskalGammaTest
* Wlfmfn.Goto
* Wlfmfn.Grad
* Wlfmfn.Gradient
* Wlfmfn.GradientFilter
* Wlfmfn.GradientOrientationFilter

* Wlfmfn.Graph:
Graph[{e1,e2,…}]
yields a graph with edges .
Graph[{v1,v2,…},{e1,e2,…}]
yields the graph with vertices and edges .
Graph[{…,wi[vi,…],…},{…,wj[ej,…],…}]
yields a graph with vertex and edge properties defined by the symbolic wrappers .
Details and Options
Graph[…] displays in a notebook as a plot of a graph.
Graph[…] is always converted to an optimized standard form with structure Graph[vertices,edges,…].
Graph is treated as a raw object by functions like AtomQ, and for purposes of pattern matching.
An undirected edge between u and v can be given as or UndirectedEdge[u,v]. The character can be entered as EscueEsc.
A directed edge from u to v can be given as , , or DirectedEdge[u,v]. The character can be entered as EscdeEsc.
An undirected graph is specified using a collection of undirected edges.
A directed graph is specified using a collection of directed edges.
The following special wrappers can be used for vertices and edges:
Annotation[a,label]  provide an annotation
Button[a,action]  define an action to execute when the element is clicked
EventHandler[a,…]  define a general event handler for the element
Hyperlink[a,uri]  make the element act as a hyperlink
Labeled[a,…]  display the element with labeling
PopupWindow[a,cont]  attach a popup window to the element
StatusArea[a,label]  display in the status area when the element is moused over
Style[a,opts]  show the element using the specified styles
Tooltip[a,label]  attach an arbitrary tooltip to the element
The possible label placements are given in VertexLabels and EdgeLabels, respectively.
Property can be used to associate properties with vertices and edges:
Property[v,name->value]  associate the property with the vertex v
Property[e,name->value]  associate the property with the edge e
The following standard properties are supported for vertices:
VertexLabels  labels and label placement for vertex
VertexCoordinates  center coordinates for vertex
VertexShape  graphic shape for vertex
VertexSize  size of vertex
VertexStyle  style for vertex
VertexShapeFunction  shape-rendering function for vertex
VertexWeight  weight for vertex
The following standard properties are supported for edges:
EdgeLabels  labels for label placement for edge
EdgeStyle  style for edge
EdgeShapeFunction  shape-rendering function for edge
EdgeWeight  weight for edge
Graph has the same options as Graphics, with the following additions and changes:
DirectedEdges  Automatic  whether to interpret Rule as DirectedEdge
EdgeLabels  Automatic  labels and placements for edges
EdgeLabelStyle  Automatic  style to use for edge labels
EdgeShapeFunction  Automatic  generate graphic shapes for edges
EdgeStyle  Automatic  styles for edges
EdgeWeight  Automatic  weights for edges
GraphLayout  Automatic  how to lay out vertices and edges
GraphStyle  Automatic  overall style for graph elements
GraphHighlight  {}  graph elements to highlight
GraphHighlightStyle  Automatic  style for highlight
PerformanceGoal  $PerformanceGoal  aspects of performance to try to optimize
Properties  {}  properties for graph, edges, and vertices
VertexCoordinates  Automatic  coordinates for vertices
VertexLabels  Automatic  labels and placements for vertices
VertexLabelStyle  Automatic  style to use for vertex labels
VertexShape  Automatic  graphic shape for vertices
VertexShapeFunction  Automatic  generate graphic shapes for vertices
VertexSize  Medium  size of vertices
VertexStyle  Automatic  styles for vertices
VertexWeight  Automatic  weights for vertices
Properties->{a->{name1->val1,…},…} associates the property etc. with a that can be a vertex, edge, or the graph itself. The following strings for a have special meanings:
"DefaultEdgeProperties"  default edge properties
"DefaultVertexProperties"  default vertex properties
"GraphProperties"  properties for the graph itself
With the setting VertexCoordinates->Automatic, the placement of vertices and routing of edges is computed automatically, based on the setting for GraphLayout.
Style and other specifications for edges are effectively applied in the order GraphStyle, EdgeStyle, GraphHighlightStyle, Style and other wrappers, and EdgeShapeFunction, with later specifications overriding earlier ones.
Style and other specifications for vertices are effectively applied in the order GraphStyle, VertexStyle, GraphHighlightStyle, Style and other wrappers, and VertexShapeFunction, with later specifications overriding earlier ones.
Label style and other specifications for edge labels are effectively applied in the order GraphStyle, EdgeLabelStyle, GraphHighlightStyle, Labeled, and EdgeLabels, with later specifications overriding earlier ones.
Label style and other specifications for vertex labels are effectively applied in the order GraphStyle, VertexLabelStyle, GraphHighlightStyle, Labeled, and VertexLabels, with later specifications overriding earlier ones.
[http://reference.wolfram.com/language/ref/Graph.html]

* Wlfmfn.Graph3D

* Wlfmfn.GraphAssortativity

* Wlfmfn.GraphAutomorphismGroup

* Wlfmfn.GraphCenter

* Wlfmfn.GraphComplement

* Wlfmfn.GraphData:
GraphData[name]
gives a graph with the specified name.
GraphData[name,"property"]
gives the value for the specified property for a named graph.
GraphData["class"]
gives a list of named graphs in the specified class.
GraphData[n]
gives a list of named graphs with n vertices.
Details
Graphs can be specified by standard names such as and .
GraphData[patt] gives a list of all graph names that match the string pattern patt.
GraphData[] gives a list of all standard named graphs. GraphData[All] gives all available graphs.
GraphData[name] gives a Graph object.
GraphData[{n,i},…] gives data for the i^(th) simple graph with n vertices.
GraphData[{"type",id},…] gives data for the graph of the specified type with identifier id. The identifier is typically an integer or lists of integers.
GraphData[;;n] gives a list of standard named graphs with =n vertices.
GraphData[m;;n] gives a list of standard named graphs with m through n vertices.
GraphData["class",n] etc. gives a list of graphs with n vertices etc. in the specified class.
GraphData["Classes"] gives a list of all supported classes.
GraphData["Properties"] gives a list of properties available for graphs.
Basic graph properties include:
"AdjacencyMatrices"  all adjacency matrices
"AdjacencyMatrix"  adjacency matrix
"AdjacencyMatrixCount"  number of distinct adjacency matrices
"DistanceMatrix"  distance matrix
"EdgeCount"  total number of edges
"EdgeIndices"  pairs of vertex indices for each edge
"EdgeList"  edges specified using undirected edges (?)
"EdgeRules"  edges specified as vertex connectivity rules
"FaceCount"  total number of faces (for a planar graph)
"FaceIndices"  indices of faces (for a planar graph)
"IncidenceMatrix"  incidence matrix
"LaplacianMatrix"  Laplacian matrix
"NormalizedLaplacianMatrix"  normalized Laplacian matrix
"VertexCount"  total number of vertices
Properties related to graph connectivity include:
"AlgebraicConnectivity"  second smallest eigenvalue of the Laplacian matrix
"Connected"  connected
"ConnectedComponentCount"  number of connected components
"ConnectedComponentGraphNames"  names of graphs induced on connected components
"ConnectedComponentIndices"  indices of connected components
"Disconnected"  disconnected
"EdgeConnectivity"  minimum edge deletions to disconnect the graph
"Triangulated"  triangulated (maximally planar)
"VertexConnectivity"  minimum vertex deletions to disconnect the graph
Properties related to graph display include:
"AllImages"  list of images of all available layouts for the graph
"AllVertexCoordinates"  vertex coordinates for all available layouts
"EmbeddingClasses"  list of embedding class tags, one to an embedding
"EmbeddingClasses3D"  list of 3D embedding class tags, one to a 3D embedding
"Embeddings"  alternate name for "AllVertexCoordinates"
"Embeddings3D"  vertex coordinates for all available 3D layouts
"Image"  image of the default layout
"Image3D"  image embedded in 3D
"LabeledImage"  image of the default layout with vertex numbers included
"VertexCoordinates"  vertex coordinates for the default layout
Properties returning Graph objects include:
"CanonicalGraph"  canonical version of graph that is isomorphic to the original
"CochromaticGraphs"  graphs with the same chromatic polynomial
"ComplementGraph"  graph complement
"ConnectedComponentGraphs"  connected components
"CoresistanceGraphs"  graphs with the same resistance multiset
"CospectralGraphs"  graphs with the same spectrum
"DualGraph"  dual graph
"Graph"  graph object
"Graph3D"  graph object with 3D embedding
"LineGraph"  line graph
"LocalGraph"  local graph
GraphData[name,"property","outputtype"] gives graph properties in the format specified by , which, depending on , may be , , , , or , .
Annotations related to graph output include:
"CayleyGraphGeneratingGroups","outputtype"  groups generating graph as a Cayley graph
"CochromaticGraphs","outputtype"  cochromatic graphs
"ComplementGraph","outputtype"  complement graph
"ConnectedComponentGraphs","outputtype"  connected components
"CoresistanceGraphs","outputtype"  coresistance graphs
"CospectralGraphs","outputtype"  cospectral graphs
"DualGraph","outputtype"  dual graph
"LineGraph","outputtype"  line graph
"LocalGraph","outputtype"  local graph
"PolyhedralEmbeddings","outputtype"  polyhedra having given graph as a skeleton
GraphData[name,"property","type"] gives a set of specific graphs, images, or embeddings, where in 2D may include , , , , , , , , , , , , , , , and ; and in 3D may include , , , and .
Annotations related to graph display include:
"Embeddings","type"  embeddings of a given type
"Embeddings3D","type"  3D embeddings of a given type
"Graph","type"  graph of a given type
"Graphs","type"  graphs of a given type
"Graph3D","type"  3D-embedded graph of a given type
"Graphs3D","type"  3D-embedded graphs of a given type
"Images","type"  images of a given type
"Images3D","type"  3D images of a given type
Properties giving pure functions representing graph polynomials include:
"CharacteristicPolynomial"  characteristic polynomial of the adjacency matrix
"ChromaticPolynomial"  chromatic polynomial
"CliquePolynomial"  clique polynomial
"DetourPolynomial"  characteristic polynomial of the detour matrix
"CyclePolynomial"  cycle polynomial
"DistancePolynomial"  distance polynomial
"EdgeCoverPolynomial"  edge cover polynomial
"FlowPolynomial"  flow polynomial
"IdiosyncraticPolynomial"  Tutte's idiosyncratic polynomial
"IndependencePolynomial"  independence polynomial
"LaplacianPolynomial"  Laplacian polynomial
"MatchingGeneratingPolynomial"  matching generating polynomial
"MatchingPolynomial"  matching polynomial
"RankPolynomial"  rank polynomial
"ReliabilityPolynomial"  reliability polynomial
"SigmaPolynomial"  chromatic polynomial in falling factorial basis
"TuttePolynomial"  Tutte polynomial
"VertexCoverPolynomial"  vertex cover polynomial
Coloring-related graph properties include:
"ChromaticallyUnique"  no other graph shares the chromatic polynomial
"ChromaticInvariant"  chromatic invariant
"ChromaticNumber"  chromatic number
"EdgeChromaticNumber"  edge chromatic number
"FractionalChromaticNumber"  fractional chromatic number
"FractionalEdgeChromaticNumber"  fractional edge chromatic number
"MinimumVertexColoring"  minimum vertex coloring
"MinimumEdgeColoring"  minimum edge coloring
"MinimumWeightFractionalColoring"  minimum weight fractional coloring
Graph index properties include:
"BalabanIndex"  Balaban index
"CyclomaticNumber"  minimum number of edges to remove to turn acyclic
"DetourIndex"  detour index
"HararyIndex"  Harary index
"HosoyaIndex"  Hosoya index
"KirchhoffIndex"  Kirchhoff index
"KirchhoffSumIndex"  Kirchhoff sum index
"MolecularTopologicalIndex"  molecular topological (second Schultz) index
"StabilityIndex"  stability index
"TopologicalIndex"  topological (first Schultz) index
"WienerIndex"  Wiener index
"WienerSumIndex"  Wiener sum index
"ZIndex"  Z index
Local graph properties include:
"BridgeCount"  number of bridges
"Bridges"  list of edges whose removal would disconnect the graph
"IsolatedPoints"  vertices of degree 0
"LeafCount"  number of leaves
"Leaves"  vertices of degree 1
Global graph properties include:
"Anarboricity"  maximum number of edge-disjoint nonacyclic subgraphs whose union is the original graph
"Apices"  list of vertices whose removal renders the graph planar
"Arboricity"  minimum number of edge-disjoint acyclic subgraphs whose union is the original graph
"ArticulationVertices"  list of vertices whose removal would disconnect the graph
"Center"  indices of vertices with graph eccentrity equal to radius
"Circumference"  circumference of the graph
"Coarseness"  maximum number of line-disjoint nonplanar subgraphs
"Corank"  edge count minus vertex count plus connected component count
"CrossingNumber"  minimum crossings in an embedding of the graph
"Degrees"  degrees for each vertex in vertex order
"DegreeSequence"  vertex degree sorted from smallest to largest
"DeterminedByResistance"  no other graph shares the same multiset of resistances
"DeterminedBySpectrum"  no other graph shares the spectrum
"DetourMatrix"  matrix of longest path distances
"Diameter"  diameter of the graph
"Eccentricities"  eccentricities of each vertex
"Genus"  minimum number of handles to get a planar embedding
"LaplacianSpectrum"  eigenvalues of the Laplacian matrix
"MaximumLeafNumber"  largest number of tree leaves in any spanning trees
"MaximumVertexDegree"  largest vertex degree
"MeanDistance"  mean distance between vertices
"MinimumVertexDegree"  smallest vertex degree
"Periphery"  indices of vertices with graph eccentricity equal to diameter
"Rank"  vertex count minus connected component count
"RectilinearCrossingNumber"  minimum crossings in a straight-line embedding
"ResistanceMatrix"  resistances between pairs of vertices for unit-resistance edges
"Skewness"  minimum number of edges whose removal would result in a planar graph
"SpanningTreeCount"  number of spanning trees
"Spectrum"  eigenvalues of the adjacency matrix
"SpectrumSignature"  tallies of adjacency matrix eigenvalues
"Thickness"  minimum number of planar subgraphs whose union is the original graph
"ToroidalCrossingNumber"  minimum crossings in a toroidal embedding
Clique-related properties include:
"BicliqueNumber"  biclique number
"BipartiteDimension"  bipartite dimension
"CliqueCount"  number of cliques
"CliqueCoveringNumber"  minimum number of maximum cliques needed to cover the vertex set
"CliqueNumber"  number of vertices in a maximum clique
"CliquePolynomial  clique polynomial
"Cliques  cliques
"FractionalCliqueNumber"  fractional clique number
"MaximalCliqueCount"  number of distinct maximal cliques
"MaximalCliques"  maximal cliques
"MaximalCliqueSignature"  tallies of maximal clique sizes
"MaximumCliqueCount"  number of maximum cliques
"MaximumCliques"  maximum cliques
"MinimumCliqueCoveringCount"  number of minimum clique coverings
"MinimumCliqueCoverings"  minimum clique coverings
Cover-related properties include:
"CliqueCoveringNumber"  minimum number of maximum cliques needed to cover the vertex set
"EdgeCoverCount"  number of edge covers
"EdgeCoverNumber"  size of the minimum edge cover
"EdgeCoverPolynomial"  edge cover polynomial
"EdgeCovers"  edge covers
"MinimumCliqueCoveringCount"  number of minimum clique coverings
"MinimumCliqueCoverings"  minimum clique coverings
"MinimumEdgeCoverCount"  number of minimum edge covers (matchings)
"MinimumEdgeCovers"  minimum edge covers (matchings)
"MinimumVertexCoverCount"  number of minimum vertex covers
"MinimumVertexCovers"  minimum vertex covers
"VertexCoverCount"  number of vertex covers
"VertexCoverNumber"  size of a minimum vertex cover
"VertexCoverPolynomial"  vertex cover polynomial
Independent set-related properties include:
"BipartiteDimension"  bipartite dimension
"ConnectedDominationNumber"  smallest possible size of a connected dominating set
"DominatingSetCount"  number of dominating sets
"DominatingSets"  dominating sets
"DominationNumber"  smallest possible size of a dominating set
"EdgeIndependenceNumber"  tallies of independent edge set sizes
"IndependenceNumber"  size of the largest independent vertex set
"IndependencePolynomial"  independence polynomial
"IndependentEdgeSetCount"  number of independent edge sets
"IndependentEdgeSets"  independent edge sets
"IndependentVertexSetCount"  number of independent vertex sets
"IndependentVertexSets"  independent vertex sets
"IntersectionNumber"  intersection number
"MatchingGeneratingPolynomial"  matching-generating polynomial
"MatchingPolynomial"  matching-generating polynomial
"MatchingNumber"  degree of the matching-generating polynomial
"MaximalIndependentEdgeSetCount"  number of maximal independent edge sets (matchings)
"MaximalIndependentEdgeSets"  maximal independent edge sets (matchings)
"MaximalIndependentEdgeSetSignature"  tallies of maximal independent edge set sizes
"MaximalIndependentVertexSetCount"  number of maximal independent vertex sets
"MaximalIndependentVertexSets"  maximal independent vertex sets
"MaximumIndependentEdgeSetCount"  number of maximum independent edge sets (matchings)
"MaximumIndependentEdgeSets"  maximum independent edge sets (matchings)
"MaximumIndependentVertexSetCount"  number of maximum independent vertex sets
"MaximumIndependentVertexSets"  maximum independent vertex sets
"MaximumIndependentVertexSetSignature"  tallies of maximal independent vertex set sizes
Symmetry-related properties include:
"ArcTransitivity"  maximal order s of an s-arc-transitive graph
"AutomorphismCount"  order of the vertex automorphism group
"AutomorphismGroup"  graph automorphism permutation group
"CayleyGraphGeneratingGroupNames"  names of groups that generate the graph as a Cayley graph
"CayleyGraphGeneratingGroups"  groups that generate the graph as a Cayley graph
Information-related properties include:
"Bandwidth"  graph bandwidth
"CheegerConstant"  Cheeger constant
"Conductance"  graph conductance
"Likelihood"  probability for graph to be generated by random number and corresponding vertex -subset picking
"LovaszNumber"  Lovαsz number (estimate of Shannon capacity)
"Pathwidth"  graph pagewidth
"ShannonCapacity"  effective alphabet size in a graph-represented communication model
"TreeDepth"  tree depth
"Treewidth"  graph treewidth
Path- and cycle-related properties include:
"ChordlessCycleSignature"  tallies of chordless cycle lengths
"ChordlessCycles"  (simple) cycles with no chords
"ComplementOddChordlessCycles"  odd chordless cycles of the graph complement
"ComplementOddChordlessCycleSignature"  tallies of lengths of odd chordless cycles of the graph complement
"CyclePolynomial"  cycle polynomial
"DirectedCycleCount"  number of distinct directed cycles
"DirectedCycles"  lists of directed cycles
"DirectedEulerianCycleCount"  number of distinct directed Eulerian cycles
"DirectedEulerianCycles"  lists of directed Eulerian cycles
"DirectedHamiltonianCycleCount"  number of distinct directed Hamiltonian cycles
"DirectedHamiltonianCycles"  lists of directed Hamiltonian cycles
"DirectedHamiltonianPathCount"  number of distinct directed Hamiltonian paths
"DirectedHamiltonianPaths"  lists of directed Hamiltonian paths
"DirectedHamiltonianWalkCount"  number of distinct directed Hamiltonian walks
"DirectedHamiltonianWalks"  lists of directed Hamiltonian walks
"FaceSignature"  tallies of face lengths
"Girth"  length of the shortest cycle
"HamiltonDecompositions"  partitions of edge set into Hamiltonian cycles
"HamiltonianNumber"  length of a shortest Hamiltonian walk
"KCyclicIndices"  indices that label the graph as the th -cyclic graph
"LCFSignature"  tally of the orders of all possible LCF signatures
"OddChordlessCycles"  chordless cycles of odd length
"OddChordlessCycleSignature"  tallies of numbers of odd chordless cycles by length
"Radius"  radius of the graph
"UndirectedCycleCount"  number of distinct undirected (simple) cycles
"UndirectedCycles"  lists of undirected (simple) cycles
"UndirectedEulerianCycleCount"  number of distinct undirected (simple) Eulerian cycles
"UndirectedEulerianCycles"  lists of undirected (simple) Eulerian cycles
"UndirectedHamiltonianCycleCount"  number of distinct undirected (simple) Hamiltonian cycles
"UndirectedHamiltonianCycles"  lists of undirected (simple) Hamiltonian cycles
"UndirectedHamiltonianPathCount"  number of distinct undirected (simple) Hamiltonian paths
"UndirectedHamiltonianPaths"  lists of undirected (simple) Hamiltonian paths
"UndirectedHamiltonianWalkCount"  number of distinct undirected (simple) Hamiltonian walks
"UndirectedHamiltonianWalks"  lists of distinct undirected (simple) Hamiltonian walks
Naming-related properties include:
"AlternateNames"  alternate English names
"AlternateStandardNames"  alternate standard Wolfram Language names
"CochromaticGraphNames"  graphs sharing the same chromatic polynomial
"ComplementGraphName"  name of the complement graph
"ConnectedComponentGraphNames"  graphs making up the connected component
"CoresistanceGraphNames"  graphs sharing the same resistance distance multiset
"CospectralGraphNames"  graphs sharing the same spectrum
"DualGraphName"  name of the graph dual
"Entity"  graph entity
"LineGraphName"  name of the line graph
"LocalGraphName"  name of the local graph
"Name"  English name
"Names"  English name and alternate names
"StandardName"  standard Wolfram Language name
"StandardNames"  standard and alternate Wolfram Language names
Notation-related properties include:
"LCFNotations"  graph notations for embeddings based on Hamiltonian cycles
"Notation"  primary notation used for graph
"NotationRules"  rules for notations specifying the graph
GraphData["class"] gives a list of named graphs in the specified class. GraphData[name,"class"] gives True or False, depending on whether the graph corresponding to name is in the specified class.
GraphData[name,"Classes"] gives a list of the classes in which the graph corresponding to name appears.
Basic classes of graphs include:
"Bipartite"  bipartite (two components connected by every edge)
"Nonplanar"  nonplanar (requires crossings)
"Planar"  planar (no crossings)
"Tree"  tree (no cycles)
Classes based on vertex degrees include:
"Cubic"  each vertex is of degree 3
"Octic"  each vertex is of degree 8
"Quartic"  each vertex is of degree 4
"Quintic"  each vertex is of degree 5
"Regular"  each vertex is of the same degree
"Septic"  each vertex is of degree 7
"Sextic"  each vertex is of degree 6
"TwoRegular"  each vertex of of degree 2
Classes based on traversals include:
"Acyclic"  free of cycles
"AlmostHamiltonian"  -node graph with Hamiltonian number
"Bridged"  contains at least one bridge
"Bridgeless"  free of bridges
"Chordal"  free of chordless cycles
"Cyclic"  contains at least one cycle
"Eulerian"  has a closed cycle containing every edge once
"HamiltonConnected"  every pair of vertices bounds a Hamiltonian path
"HamiltonDecomposable"  has a partition of its edge set into Hamiltonian cycles
"Hamiltonian"  has a closed cycle containing every vertex once
"HamiltonLaceable"  Hamilton-connected with bipartitioned endpoints
"HStarConnected"  either Hamilton-connected or Hamilton-laceable
"Hypohamiltonian"  one-vertex-removed graphs are Hamiltonian
"Hypotraceable"  one-vertex-removed graphs are traceable
"KempeCounterexample"  counterexample to Kempe's 4-coloring algorithm
"MaximallyNonhamiltonian"  maximally nonhamiltonian
"Noneulerian"  not Eulerian
"Nonhamiltonian"  not Hamiltonian
"SquareFree"  free of 4-cycles
"Traceable"  contains a Hamiltonian path
"TriangleFree"  free of 3-cycles
"Unicyclic"  possesses a single cycle
"Untraceable"  not traceable
Classes based on chess boards include:
"Antelope"  moves of an antelope generalized chess piece
"Bishop"  moves of two (white and black) chess bishops
"BlackBishop"  moves of a chess black bishop
"Fiveleaper"  moves of a fiveleaper generalized chess piece
"King"  moves of a chess king
"Knight"  moves of a chess knight
"Queen"  moves of a chess queen
"Rook"  moves of a chess rook
"TriangularHoneycombAcuteKnight"  moves of an acute knight on a triangular honeycomb chess board
"TriangularHoneycombBishop"  moves of a bishop on a triangular honeycomb chess board
"TriangularHoneycombKing"  moves of a king on a triangular honeycomb chess board
"TriangularHoneycombObtuseKnight"  moves of an obtuse knight on a triangular honeycomb chess board
"TriangularHoneycombQueen"  moves of a queen on a triangular honeycomb chess board
"TriangularHoneycombRook"  moves of a rook on a triangular honeycomb chess board
"WhiteBishop"  moves of a chess white bishop
Classes based on symmetry and regularity include:
"ArcTransitive"  ordered pairs of adjacent vertices have identical environments
"Asymmetric"  not symmetric
"Chang"  strongly regular on 28 vertices
"DistanceRegular"  all vertices have identical distance sets
"DistanceTransitive"  all pairs of vertices have identical distance environments
"EdgeTransitive"  all edges have identical environments
"Identity"  automorphism group is of order unity
"LocallyPetersen"  locally Petersen
"Paulus"  strongly regular on 25 or 26 vertices
"Semisymmetric"  regular and edge transitive but not vertex transitive
"StronglyRegular"  strongly regular
"Symmetric"  both edge transitive and vertex transitive
"Taylor"  distance regular with intersection array of form
"VertexTransitive"  all vertices have identical environments
"WeaklyRegular"  regular, but not strongly regular
"ZeroSymmetric"  vertex-transitive cubic with edges partitioned into three orbits
"ZeroTwo"  every two vertices have either 0 or 2 common neighbors
Classes based on forbidden graphs include:
"Beineke"  Beineke graph (not a line graph if these are forbidden)
"Kuratowki"  Kuratowki graph ( or )
"Metelsky"  Metelsky graph (not a line graph if these are forbidden and )
Special classes include:
"Apex"  apex graph
"Bicolorable"  two or fewer vertex colors needed
"Bicubic"  bipartite and cubic
"Cage"  smallest graph of a given girth
"Cayley"  Cayley graph
"ClawFree"  free of the claw graph
"Conference"  conference graph
"CriticalNonplanar"  nonplanar and removal of any vertex gives a planar graph
"Fullerene"  planar cubic with all bounded faces pentagons or hexagons
"Fusene"  planar 2-connected with all bounded faces hexagons
"Imperfect"  imperfect (i.e., not perfect) graph
"Incidence"  incidence graph of a configuration
"Integral"  spectrum consists of integers
"LCF"  describable in LCF notation (regular Hamiltonian)
"Line"  line graph
"Local"  graph is locally a particular graph for all vertices
"Moore"  graphs with the Moore property
"NoPerfectMatching"  has no perfect matching
"Perfect"  perfect graph
"PerfectMatching"  has a matching with n/2 vertices
"SelfComplementary"  isomorphic to its complement
"SelfDual"  isomorphic to its dual
"Snark"  snark graph
"StronglyPerfect"  every induced subgraph H has an independent set meeting all maximal cliques of
"Toroidal"  graph can be embedded on a torus
"UnitDistance"  embeddable with edges of unit length
"WeaklyPerfect"  clique number equals chromatic number
"WellCovered"  every minimal vertex cover has the same size
Graph centralities include:
"BetweennessCentralities"  betweenness centralities
"ClosenessCentralities"  closeness centrailitities
"DegreeCentralities"  vertex degrees
"EccentricityCentralities"  reciprocal of vertex eccentricities
"EdgeBetweennessCentralities"  edge betweenness centralities
"EigenvectorCentralities"  eigenvector centrailitities
"HITSCentrailities"  hub centrailitities
"KatzCentralities"  Katz centrailitities
"PageRankCentralities"  page rank centrailitities
"RadialityCentralities"  radiality centralities
"StatusCentralities"  status centralities
Classes associated with polyhedra include:
"Antiprism"  skeleton of an antiprism
"Archimedean"  skeleton of one of the 13 Archimedean solids
"ArchimedeanDual"  skeleton of one of the 13 Archimedean duals
"Platonic"  skeleton of one of the five Platonic solids
"Polyhedral"  skeleton of a polyhedron
"Prism"  skeleton of a prism
"RegularPolychoron"  skeleton of one of the six regular four-dimensional solids
Special classes of trees and their generalization include:
"Cactus"  connected graph in which any two graph cycles have no edge in common
"Caterpillar"  vertices are on a central stalk or only one edge away from a stalk
"Centipede"  vertices and edges correspond to the configuration of a comb
"Forest"  a collection of trees (same as "Acyclic")
"Halin"  Halin graph
"Lobster"  removal of leaves gives a caterpillar
"Pseudoforest"  contains at most one cycle per connected component
"Pseudotree"  a connected pseudoforest
"Spider"  one vertex of degree at most 3 and all others with degree at most 2
"Tripod"  a tree having exactly three tree leaves
Classes of graphs indexed by one or more integers include:
"Apollonian"  connectivity graph of a 2D Apollonian gasket
"BipartiteKneser"  vertices represent k subsets and subsets of
"Book"  graph Cartesian product of a star and a two-path graph
"Bouwer"  regular graphs including members that are symmetric but not arc transitive
"Caveman"  caveman graph
"Circulant"  n vertices each with identical relative adjacencies
"Complete"  all pairs of vertices are connected
"CompleteBipartite"  all pairs connected across two disjoint sets of vertices
"CompleteTripartite"  all neighboring pairs connected across three disjoint sets of vertices
"Cone"  graph join of a cycle graph and empty graph
"Crown"  complete bipartite with horizontal edges removed
"Cycle"  a single cycle through n vertices
"Cyclotomic"  graph with vertices adjacent if their difference is a cube in
"Doob"  Cartesian product of Shrikhande graphs and a Hamming graph
"Empty"  n vertices with no edges
"Fan"  graph join of an empty graph with a path graph
"FoldedCube"  folded n-hypercube graph
"Gear"  a wheel with vertices added between the vertices of the outer cycle
"GeneralizedPolygon"  an incidence plane based on a symmetric binary relation
"GeneralizedPrism"  a generalized (stacked) prism graph
"Grid"  an array of points with grid connectivity
"Haar"  Haar (regular bipartite) graph of index n
"Hadamard"  graph corresponding to a matrix satisfying
"HalvedCube"  halved n-hypercube graph
"Hamming"  direct product of m complete graphs of size n
"Hanoi"  a Hanoi graph
"Harary"  a Harary graph
"Helm"  a wheel with a pendant edge adjoined at each cycle vertex
"Hypercube"  an n-dimensional hypercube
"IGraph"  generalization of a generalized Petersen graph
"Johnson"  graph describing adjacencies in the m-subsets of an n-set
"Keller"  Keller graph
"Kneser"  vertices represent k-subsets of
"Ladder"  a -vertex ladder graph
"LadderRung"  graph union of n two-paths
"Lattice"  a line graph of the complete bipartite graph
"MoebiusLadder"  an n-sided prism graph with a half-twist
"Mycielski"  a triangle-free graph with chromatic number n
"Odd"  an odd graph
"Paley"  graph with vertices adjacent if their difference is a square in
"Pan"  an n-cycle connected to a singleton graph by a bridge
"Path"  an n-vertex tree with no branches
"PermutationStar"  a "star graph" on permutations of with edges at swaps
"SierpinskiCarpet"  connectivity graph of the Sierpinski carpet
"SierpinskiSieve"  connectivity graph of the Sierpinski sieve
"Square"  vertices represent the ordered pairs of
"StackedBook"  graph Cartesian product of a star and an n-path graph
"Star"  a center vertex connected to vertices
"Sun"  a complete graph with erected triangles on outer edges
"Sunlet"  a cycle with pendant edges
"Tetrahedral"  an -Johnson graph
"TorusGrid"  grid graph on a torus
"Triangular"  an -Johnson graph
"TriangularGrid"  a triangular grid graph
"Turan"  a Turαn graph on n vertices that is -clique free
"Wheel"  a cycle with all vertices connected to a center
"Windmill"  m copies of the complete graph with a vertex in common
GraphData[name,"property","ann"] or GraphData["property","ann"] gives various annotations associated with a property. Typical annotations include:
"Description"  short textual description of the property
"Information"  hyperlink to additional information
"LongDescription"  longer textual description of the property
"Note"  additional information about the property
"Value"  the value of the property
Using GraphData may require internet connectivity.
[http://reference.wolfram.com/language/ref/GraphData.html]

* Wlfmfn.GraphDensity

* Wlfmfn.GraphDiameter

* Wlfmfn.GraphDifference

* Wlfmfn.GraphDisjointUnion

* Wlfmfn.GraphDistance

* Wlfmfn.GraphDistanceMatrix

* Wlfmfn.GraphEmbedding

* Wlfmfn.GraphHighlight

* Wlfmfn.GraphHighlightStyle

* Wlfmfn.GraphHub

* Wlfmfn.GraphIntersection

* Wlfmfn.GraphLayout

* Wlfmfn.GraphLinkEfficiency

* Wlfmfn.GraphPeriphery

* Wlfmfn.GraphPlot

* Wlfmfn.GraphPlot3D

* Wlfmfn.GraphPower

* Wlfmfn.GraphPropertyDistribution

* Wlfmfn.GraphQ

* Wlfmfn.GraphRadius

* Wlfmfn.GraphReciprocity

* Wlfmfn.GraphStyle

* Wlfmfn.GraphUnion

* Wlfmfn.Graphics:
Graphics[primitives,options]
represents a two-dimensional graphical image.
Details and Options
Graphics is displayed in StandardForm as a graphical image. In InputForm it is displayed as an explicit list of primitives.
The following graphics primitives can be used: »
Arrow[{{x1,y1},…}]  arrow
AASTriangle[a,ί,a]  angle-angle-side triangle
ASATriangle[a,c,ί]  angle-side-angle triangle
BezierCurve[{pt1,pt2,…}]  Bιzier curve
BSplineCurve[{pt1,pt2,…}]  B-spline curve
Circle[{x,y},r]  circle
Circumsphere[{pt1,…}]  circumcircle specified by three points
ConicHullRegion[…]  linear cone
Disk[{x,y},r]  filled disk
FilledCurve[{seg1,seg2,…}]  filled curve
HalfLine[{pt1,pt2}]  half-infinite line, or ray
HalfPlane[{pt1,pt2},v]  half-infinite plane
InfiniteLine[{pt1,pt2}]  infinite line
Inset[obj,…]  inset object
GraphicsComplex[pts,prims]  complex of graphics objects
GraphicsGroup[{g1,g2,…}]  objects selectable as a group
JoinedCurve[{seg1,seg2,…}]  joined curve segments
Line[{pt1,…}]  line segments
Locator[{x,y}]  dynamic locator
Parallelogram[pt,{v1,v2}]  parallelogram
Point[{x,y}]  point
Polygon[{pt1,…}]  polygon
Raster[array]  array of gray or colored squares
Rectangle[{xmin,ymin},{xmax,ymax}]  rectangle
Simplex[{pt1,…}]  simplex
SASTriangle[a,?,b]  side-angle-side triangle
SSSTriangle[a,b,c]  side-side-side triangle
Text[expr,{x,y}]  text
Triangle[{pt1,…}]  triangle
The following graphics directives can be used: »
AbsoluteDashing[{w1,…}]  absolute line dashing specification
AbsolutePointSize[d]  absolute point size specification
AbsoluteThickness[w]  absolute line thickness specification
Arrowheads[specs]  arrowheads specification
CapForm[type]  line cap specification
CMYKColor[c,m,y,k]  color specification
Dashing[{w1,…}]  line dashing specification
Directive[g1,g2,…]  composite graphics directive
EdgeForm[g]  edge drawing specification
FaceForm[g]  face drawing specification
GrayLevel[i]  intensity specification
Hue[h]  hue specification
JoinForm[type]  line joining specification
Opacity[a]  opacity specification
PointSize[d]  point size specification
RGBColor[r,g,b]  color specification
Texture[obj]  texture specification
Thickness[w]  line thickness specification
The following wrappers can be used at any level:
Annotation[obj,label]  give an annotation
Button[obj,action]  make obj act as a button
Dynamic[obj]  use the dynamically updated current value
EventHandler[obj,…]  attach an event handler
Hyperlink[obj,URI]  make obj a hyperlink
Mouseover[obj,over]  specify a mouseover form
PopupWindow[obj,cont]  attach a popup window
StatusArea[obj,label]  specify a label to appear in the status area
Style[obj,opts]  specify a style
Tooltip[obj,label]  attach a tooltip
The following options can be given:
AlignmentPoint  Center  the default point in the graphic to align with
AspectRatio  Automatic  ratio of height to width
Axes  False  whether to draw axes
AxesLabel  None  axes labels
AxesOrigin  Automatic  where axes should cross
AxesStyle  {}  style specifications for the axes
Background  None  background color for the plot
BaselinePosition  Automatic  how to align with a surrounding text baseline
BaseStyle  {}  base style specifications for the graphic
ContentSelectable  Automatic  whether to allow contents to be selected
CoordinatesToolOptions  Automatic  detailed behavior of the coordinates tool
Epilog  {}  primitives rendered after the main plot
FormatType  TraditionalForm  the default format type for text
Frame  False  whether to put a frame around the plot
FrameLabel  None  frame labels
FrameStyle  {}  style specifications for the frame
FrameTicks  Automatic  frame ticks
FrameTicksStyle  {}  style specifications for frame ticks
GridLines  None  grid lines to draw
GridLinesStyle  {}  style specifications for grid lines
ImageMargins  0.  the margins to leave around the graphic
ImagePadding  All  what extra padding to allow for labels, etc.
ImageSize  Automatic  the absolute size at which to render the graphic
LabelStyle  {}  style specifications for labels
Method  Automatic  details of graphics methods to use
PlotLabel  None  an overall label for the plot
PlotRange  All  range of values to include
PlotRangeClipping  False  whether to clip at the plot range
PlotRangePadding  Automatic  how much to pad the range of values
PlotRegion  Automatic  the final display region to be filled
PreserveImageOptions  Automatic  whether to preserve image options when displaying new versions of the same graphic
Prolog  {}  primitives rendered before the main plot
RotateLabel  True  whether to rotate y labels on the frame
Ticks  Automatic  axes ticks
TicksStyle  {}  style specifications for axes ticks
Nested lists of graphics constructs can be given. Directive specifications such as GrayLevel remain in effect only until the end of the list that contains them. »
Style[obj,opts] can be used to apply the options or directives opts to obj. »
The following Method options can be given:
"AxesInFront"  True  whether to draw axes on top of primitives
"FrameInFront"  True  whether to draw the graphics frame on top of primitives
"GridLinesInFront"  False  whether to draw grid lines on top of primitives
"TransparentPolygonMesh"  False  whether bordering polygons should be carefully drawn to avoid double rendering edges
The settings for BaseStyle are appended to the default style typically given by the style in the current stylesheet. The settings for AxesStyle, LabelStyle, etc. are appended to the default styles given for , , etc.
Graphics[] gives an empty graphic with the default image size.
[http://reference.wolfram.com/language/ref/Graphics.html]

* Wlfmfn.Graphics3D
* Wlfmfn.Graphics3DBoxOptions
* Wlfmfn.GraphicsBoxOptions
* Wlfmfn.GraphicsColumn
* Wlfmfn.GraphicsComplex
* Wlfmfn.GraphicsComplex3DBoxOptions
* Wlfmfn.GraphicsComplexBoxOptions
* Wlfmfn.GraphicsGrid
* Wlfmfn.GraphicsGroup
* Wlfmfn.GraphicsGroup3DBoxOptions
* Wlfmfn.GraphicsGroupBoxOptions
* Wlfmfn.GraphicsRow
* Wlfmfn.Gray
* Wlfmfn.GrayLevel
* Wlfmfn.Greater
* Wlfmfn.GreaterEqual
* Wlfmfn.GreaterEqualLess
* Wlfmfn.GreaterFullEqual
* Wlfmfn.GreaterGreater
* Wlfmfn.GreaterLess
* Wlfmfn.GreaterSlantEqual
* Wlfmfn.GreaterTilde
* Wlfmfn.Green
* Wlfmfn.Grid
* Wlfmfn.GridBox
* Wlfmfn.GridDefaultElement
* Wlfmfn.GridGraph
* Wlfmfn.GridLines
* Wlfmfn.GridLinesStyle
* Wlfmfn.GroebnerBasis
* Wlfmfn.GroupActionBase
* Wlfmfn.GroupBy
* Wlfmfn.GroupCentralizer
* Wlfmfn.GroupElementFromWord
* Wlfmfn.GroupElementPosition
* Wlfmfn.GroupElementQ
* Wlfmfn.GroupElementToWord
* Wlfmfn.GroupElements
* Wlfmfn.GroupGenerators
* Wlfmfn.GroupMultiplicationTable
* Wlfmfn.GroupOrbits
* Wlfmfn.GroupOrder
* Wlfmfn.GroupPageBreakWithin
* Wlfmfn.GroupSetwiseStabilizer
* Wlfmfn.GroupStabilizer
* Wlfmfn.GroupStabilizerChain
* Wlfmfn.GrowCutComponents
* Wlfmfn.Gudermannian
* Wlfmfn.GumbelDistribution

Wlfmfn.H

name::
* McsEngl.Wlfmfn.H@cptIt,

http://reference.wolfram.com/language/ref/.html,
* Wlfmfn.HITSCentrality
* Wlfmfn.HTTPRedirect

* Wlfmfn.HTTPRequestData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.HTTPResponse
* Wlfmfn.HaarWavelet
* Wlfmfn.HadamardMatrix
* Wlfmfn.HalfLine
* Wlfmfn.HalfNormalDistribution
* Wlfmfn.HalfPlane
* Wlfmfn.HamiltonianGraphQ
* Wlfmfn.HammingDistance
* Wlfmfn.HammingWindow
* Wlfmfn.HankelH1
* Wlfmfn.HankelH2
* Wlfmfn.HankelMatrix
* Wlfmfn.HannPoissonWindow
* Wlfmfn.HannWindow
* Wlfmfn.HaradaNortonGroupHN
* Wlfmfn.HararyGraph
* Wlfmfn.HarmonicMean
* Wlfmfn.HarmonicMeanFilter
* Wlfmfn.HarmonicNumber

* Wlfmfn.http://reference.wolfram.com/language/ref/Hash.html:
Hash[expr]
gives an integer hash code for the expression expr.
Hash[expr,"type"]
gives an integer hash code of the specified type for expr.
Details
Hash[expr,…] will always give the same result for the same expression expr.
Possible hash code types include:
"Adler32"  Adler 32-bit cyclic redundancy check
"CRC32"  32-bit cyclic redundancy check
"MD2"  128-bit MD2 code
"MD5"  128-bit MD5 code
"SHA"  160-bit SHA-1 code
"SHA256"  256-bit SHA code
"SHA384"  384-bit SHA code
"SHA512"  512-bit SHA code
[http://reference.wolfram.com/language/ref/Hash.html]

* Wlfmfn.Haversine
* Wlfmfn.HazardFunction

* Wlfmfn.Head:
Head[expr]
gives the head of expr.
[http://reference.wolfram.com/language/ref/Head.html]

* Wlfmfn.HeaderLines:

* Wlfmfn.Heads:
Heads
is an option for functions which use level specifications that specifies whether heads of expressions should be included.
Details
Heads->True treats heads just like other elements of expressions for the purpose of levels.
Heads->False never includes heads as part of any level of an expression.
Most functions which use level specifications have the default setting Heads->False. One exception is Position, for which the default is Heads->True.
[http://reference.wolfram.com/language/ref/Heads.html]

* Wlfmfn.HeavisideLambda
* Wlfmfn.HeavisidePi
* Wlfmfn.HeavisideTheta
* Wlfmfn.HeldGroupHe
* Wlfmfn.Here
* Wlfmfn.HermiteDecomposition
* Wlfmfn.HermiteH
* Wlfmfn.HermitianMatrixQ
* Wlfmfn.HessenbergDecomposition

* Wlfmfn.HexadecimalCharacter:
HexadecimalCharacter
represents a hexadecimal digit character 0–9, a–f, A–F in StringExpression.
[http://reference.wolfram.com/language/ref/HexadecimalCharacter.html]

* Wlfmfn.Hexahedron
* Wlfmfn.HiddenMarkovProcess
* Wlfmfn.HighlightGraph
* Wlfmfn.HighlightImage
* Wlfmfn.HighlightMesh
* Wlfmfn.HighpassFilter
* Wlfmfn.HigmanSimsGroupHS
* Wlfmfn.HilbertFilter
* Wlfmfn.HilbertMatrix
* Wlfmfn.Histogram
* Wlfmfn.Histogram3D
* Wlfmfn.HistogramDistribution

* Wlfmfn.HistogramList:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.HistogramTransform
* Wlfmfn.HistogramTransformInterpolation

* Wlfmfn.HistoricalPeriodData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.HitMissTransform
* Wlfmfn.HodgeDual
* Wlfmfn.HoeffdingD
* Wlfmfn.HoeffdingDTest

* Wlfmfn.Hold:
Hold[expr]
maintains expr in an unevaluated form.
Details
Hold has attribute HoldAll, and performs no operation on its arguments.
Hold is removed by ReleaseHold. »
Hold[e1,e2,…] maintains a sequence of unevaluated expressions to which a function can be applied using Apply.
Even though expr itself is not evaluated, Hold[expr] may still evaluate if expr is of the form , and upvalues for f have been defined. »
[http://reference.wolfram.com/language/ref/Hold.html]

* Wlfmfn.HoldAll

* Wlfmfn.HoldAllComplete

* Wlfmfn.HoldComplete

* Wlfmfn.HoldFirst

* Wlfmfn.HoldForm

* Wlfmfn.HoldPattern:
HoldPattern[expr]
is equivalent to expr for pattern matching, but maintains expr in an unevaluated form.
Details
HoldPattern has attribute HoldAll.
The left-hand sides of rules are usually evaluated, as are parts of the left-hand sides of assignments. You can use HoldPattern to stop any part from being evaluated.
[http://reference.wolfram.com/language/ref/HoldPattern.html]

* Wlfmfn.HoldRest

* Wlfmfn.HolidayCalendar
* Wlfmfn.HorizontalGauge
* Wlfmfn.HornerForm
* Wlfmfn.HotellingTSquareDistribution
* Wlfmfn.HoytDistribution
* Wlfmfn.Hue
* Wlfmfn.HumpDownHump
* Wlfmfn.HumpEqual
* Wlfmfn.HurwitzLerchPhi
* Wlfmfn.HurwitzZeta
* Wlfmfn.HyperbolicDistribution
* Wlfmfn.HypercubeGraph
* Wlfmfn.HyperexponentialDistribution
* Wlfmfn.Hyperfactorial
* Wlfmfn.Hypergeometric0F1
* Wlfmfn.Hypergeometric0F1Regularized
* Wlfmfn.Hypergeometric1F1
* Wlfmfn.Hypergeometric1F1Regularized
* Wlfmfn.Hypergeometric2F1
* Wlfmfn.Hypergeometric2F1Regularized
* Wlfmfn.HypergeometricDistribution
* Wlfmfn.HypergeometricPFQ
* Wlfmfn.HypergeometricPFQRegularized
* Wlfmfn.HypergeometricU
* Wlfmfn.Hyperlink
* Wlfmfn.Hyphenation
* Wlfmfn.HypoexponentialDistribution

* Wlfmfn.HypothesisTestData:
[http://reference.wolfram.com/language/ref/.html]

Wlfmfn.I

name::
* McsEngl.Wlfmfn.I@cptIt,

http://reference.wolfram.com/language/ref/.html,

* Wlfmfn.IconData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.IconRules
* Wlfmfn.Identity
* Wlfmfn.IdentityMatrix
* Wlfmfn.If
* Wlfmfn.IgnoreCase
* Wlfmfn.IgnoringInactive
* Wlfmfn.Im
* Wlfmfn.Image
* Wlfmfn.Image3D
* Wlfmfn.Image3DSlices
* Wlfmfn.ImageAccumulate
* Wlfmfn.ImageAdd
* Wlfmfn.ImageAdjust
* Wlfmfn.ImageAlign
* Wlfmfn.ImageApply
* Wlfmfn.ImageApplyIndexed
* Wlfmfn.ImageAspectRatio
* Wlfmfn.ImageAssemble
* Wlfmfn.ImageCapture
* Wlfmfn.ImageChannels
* Wlfmfn.ImageClip
* Wlfmfn.ImageCollage
* Wlfmfn.ImageColorSpace
* Wlfmfn.ImageCompose
* Wlfmfn.ImageConvolve
* Wlfmfn.ImageCooccurrence
* Wlfmfn.ImageCorners
* Wlfmfn.ImageCorrelate
* Wlfmfn.ImageCorrespondingPoints
* Wlfmfn.ImageCrop

* Wlfmfn.ImageData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ImageDeconvolve
* Wlfmfn.ImageDemosaic
* Wlfmfn.ImageDifference
* Wlfmfn.ImageDimensions
* Wlfmfn.ImageDistance
* Wlfmfn.ImageEffect
* Wlfmfn.ImageFeatureTrack
* Wlfmfn.ImageFileApply
* Wlfmfn.ImageFileFilter
* Wlfmfn.ImageFileScan
* Wlfmfn.ImageFilter
* Wlfmfn.ImageForestingComponents
* Wlfmfn.ImageFormattingWidth
* Wlfmfn.ImageForwardTransformation
* Wlfmfn.ImageHistogram
* Wlfmfn.ImageKeypoints
* Wlfmfn.ImageLevels
* Wlfmfn.ImageLines
* Wlfmfn.ImageMargins
* Wlfmfn.ImageMeasurements
* Wlfmfn.ImageMultiply
* Wlfmfn.ImagePad
* Wlfmfn.ImagePadding
* Wlfmfn.ImagePartition
* Wlfmfn.ImagePeriodogram
* Wlfmfn.ImagePerspectiveTransformation
* Wlfmfn.ImageQ
* Wlfmfn.ImageReflect
* Wlfmfn.ImageResize
* Wlfmfn.ImageResolution
* Wlfmfn.ImageRotate
* Wlfmfn.ImageSaliencyFilter
* Wlfmfn.ImageScaled
* Wlfmfn.ImageScan
* Wlfmfn.ImageSize
* Wlfmfn.ImageSizeAction
* Wlfmfn.ImageSizeMultipliers
* Wlfmfn.ImageSubtract
* Wlfmfn.ImageTake
* Wlfmfn.ImageTransformation
* Wlfmfn.ImageTrim
* Wlfmfn.ImageType
* Wlfmfn.ImageValue
* Wlfmfn.ImageValuePositions
* Wlfmfn.ImagingDevice
* Wlfmfn.ImplicitRegion
* Wlfmfn.Implies

* Wlfmfn.http://reference.wolfram.com/language/ref/Import.html:
Import["file"]
imports data from a file, returning a complete Wolfram Language version of it.
Import["file",elements]
imports the specified elements from a file.
Import["http://url",…] and Import["ftp://url",…]
imports from any accessible URL.

* Wlfmfn.ImportString
* Wlfmfn.ImprovementImportance
* Wlfmfn.In
* Wlfmfn.InString
* Wlfmfn.Inactivate
* Wlfmfn.Inactive
* Wlfmfn.IncidenceGraph

* Wlfmfn.IncidenceList:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.IncidenceMatrix
* Wlfmfn.IncludeConstantBasis

* Wlfmfn.IncludePods:
IncludePods
is an option for WolframAlpha that determines specific pod IDs to include in the results.
Details
IncludePods->{pod1,pod2,…} specifies that the results of the WolframAlpha function should be based upon the given pod IDs.
IncludePods should not be used in combination with ExcludePods.
[http://reference.wolfram.com/language/ref/IncludePods.html]

* Wlfmfn.IncludeQuantities
* Wlfmfn.IncludeWindowTimes
* Wlfmfn.Increment
* Wlfmfn.IndefiniteMatrixQ
* Wlfmfn.IndependenceTest
* Wlfmfn.IndependentEdgeSetQ
* Wlfmfn.IndependentUnit
* Wlfmfn.IndependentVertexSetQ
* Wlfmfn.Indeterminate
* Wlfmfn.IndeterminateThreshold
* Wlfmfn.IndexGraph
* Wlfmfn.Indexed
* Wlfmfn.InexactNumberQ
* Wlfmfn.InfiniteLine
* Wlfmfn.InfinitePlane
* Wlfmfn.Infinity
* Wlfmfn.Infix
* Wlfmfn.InflationAdjust
* Wlfmfn.InflationMethod

* Wlfmfn.http://reference.wolfram.com/language/ref/Information.html:
Information[symbol]
prints information about a symbol.
Details and Options
Information[symbol] prints the same information as the input escape ??symbol would give.
Information has attribute HoldAll.
[http://reference.wolfram.com/language/ref/Information.html]

* Wlfmfn.InheritScope
* Wlfmfn.Inherited
* Wlfmfn.Initialization
* Wlfmfn.InitializationCell
* Wlfmfn.Inner
* Wlfmfn.Inpaint
* Wlfmfn.Input
* Wlfmfn.InputAliases
* Wlfmfn.InputAssumptions
* Wlfmfn.InputAutoReplacements
* Wlfmfn.InputField
* Wlfmfn.InputFieldBoxOptions

* Wlfmfn.InputForm:
You can use InputForm to see how the Wolfram Language internally represents this.
Show the internal form of a quantity:
In[2]:=  InputForm =2 hours
Out[2]=  Quantity[2, "Hours"]
[http://www.wolfram.com/language/elementary-introduction/17-units.html]
===
InputForm[expr]
prints as a version of expr suitable for input to the Wolfram Language.
Details and Options
InputForm always produces one-dimensional output, suitable to be typed as lines of Wolfram Language input.
InputForm acts as a "wrapper", which affects display, but not evaluation. »
Put () produces InputForm by default.
Short[InputForm[expr]] can be used, but may generate skeleton objects that cannot be given as Wolfram Language input.
The option NumberMarks can be used to specify whether marks should be used to indicate type, precision, or accuracy of approximate numbers. »
[http://reference.wolfram.com/language/ref/InputForm.html]

* Wlfmfn.InputNamePacket
* Wlfmfn.InputNotebook
* Wlfmfn.InputPacket

* Wlfmfn.InputStream:
InputStream["name",n]
is an object that represents an input stream for functions such as Read and Find.
Details
OpenRead returns an InputStream object.
The serial number n is unique across all streams, regardless of their name.
StringToStream returns an object of the form InputStream[String,n].
[http://reference.wolfram.com/language/ref/InputStream.html]

* Wlfmfn.InputString:
InputString[]
interactively reads in a character string.
InputString[prompt]
requests input, displaying prompt as a "prompt".
InputString[prompt,init]
in a notebook front end uses init as the initial contents of the input field.
Details and Options
InputString returns what it reads as a string, without evaluation.
The operation of InputString may vary from one computer system to another. When a Wolfram System front end is used, InputString typically works through a dialog box.
When no front end is used, InputString reads from standard input.
If the standard input is a file, then InputString returns EndOfFile if you try to read past the end of the file.
On systems with textual input, InputString[] uses as a prompt.
When InputString is evaluated, the Wolfram System stops until the input has been read.
With a notebook front end, InputString by default puts up a dialog window with a standard appearance.
The prompt given can be text, graphics or any expression.
InputString takes notebook options. The default settings include WindowFloating->False, WindowSize->All, and WindowTitle->None.
InputString by default puts up a dialog in the middle of the main display screen. Explicit settings for WindowMargins override this.
The options for InputField can be given directly as options to InputString to control the properties of the input field.
InputString[prompt] is equivalent to InputString[prompt,""].
[http://reference.wolfram.com/language/ref/InputString.html]

* Wlfmfn.InputStringPacket
* Wlfmfn.Insert
* Wlfmfn.InsertResults
* Wlfmfn.InsertionFunction
* Wlfmfn.Inset
* Wlfmfn.Inset3DBoxOptions
* Wlfmfn.InsetBoxOptions
* Wlfmfn.Install
* Wlfmfn.InstallService
* Wlfmfn.Integer
* Wlfmfn.IntegerDigits
* Wlfmfn.IntegerExponent
* Wlfmfn.IntegerLength
* Wlfmfn.IntegerName
* Wlfmfn.IntegerPart
* Wlfmfn.IntegerPartitions
* Wlfmfn.IntegerQ
* Wlfmfn.IntegerString
* Wlfmfn.Integers
* Wlfmfn.Integrate
* Wlfmfn.Interactive
* Wlfmfn.InteractiveTradingChart
* Wlfmfn.Interleaving
* Wlfmfn.InternallyBalancedDecomposition
* Wlfmfn.InterpolatingFunction
* Wlfmfn.InterpolatingPolynomial
* Wlfmfn.Interpolation
* Wlfmfn.InterpolationOrder
* Wlfmfn.InterpolationPoints
* Wlfmfn.Interpretation
* Wlfmfn.InterpretationBox
* Wlfmfn.InterpretationBoxOptions

* Wlfmfn.http://reference.wolfram.com/language/ref/Interpreter.html:
Interpreter[form]
represents an interpreter object that can be applied to a string to try to interpret it as an object of the specified form.
Interpreter[form,test]
returns the interpreted object only if applying test to it yields True; otherwise it returns a Failure object.
Interpreter[form,test,fail]
returns the result of applying the function fail if the test fails.

* Wlfmfn.InterquartileRange
* Wlfmfn.Interrupt
* Wlfmfn.IntersectingQ
* Wlfmfn.Intersection
* Wlfmfn.Interval
* Wlfmfn.IntervalIntersection
* Wlfmfn.IntervalMemberQ
* Wlfmfn.IntervalSlider
* Wlfmfn.IntervalUnion
* Wlfmfn.Inverse
* Wlfmfn.InverseBetaRegularized
* Wlfmfn.InverseCDF
* Wlfmfn.InverseChiSquareDistribution
* Wlfmfn.InverseContinuousWaveletTransform
* Wlfmfn.InverseDistanceTransform
* Wlfmfn.InverseEllipticNomeQ
* Wlfmfn.InverseErf
* Wlfmfn.InverseErfc
* Wlfmfn.InverseFourier
* Wlfmfn.InverseFourierCosTransform
* Wlfmfn.InverseFourierSequenceTransform
* Wlfmfn.InverseFourierSinTransform
* Wlfmfn.InverseFourierTransform
* Wlfmfn.InverseFunction
* Wlfmfn.InverseFunctions
* Wlfmfn.InverseGammaDistribution
* Wlfmfn.InverseGammaRegularized
* Wlfmfn.InverseGaussianDistribution
* Wlfmfn.InverseGudermannian
* Wlfmfn.InverseHaversine
* Wlfmfn.InverseJacobiCD
* Wlfmfn.InverseJacobiCN
* Wlfmfn.InverseJacobiCS
* Wlfmfn.InverseJacobiDC
* Wlfmfn.InverseJacobiDN
* Wlfmfn.InverseJacobiDS
* Wlfmfn.InverseJacobiNC
* Wlfmfn.InverseJacobiND
* Wlfmfn.InverseJacobiNS
* Wlfmfn.InverseJacobiSC
* Wlfmfn.InverseJacobiSD
* Wlfmfn.InverseJacobiSN
* Wlfmfn.InverseLaplaceTransform
* Wlfmfn.InversePermutation
* Wlfmfn.InverseRadon
* Wlfmfn.InverseSeries
* Wlfmfn.InverseSurvivalFunction
* Wlfmfn.InverseTransformedRegion
* Wlfmfn.InverseWaveletTransform
* Wlfmfn.InverseWeierstrassP
* Wlfmfn.InverseZTransform
* Wlfmfn.Invisible
* Wlfmfn.IrreduciblePolynomialQ

* Wlfmfn.IslandData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.IsolatingInterval
* Wlfmfn.IsomorphicGraphQ

* Wlfmfn.IsotopeData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Italic
* Wlfmfn.Item
* Wlfmfn.ItemAspectRatio
* Wlfmfn.ItemBoxOptions
* Wlfmfn.ItemSize
* Wlfmfn.ItemStyle
* Wlfmfn.ItoProcess

Wlfmfn.J

name::
* McsEngl.Wlfmfn.J@cptIt,

http://reference.wolfram.com/language/ref/.html,
* Wlfmfn.JaccardDissimilarity
* Wlfmfn.JacobiAmplitude
* Wlfmfn.JacobiCD
* Wlfmfn.JacobiCN
* Wlfmfn.JacobiCS
* Wlfmfn.JacobiDC
* Wlfmfn.JacobiDN
* Wlfmfn.JacobiDS
* Wlfmfn.JacobiNC
* Wlfmfn.JacobiND
* Wlfmfn.JacobiNS
* Wlfmfn.JacobiP
* Wlfmfn.JacobiSC
* Wlfmfn.JacobiSD
* Wlfmfn.JacobiSN
* Wlfmfn.JacobiSymbol
* Wlfmfn.JacobiZeta
* Wlfmfn.JankoGroupJ1
* Wlfmfn.JankoGroupJ2
* Wlfmfn.JankoGroupJ3
* Wlfmfn.JankoGroupJ4
* Wlfmfn.JarqueBeraALMTest
* Wlfmfn.JohnsonDistribution
* Wlfmfn.Join
* Wlfmfn.JoinAcross
* Wlfmfn.JoinForm
* Wlfmfn.Joined
* Wlfmfn.JoinedCurve
* Wlfmfn.JoinedCurveBoxOptions
* Wlfmfn.JordanDecomposition
* Wlfmfn.JordanModelDecomposition
* Wlfmfn.JuliaSetBoettcher
* Wlfmfn.JuliaSetIterationCount
* Wlfmfn.JuliaSetPlot
* Wlfmfn.JuliaSetPoints

Wlfmfn.K

name::
* McsEngl.Wlfmfn.K@cptIt,

http://reference.wolfram.com/language/ref/.html,
* Wlfmfn.KCoreComponents
* Wlfmfn.KDistribution
* Wlfmfn.KEdgeConnectedComponents
* Wlfmfn.KEdgeConnectedGraphQ
* Wlfmfn.KVertexConnectedComponents
* Wlfmfn.KVertexConnectedGraphQ
* Wlfmfn.KagiChart
* Wlfmfn.KaiserBesselWindow
* Wlfmfn.KaiserWindow
* Wlfmfn.KalmanEstimator
* Wlfmfn.KalmanFilter
* Wlfmfn.KarhunenLoeveDecomposition
* Wlfmfn.KaryTree
* Wlfmfn.KatzCentrality
* Wlfmfn.KelvinBei
* Wlfmfn.KelvinBer
* Wlfmfn.KelvinKei
* Wlfmfn.KelvinKer
* Wlfmfn.KendallTau
* Wlfmfn.KendallTauTest
* Wlfmfn.KernelMixtureDistribution

* Wlfmfn.KernelObject
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Kernels
* Wlfmfn.Key
* Wlfmfn.KeyDrop
* Wlfmfn.KeyDropFrom
* Wlfmfn.KeyExistsQ
* Wlfmfn.KeyIntersection
* Wlfmfn.KeyMap
* Wlfmfn.KeySelect
* Wlfmfn.KeySort
* Wlfmfn.KeySortBy
* Wlfmfn.KeyTake
* Wlfmfn.KeyUnion
* Wlfmfn.KeypointStrength

* Wlfmfn.Keys:
Keys[?key1?val1,key2?val2,…?]
gives a list of the keys in an association.
Keys[{key1?val1,key2?val2,…}]
gives a list of the in a list of rules.
Details
Keys maintains the order of keys.
Keys has attribute Listable.
Keys[key->val] gives key.
[http://reference.wolfram.com/language/ref/Keys.html]

* Wlfmfn.Khinchin
* Wlfmfn.KillProcess
* Wlfmfn.KirchhoffGraph
* Wlfmfn.KirchhoffMatrix
* Wlfmfn.KleinInvariantJ
* Wlfmfn.KnightTourGraph

* Wlfmfn.KnotData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.KnownUnitQ
* Wlfmfn.KolmogorovSmirnovTest
* Wlfmfn.KroneckerDelta
* Wlfmfn.KroneckerModelDecomposition
* Wlfmfn.KroneckerProduct
* Wlfmfn.KroneckerSymbol
* Wlfmfn.KuiperTest
* Wlfmfn.KumaraswamyDistribution
* Wlfmfn.Kurtosis
* Wlfmfn.KuwaharaFilter

Wlfmfn.L

name::
* McsEngl.Wlfmfn.L@cptIt,

http://reference.wolfram.com/language/ref/.html,
* Wlfmfn.LABColor
* Wlfmfn.LCHColor
* Wlfmfn.LCM
* Wlfmfn.LQEstimatorGains
* Wlfmfn.LQGRegulator
* Wlfmfn.LQOutputRegulatorGains
* Wlfmfn.LQRegulatorGains
* Wlfmfn.LUDecomposition
* Wlfmfn.LUVColor
* Wlfmfn.Label
* Wlfmfn.LabelStyle
* Wlfmfn.Labeled
* Wlfmfn.LabelingFunction
* Wlfmfn.LaguerreL

* Wlfmfn.LakeData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.LambdaComponents

* Wlfmfn.LaminaData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.LanczosWindow
* Wlfmfn.LandauDistribution
* Wlfmfn.LanguageCategory

* Wlfmfn.LanguageData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.LanguageIdentify["σήμερα είναι"]
Greek

* Wlfmfn.LaplaceDistribution
* Wlfmfn.LaplaceTransform
* Wlfmfn.Laplacian
* Wlfmfn.LaplacianFilter
* Wlfmfn.LaplacianGaussianFilter
* Wlfmfn.Large
* Wlfmfn.Larger
* Wlfmfn.Last

* Wlfmfn.Latitude:
Latitude[pos]
gives the latitude in degrees of a geographic position specified by pos.
Latitude[pos,datum]
gives the latitude referring to the specified geodetic datum.
Details
Latitude returns a value in the range -90 to +90.
The position pos in Latitude[pos] can be a GeoPosition, GeoGridPosition, or other position object.
Latitude gives the geodetic latitude; GeodesyData gives conversions to other forms of latitude.
If no datum is given, Latitude assumes positions to refer to the International Terrestrial Reference Frame 2000.
[http://reference.wolfram.com/language/ref/Latitude.html]

* Wlfmfn.LatitudeLongitude:
LatitudeLongitude[pos]
gives a list of the latitude and longitude in degrees of a geographic position specified by pos.
LatitudeLongitude[pos,datum]
gives the latitude and longitude referring to the specified geodetic datum.
Details
Latitude is in the range to ; longitude is in the range to .
Longitudes are taken to be positive to the east.
The position pos in LatitudeLongitude[pos] can be a GeoPosition, GeoGridPosition, or other position object.
LatitudeLongitude gives the geodetic latitude; GeodesyData gives conversions to other forms of latitude.
If no datum is given, LatitudeLongitude assumes positions to refer to the International Terrestrial Reference Frame 2000.
[http://reference.wolfram.com/language/ref/LatitudeLongitude.html]

* Wlfmfn.LatticeData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.LatticeReduce

* Wlfmfn.LaunchKernels

* Wlfmfn.LayerSizeFunction
* Wlfmfn.LayeredGraphPlot
* Wlfmfn.LeafCount
* Wlfmfn.LeapYearQ
* Wlfmfn.LeastSquares
* Wlfmfn.LeastSquaresFilterKernel
* Wlfmfn.Left
* Wlfmfn.LeftArrow
* Wlfmfn.LeftArrowBar
* Wlfmfn.LeftArrowRightArrow
* Wlfmfn.LeftDownTeeVector
* Wlfmfn.LeftDownVector
* Wlfmfn.LeftDownVectorBar
* Wlfmfn.LeftRightArrow
* Wlfmfn.LeftRightVector
* Wlfmfn.LeftTee
* Wlfmfn.LeftTeeArrow
* Wlfmfn.LeftTeeVector
* Wlfmfn.LeftTriangle
* Wlfmfn.LeftTriangleBar
* Wlfmfn.LeftTriangleEqual
* Wlfmfn.LeftUpDownVector
* Wlfmfn.LeftUpTeeVector
* Wlfmfn.LeftUpVector
* Wlfmfn.LeftUpVectorBar
* Wlfmfn.LeftVector
* Wlfmfn.LeftVectorBar
* Wlfmfn.LegendAppearance
* Wlfmfn.LegendFunction
* Wlfmfn.LegendLabel
* Wlfmfn.LegendLayout
* Wlfmfn.LegendMargins
* Wlfmfn.LegendMarkerSize
* Wlfmfn.LegendMarkers
* Wlfmfn.Legended
* Wlfmfn.LegendreP
* Wlfmfn.LegendreQ

* Wlfmfn.Length:
* entity: expression#ql:wl'expression#,
===
Length[expr]
gives the number of elements in expr.
Details
When expr is a SparseArray object, Length[expr] returns the length of the corresponding ordinary list. »
Otherwise, Length[expr] returns whenever AtomQ[expr] is True.
[http://reference.wolfram.com/language/ref/Length.html]

* Wlfmfn.LengthWhile

* Wlfmfn.LerchPhi

* Wlfmfn.Less:
x<y
yields True if is determined to be less than .
x1<x2<x3
yields True if the xi form a strictly increasing sequence.
Details
Less gives True or False when its arguments are real numbers.
Less does some simplification when its arguments are not numbers.
For exact numeric quantities, Less internally uses numerical approximations to establish numerical ordering. This process can be affected by the setting of the global variable $MaxExtraPrecision.
[http://reference.wolfram.com/language/ref/Less.html]

* Wlfmfn.LessEqual
* Wlfmfn.LessEqualGreater
* Wlfmfn.LessFullEqual
* Wlfmfn.LessGreater
* Wlfmfn.LessLess
* Wlfmfn.LessSlantEqual
* Wlfmfn.LessTilde

* Wlfmfn.LetterCharacter:
LetterCharacter
represents a letter character in StringExpression.
Details
LetterCharacter can correspond to any uppercase or lowercase letter.
LetterCharacter matches any character for which LetterQ gives True.
[http://reference.wolfram.com/language/ref/LetterCharacter.html]

* Wlfmfn.LetterQ:
LetterQ[string]
yields True if all the characters in the string are letters, and yields False otherwise.
Details
LetterQ[string] by default gives False if string contains any space or punctuation characters.
LetterQ handles both ordinary and special characters.
LetterQ treats as letters all special characters explicitly listed as letters in the table in "Named Characters".
In general, LetterQ treats as letters all characters that appear as ordinary text in any language.
LetterQ treats as letters such special characters as , , , and .
LetterQ does not treat as letters (\[EmptySet]), (\[HBar]), (\[Angstrom]), or (\[Sum]).
[http://reference.wolfram.com/language/ref/LetterQ.html]

* Wlfmfn.Level:
Level[expr,levelspec]
gives a list of all subexpressions of expr on levels specified by levelspec.
Level[expr,levelspec,f]
applies f to the sequence of subexpressions.
Details and Options
Level uses standard level specifications:
n  levels 1 through
Infinity  levels 1 through Infinity
{n}  level only
{n1,n2}  levels through
Level[expr,{-1}] gives a list of all "atomic" objects in expr.
A positive level consists of all parts of expr specified by indices.
A negative level consists of all parts of expr with depth .
Level 0 corresponds to the whole expression.
With the option setting Heads->True, Level includes heads of expressions and their parts.
Level traverses expressions in depth?first order, so that the subexpressions in the final list are ordered lexicographically by their indices.
[http://reference.wolfram.com/language/ref/Level.html]

* Wlfmfn.LeveneTest
* Wlfmfn.LeviCivitaTensor
* Wlfmfn.LevyDistribution
* Wlfmfn.LibraryDataType
* Wlfmfn.LibraryFunction
* Wlfmfn.LibraryFunctionError
* Wlfmfn.LibraryFunctionInformation
* Wlfmfn.LibraryFunctionLoad
* Wlfmfn.LibraryFunctionUnload
* Wlfmfn.LibraryLoad
* Wlfmfn.LibraryUnload

* Wlfmfn.LiftingFilterData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.LiftingWaveletTransform
* Wlfmfn.LightBlue
* Wlfmfn.LightBrown
* Wlfmfn.LightCyan
* Wlfmfn.LightGray
* Wlfmfn.LightGreen
* Wlfmfn.LightMagenta
* Wlfmfn.LightOrange
* Wlfmfn.LightPink
* Wlfmfn.LightPurple
* Wlfmfn.LightRed
* Wlfmfn.LightYellow
* Wlfmfn.Lighter
* Wlfmfn.Lighting
* Wlfmfn.LightingAngle
* Wlfmfn.Likelihood
* Wlfmfn.Limit
* Wlfmfn.LimitsPositioning
* Wlfmfn.LindleyDistribution
* Wlfmfn.Line
* Wlfmfn.Line3DBoxOptions
* Wlfmfn.LineBoxOptions
* Wlfmfn.LineBreakChart
* Wlfmfn.LineGraph
* Wlfmfn.LineIndent
* Wlfmfn.LineIndentMaxFraction
* Wlfmfn.LineIntegralConvolutionPlot
* Wlfmfn.LineIntegralConvolutionScale
* Wlfmfn.LineLegend
* Wlfmfn.LineSpacing
* Wlfmfn.LinearFractionalTransform
* Wlfmfn.LinearGradientImage
* Wlfmfn.LinearModelFit
* Wlfmfn.LinearOffsetFunction
* Wlfmfn.LinearProgramming
* Wlfmfn.LinearRecurrence
* Wlfmfn.LinearSolve
* Wlfmfn.LinearSolveFunction

* Wlfmfn.LinearizingTransformationData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.LinkClose
* Wlfmfn.LinkConnect
* Wlfmfn.LinkCreate
* Wlfmfn.LinkFunction
* Wlfmfn.LinkInterrupt
* Wlfmfn.LinkLaunch

* Wlfmfn.LinkObject
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.LinkPatterns
* Wlfmfn.LinkProtocol
* Wlfmfn.LinkRankCentrality
* Wlfmfn.LinkRead
* Wlfmfn.LinkReadyQ
* Wlfmfn.LinkWrite
* Wlfmfn.Links
* Wlfmfn.LiouvilleLambda

* Wlfmfn.List:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ListAnimate
* Wlfmfn.ListContourPlot
* Wlfmfn.ListContourPlot3D
* Wlfmfn.ListConvolve
* Wlfmfn.ListCorrelate
* Wlfmfn.ListCurvePathPlot
* Wlfmfn.ListDeconvolve
* Wlfmfn.ListDensityPlot
* Wlfmfn.ListFormat
* Wlfmfn.ListFourierSequenceTransform
* Wlfmfn.ListInterpolation
* Wlfmfn.ListLineIntegralConvolutionPlot
* Wlfmfn.ListLinePlot
* Wlfmfn.ListLogLinearPlot
* Wlfmfn.ListLogLogPlot
* Wlfmfn.ListLogPlot
* Wlfmfn.ListPicker
* Wlfmfn.ListPickerBox
* Wlfmfn.ListPickerBoxOptions
* Wlfmfn.ListPlay
* Wlfmfn.ListPlot
* Wlfmfn.ListPlot3D
* Wlfmfn.ListPointPlot3D
* Wlfmfn.ListPolarPlot
* Wlfmfn.ListStreamDensityPlot
* Wlfmfn.ListStreamPlot
* Wlfmfn.ListSurfacePlot3D
* Wlfmfn.ListVectorDensityPlot
* Wlfmfn.ListVectorPlot
* Wlfmfn.ListVectorPlot3D
* Wlfmfn.ListZTransform

* Wlfmfn.Listable:
Listable
is an attribute that can be assigned to a symbol to indicate that the function should automatically be threaded over lists that appear as its arguments.
Details
Listable functions are effectively applied separately to each element in a list, or to corresponding elements in each list if there is more than one list.
Most built-in mathematical functions are Listable. »
All the arguments which are lists in a Listable function must be of the same length. »
Arguments that are not lists are copied as many times as there are elements in the lists.
[http://reference.wolfram.com/language/ref/Listable.html]

* Wlfmfn.LocalAdaptiveBinarize

* Wlfmfn.LocalClusteringCoefficient

* Wlfmfn.LocalTime

* Wlfmfn.LocalTimeZone:
LocalTimeZone[]
gives the current time zone for the current geo location.
LocalTimeZone[loc]
gives the current time zone for the geo location specified by loc.
LocalTimeZone[loc,date]
gives the time zone for the geo location loc on the specified date.
LocalTimeZone[loc,date,"prop"]
gives the specified property of the time zone.
Details
LocalTimeZone[] is equivalent to $TimeZone.
The geo location loc can be specified by a GeoPosition object or by giving an appropriate Entity object.
LocalTimeZone by default returns a number giving the offset from GMT in hours.
Possible properties include:
"NumericOffset"  offset in hours as a number
"Offset"  offset as a Quantity object
[http://reference.wolfram.com/language/ref/LocalTimeZone.html]

* Wlfmfn.LocalizeVariables

* Wlfmfn.LocationEquivalenceTest

* Wlfmfn.LocationTest

* Wlfmfn.Locator

* Wlfmfn.LocatorAutoCreate

* Wlfmfn.LocatorBoxOptions

* Wlfmfn.LocatorPane

* Wlfmfn.LocatorPaneBoxOptions

* Wlfmfn.LocatorRegion

* Wlfmfn.Locked:
Locked
is an attribute that, once assigned, prevents modification of any attributes of a symbol.
[http://reference.wolfram.com/language/ref/Locked.html]

* Wlfmfn.Log
* Wlfmfn.Log2
* Wlfmfn.Log10
* Wlfmfn.LogBarnesG
* Wlfmfn.LogGamma
* Wlfmfn.LogGammaDistribution
* Wlfmfn.LogIntegral
* Wlfmfn.LogLikelihood
* Wlfmfn.LogLinearPlot
* Wlfmfn.LogLogPlot
* Wlfmfn.LogLogisticDistribution
* Wlfmfn.LogMultinormalDistribution
* Wlfmfn.LogNormalDistribution
* Wlfmfn.LogPlot
* Wlfmfn.LogRankTest
* Wlfmfn.LogSeriesDistribution
* Wlfmfn.LogicalExpand
* Wlfmfn.LogisticDistribution
* Wlfmfn.LogisticSigmoid
* Wlfmfn.LogitModelFit
* Wlfmfn.LongLeftArrow
* Wlfmfn.LongLeftRightArrow
* Wlfmfn.LongRightArrow
* Wlfmfn.Longest
* Wlfmfn.LongestCommonSequence
* Wlfmfn.LongestCommonSubsequence

* Wlfmfn.Longitude:
Longitude[pos]
gives the longitude in degrees of a geographic position specified by pos.
Longitude[pos,datum]
gives the longitude referring to the specified geodetic datum.
Details
Longitude returns a value in the range from -180 to +360.
Longitudes are taken to be positive to the east.
The position pos in Longitude[pos] can be a GeoPosition, GeoGridPosition, or other position object.
If no datum is given, Longitude assumes positions to refer to the International Terrestrial Reference Frame 2000.
[http://reference.wolfram.com/language/ref/Longitude.html]

* Wlfmfn.Lookup
* Wlfmfn.LoopFreeGraphQ
* Wlfmfn.LowerCaseQ
* Wlfmfn.LowerLeftArrow
* Wlfmfn.LowerRightArrow
* Wlfmfn.LowerTriangularize
* Wlfmfn.LowpassFilter
* Wlfmfn.LucasL
* Wlfmfn.LuccioSamiComponents
* Wlfmfn.LunarEclipse
* Wlfmfn.LyapunovSolve
* Wlfmfn.LyonsGroupLy

Wlfmfn.M

name::
* McsEngl.Wlfmfn.M@cptIt,

http://reference.wolfram.com/language/ref/.html,
* Wlfmfn.MAProcess
* Wlfmfn.MachineNumberQ
* Wlfmfn.MachinePrecision
* Wlfmfn.Magenta
* Wlfmfn.Magnification
* Wlfmfn.Magnify
* Wlfmfn.Majority
* Wlfmfn.MakeBoxes
* Wlfmfn.MakeExpression
* Wlfmfn.ManagedLibraryExpressionID
* Wlfmfn.ManagedLibraryExpressionQ
* Wlfmfn.MandelbrotSetBoettcher
* Wlfmfn.MandelbrotSetDistance
* Wlfmfn.MandelbrotSetIterationCount
* Wlfmfn.MandelbrotSetMemberQ
* Wlfmfn.MandelbrotSetPlot
* Wlfmfn.MangoldtLambda
* Wlfmfn.ManhattanDistance
* Wlfmfn.Manipulate
* Wlfmfn.Manipulator
* Wlfmfn.MannWhitneyTest

* Wlfmfn.MannedSpaceMissionData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.MantissaExponent

* Wlfmfn.Manual

* Wlfmfn.Map:
* wlopr.Map, wlopr.sblSlashAt: /@
===
Map[f,expr] or
applies f to each element on the first level in expr.
Map[f,expr,levelspec]
applies f to parts of expr specified by levelspec.
Map[f]
represents an operator form of Map that can be applied to an expression.
Details and Options
Map uses standard level specifications:
n  levels through n
Infinity  levels through Infinity
{n}  level n only
{n1,n2}  levels through
The default value for levelspec in Map is .
A positive level n consists of all parts of expr specified by n indices.
A negative level -n consists of all parts of expr with depth n.
Level consists of numbers, symbols, and other objects that do not have subparts.
Level corresponds to the whole expression.
With the option setting Heads->True, Map includes heads of expressions and their parts.
Map always effectively constructs a complete new expression and then evaluates it.
If expr is an Association object, Map[f,expr] applies f to the values in the association.
If expr is a SparseArray object, Map[f,expr] applies f to the values or subarrays that appear in expr.
Map[f][expr] is equivalent to Map[f,expr].
[http://reference.wolfram.com/language/ref/Map.html]

* Wlfmfn.MapAll
* Wlfmfn.MapAt
* Wlfmfn.MapIndexed
* Wlfmfn.MapThread
* Wlfmfn.MarcumQ
* Wlfmfn.MardiaCombinedTest
* Wlfmfn.MardiaKurtosisTest
* Wlfmfn.MardiaSkewnessTest
* Wlfmfn.MarginalDistribution
* Wlfmfn.MarkovProcessProperties
* Wlfmfn.Masking
* Wlfmfn.MatchLocalNames
* Wlfmfn.MatchQ
* Wlfmfn.MatchingDissimilarity

* Wlfmfn.MathMLForm:
MathMLForm[expr]
prints as a MathML form of expr.
Details
MathMLForm gives presentation MathML, although its output can normally be interpreted by the Wolfram Language.
MathMLForm[expr] gives MathML for the TraditionalForm of expr. »
MathMLForm[StandardForm[expr]] gives MathML for the StandardForm of expr. »
MathMLForm acts as a "wrapper", which affects printing, but not evaluation.
MathMLForm gives special characters using HTML aliases.
[http://reference.wolfram.com/language/ref/MathMLForm.html]

* Wlfmfn.MathieuC
* Wlfmfn.MathieuCPrime
* Wlfmfn.MathieuCharacteristicA
* Wlfmfn.MathieuCharacteristicB
* Wlfmfn.MathieuCharacteristicExponent
* Wlfmfn.MathieuGroupM11
* Wlfmfn.MathieuGroupM12
* Wlfmfn.MathieuGroupM22
* Wlfmfn.MathieuGroupM23
* Wlfmfn.MathieuGroupM24
* Wlfmfn.MathieuS
* Wlfmfn.MathieuSPrime
* Wlfmfn.Matrices
* Wlfmfn.MatrixExp
* Wlfmfn.MatrixForm
* Wlfmfn.MatrixFunction
* Wlfmfn.MatrixLog
* Wlfmfn.MatrixPlot
* Wlfmfn.MatrixPower
* Wlfmfn.MatrixQ
* Wlfmfn.MatrixRank
* Wlfmfn.Max
* Wlfmfn.MaxCellMeasure
* Wlfmfn.MaxDetect
* Wlfmfn.MaxExtraBandwidths
* Wlfmfn.MaxExtraConditions
* Wlfmfn.MaxFeatures
* Wlfmfn.MaxFilter
* Wlfmfn.MaxIterations
* Wlfmfn.MaxMemoryUsed
* Wlfmfn.MaxMixtureKernels
* Wlfmfn.MaxPlotPoints
* Wlfmfn.MaxRecursion
* Wlfmfn.MaxStableDistribution
* Wlfmfn.MaxStepFraction
* Wlfmfn.MaxStepSize
* Wlfmfn.MaxSteps
* Wlfmfn.MaxValue
* Wlfmfn.MaximalBy
* Wlfmfn.Maximize
* Wlfmfn.MaxwellDistribution
* Wlfmfn.McLaughlinGroupMcL
* Wlfmfn.Mean
* Wlfmfn.MeanClusteringCoefficient
* Wlfmfn.MeanDegreeConnectivity
* Wlfmfn.MeanDeviation
* Wlfmfn.MeanFilter
* Wlfmfn.MeanGraphDistance
* Wlfmfn.MeanNeighborDegree
* Wlfmfn.MeanShift
* Wlfmfn.MeanShiftFilter
* Wlfmfn.Median
* Wlfmfn.MedianDeviation
* Wlfmfn.MedianFilter

* Wlfmfn.MedicalTestData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Medium
* Wlfmfn.MeijerG
* Wlfmfn.MeixnerDistribution
* Wlfmfn.MemberQ
* Wlfmfn.MemoryConstrained
* Wlfmfn.MemoryConstraint
* Wlfmfn.MemoryInUse
* Wlfmfn.MenuCommandKey
* Wlfmfn.MenuPacket
* Wlfmfn.MenuSortingValue
* Wlfmfn.MenuStyle
* Wlfmfn.MenuView
* Wlfmfn.Merge
* Wlfmfn.Mesh
* Wlfmfn.MeshCellCentroid
* Wlfmfn.MeshCellCount
* Wlfmfn.MeshCellIndex
* Wlfmfn.MeshCellLabel
* Wlfmfn.MeshCellMarker
* Wlfmfn.MeshCellMeasure
* Wlfmfn.MeshCellQuality
* Wlfmfn.MeshCellStyle
* Wlfmfn.MeshCells
* Wlfmfn.MeshCoordinates
* Wlfmfn.MeshFunctions
* Wlfmfn.MeshPrimitives
* Wlfmfn.MeshQualityGoal
* Wlfmfn.MeshRefinementFunction
* Wlfmfn.MeshRegion
* Wlfmfn.MeshRegionQ
* Wlfmfn.MeshShading
* Wlfmfn.MeshStyle

* Wlfmfn.Message:
Message[symbol::tag]
prints the message unless it has been switched off.
Message[symbol::tag,e1,e2,…]
prints a message, inserting the values of the as needed.
Details
Message generates output on the channel $Messages.
You can switch off a message using Off[symbol::tag]. You can switch on a message using On[symbol::tag].
Between any two successive input lines, the Wolfram Language prints a message with a particular name at most three times. On the last occurrence, it prints the message General::stop.
Off[General::stop] makes the Wolfram Language not stop repeating messages.
During the evaluation of a particular input line, names of messages associated with that input line are appended to the list $MessageList, wrapped with HoldForm. At the end of the evaluation of the n^(th) input line, the value of $MessageList is assigned to MessageList[n].
Message[mname,e1,e2,…] is printed as StringForm[mess,e1,e2,…] where mess is the value of the message mname. Entries of the form in the string mess are replaced by the corresponding .
Given a message specified as , Message first searches for messages for each of the languages in the list $Language. If it finds none of these, it then searches for the actual message . If it does not find this, it then performs the same search procedure for General::tag. If it still finds no message, it applies any value given for the global variable $NewMessage to symbol and .
If you specify a message as , then Message will search only for messages with the particular language lang.
[http://reference.wolfram.com/language/ref/Message.html]

* Wlfmfn.MessageAction

* Wlfmfn.MessageDialog

* Wlfmfn.MessageList:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.MessageName:
* wlopr.MessageName, wlopr.sblColonColon: ::
===
symbol::tag
is a name for a message.
Details
You can specify messages by defining values for .
is converted to MessageName[symbol,"tag"]. tag can contain any characters that can appear in symbol names. symbol::"tag" can also be used.
Assignments for are stored in the Messages value of the symbol s.
The f::usage message is typically defined for functions intended for general use, giving a description of how to use the function.
?f prints out the message f::usage.
When ?form finds more than one function, only the names of the functions are printed.
You can switch on and off messages using On[s::tag] and Off[s::tag].
MessageName[symbol,"tag","lang"] or represents a message in a particular language.
[http://reference.wolfram.com/language/ref/MessageName.html]

* Wlfmfn.MessagePacket

* Wlfmfn.Messages:
Messages[symbol]
gives all the messages assigned to a particular symbol.
Details and Options
Messages that have been switched off using Off are enclosed in $Off.
[http://reference.wolfram.com/language/ref/Messages.html]

* Wlfmfn.MetaInformation:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.MeteorShowerData

* Wlfmfn.Method:
Method
is an option for various algorithm-intensive functions that specifies what internal methods they should use.
Details
Typical settings include:
Automatic  pick the method automatically
"name"  use the method with the specified name
{"name",opt1->val1,…}  use the specified method with particular options
{"name1",Method->{"name2",…}}  use a method and a submethod
{opt1->val1,opt2->val2,…}  give options for methods
With the default setting Method->Automatic, the Wolfram Language will automatically try to pick the best method for a particular computation.
[http://reference.wolfram.com/language/ref/Method.html]

* Wlfmfn.MexicanHatWavelet
* Wlfmfn.MeyerWavelet
* Wlfmfn.Min
* Wlfmfn.MinColorDistance
* Wlfmfn.MinDetect
* Wlfmfn.MinFilter
* Wlfmfn.MinIntervalSize
* Wlfmfn.MinStableDistribution
* Wlfmfn.MinValue

* Wlfmfn.MineralData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.MinimalBy
* Wlfmfn.MinimalPolynomial
* Wlfmfn.MinimalStateSpaceModel
* Wlfmfn.Minimize
* Wlfmfn.MinimumTimeIncrement
* Wlfmfn.MinkowskiQuestionMark

* Wlfmfn.MinorPlanetData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Minors
* Wlfmfn.Minus
* Wlfmfn.MinusPlus
* Wlfmfn.Missing
* Wlfmfn.MissingBehavior
* Wlfmfn.MissingDataMethod
* Wlfmfn.MissingDataRules
* Wlfmfn.MissingString
* Wlfmfn.MissingStyle
* Wlfmfn.MittagLefflerE
* Wlfmfn.MixedGraphQ
* Wlfmfn.MixedRadixQuantity
* Wlfmfn.MixtureDistribution
* Wlfmfn.Mod
* Wlfmfn.Modal
* Wlfmfn.ModularLambda

* Wlfmfn.Module:
Module[{x,y,…},expr]
specifies that occurrences of the symbols x, y, … in expr should be treated as local.
Module[{x=x0,…},expr]
defines initial values for x, ….
Details
Module allows you to set up local variables with names that are local to the module.
Module creates new symbols to represent each of its local variables every time it is called.
Module creates a symbol with name to represent a local variable with name xxx. The number nnn is the current value of $ModuleNumber.
The value of $ModuleNumber is incremented every time any module is used.
Before evaluating expr, Module substitutes new symbols for each of the local variables that appear anywhere in expr except as local variables in scoping constructs.
Symbols created by Module carry the attribute Temporary.
Symbols created by Module can be returned from modules.
You can use Module[{vars},body/;cond] as the right-hand side of a transformation rule with a condition attached.
Module has attribute HoldAll.
Module constructs can be nested in any way, with inner variables being renamed if necessary.
Module is a scoping construct that implements lexical scoping.
[http://reference.wolfram.com/language/ref/Module.html]

* Wlfmfn.Modulus
* Wlfmfn.MoebiusMu
* Wlfmfn.Moment
* Wlfmfn.MomentConvert
* Wlfmfn.MomentEvaluate
* Wlfmfn.MomentGeneratingFunction
* Wlfmfn.Monday
* Wlfmfn.Monitor

* Wlfmfn.MonomialList:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.MonsterGroupM
* Wlfmfn.MoonPhase
* Wlfmfn.MoonPosition
* Wlfmfn.MorletWavelet
* Wlfmfn.MorphologicalBinarize
* Wlfmfn.MorphologicalBranchPoints
* Wlfmfn.MorphologicalComponents
* Wlfmfn.MorphologicalEulerNumber
* Wlfmfn.MorphologicalGraph
* Wlfmfn.MorphologicalPerimeter
* Wlfmfn.MorphologicalTransform
* Wlfmfn.Most

* Wlfmfn.MountainData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.MouseAnnotation
* Wlfmfn.MouseAppearance
* Wlfmfn.MousePosition
* Wlfmfn.Mouseover

* Wlfmfn.MovieData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.MovingAverage
* Wlfmfn.MovingMap
* Wlfmfn.MovingMedian
* Wlfmfn.MoyalDistribution
* Wlfmfn.Multicolumn
* Wlfmfn.MultiedgeStyle
* Wlfmfn.MultigraphQ
* Wlfmfn.Multinomial
* Wlfmfn.MultinomialDistribution
* Wlfmfn.MultinormalDistribution
* Wlfmfn.MultiplicativeOrder
* Wlfmfn.Multiselection
* Wlfmfn.MultivariateHypergeometricDistribution
* Wlfmfn.MultivariatePoissonDistribution
* Wlfmfn.MultivariateTDistribution

Wlfmfn.N

name::
* McsEngl.Wlfmfn.N@cptIt,

http://reference.wolfram.com/language/ref/.html,

* Wlfmfn.N:
N[expr]
gives the numerical value of expr.
N[expr,n]
attempts to give a result with n-digit precision.
Details
Unless numbers in expr are exact, or of sufficiently high precision, N[expr,n] may not be able to give results with n-digit precision.
N[expr,n] may internally do computations to more than n digits of precision.
$MaxExtraPrecision specifies the maximum number of extra digits of precision that will ever be used internally.
The precision n is given in decimal digits; it need not be an integer.
n must lie between $MinPrecision and $MaxPrecision. $MaxPrecision can be set to Infinity.
n can be smaller than $MachinePrecision.
N[expr] gives a machine-precision number, so long as its magnitude is between $MinMachineNumber and $MaxMachineNumber.
N[expr] is equivalent to N[expr,MachinePrecision].
N[0] gives the number with machine precision.
N converts all nonzero numbers to Real or Complex form.
N converts each successive argument of any function it encounters to numerical form, unless the head of the function has an attribute such as NHoldAll.
You can define numerical values of functions using N[f[args]]:=value and N[f[args],n]:=value.
N[expr,{p,a}] attempts to generate a result with precision at most p and accuracy at most a.
N[expr,{Infinity,a}] attempts to generate a result with accuracy a.
N[expr,{Infinity,1}] attempts to find a numerical approximation to the integer part of expr.
[http://reference.wolfram.com/language/ref/N.html]

* Wlfmfn.NArgMax
* Wlfmfn.NArgMin
* Wlfmfn.NCache
* Wlfmfn.NDSolve
* Wlfmfn.NDSolveValue
* Wlfmfn.NExpectation
* Wlfmfn.NHoldAll
* Wlfmfn.NHoldFirst
* Wlfmfn.NHoldRest
* Wlfmfn.NIntegrate
* Wlfmfn.NMaxValue
* Wlfmfn.NMaximize
* Wlfmfn.NMinValue
* Wlfmfn.NMinimize
* Wlfmfn.NProbability
* Wlfmfn.NProduct
* Wlfmfn.NRoots
* Wlfmfn.NSolve
* Wlfmfn.NSum
* Wlfmfn.NakagamiDistribution

* Wlfmfn.NameQ:
* entity: symbol#ql:wls'computation#,
NameQ["string"]
yields True if there are any symbols whose names match the string pattern given, and yields False otherwise.
Details
You can test for classes of symbol names using abbreviated string patterns with metacharacters such as *, as specified in "Some General Notations and Conventions".
[http://reference.wolfram.com/language/ref/NameQ.html]

* Wlfmfn.Names:
Names["string"]
gives a list of the names of symbols which match the string.
Names[patt]
gives a list of names matching the arbitrary string pattern patt.
Details and Options
Names["string"] gives the same list of names as ?string.
Names returns a list of strings corresponding to the names of symbols.
The string can contain the following metacharacters:
*  match zero or more characters
@  match one or more characters, but not uppercase letters
Names["context`*"] lists all symbols in the specified context.
With SpellingCorrection->True, Names includes names that differ in a small fraction of their characters from those specifically requested.
With IgnoreCase->True or SpellingCorrection->True, Names treats lowercase and uppercase letters as equivalent when matching names.
Names[] lists all names in all contexts.
[http://reference.wolfram.com/language/ref/Names.html]

* Wlfmfn.Nand:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Nearest:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.NearestFunction:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.NebulaData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.NeedlemanWunschSimilarity
* Wlfmfn.Needs
* Wlfmfn.Negative
* Wlfmfn.NegativeBinomialDistribution
* Wlfmfn.NegativeDefiniteMatrixQ
* Wlfmfn.NegativeMultinomialDistribution
* Wlfmfn.NegativeSemidefiniteMatrixQ

* Wlfmfn.NeighborhoodData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.NeighborhoodGraph

* Wlfmfn.Nest:
* entity: looping#ql:wl'loop#,
Nest[f,expr,n]
gives an expression with f applied n times to expr.
Details
You can use Throw to exit from Nest before it is finished. »
[http://reference.wolfram.com/language/ref/Nest.html]

* Wlfmfn.NestList:
NestList[f,expr,n]
gives a list of the results of applying f to expr through n times.
Details
NestList[f,expr,n] gives a list of length n+1.
[http://reference.wolfram.com/language/ref/NestList.html]

* Wlfmfn.NestWhile:
NestWhile[f,expr,test]
starts with expr, then repeatedly applies f until applying test to the result no longer yields True.
NestWhile[f,expr,test,m]
supplies the most recent m results as arguments for test at each step.
NestWhile[f,expr,test,All]
supplies all results so far as arguments for test at each step.
NestWhile[f,expr,test,m,max]
applies f at most max times.
NestWhile[f,expr,test,m,max,n]
applies f an extra n times.
NestWhile[f,expr,test,m,max,-n]
returns the result found when f had been applied n fewer times.
Details
NestWhile[f,expr,test] returns the first expression to which applying test does not yield True.
If does not yield True, NestWhile[f,expr,test] returns expr. »
NestWhile[f,expr,test,m] at each step evaluates . It does not put the results in a list. »
The are given in the order they are generated, with the most recent coming last.
NestWhile[f,expr,test,m] does not start applying test until at least m results have been generated.
NestWhile[f,expr,test,{mmin,m}] does not start applying test until at least results have been generated. At each step it then supplies as arguments to test as many recent results as possible, up to a maximum of m. »
NestWhile[f,expr,test,m] is equivalent to NestWhile[f,expr,test,{m,m}]. »
NestWhile[f,expr,UnsameQ,2] is equivalent to FixedPoint[f,expr]. »
NestWhile[f,expr,test,All] is equivalent to NestWhile[f,expr,test,{1,Infinity}]. »
NestWhile[f,expr,UnsameQ,All] goes on applying f until the same result first appears more than once.
NestWhile[f,expr,test,m,max,n] applies f an additional n times after test fails, or max applications have already been performed. »
NestWhile[f,expr,test,m,max,-n] is equivalent to Part[NestWhileList[f,expr,test,m,max],-n-1]. »
NestWhile[f,expr,test,m,Infinity,-1] returns, if possible, the last expression in the sequence expr, , , … for which test yields True.
[http://reference.wolfram.com/language/ref/NestWhile.html]

* Wlfmfn.NestWhileList
* Wlfmfn.NestedGreaterGreater
* Wlfmfn.NestedLessLess
* Wlfmfn.NeumannValue
* Wlfmfn.NevilleThetaC
* Wlfmfn.NevilleThetaD
* Wlfmfn.NevilleThetaN
* Wlfmfn.NevilleThetaS
* Wlfmfn.NextCell
* Wlfmfn.NextPrime
* Wlfmfn.NicholsGridLines
* Wlfmfn.NicholsPlot
* Wlfmfn.NightHemisphere
* Wlfmfn.NominalVariables
* Wlfmfn.NonCommutativeMultiply
* Wlfmfn.NonConstants
* Wlfmfn.NonNegative
* Wlfmfn.NonPositive
* Wlfmfn.NoncentralBetaDistribution
* Wlfmfn.NoncentralChiSquareDistribution
* Wlfmfn.NoncentralFRatioDistribution
* Wlfmfn.NoncentralStudentTDistribution

* Wlfmfn.None:
None
is a setting used for certain options.

* Wlfmfn.NoneTrue
* Wlfmfn.NonlinearModelFit
* Wlfmfn.NonlinearStateSpaceModel
* Wlfmfn.NonlocalMeansFilter
* Wlfmfn.Nor
* Wlfmfn.NorlundB
* Wlfmfn.Norm
* Wlfmfn.NormFunction
* Wlfmfn.Normal
* Wlfmfn.NormalDistribution
* Wlfmfn.NormalMatrixQ
* Wlfmfn.Normalize
* Wlfmfn.Normalized
* Wlfmfn.NormalizedSquaredEuclideanDistance
* Wlfmfn.NormalsFunction
* Wlfmfn.Not
* Wlfmfn.NotCongruent
* Wlfmfn.NotCupCap
* Wlfmfn.NotDoubleVerticalBar
* Wlfmfn.NotElement
* Wlfmfn.NotEqualTilde
* Wlfmfn.NotExists
* Wlfmfn.NotGreater
* Wlfmfn.NotGreaterEqual
* Wlfmfn.NotGreaterFullEqual
* Wlfmfn.NotGreaterGreater
* Wlfmfn.NotGreaterLess
* Wlfmfn.NotGreaterSlantEqual
* Wlfmfn.NotGreaterTilde
* Wlfmfn.NotHumpDownHump
* Wlfmfn.NotHumpEqual
* Wlfmfn.NotLeftTriangle
* Wlfmfn.NotLeftTriangleBar
* Wlfmfn.NotLeftTriangleEqual
* Wlfmfn.NotLess
* Wlfmfn.NotLessEqual
* Wlfmfn.NotLessFullEqual
* Wlfmfn.NotLessGreater
* Wlfmfn.NotLessLess
* Wlfmfn.NotLessSlantEqual
* Wlfmfn.NotLessTilde
* Wlfmfn.NotNestedGreaterGreater
* Wlfmfn.NotNestedLessLess
* Wlfmfn.NotPrecedes
* Wlfmfn.NotPrecedesEqual
* Wlfmfn.NotPrecedesSlantEqual
* Wlfmfn.NotPrecedesTilde
* Wlfmfn.NotReverseElement
* Wlfmfn.NotRightTriangle
* Wlfmfn.NotRightTriangleBar
* Wlfmfn.NotRightTriangleEqual
* Wlfmfn.NotSquareSubset
* Wlfmfn.NotSquareSubsetEqual
* Wlfmfn.NotSquareSuperset
* Wlfmfn.NotSquareSupersetEqual
* Wlfmfn.NotSubset
* Wlfmfn.NotSubsetEqual
* Wlfmfn.NotSucceeds
* Wlfmfn.NotSucceedsEqual
* Wlfmfn.NotSucceedsSlantEqual
* Wlfmfn.NotSucceedsTilde
* Wlfmfn.NotSuperset
* Wlfmfn.NotSupersetEqual
* Wlfmfn.NotTilde
* Wlfmfn.NotTildeEqual
* Wlfmfn.NotTildeFullEqual
* Wlfmfn.NotTildeTilde
* Wlfmfn.NotVerticalBar

* Wlfmfn.Notebook:
Notebook[{cell1,cell2,…}]
is the low?level construct that represents a notebook manipulated by the Wolfram System front end.
Details
Notebook files contain explicit Notebook expressions written out in textual form.
You can manipulate open notebooks in the front end using standard commands in the front end, and using the Option Inspector.
Open notebooks in the front end are referred to in the kernel by NotebookObject constructs. You can use Options and SetOptions to look at and modify options for open notebooks.
[http://reference.wolfram.com/language/ref/Notebook.html]

* Wlfmfn.NotebookApply

* Wlfmfn.NotebookAutoSave

* Wlfmfn.NotebookClose

* Wlfmfn.NotebookDelete

* Wlfmfn.NotebookDirectory

* Wlfmfn.NotebookDynamicExpression

* Wlfmfn.NotebookEvaluate

* Wlfmfn.NotebookEventActions

* Wlfmfn.NotebookFileName

* Wlfmfn.NotebookFind

* Wlfmfn.NotebookGet

* Wlfmfn.NotebookInformation

* Wlfmfn.NotebookLocate

* Wlfmfn.NotebookObject:
NotebookObject[fe,id]
is an object that represents an open notebook in the front end.
Details
NotebookObject expressions are typically generated by kernel commands such as InputNotebook, EvaluationNotebook, and Notebooks.
fe is a that specifies the front end in which the notebook is open.
id is an integer that gives a unique serial number for this open notebook.
In StandardForm and OutputForm, notebook objects are printed so as to indicate the current title of the window that would be used to display the notebook.
Functions such as NotebookPrint and NotebookClose take NotebookObject as their argument.
Within any open notebook, there is always a current selection. The current selection can be modified by applying functions such as SelectionMove to NotebookObject.
A NotebookObject is permanently invalid after a notebook is closed, even if that notebook is reopened.
[http://reference.wolfram.com/language/ref/NotebookObject.html]

* Wlfmfn.NotebookOpen

* Wlfmfn.NotebookPrint

* Wlfmfn.NotebookPut

* Wlfmfn.NotebookRead

* Wlfmfn.NotebookSave

* Wlfmfn.NotebookSelection

* Wlfmfn.NotebookTemplate

* Wlfmfn.NotebookWrite

* Wlfmfn.Notebooks

* Wlfmfn.Now,

* Wlfmfn.NuclearExplosionData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.NuclearReactorData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Null:
Null
is a symbol used to indicate the absence of an expression or a result. It is not displayed in ordinary output.

When Null appears as a complete output expression, no output is printed.
Details
e1;e2;...;ek; returns Null, and prints no output.
Expressions like are interpreted to have Null between each pair of adjacent commas.
Null represents the absence of content or elements in such constructs as InputField or Grid.
[http://reference.wolfram.com/language/ref/Null.html]

* Wlfmfn.NullRecords
* Wlfmfn.NullSpace
* Wlfmfn.NullWords
* Wlfmfn.Number
* Wlfmfn.NumberFieldClassNumber
* Wlfmfn.NumberFieldDiscriminant
* Wlfmfn.NumberFieldFundamentalUnits
* Wlfmfn.NumberFieldIntegralBasis
* Wlfmfn.NumberFieldNormRepresentatives
* Wlfmfn.NumberFieldRegulator
* Wlfmfn.NumberFieldRootsOfUnity
* Wlfmfn.NumberFieldSignature
* Wlfmfn.NumberForm
* Wlfmfn.NumberFormat
* Wlfmfn.NumberLinePlot
* Wlfmfn.NumberMarks
* Wlfmfn.NumberMultiplier
* Wlfmfn.NumberPadding
* Wlfmfn.NumberPoint
* Wlfmfn.NumberQ
* Wlfmfn.NumberSeparator
* Wlfmfn.NumberSigns
* Wlfmfn.NumberString
* Wlfmfn.Numerator
* Wlfmfn.NumericFunction
* Wlfmfn.NumericQ
* Wlfmfn.NuttallWindow
* Wlfmfn.NyquistGridLines
* Wlfmfn.NyquistPlot

Wlfmfn.O

name::
* McsEngl.Wlfmfn.O@cptIt,

http://reference.wolfram.com/language/ref/.html,
* Wlfmfn.O
* Wlfmfn.ONanGroupON
* Wlfmfn.ObservabilityGramian
* Wlfmfn.ObservabilityMatrix
* Wlfmfn.ObservableDecomposition
* Wlfmfn.ObservableModelQ

* Wlfmfn.OceanData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.OddQ

* Wlfmfn.Off:
Off[symbol::tag]
switches off a message, so that it is no longer printed.
Off["name"]
switches off a named group of messages.
Off[s]
switches off tracing messages associated with the symbol s.
Off[m1,m2,…]
switches off several messages or message groups.
Details
The value of is not affected by Off.
$MessageGroups gives the list of possible message groups.
Off[General::name] switches off all messages derived from General::name.
Off[s] is equivalent to Off[s::trace].
Off[] is equivalent to Off[s::trace] for all symbols.
[http://reference.wolfram.com/language/ref/Off.html]

* Wlfmfn.Offset

* Wlfmfn.On:
On[symbol::tag]
switches on a message, so that it can be printed.
On["name"]
switches on a named group of messages.
On[s]
switches on tracing for the symbol s.
On[m1,m2,…]
switches on several messages or message groups.
Details
Some messages for built-in functions are off by default, and must explicitly be switched on using On.
In On["name"], possible named message groups include:
"Compiler"  warnings associated with compiled code
"Graphics"  warnings associated with graphics generation
"Packing"  notifications associated with packed arrays
"Spelling"  spell-checking messages for symbol names
"Symbolics"  warnings associated with symbolic computation
$MessageGroups gives a complete list of message groups recognized by On.
On[General::name] switches on all messages derived from General::name.
When tracing is switched on, each evaluation of a symbol, on its own or as a function, is printed, together with the result.
Note that the tracing information is printed when a function returns. As a result, traces of recursive functions appear in the opposite order from their calls.
On[Assert] switches on messages associated with assertions specified by Assert.
On[s] is equivalent to On[s::trace].
On[] is equivalent to On[s::trace] for all symbols.
[http://reference.wolfram.com/language/ref/On.html]

* Wlfmfn.OneIdentity

* Wlfmfn.Opacity

* Wlfmfn.OpenAppend

* Wlfmfn.OpenRead:
OpenRead["file"]
opens a file to read data from, and returns an InputStream object.
Details and Options
OpenRead prepares to read from a file, starting at the beginning of the file.
On systems that support pipes, OpenRead["!command"] runs the external program specified by command, and opens a pipe to get input from it.
If OpenRead does not succeed in opening a particular file or pipe, it generates a message, and returns $Failed.
OpenRead resolves file names according to the procedure described in "Files and Streams".
The function ReadList automatically opens files or pipes that it needs.
OpenRead returns InputStream["name",n], where name is the full name of a file or command, and n is a serial number that is unique across all streams opened in the current Wolfram System session.
With the option BinaryFormat->True the stream is opened in binary format, so that no textual interpretation of newlines or other data is done.
With the Method option, the stream is opened using the given input stream method. This overrides the default way that OpenRead resolves file names.
[http://reference.wolfram.com/language/ref/OpenRead.html]

* Wlfmfn.OpenWrite
* Wlfmfn.Opener
* Wlfmfn.OpenerBoxOptions
* Wlfmfn.OpenerView
* Wlfmfn.Opening
* Wlfmfn.Operate
* Wlfmfn.OperatingSystem

* Wlfmfn.OptimumFlowData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.OptionValue
* Wlfmfn.OptionValueBoxOptions
* Wlfmfn.Optional

* Wlfmfn.Options:
Options[symbol]
gives the list of default options assigned to a symbol.
Options[expr]
gives the options explicitly specified in a particular expression such as a graphics object.
Options[stream] or Options["sname"]
gives options associated with a particular stream.
Options[object]
gives options associated with an external object such as a NotebookObject.
Options[obj,name]
gives the setting for the option name.
Options[obj,{name1,name2,…}]
gives a list of the settings for the options .
Details
Many built-in functions allow you to give additional arguments that specify options with rules of the form .
Options[f] gives the list of rules to be used for the options associated with a function f if no explicit rules are given when the function is called.
Options always returns a list of transformation rules for option names.
You can assign a value to Options[symbol] to redefine all the default option settings for a function.
SetOptions[symbol,name->value] can be used to specify individual default options.
You can use Options on InputStream and OutputStream objects. If there is only one stream with a particular name, you can give the name as a string as the argument of Options.
If obj is a front end object such as $FrontEnd, NotebookObject, or CellObject, the kernel will send a request to the front end to find the result.
Explicit values are found for options associated with cells, even if these options are only set at the style, notebook or global level.
[http://reference.wolfram.com/language/ref/Options.html]

* Wlfmfn.OptionsPattern
* Wlfmfn.Or
* Wlfmfn.Orange
* Wlfmfn.Order
* Wlfmfn.OrderDistribution
* Wlfmfn.OrderedQ
* Wlfmfn.Ordering
* Wlfmfn.Orderless
* Wlfmfn.OrnsteinUhlenbeckProcess
* Wlfmfn.OrthogonalMatrixQ
* Wlfmfn.Orthogonalize
* Wlfmfn.Out
* Wlfmfn.Outer
* Wlfmfn.OutputControllabilityMatrix
* Wlfmfn.OutputControllableModelQ:

* Wlfmfn.OutputForm:
OutputForm[expr]
prints as a two-dimensional representation of expr using only keyboard characters.
Details
OutputForm is an approximation to StandardForm which uses only ordinary keyboard characters.
The OutputForm of many kinds of expressions is quite different from their internal representation.
OutputForm acts as a "wrapper", which affects printing, but not evaluation. »
OutputForm cannot be used directly for input to the Wolfram Language.
When possible, OutputForm uses approximations to special characters. Thus is given as and as . »
[http://reference.wolfram.com/language/ref/OutputForm.html]

* Wlfmfn.OutputNamePacket
* Wlfmfn.OutputResponse
* Wlfmfn.OutputSizeLimit
* Wlfmfn.OutputStream
* Wlfmfn.OverBar
* Wlfmfn.OverDot
* Wlfmfn.OverHat
* Wlfmfn.OverTilde
* Wlfmfn.OverVector
* Wlfmfn.Overflow
* Wlfmfn.Overlaps
* Wlfmfn.Overlay
* Wlfmfn.OverlayBoxOptions
* Wlfmfn.Overscript
* Wlfmfn.OverscriptBox
* Wlfmfn.OverscriptBoxOptions
* Wlfmfn.OwenT

* Wlfmfn.OwnValues:
OwnValues[x]
gives the rule corresponding to any ownvalue defined for the symbol x.
[http://reference.wolfram.com/language/ref/OwnValues.html]

Wlfmfn.P

name::
* McsEngl.Wlfmfn.P@cptIt,

http://reference.wolfram.com/language/ref/.html,
* Wlfmfn.PDF
* Wlfmfn.PERTDistribution

* Wlfmfn.PIDData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.PIDDerivativeFilter
* Wlfmfn.PIDFeedforward
* Wlfmfn.PIDTune
* Wlfmfn.PackingMethod
* Wlfmfn.PadLeft
* Wlfmfn.PadRight
* Wlfmfn.PaddedForm
* Wlfmfn.Padding
* Wlfmfn.PadeApproximant
* Wlfmfn.PageBreakAbove
* Wlfmfn.PageBreakBelow
* Wlfmfn.PageBreakWithin
* Wlfmfn.PageFooters
* Wlfmfn.PageHeaders
* Wlfmfn.PageRankCentrality
* Wlfmfn.PageWidth
* Wlfmfn.PairedBarChart
* Wlfmfn.PairedHistogram
* Wlfmfn.PairedSmoothHistogram
* Wlfmfn.PairedTTest
* Wlfmfn.PairedZTest
* Wlfmfn.PaletteNotebook
* Wlfmfn.Pane
* Wlfmfn.PaneBoxOptions
* Wlfmfn.PaneSelector
* Wlfmfn.PaneSelectorBoxOptions
* Wlfmfn.Panel
* Wlfmfn.PanelBoxOptions
* Wlfmfn.Paneled
* Wlfmfn.ParabolicCylinderD
* Wlfmfn.ParagraphIndent
* Wlfmfn.ParagraphSpacing
* Wlfmfn.ParallelArray
* Wlfmfn.ParallelCombine
* Wlfmfn.ParallelDo
* Wlfmfn.ParallelEvaluate
* Wlfmfn.ParallelMap
* Wlfmfn.ParallelNeeds
* Wlfmfn.ParallelProduct
* Wlfmfn.ParallelSubmit
* Wlfmfn.ParallelSum
* Wlfmfn.ParallelTable
* Wlfmfn.ParallelTry
* Wlfmfn.Parallelepiped
* Wlfmfn.Parallelization
* Wlfmfn.Parallelize
* Wlfmfn.Parallelogram
* Wlfmfn.ParameterEstimator
* Wlfmfn.ParameterMixtureDistribution
* Wlfmfn.ParametricFunction
* Wlfmfn.ParametricNDSolve
* Wlfmfn.ParametricNDSolveValue
* Wlfmfn.ParametricPlot
* Wlfmfn.ParametricPlot3D
* Wlfmfn.ParametricRegion
* Wlfmfn.ParentBox
* Wlfmfn.ParentCell
* Wlfmfn.ParentDirectory
* Wlfmfn.ParentNotebook
* Wlfmfn.ParetoDistribution

* Wlfmfn.ParkData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Part:
* wlopr.part: [[]]
* wlPart,
expr[[i]] or Part[expr,i]
gives the i^(th) part of expr.
expr[[-i]]
counts from the end.
expr[[i,j,...]] or Part[expr,i,j,…]
is equivalent to expr[[i]][[j]].
expr[[{i1, i2, ...}]]
gives a list of the parts i1, i2, … of expr.
expr[[m;;n]]
gives parts m through n.
expr[[m;;n;;s]]
gives parts m through n in steps of s.
expr[["key"]]
gives the value associated with the key in an association expr.
expr[[Key[k]]]
gives the value associated with an arbitrary key k in the association expr.
Details
You can make an assignment like to modify any part or sequence of parts in an expression. »
Part 0 of an expression is its head.
Common spans of parts include:
expr[[m;;]]  part m through the end
expr[[;;n]]  from the beginning to part n
expr[[;;,j]]  column j
expr[[m1;;n1,m2;;n2]]  submatrix
When expr is a list, gives a list of parts. In general, the head of expr is applied to the list of parts. »
You can get a nested list of parts from . Each part has one index from each list.
If any of the are All or , all parts at that level are kept.
Notice that lists are used differently in Part than in functions like Extract, MapAt, and Position.
If expr is a SparseArray object, gives the parts in the corresponding ordinary array. »
The form can be used to extract a value from an association whose key is a string. expr[[Key[k]]] can be used to extract values with any keys.
and Key[k] can appear anywhere in the specification of parts.
In StandardForm and InputForm, can be input as .
and can be entered as Esc[[Esc and Esc]]Esc or \[LeftDoubleBracket] and \[RightDoubleBracket].
In StandardForm, can be input as or .
Background
Part is a structural function that gives a specified indexed part of an expression. The expression Part[expr,i] is commonly represented using the shorthand syntax or . Part can be used to pick out parts of lists, a sequence of parts, elements of matrices, rows and columns of matrices, and so forth. Part can also be used to assign values to parts using Set, e.g. .
Although Part is most commonly used with lists, it works with expressions of any kind. When using Part, parts of expressions may be specified using indices, lists of indices, Span expressions, or All.
Useful functions that perform common special cases of Part include First, Last, Take, Drop, Rest, and Most. Position can be used to find the positions in an expression at which specified content appears. Extract is a more specialized function that extracts the part of an expression at the position specified by a given list, while the analogous function Delete removes an element from a specified position.
A small number of functions contain parts that cannot be accessed or divided into subexpressions using Part or related functions. The most common cases are Complex and Rational, where for example Complex[1,2] is the internal representation for numbers such as and Rational[1,2] is the internal representation for numbers such as . Functions having this property are said to be atomic, and they return True when AtomQ is applied to them.
[http://reference.wolfram.com/language/ref/Part.html]
_DESCRIPTION:
Part is a structural function that gives a specified indexed part of an expression. The expression Part[expr,i] is commonly represented using the shorthand syntax or . Part can be used to pick out parts of lists, a sequence of parts, elements of matrices, rows and columns of matrices, and so forth. Part can also be used to assign values to parts using Set, e.g. .
Although Part is most commonly used with lists, it works with expressions of any kind. When using Part, parts of expressions may be specified using indices, lists of indices, Span expressions, or All.
Useful functions that perform common special cases of Part include First, Last, Take, Drop, Rest, and Most. Position can be used to find the positions in an expression at which specified content appears. Extract is a more specialized function that extracts the part of an expression at the position specified by a given list, while the analogous function Delete removes an element from a specified position.
A small number of functions contain parts that cannot be accessed or divided into subexpressions using Part or related functions. The most common cases are Complex and Rational, where for example Complex[1,2] is the internal representation for numbers such as and Rational[1,2] is the internal representation for numbers such as . Functions having this property are said to be atomic, and they return True when AtomQ is applied to them.
[http://reference.wolfram.com/language/ref/Part.html]

* Wlfmfn.PartBehavior
* Wlfmfn.PartialCorrelationFunction

* Wlfmfn.ParticleAcceleratorData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ParticleData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Partition
* Wlfmfn.PartitionsP
* Wlfmfn.PartitionsQ
* Wlfmfn.ParzenWindow
* Wlfmfn.PascalDistribution
* Wlfmfn.PassEventsDown
* Wlfmfn.PassEventsUp
* Wlfmfn.Paste
* Wlfmfn.PasteButton

* Wlfmfn.Path:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.PathGraph:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.PathGraphQ:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Pattern:
* wlopr.Pattern, wlopr.sblColon: :
===
s:obj
represents the pattern object obj, assigned the name s.
Details
The name s must be a symbol.
The object obj can be any pattern object.
When a transformation rule is used, any occurrence of s on the right-hand side is replaced by whatever expression it matched on the left-hand side.
The operator has a comparatively low precedence. The expression x:_+_ is thus interpreted as x:(_+_), not (x:_)+_.
The form s_ is equivalent to s:_. Similarly, s_h is equivalent to , s__ to s:__, and so on.
[http://reference.wolfram.com/language/ref/Pattern.html]

* Wlfmfn.PatternSequence:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.PatternTest:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.PaulWavelet
* Wlfmfn.PauliMatrix
* Wlfmfn.Pause
* Wlfmfn.PeakDetect
* Wlfmfn.PearsonChiSquareTest
* Wlfmfn.PearsonCorrelationTest
* Wlfmfn.PearsonDistribution
* Wlfmfn.PerformanceGoal
* Wlfmfn.Periodogram
* Wlfmfn.PeriodogramArray
* Wlfmfn.Permissions

* Wlfmfn.PermutationCycles:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.PermutationCyclesQ:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.PermutationGroup:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.PermutationLength:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.PermutationList:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.PermutationListQ:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.PermutationMax:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.PermutationMin:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.PermutationOrder:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.PermutationPower:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.PermutationProduct:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.PermutationReplace:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.PermutationSupport:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Permutations:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Permute
* Wlfmfn.PeronaMalikFilter

* Wlfmfn.http://reference.wolfram.com/language/ref/PersonData.html:
PersonData["name","property"]
gives the value of the specified property for the person .
PersonData[{"name1","name2",…},"property"]
gives a list of property values for the specified person names.
PersonData["name", "property", annotation]
gives the specified annotation associated with the property.
Details
The specified in PersonData can be an Entity, EntityClass, or canonical name.
The specified should be an EntityProperty, EntityPropertyClass, canonical name, or list thereof.
PersonData[] gives a list of all person entities.
PersonData["Properties"] gives a list of available properties.
Properties that do not apply or are not known in a particular case are indicated by Missing[…].
Properties include:
"AlternateNames"  other names
"AstrologicalSign"  astrological sign
"BirthDate"  date of birth
"BirthPlace"  place of birth
"Brothers"  brothers
"Children"  children
"ChineseZodiacSign"  Chinese zodiac sign
"Daughters"  daughters
"DeathDate"  date of death
"DeathPlace"  place of death
"Father"  father
"FullName"  full name
"Gender"  gender
"Height"  height
"Husbands"  husbands
"Image"  image
"MathematicalAchievements"  mathematical contributions
"Mother"  mother
"Name"  name
"NationalityCountries"  nationality
"NetWorth"  net worth
"NotableArtworks"  notable artworks
"NotableAstronomicalDiscoveries"  astronomical discoveries
"NotableBooks"  notable books
"NotableChemistryProblems"  famous chemistry problems
"NotableFacts"  notable facts
"NotableInventions"  notable inventions
"NotablePhysicsProblems"  physics contributions
"Occupation"  occupation
"Parents"  parents
"Siblings"  siblings
"Sisters"  sisters
"Sons"  sons
"Spouses"  spouses
"Weight"  weight
"Wives"  wives
Some properties are available for PersonData as a whole and can be given using the form PersonData["property"]. Such properties include:
"Entities"  all available entities
"EntityCount"  total number of available entities
"Classes"  all available entity classes
"EntityClassCount"  total number of available entity classes
"SampleEntities"  list of sample entities
"SampleEntityClasses"  list of sample entity classes
"EntityCanonicalNames"  list of all entity canonical names
"PropertyCanonicalNames"  list of all property canonical names
"EntityClassCanonicalNames"  list of all entity class canonical names
"RandomEntities"  pseudorandom sample entities
{"RandomEntities",n}  n pseudorandom entities
"RandomEntityClasses"  pseudorandom sample entity classes
{"RandomEntityClasses",n}  n pseudorandom entity classes
The following annotations can be used in the third argument of PersonData["name","property",annotation]:
"Qualifiers"  the list of possible qualifiers for the property
"QualifierValues"  the list of possible values that can be given to each qualifier
"DefaultQualifierValues"  the list of default values for the property's qualifiers
"Description"  a brief textual description of the property
"Definition"  a detailed textual definition of the property
"Source"  source information for the property
"Date"  the date associated with the entity-property value (if any)
"PhysicalQuantity"  the physical quantity associated with the entity-property value
"Unit"  the unit associated with the entity-property value
"EntityAssociation"  an Association of entities and entity-property values
"PropertyAssociation"  an Association of properties and entity-property values
If a function is provided as an annotation, it will be used to aggregate the result data. Typical aggregation functions include:
Min  the minimum value
Max  the maximum value
Mean  the mean value
Commonest  the most frequently occuring value
Median  the median value
Total  returns the total
Length  the number of elements
[http://reference.wolfram.com/language/ref/PersonData.html]

* Wlfmfn.PetersenGraph
* Wlfmfn.PhaseMargins
* Wlfmfn.PhaseRange

* Wlfmfn.PhysicalSystemData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Pi
* Wlfmfn.Pick
* Wlfmfn.PieChart
* Wlfmfn.PieChart3D
* Wlfmfn.Piecewise
* Wlfmfn.PiecewiseExpand
* Wlfmfn.PillaiTrace
* Wlfmfn.PillaiTraceTest
* Wlfmfn.Pink
* Wlfmfn.PixelConstrained
* Wlfmfn.PixelValue
* Wlfmfn.PixelValuePositions
* Wlfmfn.Placed
* Wlfmfn.Placeholder
* Wlfmfn.PlaceholderReplace
* Wlfmfn.Plain
* Wlfmfn.PlanarGraphQ
* Wlfmfn.PlanckRadiationLaw

* Wlfmfn.PlaneCurveData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.PlanetData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.PlanetaryMoonData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.PlantData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Play
* Wlfmfn.PlayRange
* Wlfmfn.Plot
* Wlfmfn.Plot3D
* Wlfmfn.PlotLabel
* Wlfmfn.PlotLayout
* Wlfmfn.PlotLegends
* Wlfmfn.PlotMarkers
* Wlfmfn.PlotPoints
* Wlfmfn.PlotRange
* Wlfmfn.PlotRangeClipping
* Wlfmfn.PlotRangePadding
* Wlfmfn.PlotRegion
* Wlfmfn.PlotStyle
* Wlfmfn.PlotTheme

* Wlfmfn.http://reference.wolfram.com/language/ref/Pluralize.html:
Pluralize["noun"]
gives the plural form of the English word "noun".
Pluralize["noun",n]
gives the inflected form of for n instances.
Pluralize[{"singular","plural"},n]
inflects using the specified forms.
Pluralize[spec,list]
uses the length of list to determine the inflection to use.
Details
Pluralize["noun",…] works for standard singular dictionary words; for other words it generates a message and returns the original string.
[http://reference.wolfram.com/language/ref/Pluralize.html]

* Wlfmfn.Plus

* Wlfmfn.PlusMinus

* Wlfmfn.Pochhammer

* Wlfmfn.PodStates:
PodStates
is an option for WolframAlpha that determines information about the states of the pods.
Details
PodStates->{state1,state2,…} specifies that the results of the WolframAlpha function should have the given states set.
The PodStates option corresponds to the element of the Wolfram|Alpha API.
[http://reference.wolfram.com/language/ref/PodStates.html]

* Wlfmfn.PodWidth:
PodWidth
is an option for WolframAlpha that determines the width parameters of the content returned by the Wolfram|Alpha API.
Details
PodWidth->w causes the WolframAlpha function to set the Wolfram|Alpha API's parameter to w.
PodWidth->{width,max,plot,info} sets the API's , , , and parameters, respectively.
[http://reference.wolfram.com/language/ref/PodWidth.html]

* Wlfmfn.Point:
Point[p]
is a graphics and geometry primitive that represents a point at p.
Point[{p1,p2,…}]
represents a collection of points.
Details and Options
Point can be used as a geometric region or a graphics primitive.

Point can be used in Graphics and Graphics3D.
In graphics, the points can be Scaled, Offset, ImageScaled, and Dynamic expressions.
Graphics renderings is affected by directives such as PointSize and color.
The following options and settings can be used in graphics:
VertexColors  None  vertex colors
VertexNormals  None  effective vertex normals for shading
Background
Point is a graphics and geometry primitive that represents a geometric point. The position of a Point in -dimensional space is specified as a list argument consisting of Cartesian coordinate values, where RegionEmbeddingDimension can be used to determine the dimension for a given Point expression. A collection of points may be represented as a list of -tuples inside a single Point primitive (a "multi-point"). The coordinates of Point objects may have exact or approximate values.
Point objects can be visually formatted in two and three dimensions using Graphics and Graphics3D, respectively. Point objects can also be used in geographical maps using GeoGraphics and GeoPosition (e.g. GeoGraphics[Point[GeoPosition[{38.9,-77.0}]]]). Finally, Point may serve as a region specification over which a computation should be performed.
While points themselves have dimension 0 (as reported by the RegionDimension function), Point objects in formatted graphics expressions are by default styled to appear "larger" than a 0-dimensional mathematical point. Furthermore, in graphical visualizations, points are displayed at the same size regardless of possibly differing distances from the view point. The appearance of Point objects in graphics can be modified by specifying sizing directives such as PointSize and AbsolutePointSize, color directives such as Red, the transparency directive Opacity, and the style option Antialiasing. In addition, the colors of multi-points may be specified using VertexColors, while the shading and simulated lighting of multi-points within Graphics3D may be specified using VertexNormals.
GeometricTransformation and more specific transformation functions such as Translate and Rotate can be used to change the coordinates at which a Point object is displayed while leaving the underlying Point expression untouched.
Other graphics primitives such as Circle, Disk, Sphere, and Ball may resemble those of stylized Point objects. Locator is another point-like interactive object that represents a draggable locator object in a graphic.
While the Point primitive explicitly appears in graphics and geometric region specification expressions, it should be noted that coordinates are commonly represented as bare lists in other contexts in the Wolfram Language. Examples of this type include coordinate specifications appearing inside other graphics primitives (e.g. Line[{{0, 0},{1,1}}]), arguments to Locator (e.g. Graphics[Locator[{0,2}]]), and when using Nearest to compute a nearest point. A number of functions (e.g. RegionNearest, RegionCentroid, ArgMin, and ArgMax) also naturally return bare lists of coordinates as opposed to explicit Point objects, while others (e.g. Solve and NSolve) return solution "points" as lists of variable replacement rules (e.g. ).
[http://reference.wolfram.com/language/ref/Point.html]

* Wlfmfn.Point3DBoxOptions
* Wlfmfn.PointBoxOptions
* Wlfmfn.PointFigureChart
* Wlfmfn.PointLegend
* Wlfmfn.PointSize
* Wlfmfn.PoissonConsulDistribution
* Wlfmfn.PoissonDistribution
* Wlfmfn.PoissonProcess
* Wlfmfn.PoissonWindow
* Wlfmfn.PolarAxes
* Wlfmfn.PolarAxesOrigin
* Wlfmfn.PolarGridLines
* Wlfmfn.PolarPlot
* Wlfmfn.PolarTicks
* Wlfmfn.PoleZeroMarkers
* Wlfmfn.PolyGamma
* Wlfmfn.PolyLog
* Wlfmfn.PolyaAeppliDistribution
* Wlfmfn.Polygon
* Wlfmfn.Polygon3DBoxOptions
* Wlfmfn.PolygonBoxOptions

* Wlfmfn.PolyhedronData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.PolynomialExtendedGCD
* Wlfmfn.PolynomialGCD
* Wlfmfn.PolynomialLCM
* Wlfmfn.PolynomialMod
* Wlfmfn.PolynomialQ
* Wlfmfn.PolynomialQuotient
* Wlfmfn.PolynomialQuotientRemainder
* Wlfmfn.PolynomialReduce
* Wlfmfn.PolynomialRemainder
* Wlfmfn.PopupMenu
* Wlfmfn.PopupMenuBoxOptions
* Wlfmfn.PopupView
* Wlfmfn.PopupWindow
* Wlfmfn.Position
* Wlfmfn.PositionIndex
* Wlfmfn.Positive
* Wlfmfn.PositiveDefiniteMatrixQ
* Wlfmfn.PositiveSemidefiniteMatrixQ
* Wlfmfn.PossibleZeroQ
* Wlfmfn.Postfix
* Wlfmfn.Power
* Wlfmfn.PowerDistribution
* Wlfmfn.PowerExpand
* Wlfmfn.PowerMod

* Wlfmfn.PowerModList:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.PowerRange
* Wlfmfn.PowerSpectralDensity
* Wlfmfn.PowerSymmetricPolynomial
* Wlfmfn.PowersRepresentations
* Wlfmfn.PreDecrement
* Wlfmfn.PreIncrement
* Wlfmfn.PrecedenceForm
* Wlfmfn.Precedes
* Wlfmfn.PrecedesEqual
* Wlfmfn.PrecedesSlantEqual
* Wlfmfn.PrecedesTilde
* Wlfmfn.Precision
* Wlfmfn.PrecisionGoal
* Wlfmfn.Predict
* Wlfmfn.PredictorFunction
* Wlfmfn.PredictorInformation
* Wlfmfn.PredictorMeasurements
* Wlfmfn.PreemptProtect
* Wlfmfn.Prefix
* Wlfmfn.Prepend
* Wlfmfn.PrependTo
* Wlfmfn.PreserveImageOptions
* Wlfmfn.PreviousCell
* Wlfmfn.PriceGraphDistribution
* Wlfmfn.Prime
* Wlfmfn.PrimeNu
* Wlfmfn.PrimeOmega
* Wlfmfn.PrimePi
* Wlfmfn.PrimePowerQ
* Wlfmfn.PrimeQ
* Wlfmfn.PrimeZetaP
* Wlfmfn.Primes
* Wlfmfn.PrimitiveRoot

* Wlfmfn.PrimitiveRootList:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.PrincipalComponents
* Wlfmfn.PrincipalValue
* Wlfmfn.Print
* Wlfmfn.PrintTemporary
* Wlfmfn.PrintingStyleEnvironment
* Wlfmfn.Prism
* Wlfmfn.PrivateCellOptions
* Wlfmfn.PrivateNotebookOptions
* Wlfmfn.Probability
* Wlfmfn.ProbabilityDistribution
* Wlfmfn.ProbabilityPlot
* Wlfmfn.ProbabilityScalePlot
* Wlfmfn.ProbitModelFit
* Wlfmfn.ProcessConnection
* Wlfmfn.ProcessDirectory
* Wlfmfn.ProcessEnvironment
* Wlfmfn.ProcessEstimator
* Wlfmfn.ProcessInformation

* Wlfmfn.ProcessObject
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ProcessParameterAssumptions
* Wlfmfn.ProcessParameterQ
* Wlfmfn.ProcessStatus
* Wlfmfn.Processes
* Wlfmfn.Product
* Wlfmfn.ProductDistribution
* Wlfmfn.ProductLog
* Wlfmfn.ProgressIndicator
* Wlfmfn.ProgressIndicatorBoxOptions
* Wlfmfn.Projection
* Wlfmfn.Prolog

* Wlfmfn.Properties:
Properties
is an option that allows specification of properties to objects and items of objects.
Details
Properties->{item1->{prop1->val1,prop2->val2,…},…} indicates that has the property-value pairs , , etc.
The items available for Graph objects include vertices and edges.
[http://reference.wolfram.com/language/ref/Properties.html]

* Wlfmfn.Property:
Property[item,name?value]
associates the property with item.
Details
Properties are used to store and manipulate pairs for specific named items within an object such as Graph.
Property acts as an inert wrapper around items.
The items available for Graph objects include vertices and edges.
[http://reference.wolfram.com/language/ref/Property.html]

* Wlfmfn.PropertyList:
PropertyList[{obj,itemspec}]
lists the properties available for itemspec in obj.
Details
Properties are used to store and manipulate pairs for specific named items within an object such as Graph.
The item specification itemspec typically has the form .
The index can typically have the following forms:
ind  a single index
{ind1,ind2,…}  a list of indexes
All  all possible indexes in collection
patt  indexes that match patt in collection
The collection can typically have the following forms:
col  a single collection
{col1,col2,…}  a list of collections
All  all possible collections
patt  collections that match patt
The item specification itemspec of the form collection refers to the default value for all indexes in the collection.
For an item specification itemspec that refers to more than a single item, PropertyList will give the union of properties for the different items.
The items available for Graph objects include vertices and edges.
[http://reference.wolfram.com/language/ref/PropertyList.html]

* Wlfmfn.PropertyValue:
PropertyValue[{obj,item},name]
gives the property value associated with name for item in obj.
PropertyValue[{obj,itemspec},name]
gives the property values associated with name for items indicated by itemspec in obj.
PropertyValue[…,{name1,name2,…}]
gives a list of property values associated with , , etc.
Details
Properties are used to store and manipulate pairs for specific named items within an object such as Graph.
The item specification itemspec typically has the form .
The index can typically have the following forms:
ind  a single index
{ind1,ind2,…}  a list of indexes
All  all possible indexes in collection
patt  indexes that match patt in collection
The collection can typically have the following forms:
col  a single collection
{col1,col2,…}  a list of collections
All  all possible collections
patt  collections that match patt
The item specification itemspec of the form collection refers to the default value for all indexes in the collection.
PropertyValue[{obj,itemspec},name] returns $Failed whenever there is no property value available for name.
PropertyValue[{obj,itemspec},name]=val can be used to modify the property value.
The items available for Graph objects include vertices and edges.
[http://reference.wolfram.com/language/ref/PropertyValue.html]

* Wlfmfn.Proportion:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Proportional:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Protect:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Protected:
Protected
is an attribute which prevents any values associated with a symbol from being modified.
Details
Many built-in Wolfram Language functions have the attribute Protected.
SetOptions cannot be used on symbols with attribute Protected.
[http://reference.wolfram.com/language/ref/Protected.html]

* Wlfmfn.ProteinData:
ProteinData["prot"]
gives the reference amino acid sequence for the protein prot.
ProteinData["prot","property"]
gives the value of the specified property for the protein prot.
Details
Proteins are specified by standard names such as .
ProteinData[] gives a list of all reference human proteins.
Protein sequences are represented as strings of standard single-letter amino acid codes.
Fundamental properties include:
"MolecularWeight"  total molecular weight in daltons
Sequence properties for proteins include:
"DNACodingSequence"  base pair sequence coding for the protein
"DNACodingSequenceLength"  length of base pair sequence coding for the protein
"Gene"  gene that codes for the protein
"Sequence"  amino acid sequence for the protein
"SequenceLength"  length of amino acid sequence for the protein
Protein structures may contain additional elements not explicitly encoded in the original DNA sequence.
Molecular structure properties based on residues include:
"DihedralAngles"  list of dihedral angles , ?, ? in radians
"SecondaryStructureRules"  list of rules giving start and end positions of helix, sheet, etc. structures
Molecular structure properties based on individual atoms include:
"AdditionalAtomPositions"  list of 3D coordinates of additional atoms
"AdditionalAtomTypes"  list of element symbols for additional atoms
"AtomPositions"  list of 3D coordinates of protein atoms
"AtomRoles"  list of structural roles for protein atoms
"AtomTypes"  list of element symbols for protein atoms
"GyrationRadius"  radius of gyration
"MoleculePlot"  3D molecular structure plot
Distances are measured in picometers.
ProteinData["prot","prop",grouping] gives molecular structure properties with various groupings:
{}  no grouping
"Chain"  group by chain
"Residue"  group by residue
{g1,g2,…}  list of grouping criteria
Properties associated with chains within structures include:
"ChainLabels"  list of identifiers for 3D structure chains
"ChainSequences"  list of amino acid sequences for 3D structure chains
Protein common domain properties include:
"DomainIDs"  NCBI CDD numbers of domains
"DomainPositions"  positions of domains in the protein sequence
"Domains"  names of domains in the protein
Functional properties include:
"BiologicalProcesses"  biological processes associated with the protein
"CellularComponents"  cellular components in which the protein is found
"MolecularFunctions"  molecular functions of the protein
Protein identification properties include:
"AlternateNames"  alternate traditional names
"GeneID"  GeneID number string for the protein's gene
"Name"  traditional name
"NCBIAccessions"  NCBI accession strings
"PDBIDList"  list of all PDB ID strings
"PrimaryPDBID"  PDB ID chosen in the Wolfram Language for structure properties, etc.
"StandardName"  standard Wolfram Language name
ProteinData["prot","prop","Units"] gives the units for a particular property value.
[http://reference.wolfram.com/language/ref/ProteinData.html]

* Wlfmfn.Pruning

* Wlfmfn.PseudoInverse

* Wlfmfn.PulsarData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Purple

* Wlfmfn.Put:
* wlopr.Put: >>
If you are familiar with command-line operating systems, you will recognize the Wolfram Language redirection operators >>, >>>, and << as being analogous to the command-line operators >, >>, and <.
[http://reference.wolfram.com/language/tutorial/ReadingAndWritingWolframSystemFiles.html]
===
expr >> filename
writes expr to a file.
Put[expr1,expr2,…,"filename"]
writes a sequence of expressions to a file.
Put["filename"]
creates an empty file with the specified name.
Details
Put starts writing output at the beginning of the file. It deletes whatever was previously in the file.
Put inserts a newline (line feed) at the end of its output.
is equivalent to expr>>"filename". The double quotes can be omitted if the file name is of the form specified in "Operator Input Forms".
It is conventional to use names that end with for files containing Wolfram Language input.
Put works with cloud objects.
Put by default writes expressions in InputForm.
Put[OutputForm[expr],"filename"] generates OutputForm.
[http://reference.wolfram.com/language/ref/Put.html]

* Wlfmfn.PutAppend:
* wlopr.PutAppend: >>>
===
expr >>> filename
appends expr to a file.
PutAppend[expr1,expr2,…,"filename"]
appends a sequence of expressions to a file.
Details
PutAppend works the same as Put, except that it adds output to the end of the file, rather than replacing the complete contents of the file.
PutAppend works with cloud objects.
[http://reference.wolfram.com/language/ref/PutAppend.html]

* Wlfmfn.Pyramid:
Pyramid[{p1,…,p5}]
represents a filled pyramid with base and top .
Details and Options
Pyramid can be used as a geometric region and a graphics primitive.

Pyramid represents a filled polyhedron given by the polygon faces , , , , and .
Pyramid can be used in Graphics3D.
In graphics, the points can be Scaled and Dynamic expressions.
Graphics rendering is affected by directives such as FaceForm, EdgeForm, Opacity, Texture, and color.
The following options and settings can be used in graphics:
VertexColors  Automatic  vertex colors to be interpolated
VertexNormals  Automatic  effective vertex normals for shading
VertexTextureCoordinates  None  coordinates for textures
[http://reference.wolfram.com/language/ref/Pyramid.html]

Wlfmfn.Q

name::
* McsEngl.Wlfmfn.Q@cptIt,

http://reference.wolfram.com/language/ref/.html,
* Wlfmfn.QBinomial
* Wlfmfn.QFactorial
* Wlfmfn.QGamma
* Wlfmfn.QHypergeometricPFQ
* Wlfmfn.QPochhammer
* Wlfmfn.QPolyGamma
* Wlfmfn.QRDecomposition
* Wlfmfn.QuadraticIrrationalQ
* Wlfmfn.Quantile
* Wlfmfn.QuantilePlot

* Wlfmfn.http://reference.wolfram.com/language/ref/Quantity.html:
Quantity[magnitude,unit]
represents a quantity with size magnitude and the unit specified by unit.
Quantity[unit]
assumes the magnitude of the specified unit to be 1.
Details and Options
Quantity has attribute HoldRest and preserves the structure of unit.
With the option setting ThreadDepth->d, Quantity[list,unit] will automatically thread the specified unit to depth d of list.
The specified unit should be a string or operation of strings representing the Quantity expression's unit value.
Quantity[unit] will produce a canonicalized Quantity with a magnitude of 1.
Quantity expressions can be created by using the Ctrl+Equal free-form linguistics interface.
Quantity will automatically attempt to parse an unknown unit string to its canonical form.
Supported units include all those specified by NIST Special Publication 811.
For purely numeric units, such as percents, Normal[expr] converts a Quantity object to an ordinary number.
[http://reference.wolfram.com/language/ref/Quantity.html]

* Wlfmfn.QuantityForm
* Wlfmfn.QuantityMagnitude
* Wlfmfn.QuantityQ
* Wlfmfn.QuantityThread

* Wlfmfn.QuantityUnit:
QuantityUnit[quantity]
returns the unit associated with the specified quantity.
Details
QuantityUnit returns the unit from Quantity[magnitude,unit].
QuantityUnit is Listable.
[http://reference.wolfram.com/language/ref/QuantityUnit.html]

* Wlfmfn.QuantityVariable
* Wlfmfn.QuantityVariableCanonicalUnit
* Wlfmfn.QuantityVariableDimensions
* Wlfmfn.QuantityVariableIdentifier
* Wlfmfn.QuantityVariablePhysicalQuantity
* Wlfmfn.Quartics
* Wlfmfn.QuartileDeviation
* Wlfmfn.QuartileSkewness
* Wlfmfn.Quartiles

* Wlfmfn.Query:
Query[operator1,operator2,…]
represents a query that can be applied to a Dataset object, in which the successive are applied at successively deeper levels.
Details and Options
Query can perform complex filtering, re-organization, and aggregation of arbitrary rectangular and hierarchical data, typically returning further rectangular or hierarchical data.
Query can operate on a Dataset object or an arbitrary nested expression consisting of lists and associations.
Query can be seen as a generalization of Part that allows computations to be performed in the process of traversing an expression or dataset.
The can be any of the following forms:
All,i,i;;j,"key",Key[…]  part operators
Select[…],MaximalBy[…],…  filtering operators
Counts,Total,Mean,Max,…  aggregation operators
Query[…],{op1,op2,…},…  subquery operators
Function[…],f  arbitrary functions
In Query[operator1,…][expr], the are applied at successively deeper levels in expr, but any given one may be applied either while "descending" into expr or while "ascending" out of it. In general, part specifications and filtering operators are "descending" operators. Aggregation operators, subquery operators, and arbitrary functions are "ascending" operators.
A "descending" operator is applied to corresponding parts of the original dataset, before subsequent operators are applied at deeper levels. Descending operators have the feature that they do not change the structure of deeper levels of the data when applied at a certain level. This ensures that subsequent operators will encounter subexpressions whose structure is identical to the corresponding levels of the original dataset. The simplest descending operator is All, which selects all parts at a given level and therefore leaves the structure of the data at that level unchanged.
An "ascending" operator is applied after all subsequent operators have been applied to deeper levels. Whereas descending operators correspond to the levels of the original data, ascending operators correspond to the levels of the result. Unlike descending operators, ascending operators do not necessarily preserve the structure of the data they operate on. Unless an operator is specifically recognized to be descending, it is assumed to be ascending.
The "descending" part operators specify which elements to take at a level before applying any subsequent operators to deeper levels:
All  apply subsequent operators to each part of a list or association
i;;j  take parts i through j and apply subsequent operators to each part
i  take only part i and apply subsequent operators to it
"key",Key[key]  take value of key in an association and apply subsequent operators to it
Keys  take keys of an association and apply subsequent operators to each key
Values  take values of an association and apply subsequent operators to each value
{part1,part2,…}  take given parts and apply subsequent operators to each part
The "descending" filtering operators specify how to rearrange or filter elements at a level before applying subsequent operators to deeper levels:
Select[test]  take only those parts of a list or association that satisfy test
SelectFirst[test]  take the first part that satisfies test
KeySelect[test]  take those parts of an association whose keys satisfy test
MaximalBy[crit],MinimalBy[crit]  take the parts for which criteria crit is minimal or maximal
SortBy[crit]  sort parts in order of crit
KeySortBy[crit]  sort parts of an association based on their keys, in order of crit
DeleteDuplicatesBy[crit]  take parts that are unique according to crit
DeleteMissing  drop elements with head Missing
The "ascending" aggregation operators combine or summarize the results of applying subsequent operators to deeper levels:
Total  total all quantities in the result
Min,Max  give minimum, maximum quantity in the result
Mean,Median,Quantile,…  give statistical summary of the result
Histogram,ListPlot,…  calculate a visualization on the result
Merge[f]  merge common keys of associations in the result using function f
Catenate  catenate the elements of lists or associations together
Counts  give association that counts occurences of values in the result
CountsBy[crit]  give association that counts occurences of values according to crit
CountDistinct  give number of distinct values in the result
CountDistinctBy[crit]  give number of distinct values in the result according to crit
The "ascending" subquery operators perform a subquery after applying subsequent operators to deeper levels:
Query[…]  perform a subquery on the result
{op1,op2,…}  apply multiple operators at once to the result, yielding a list
op1/* op2/* …  apply , then apply at the same level, etc.
<|key1?op1,key2?op2,…|>  apply multiple operators at once to the result, yielding an association with the given keys
{key1?op1,key2?op2,…}  apply different operators to specific parts in the result
When one or more descending operators are composed with one or more ascending operators (e.g. ), the descending part will be applied, then subsequent operators will be applied to deeper levels, and lastly the ascending part will be applied to the result.
The special descending operator GroupBy[spec] will introduce a new association at the level at which it appears, and can be inserted or removed from an existing query without affecting the behavior of other operators.
The following options can be given:
FailureAction  "Abort"  how to handle operators that fail
MissingBehavior  Automatic  how to treat operations involving Missing
PartBehavior  Automatic  how to resolve missing parts
Possible values for FailureAction include:
None  ignore all messages and failures
"Abort"  abort the entire query when a message is encountered (default)
"Drop"  drop the results of operations that issue messages
"Encapsulate"  wrap operations that issue messages in a Failure object
"Replace"  replace the results of operations that issue messages with Missing["Failed"]
The option MissingBehavior describes how numeric and other functions should treat expressions with head Missing. Possible values include:
None  use ordinary behavior of Missing
Automatic  invoke special rules for Mean, Total, etc.
The option PartBehavior describes how operators that refer to non-existent parts are evaluated. Possible values include:
None  use ordinary behavior of Part
Automatic  invoke special rules for invalid , missing i, etc.
[http://reference.wolfram.com/language/ref/Query.html]

* Wlfmfn.QueueProperties
* Wlfmfn.QueueingNetworkProcess
* Wlfmfn.QueueingProcess
* Wlfmfn.Quiet
* Wlfmfn.Quit
* Wlfmfn.Quotient
* Wlfmfn.QuotientRemainder

Wlfmfn.R

name::
* McsEngl.Wlfmfn.R@cptIt,

http://reference.wolfram.com/language/ref/.html,
* Wlfmfn.RGBColor
* Wlfmfn.RSolve
* Wlfmfn.RSolveValue
* Wlfmfn.RadialGradientImage
* Wlfmfn.RadialityCentrality
* Wlfmfn.RadicalBox
* Wlfmfn.RadicalBoxOptions
* Wlfmfn.RadioButton
* Wlfmfn.RadioButtonBar
* Wlfmfn.RadioButtonBoxOptions
* Wlfmfn.Radon
* Wlfmfn.RamanujanTau
* Wlfmfn.RamanujanTauL
* Wlfmfn.RamanujanTauTheta
* Wlfmfn.RamanujanTauZ
* Wlfmfn.RandomChoice
* Wlfmfn.RandomColor
* Wlfmfn.RandomComplex
* Wlfmfn.RandomFunction
* Wlfmfn.RandomGraph
* Wlfmfn.RandomImage
* Wlfmfn.RandomInteger
* Wlfmfn.RandomPermutation
* Wlfmfn.RandomPrime
* Wlfmfn.RandomReal
* Wlfmfn.RandomSample
* Wlfmfn.RandomVariate
* Wlfmfn.RandomWalkProcess
* Wlfmfn.Range
* Wlfmfn.RangeFilter
* Wlfmfn.RankedMax
* Wlfmfn.RankedMin
* Wlfmfn.Raster
* Wlfmfn.Raster3D
* Wlfmfn.Raster3DBoxOptions
* Wlfmfn.RasterBoxOptions
* Wlfmfn.RasterSize
* Wlfmfn.Rasterize
* Wlfmfn.Rational
* Wlfmfn.Rationalize
* Wlfmfn.Rationals
* Wlfmfn.Ratios
* Wlfmfn.RawBoxes

* Wlfmfn.RawData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.RayleighDistribution
* Wlfmfn.Re

* Wlfmfn.Read:
Read[stream]
reads one expression from an input stream and returns the expression.
Read[stream,type]
reads one object of the specified type.
Read[stream,{type1,type2,…}]
reads a sequence of objects of the specified types.
Details and Options
Possible types to read are:
Byte  single byte, returned as an integer code
Character  single character, returned as a one?character string
Expression  complete Wolfram Language expression
Number  integer or an approximate number, given in "E" format
Real  approximate number, given in "E" format
Record  sequence of characters delimited by record separators
String  string terminated by a newline
Word  sequence of characters delimited by word separators
Objects of type Real can be given in the scientific notation format used by languages such as C and Fortran, as well as in standard Wolfram Language format. A form like or as well as can be used to represent the number . Objects read as type Real are always returned as approximate numbers. Objects read as type Number are returned as integers if they contain no explicit decimal points.
The following options can be given:
NullRecords  False  whether to assume a null record between repeated record separators
NullWords  False  whether to assume a null word between repeated word separators
RecordSeparators  {"\r\n","\n","\r"}  separators allowed between records
TokenWords  {}  words taken as delimiters
WordSeparators  {" ","?t"}  separators allowed between words
Objects of type String must be terminated by newlines.
You can specify any nested list of types for Read to look for. Each successive object read will be placed in the next position in the list structure. A depth?first traversal of the list structure is used.
Read[stream,{Number,Number}] reads a pair of numbers from an input stream, and gives the result as a two?element list.
Read[stream,{{Number,Number},{Number,Number}}] reads a 2?2 matrix, going through each column, then each row.
You can use Read to get objects to insert into any expression structure, not necessarily a list. Example: Read[stream,Hold[Expression]] gets an expression and places it inside Hold.
The first argument to Read can be InputStream["name",n], or simply if there is only one open input stream with the specified name.
You can open a file or pipe to get an InputStream object using OpenRead.
There is always a "current point" maintained for any stream. When you read an object from a stream, the current point is left after the input you read. Successive calls to Read can therefore be used to read successive objects in a stream such as a file.
Read returns EndOfFile for each object you try to read after you have reached the end of a file.
Read returns $Failed if it cannot read an object of the type you requested.
If there is a syntax error in a Wolfram Language expression that you try to read, then Read leaves the current point at the position of the error, and returns $Failed.
[http://reference.wolfram.com/language/ref/Read.html]

* Wlfmfn.ReadLine

* Wlfmfn.ReadList:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ReadProtected:
ReadProtected
is an attribute that prevents values associated with a symbol from being seen.
Details
Individual values associated with read-protected symbols can be used during evaluation.
Definition[f], ?f, and related functions give only the attributes for read-protected symbols f.
[http://reference.wolfram.com/language/ref/ReadProtected.html]

* Wlfmfn.ReadString

* Wlfmfn.Real

* Wlfmfn.RealBlockDiagonalForm

* Wlfmfn.RealDigits

* Wlfmfn.RealExponent

* Wlfmfn.Reals:
Reals
represents the domain of real numbers, as in .
Details
evaluates immediately only if x is a numeric quantity.
Simplify[expr?Reals] can be used to try to determine whether an expression corresponds to a real number.
Within Simplify and similar functions, objects that satisfy inequalities are always assumed to be real.
Reals is output in TraditionalForm as .
[http://reference.wolfram.com/language/ref/Reals.html]

* Wlfmfn.Reap

* Wlfmfn.Record

* Wlfmfn.RecordLists

* Wlfmfn.RecordSeparators:
RecordSeparators
is an option for Read, Find, and related functions that specifies the list of strings to be taken as delimiters for records.
Details
The default setting is RecordSeparators->{"\n", "\r\n","\r" }. With this setting, each complete line of input on any computer system is considered as a record.
Strings used as record separators may contain several characters.
With the option setting NullRecords->False, any number of record separators may appear between any two successive records.
RecordSeparators->{} specifies that everything is to be included in a single record.
RecordSeparators->{{lsep1,…},{rsep1,…}} specifies different left and right separators for records. When there are nested left and right separators, records are taken to be delimited by the innermost balanced pairs of separators.
Text that does not appear between left and right separators is discarded.
[http://reference.wolfram.com/language/ref/RecordSeparators.html]

* Wlfmfn.Rectangle
* Wlfmfn.RectangleBoxOptions
* Wlfmfn.RectangleChart
* Wlfmfn.RectangleChart3D
* Wlfmfn.RecurrenceFilter
* Wlfmfn.RecurrenceTable
* Wlfmfn.Red
* Wlfmfn.Reduce
* Wlfmfn.ReferenceLineStyle
* Wlfmfn.Refine
* Wlfmfn.ReflectionMatrix
* Wlfmfn.ReflectionTransform
* Wlfmfn.Refresh
* Wlfmfn.RefreshRate
* Wlfmfn.RegionBinarize
* Wlfmfn.RegionBoundary
* Wlfmfn.RegionBounds
* Wlfmfn.RegionCentroid
* Wlfmfn.RegionDifference
* Wlfmfn.RegionDimension
* Wlfmfn.RegionDistance
* Wlfmfn.RegionDistanceFunction
* Wlfmfn.RegionEmbeddingDimension
* Wlfmfn.RegionFunction
* Wlfmfn.RegionIntersection
* Wlfmfn.RegionMeasure
* Wlfmfn.RegionMember
* Wlfmfn.RegionMemberFunction
* Wlfmfn.RegionNearest
* Wlfmfn.RegionNearestFunction
* Wlfmfn.RegionPlot
* Wlfmfn.RegionPlot3D
* Wlfmfn.RegionProduct
* Wlfmfn.RegionQ
* Wlfmfn.RegionSymmetricDifference
* Wlfmfn.RegionUnion

* Wlfmfn.RegularExpression:
RegularExpression["regex"]
represents the generalized regular expression specified by the string .
Details
RegularExpression can be used to represent classes of strings in functions like StringMatchQ, StringReplace, StringCases, and StringSplit.
RegularExpression supports standard regular expression syntax of the kind used in typical string manipulation languages.
The following basic elements can be used in regular expression strings:
c  the literal character c
.  any character except newline
[c1c2…]  any of the characters
[c1-c2]  any character in the range –
[^c1c2…]  any character except the
p*  p repeated zero or more times
p+  p repeated one or more times
p?  zero or one occurrence of p
p{m,n}  p repeated between m and n times
p*?,p+?,p??  the shortest consistent strings that match
(p1p2…)  strings matching the sequence , , …
p1|p2  strings matching or
The following represent classes of characters:
\\d  digit 0–9
\\D  nondigit
\\s  space, newline, tab, or other whitespace character
\\S  non-whitespace character
\\w  word character (letter, digit, or )
\\W  nonword character :class:,  characters in a named class
[^[:class:]]  characters not in a named class
The following named classes can be used: , , , , , , , , , , , , , .
The following represent positions in strings:
^  the beginning of the string (or line)
$  the end of the string (or line)
\\b  word boundary
\\B  anywhere except a word boundary
The following set options for all regular expression elements that follow them:
(?i)  treat uppercase and lowercase as equivalent (ignore case)
(?m)  make and match start and end of lines (multiline mode)
(?s)  allow to match newline
(?-c)  unset options
, , etc. represent literal characters , , etc.
Analogs of named Wolfram Language patterns such as can be set up in regular expression strings using (regex).
Within a regular expression string, \\n represents the substring matched by the ^(th) parenthesized regular expression object (regex).
For the purpose of functions such as StringReplace and StringCases, any appearing in the right-hand side of a rule RegularExpression["regex"]->rhs is taken to correspond to the substring matched by the ^(th) parenthesized regular expression object in regex. represents the whole matched string.
[http://reference.wolfram.com/language/ref/RegularExpression.html]

* Wlfmfn.Regularization
* Wlfmfn.RegularlySampledQ
* Wlfmfn.ReleaseHold
* Wlfmfn.ReliabilityDistribution
* Wlfmfn.ReliefImage
* Wlfmfn.ReliefPlot

* Wlfmfn.Remove:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.RemoveAlphaChannel:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.RemoveAsynchronousTask:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.RemoveBackground:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.RemoveInputStreamMethod:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.RemoveOutputStreamMethod:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.RemoveProperty:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.RemoveScheduledTask:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.RenameDirectory:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.RenameFile:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.RenewalProcess:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.RenkoChart:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Repeated:
* wlopr.Repeated, wlopr.sblDotDot: ..
===
p.. or Repeated[p]
is a pattern object that represents a sequence of one or more expressions, each matching p.
Repeated[p,max]
represents up to max expressions matching p.
Repeated[p,{min,max}]
represents between min and max expressions matching p.
Repeated[p,{n}]
represents exactly n expressions matching p.
Details
p.. can appear as an argument of any function. It represents any sequence of arguments.
All the objects in the sequence represented by p.. must match p, but the objects need not be identical.
The expression p may, but need not, itself be a pattern object.
[http://reference.wolfram.com/language/ref/Repeated.html]

* Wlfmfn.RepeatedNull:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Replace:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ReplaceAll:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ReplaceImageValue:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ReplaceList:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ReplacePart:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ReplacePixelValue:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ReplaceRepeated:
* wlopr.ReplaceRepeated, wlopr.sblSlashSlashDot: //.
exp //. rules
repeatedly performs replacements until expr no longer changes.
Details and Options
effectively applies repeatedly, until the results it gets no longer change.
It performs one complete pass over the expression using , then carries out the next pass.
You should be very careful to avoid infinite loops when you use the operator. The command will, for example, lead to an infinite loop.
ReplaceRepeated takes the option MaxIterations, which specifies the maximum number of times it will try to apply the rules you give. The default setting is MaxIterations->65536. With MaxIterations->Infinity there is no limit.
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.RequiredPhysicalQuantities
* Wlfmfn.Resampling
* Wlfmfn.ResamplingMethod
* Wlfmfn.Rescale
* Wlfmfn.RescalingTransform
* Wlfmfn.ResetDirectory
* Wlfmfn.ResetScheduledTask
* Wlfmfn.Residue
* Wlfmfn.Resolve
* Wlfmfn.ResponseForm
* Wlfmfn.Rest
* Wlfmfn.Restricted
* Wlfmfn.Resultant
* Wlfmfn.ResumePacket

* Wlfmfn.Return:
Return[expr]
returns the value expr from a function.
Return[]
returns the value Null.
Details
Return[expr] exits control structures within the definition of a function, and gives the value expr for the whole function.
Return takes effect as soon as it is evaluated, even if it appears inside other functions.
Return can be used inside functions like Scan.
[http://reference.wolfram.com/language/ref/Return.html]

* Wlfmfn.ReturnExpressionPacket
* Wlfmfn.ReturnPacket
* Wlfmfn.ReturnTextPacket
* Wlfmfn.Reverse
* Wlfmfn.ReverseBiorthogonalSplineWavelet
* Wlfmfn.ReverseElement
* Wlfmfn.ReverseEquilibrium
* Wlfmfn.ReverseGraph
* Wlfmfn.ReverseUpEquilibrium
* Wlfmfn.RevolutionAxis
* Wlfmfn.RevolutionPlot3D
* Wlfmfn.RiccatiSolve
* Wlfmfn.RiceDistribution
* Wlfmfn.RidgeFilter
* Wlfmfn.RiemannR
* Wlfmfn.RiemannSiegelTheta
* Wlfmfn.RiemannSiegelZ
* Wlfmfn.RiemannXi
* Wlfmfn.Riffle
* Wlfmfn.Right
* Wlfmfn.RightArrow
* Wlfmfn.RightArrowBar
* Wlfmfn.RightArrowLeftArrow
* Wlfmfn.RightComposition
* Wlfmfn.RightCosetRepresentative
* Wlfmfn.RightDownTeeVector
* Wlfmfn.RightDownVector
* Wlfmfn.RightDownVectorBar
* Wlfmfn.RightTee
* Wlfmfn.RightTeeArrow
* Wlfmfn.RightTeeVector
* Wlfmfn.RightTriangle
* Wlfmfn.RightTriangleBar
* Wlfmfn.RightTriangleEqual
* Wlfmfn.RightUpDownVector
* Wlfmfn.RightUpTeeVector
* Wlfmfn.RightUpVector
* Wlfmfn.RightUpVectorBar
* Wlfmfn.RightVector
* Wlfmfn.RightVectorBar
* Wlfmfn.RiskAchievementImportance
* Wlfmfn.RiskReductionImportance
* Wlfmfn.RogersTanimotoDissimilarity
* Wlfmfn.Root
* Wlfmfn.RootApproximant
* Wlfmfn.RootIntervals
* Wlfmfn.RootLocusPlot
* Wlfmfn.RootMeanSquare
* Wlfmfn.RootOfUnityQ
* Wlfmfn.RootReduce
* Wlfmfn.RootSum
* Wlfmfn.Roots
* Wlfmfn.Rotate
* Wlfmfn.RotateLabel
* Wlfmfn.RotateLeft
* Wlfmfn.RotateRight
* Wlfmfn.RotationAction
* Wlfmfn.RotationBoxOptions
* Wlfmfn.RotationMatrix
* Wlfmfn.RotationTransform
* Wlfmfn.Round
* Wlfmfn.RoundingRadius
* Wlfmfn.Row
* Wlfmfn.RowAlignments
* Wlfmfn.RowBox
* Wlfmfn.RowLines
* Wlfmfn.RowMinHeight
* Wlfmfn.RowReduce
* Wlfmfn.RowSpacings
* Wlfmfn.RowsEqual
* Wlfmfn.RudvalisGroupRu:

* Wlfmfn.Rule:
* wlopr.Rule: ->
lhs -> rhs or
represents a rule that transforms lhs to rhs.
Details
The character can be entered as Esc->Esc or \[Rule].
evaluates rhs immediately.
You can apply rules using Replace.
The assignment specifies that the rule should be used whenever it applies.
In StandardForm, Rule is printed using .
Symbols that occur as pattern names in lhs are treated as local to the rule. This is true when the symbols appear on the right-hand side of conditions in lhs, and when the symbols appear anywhere in rhs, even inside other scoping constructs.
Rule constructs can be nested in any way. Rule is treated as a scoping construct, so that inner variables are renamed if necessary.
Background
Rule represents a rule that transforms one expression to another. The expression Rule[lhs,rhs] is commonly written and displayed using the shorthand syntax or . Rule-based programming is an extremely powerful paradigm that allows many programs to be written both compactly and lucidly.
A rule often contains patterns on the lhs that are replaced with appropriately transformed versions as indicated on the rhs, e.g. . Note, however, that evaluates rhs immediately, so in situations where rhs should be evaluated only after the rule is used, RuleDelayed (written in shorthand as or ) should be used instead.
Rule replacement can be performed using functions like Replace, ReplaceAll, ReplaceRepeated, ReplaceList, ReplacePart, and StringReplace.
Many functions in the Wolfram Language return their results as lists of rules, including Solve, FindInstance, and FindRoot, e.g. Solve[x^2-1==0,x] returns . This form is useful since it both keeps solutions associated with their respective variables (especially in the multivariate case) and allows convenient backsubstitution of the solutions in terms of the original variables via ReplaceAll or related functions.
[http://reference.wolfram.com/language/ref/Rule.html]

* Wlfmfn.RuleDelayed:
* wlopr.RuleDelayed, wlopr.sblColonGreaterthan: :>
lhs :> rhs or lhs :-> rhs
represents a rule that transforms lhs to rhs, evaluating rhs only after the rule is used.
Details
The character can be entered as Esc:>Esc or \[RuleDelayed].
RuleDelayed has the attribute HoldRest.
You can apply rules using Replace.
The assignment specifies that the rule should be used whenever it applies.
You can use Condition to specify when a particular rule applies.
In StandardForm, RuleDelayed is printed using .
[http://reference.wolfram.com/language/ref/RuleDelayed.html]

* Wlfmfn.Run:

* Wlfmfn.RunProcess
* Wlfmfn.RunScheduledTask
* Wlfmfn.RunThrough

* Wlfmfn.RuntimeAttributes:
RuntimeAttributes
is an option for Compile that specifies attributes for the compiled function it creates.
Details
RuntimeAttributes applies to the execution of the compiled function.
A possible setting for RuntimeAttributes is Listable.
RuntimeAttributes->Listable is effectively equivalent to the Listable attribute of the built-in function.
If a compiled function with Listable attribute matches its argument specification, it will run in the normal way.
If a compiled function with Listable attribute receives any arguments with higher rank than specified, the function will thread over these arguments.
[http://reference.wolfram.com/language/ref/RuntimeAttributes.html]

* Wlfmfn.RuntimeOptions

* Wlfmfn.RussellRaoDissimilarity

Wlfmfn.S

name::
* McsEngl.Wlfmfn.S@cptIt,

* Wlfmfn.SARIMAProcess:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SARMAProcess:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SASTriangle:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SSSTriangle:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SameQ:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SameTest:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SampleDepth:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SampleRate:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SampledSoundFunction:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SampledSoundList:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SamplingPeriod

* Wlfmfn.SatelliteData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SatisfiabilityCount
* Wlfmfn.SatisfiabilityInstances
* Wlfmfn.SatisfiableQ
* Wlfmfn.Saturday

* Wlfmfn.Save:
Save — save values associated with a symbol
===
Save["filename",symbol]
appends definitions associated with the specified symbol to a file.
Save["filename","form"]
appends definitions associated with all symbols whose names match the string pattern .
Save["filename","context`"]
appends definitions associated with all symbols in the specified context.
Save["filename",{object1,object2,…}]
appends definitions associated with several objects.
Details
Save uses FullDefinition to include subsidiary definitions.
Save writes out definitions in InputForm.
Save uses Names to find symbols whose names match a given string pattern.
You can use Save["filename","s"] to write out the definition for the value of a symbol s itself.
[http://reference.wolfram.com/language/ref/Save.html]
===
When you define a new object in the Wolfram Language, your definition will often depend on other objects that you defined before. If you are going to be able to reconstruct the definition of your new object in a subsequent Wolfram Language session, it is important that you store not only its own definition, but also the definitions of other objects on which it depends. The function Save looks through the definitions of the objects you ask it to save, and automatically also saves all definitions of other objects on which it can see that these depend. However, in order to avoid saving a large amount of unnecessary material, Save never includes definitions for symbols that have the attribute Protected. It assumes that the definitions for these symbols are also built in. Nevertheless, with such definitions taken care of, it should always be the case that reading the output generated by Save back into a new Wolfram Language session will set up the definitions of your objects exactly as you had them before.
[http://reference.wolfram.com/language/tutorial/ReadingAndWritingWolframSystemFiles.html]

* Wlfmfn.SaveDefinitions
* Wlfmfn.SavitzkyGolayMatrix
* Wlfmfn.SawtoothWave
* Wlfmfn.Scale
* Wlfmfn.ScaleDivisions
* Wlfmfn.ScaleOrigin
* Wlfmfn.ScalePadding
* Wlfmfn.ScaleRangeStyle
* Wlfmfn.ScaleRanges
* Wlfmfn.Scaled
* Wlfmfn.ScalingFunctions
* Wlfmfn.ScalingMatrix
* Wlfmfn.ScalingTransform
* Wlfmfn.Scan
* Wlfmfn.ScheduledTask

* Wlfmfn.ScheduledTaskObject
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ScheduledTasks
* Wlfmfn.SchurDecomposition
* Wlfmfn.ScientificForm
* Wlfmfn.ScorerGi
* Wlfmfn.ScorerGiPrime
* Wlfmfn.ScorerHi
* Wlfmfn.ScorerHiPrime
* Wlfmfn.ScreenStyleEnvironment
* Wlfmfn.ScriptBaselineShifts
* Wlfmfn.ScriptMinSize
* Wlfmfn.ScriptSizeMultipliers
* Wlfmfn.ScrollPosition
* Wlfmfn.Scrollbars
* Wlfmfn.ScrollingOptions
* Wlfmfn.Sec
* Wlfmfn.Sech
* Wlfmfn.SechDistribution
* Wlfmfn.SectorChart
* Wlfmfn.SectorChart3D
* Wlfmfn.SectorOrigin
* Wlfmfn.SectorSpacing
* Wlfmfn.SeedRandom
* Wlfmfn.Select
* Wlfmfn.SelectComponents
* Wlfmfn.SelectFirst
* Wlfmfn.Selectable
* Wlfmfn.SelectedCells
* Wlfmfn.SelectedNotebook
* Wlfmfn.SelectionCreateCell
* Wlfmfn.SelectionEvaluate
* Wlfmfn.SelectionEvaluateCreateCell
* Wlfmfn.SelectionMove
* Wlfmfn.SelfLoopStyle
* Wlfmfn.SemanticImport
* Wlfmfn.SemanticImportString

* Wlfmfn.SemanticInterpretation:
SemanticInterpretation["string"]
attempts to give the best semantic intepretation of the specified free-form string as a Wolfram Language expression.
SemanticInterpretation["string",pattern]
filters possible semantic interpretations, returning the best one that matches the specified pattern.
SemanticInterpretation["string",pattern,head]
returns the semantic interpretation wrapped with the specified head.
Details and Options
can be natural-language English text.
Types of objects returned include numbers, formulas, Entity objects, DateObject, etc.
The following options can be given:
AmbiguityFunction  Automatic  function to apply to the collection of possible interpretations
GeoLocation  $GeoLocation  geo location to assume
TimeZone  $TimeZone  time zone to assume for semantic interpretation
If multiple interpretations are found, SemanticInterpretation supplies the list of them (with the best first) to the function specified as the setting for AmbiguityFunction. The result of applying that function is returned as the result from SemanticInterpretation.
[http://reference.wolfram.com/language/ref/SemanticInterpretation.html]

* Wlfmfn.SemialgebraicComponentInstances
* Wlfmfn.SendMail
* Wlfmfn.SendMessage
* Wlfmfn.Sequence
* Wlfmfn.SequenceAlignment
* Wlfmfn.SequenceHold
* Wlfmfn.Series
* Wlfmfn.SeriesCoefficient

* Wlfmfn.SeriesData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ServiceConnect
* Wlfmfn.ServiceDisconnect
* Wlfmfn.ServiceExecute

* Wlfmfn.ServiceObject
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SessionTime

* Wlfmfn.Set:
* wlopr.set: =
lhs = rhs
evaluates rhs and assigns the result to be the value of lhs. From then on, lhs is replaced by rhs whenever it appears.
{l1,l2,...} = {r1,r2,...}
evaluates the ri, and assigns the results to be the values of the corresponding li.
Details
lhs can be any expression, including a pattern.
is a typical assignment for a pattern. Notice the presence of on the left-hand side, but not the right-hand side.
An assignment of the form sets up a transformation rule associated with the symbol f.
Different rules associated with a particular symbol are usually placed in the order that you give them. If a new rule that you give is determined to be more specific than existing rules, it is, however, placed before them. When the rules are used, they are tested in order. »
New assignments with identical lhs overwrite old ones. »
You can see all the assignments associated with a symbol f using ?f or Definition[f].
If you make assignments for functions that have attributes like Flat and Orderless, you must make sure to set these attributes before you make assignments for the functions.
Set has attribute HoldFirst.
If lhs is of the form , then args are evaluated. »
There are some special functions for which an assignment to is automatically associated with f rather than s. These functions include: Attributes, Default, Format, MessageName, Messages, N, and Options. »
When it appears in an unevaluated symbolic form, Set is treated as a scoping construct so that variables in nested occurrences are renamed if necessary. »
returns rhs even if for some reason the assignment specified cannot be performed.
Some global variables such as $RecursionLimit can only be assigned a certain range or class of values.
Background
Set is a function that evaluates and assigns an expression to be the value of a variable. The expression is commonly represented using the shorthand syntax . After Set is evaluated, lhs is replaced by rhs whenever it appears. Depending on the form of lhs, the result is stored as in the associated OwnValues, DownValues, or a specialized data structure.
Set often contains patterns on the lhs that are assigned transformed values as indicated on the rhs, e.g., . evaluates rhs immediately, so in situations where rhs should be evaluated only after the assignment is made, SetDelayed (written in shorthand as ) should be used instead.
The assignments associated with a given symbol can be seen using Definition[f]. Individual assignments may be removed from a symbol using Unset; Clear and ClearAll remove all definitions at once.
[http://reference.wolfram.com/language/ref/Set.html]

* Wlfmfn.SetAccuracy

* Wlfmfn.SetAlphaChannel

* Wlfmfn.SetAttributes:
SetAttributes[s,attr]
adds attr to the list of attributes of the symbol s.
Details
SetAttributes modifies Attributes[s].
SetAttributes[s,{attr1,attr2,…}] sets several attributes at a time.
SetAttributes[{s1,s2,…},attrs] sets attributes of several symbols at a time.
SetAttributes has the attribute HoldFirst.
[http://reference.wolfram.com/language/ref/SetAttributes.html]

* Wlfmfn.SetCloudDirectory:

* Wlfmfn.SetDelayed:
* wlopr.SetDelayed: :=
lhs := rhs
assigns rhs to be the delayed value of lhs. rhs is maintained in an unevaluated form. When lhs appears, it is replaced by rhs, evaluated afresh each time.
Details
SetDelayed has attribute HoldAll, rather than HoldFirst.
You can make assignments of the form lhs := rhs /; test, where test gives conditions for the applicability of each transformation rule. You can make several assignments with the same lhs but different forms of test.
lhs := rhs returns Null if the assignment specified can be performed, and returns $Failed otherwise.
[http://reference.wolfram.com/language/ref/SetDelayed.html]

* Wlfmfn.SetDirectory:
SetDirectory["dir"]
sets the current working directory to dir.
SetDirectory[]
sets the current working directory to your "home" directory.
Details
SetDirectory sets the current working directory, then returns its full name.
SetDirectory prepends the current working directory to the directory stack given by DirectoryStack[].
For a relative path name, SetDirectory sets the directory relative to the current working directory.
SetDirectory[] is equivalent to SetDirectory[$HomeDirectory].
[http://reference.wolfram.com/language/ref/SetDirectory.html]

* Wlfmfn.SetEnvironment

* Wlfmfn.SetFileDate

* Wlfmfn.SetOptions:
SetOptions[s,name1?value1,name2?value2,…]
sets the specified default options for a symbol s.
SetOptions[stream,…] or SetOptions["name",…]
sets options associated with a particular stream.
SetOptions[object,…]
sets options associated with an external object such as a NotebookObject.
Details
SetOptions is equivalent to an assignment that redefines certain elements of the list Options[s] of default options.
SetOptions can be used on Protected symbols.
SetOptions returns the new form of Options[s].
You can use SetOptions on InputStream and OutputStream objects. If there is only one stream with a particular name, you can give the name as a string as the argument of Options.
SetOptions can be used on a list of streams, such as the value of $Output.
If object refers to a front end object such as $FrontEnd, NotebookObject, or CellObject, the kernel will send a request to the front end that will immediately make the change specified.
[http://reference.wolfram.com/language/ref/SetOptions.html]

* Wlfmfn.SetPrecision
* Wlfmfn.SetProperty
* Wlfmfn.SetSelectedNotebook
* Wlfmfn.SetSharedFunction
* Wlfmfn.SetSharedVariable
* Wlfmfn.SetStreamPosition
* Wlfmfn.SetSystemOptions
* Wlfmfn.Setter
* Wlfmfn.SetterBar
* Wlfmfn.SetterBoxOptions
* Wlfmfn.Setting
* Wlfmfn.Shallow
* Wlfmfn.ShannonWavelet
* Wlfmfn.ShapiroWilkTest
* Wlfmfn.Share
* Wlfmfn.Sharpen
* Wlfmfn.ShearingMatrix
* Wlfmfn.ShearingTransform
* Wlfmfn.ShenCastanMatrix

* Wlfmfn.Short:
Short[expr]
prints as a short form of expr, less than about one line long.
Short[expr,n]
prints as a form of expr about n lines long.
Details
Short[expr] gives a "skeleton form" of expr, with omitted sequences of k elements indicated by ?k?.
In StandardForm, the characters used for this output are \[LeftSkeleton] and ?.
Omitted sequences of elements are printed as Skeleton objects.
Short prints long strings in skeleton form.
The number of lines specified need not be an integer.
Short can be used with InputForm and other formats as well as OutputForm.
Short acts as a "wrapper", which affects printing, but not evaluation.
Trying to feed ?k? as obtained from Short back as input to the Wolfram Language in StandardForm will generate an error.
Short is used to limit the length of output in standard Wolfram Language warning and other messages.
[http://reference.wolfram.com/language/ref/Short.html]

* Wlfmfn.ShortDownArrow
* Wlfmfn.ShortLeftArrow
* Wlfmfn.ShortRightArrow
* Wlfmfn.ShortUpArrow
* Wlfmfn.Shortest
* Wlfmfn.ShortestPathFunction
* Wlfmfn.Show
* Wlfmfn.ShowAutoStyles
* Wlfmfn.ShowCellBracket
* Wlfmfn.ShowCellLabel
* Wlfmfn.ShowCellTags
* Wlfmfn.ShowCursorTracker
* Wlfmfn.ShowGroupOpener
* Wlfmfn.ShowPageBreaks
* Wlfmfn.ShowSelection
* Wlfmfn.ShowSpecialCharacters
* Wlfmfn.ShowStringCharacters
* Wlfmfn.ShrinkingDelay
* Wlfmfn.SiderealTime
* Wlfmfn.SiegelTheta
* Wlfmfn.SiegelTukeyTest
* Wlfmfn.Sign
* Wlfmfn.SignPadding
* Wlfmfn.SignTest
* Wlfmfn.Signature
* Wlfmfn.SignedRankTest
* Wlfmfn.SignedRegionDistance
* Wlfmfn.SignificanceLevel
* Wlfmfn.SimilarityRules
* Wlfmfn.SimpleGraph
* Wlfmfn.SimpleGraphQ
* Wlfmfn.Simplex
* Wlfmfn.Simplify
* Wlfmfn.Sin
* Wlfmfn.SinIntegral
* Wlfmfn.Sinc
* Wlfmfn.SinghMaddalaDistribution
* Wlfmfn.SingleLetterItalics
* Wlfmfn.SingularValueDecomposition

* Wlfmfn.SingularValueList:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SingularValuePlot
* Wlfmfn.Sinh
* Wlfmfn.SinhIntegral
* Wlfmfn.SixJSymbol
* Wlfmfn.Skeleton
* Wlfmfn.SkeletonTransform
* Wlfmfn.SkellamDistribution
* Wlfmfn.SkewNormalDistribution
* Wlfmfn.Skewness
* Wlfmfn.Skip
* Wlfmfn.SliceDistribution
* Wlfmfn.SlideView
* Wlfmfn.Slider
* Wlfmfn.Slider2D
* Wlfmfn.Slider2DBoxOptions
* Wlfmfn.SliderBoxOptions

* Wlfmfn.Slot:
* wlopr.Slot:#
#
represents the first argument supplied to a pure function.
#n
represents the n^(th) argument.
#name
represents the value associated with key "name" in an association in the first argument.
Details
is used to represent arguments or formal parameters in pure functions of the form body& or Function[body].
is equivalent to Slot[1].
is equivalent to Slot[n]. n must be a non?negative integer.
gives the head of the function, i.e., the pure function itself.
When applied to an assocation, is equivalent to and picks out elements in the association.
In the form , the characters in name can be any combination of alphanumeric characters not beginning with digits.
Background
Slot[1] represents the first argument supplied to a pure function. The expression Slot[1] may be compactly denoted with the hash character , or more explicitly as . The ^(th) argument to a pure function is represented by Slot[n], commonly denoted . The zeroth slot of a pure function is its head.
Slot is typically used inside Function. In pure functions of the form , is used as part of the body to represent arguments or formal parameters. An example application of Slot is given by , which evaluates to .
A sequence of arguments to be supplied to a pure function is represented using SlotSequence (written in shorthand as ).
When pure functions are nested, the meaning of slots may become ambiguous, in which case parameters must be specified using an explicit Function construction with named parameters.
[http://reference.wolfram.com/language/ref/Slot.html]

* Wlfmfn.SlotSequence:
* wlopr.SlotSequence:##
##
represents the sequence of arguments supplied to a pure function.
##n
represents the sequence of arguments supplied to a pure function, starting with the n^(th) argument.
Details
is used to represent sequences of arguments in pure functions of the form body& or Function[body].
is equivalent to SlotSequence[] or SlotSequence[1]. »
is equivalent to SlotSequence[n]. n must be a positive integer. »
A sequence of arguments supplied to a pure function is "spliced" into the body of the function wherever and so on appear.
[http://reference.wolfram.com/language/ref/SlotSequence.html]

* Wlfmfn.Small
* Wlfmfn.SmallCircle
* Wlfmfn.Smaller
* Wlfmfn.SmithDelayCompensator
* Wlfmfn.SmithWatermanSimilarity
* Wlfmfn.SmoothDensityHistogram
* Wlfmfn.SmoothHistogram
* Wlfmfn.SmoothHistogram3D
* Wlfmfn.SmoothKernelDistribution

* Wlfmfn.SocialMediaData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SokalSneathDissimilarity:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SolarEclipse:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SolarSystemFeatureData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SolidData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Solve:
Solve[expr,vars]
attempts to solve the system expr of equations or inequalities for the variables vars.
Solve[expr,vars,dom]
solves over the domain dom. Common choices of dom are Reals, Integers, and Complexes.
Details and Options
The system expr can be any logical combination of:
lhs==rhs  equations
lhs!=rhs  inequations
or  inequalities
expr?dom  domain specifications
{x,y,…}?reg  region specification
ForAll[x,cond,expr]  universal quantifiers
Exists[x,cond,expr]  existential quantifiers
Solve[{expr1,expr2,…},vars] is equivalent to Solve[expr1&&expr2&&…,vars].
A single variable or a list of variables can be specified.
Solve gives solutions in terms of rules of the form:
{}  no solutions
{{x->solx,y->soly,…},…}  several solutions
{{}}  solution set is full dimensional
When a single variable is specified and a particular root of an equation has multiplicity greater than one, Solve gives several copies of the corresponding solution.
Solve[expr,vars] assumes by default that quantities appearing algebraically in inequalities are real, while all other quantities are complex.
Solve[expr,vars,dom] restricts all variables and parameters to belong to the domain dom.
If dom is Reals, or a subset such as Integers or Rationals, then all constants and function values are also restricted to be real.
Solve[expr&&vars?Reals,vars,Complexes] solves for real values of variables, but function values are allowed to be complex.
Solve[expr,vars,Integers] solves Diophantine equations over the integers.
Solve[…,x?reg,Reals] constrains x to be in the region reg. The different coordinates for x can be referred to using Indexed[x,i].
Algebraic variables in expr free of the and of each other are treated as independent parameters.
Solve deals primarily with linear and polynomial equations.
When expr involves only polynomial equations and inequalities over real or complex domains, then Solve can always in principle solve directly for all the .
When expr involves transcendental conditions or integer domains, Solve will often introduce additional parameters in its results.
Solve can give explicit representations for solutions to all linear equations and inequalities over the integers and can solve a large fraction of Diophantine equations described in the literature.
When expr involves only polynomial conditions over real or complex domains, Solve[expr,vars] will always be able to eliminate quantifiers.
Solve gives generic solutions only. Solutions that are valid only when continuous parameters satisfy equations are removed. Other solutions that are only conditionally valid are expressed as ConditionalExpression objects.
Conditions included in ConditionalExpression solutions may involve inequalities, Element statements, equations and inequations on non-continuous parameters, and equations with full-dimensional solutions. Inequations and NotElement conditions on continuous parameters and variables are dropped.
Solve uses non-equivalent transformations to find solutions of transcendental equations and hence it may not find some solutions and may not establish exact conditions on the validity of the solutions found.
Solve uses special efficient techniques for handling sparse systems of linear equations with approximate numerical coefficients.
The following options can be given:
Cubics  False  whether to use explicit radicals to solve all cubics
GeneratedParameters  C  how to name parameters that are generated
InverseFunctions  Automatic  whether to use symbolic inverse functions
MaxExtraConditions  0  how many extra equational conditions on continuous parameters to allow
Method  Automatic  what method should be used
Modulus  0  modulus to assume for integers
Quartics  False  whether to use explicit radicals to solve all quartics
VerifySolutions  Automatic  whether to verify solutions obtained using non-equivalent transformations
WorkingPrecision  Infinity  precision to be used in computations
With MaxExtraConditions->Automatic, only solutions that require the minimal number of equational conditions on continuous parameters are included.
With MaxExtraConditions->All, solutions that require arbitrary conditions on parameters are given and all conditions are included.
With MaxExtraConditions->k, only solutions that require at most k equational conditions on continuous parameters are included.
With Method->Reduce, Solve uses only equivalent transformations and finds all solutions.
Solve[eqns,…,Modulus->m] solves equations over the integers modulo m. With Modulus->Automatic, Solve will attempt to find the largest modulus for which the equations have solutions.
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SolveAlways:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Sort:
Sort[list]
sorts the elements of list into canonical order.
Sort[list,p]
sorts using the ordering function p.
Details
Sort by default orders integers, rational, and approximate real numbers by their numerical values.
Sort orders complex numbers by their real parts, and in the event of a tie, by the absolute values of their imaginary parts.
Sort orders symbols by their names, and in the event of a tie, by their contexts.
Sort usually orders expressions by putting shorter ones first, and then comparing parts in a depth-first manner.
Sort treats powers and products specially, ordering them to correspond to terms in a polynomial.
Sort orders strings as in a dictionary, with uppercase versions of letters coming after lowercase ones. Sort places ordinary letters first, followed in order by script, Gothic, double-struck, Greek, and Hebrew. Mathematical operators appear in order of decreasing precedence.
Sort[list,p] applies the function p to pairs of elements in list to determine whether they are in order. The default function p is OrderedQ[{#1,#2}]&.
Sort can be used on expressions with any head, not only List.
[http://reference.wolfram.com/language/ref/Sort.html]

* Wlfmfn.SortBy
* Wlfmfn.Sound
* Wlfmfn.SoundNote
* Wlfmfn.SoundVolume
* Wlfmfn.Sow

* Wlfmfn.SpaceCurveData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Spacer:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Spacings:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Span:
* wlopr.Span: ;;
i ;; j
represents a span of elements i through j.
i;;
represents a span from i to the end.
;;j
represents a span from the beginning to j.
;;
represents a span that includes all elements.
i;;j;;k
represents a span from i through j in steps of k.
i ;; ;; k
represents a span from i to the end in steps of k.
;;j;;k
represents a span from the beginning to j in steps of k.
;;;;k
represents a span from the beginning to the end in steps of k.
Details
is equivalent to Take[m,{i,j,k}].
can be used to reset a span of elements in a list or other expression.
When used in Part, negative i and j count from the end.
[http://reference.wolfram.com/language/ref/Span.html]

* Wlfmfn.SpanFromAbove
* Wlfmfn.SpanFromBoth
* Wlfmfn.SpanFromLeft

* Wlfmfn.SparseArray:
SparseArray[{pos1?val1,pos2?val2,…}]
yields a sparse array in which values appear at positions .
SparseArray[{pos1,pos2,…}?{val1,val2,…}]
yields the same sparse array.
SparseArray[list]
yields a sparse array version of list.
SparseArray[data,{d1,d2,…}]
yields a sparse array representing a array.
SparseArray[data,dims,val]
yields a sparse array in which unspecified elements are taken to have value val.
Details
By default, SparseArray takes unspecified elements to be .
SparseArray[data,…] is always converted to an optimized standard form with structure SparseArray[Automatic,dims,val,…].
Normal[SparseArray[…]] gives the ordinary array corresponding to a sparse array object.
ArrayRules[SparseArray[…]] gives the list of rules .
The elements in SparseArray need not be numeric.
The position specifications can contain patterns.
SparseArray[{{i_,i_}->1},{d,d}] gives a dΧd identity matrix.
Rules of the form Band[…]->vals specify values on bands in the sparse array.
With rules the are evaluated separately for each set of indices that match .
SparseArray[list] requires that list be a full array, with all parts at a particular level being lists of the same length.
The individual elements of a sparse array cannot themselves be lists.
SparseArray[rules] yields a sparse array with dimensions exactly large enough to include elements whose positions have been explicitly specified.
SparseArray[rules,Automatic,val] takes unspecified elements to have value val.
List and matrix operations are typically set up to work as they do on Normal[SparseArray[…]].
Functions with attribute Listable are automatically threaded over the individual elements of the ordinary arrays represented by SparseArray objects.
Part extracts specified parts of the array represented by a SparseArray object, rather than parts of the SparseArray expression itself.
Functions like Map are automatically applied to components in a SparseArray object.
SparseArray is treated as a raw object by functions like AtomQ and for purposes of pattern matching.
Dimensions gives the dimensions of a sparse array.
The standard output format for a sparse array indicates the number of nondefault elements and the total dimensions.
[http://reference.wolfram.com/language/ref/SparseArray.html]

* Wlfmfn.SpatialGraphDistribution
* Wlfmfn.Speak
* Wlfmfn.SpearmanRankTest
* Wlfmfn.SpearmanRho

* Wlfmfn.SpeciesData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Spectrogram:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SpectrogramArray:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Specularity:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SpellingCorrection:
SpellingCorrection
is an option for StringMatchQ, Names, and related functions that specifies whether strings should be considered to match even when a small fraction of the characters in them are different.
Details
The default setting SpellingCorrection->False requires exact matching.
[http://reference.wolfram.com/language/ref/SpellingCorrection.html]

* Wlfmfn.Sphere
* Wlfmfn.SphericalBesselJ
* Wlfmfn.SphericalBesselY
* Wlfmfn.SphericalHankelH1
* Wlfmfn.SphericalHankelH2
* Wlfmfn.SphericalHarmonicY
* Wlfmfn.SphericalPlot3D
* Wlfmfn.SphericalRegion
* Wlfmfn.SpheroidalEigenvalue
* Wlfmfn.SpheroidalJoiningFactor
* Wlfmfn.SpheroidalPS
* Wlfmfn.SpheroidalPSPrime
* Wlfmfn.SpheroidalQS
* Wlfmfn.SpheroidalQSPrime
* Wlfmfn.SpheroidalRadialFactor
* Wlfmfn.SpheroidalS1
* Wlfmfn.SpheroidalS1Prime
* Wlfmfn.SpheroidalS2
* Wlfmfn.SpheroidalS2Prime
* Wlfmfn.Splice
* Wlfmfn.SplicedDistribution
* Wlfmfn.SplineClosed
* Wlfmfn.SplineDegree
* Wlfmfn.SplineKnots
* Wlfmfn.SplineWeights
* Wlfmfn.Split
* Wlfmfn.SplitBy
* Wlfmfn.SpokenString
* Wlfmfn.Sqrt
* Wlfmfn.SqrtBox
* Wlfmfn.SqrtBoxOptions
* Wlfmfn.Square
* Wlfmfn.SquareFreeQ
* Wlfmfn.SquareIntersection
* Wlfmfn.SquareMatrixQ
* Wlfmfn.SquareSubset
* Wlfmfn.SquareSubsetEqual
* Wlfmfn.SquareSuperset
* Wlfmfn.SquareSupersetEqual
* Wlfmfn.SquareUnion
* Wlfmfn.SquareWave
* Wlfmfn.SquaredEuclideanDistance
* Wlfmfn.SquaresR
* Wlfmfn.StabilityMargins
* Wlfmfn.StabilityMarginsStyle
* Wlfmfn.StableDistribution
* Wlfmfn.Stack,
* Wlfmfn.StackBegin
* Wlfmfn.StackComplete
* Wlfmfn.StackInhibit

* Wlfmfn.StandardAtmosphereData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.StandardDeviation:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.StandardDeviationFilter:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.StandardForm:
StandardForm[expr]
prints as the standard Wolfram Language two-dimensional representation of expr.
Details
StandardForm generates output that gives a unique and unambiguous representation of Wolfram Language expressions, suitable for use as input. »
StandardForm incorporates many aspects of traditional mathematical notation.
StandardForm is the standard format type used for both input and output of Wolfram Language expressions in notebooks.
Graphics and Graphics3D are displayed graphically in StandardForm.
StandardForm can be edited in the notebook front end.
StandardForm uses special characters as well as ordinary keyboard characters.
StandardForm is based on boxes.
The notebook front end contains menu items for conversion to and from StandardForm.
[http://reference.wolfram.com/language/ref/StandardForm.html]

* Wlfmfn.Standardize
* Wlfmfn.StandbyDistribution
* Wlfmfn.Star

* Wlfmfn.StarClusterData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.StarData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.StarGraph
* Wlfmfn.StartAsynchronousTask
* Wlfmfn.StartOfLine
* Wlfmfn.StartOfString
* Wlfmfn.StartProcess
* Wlfmfn.StartScheduledTask
* Wlfmfn.StartingStepSize
* Wlfmfn.StateFeedbackGains
* Wlfmfn.StateOutputEstimator
* Wlfmfn.StateResponse
* Wlfmfn.StateSpaceModel
* Wlfmfn.StateSpaceRealization
* Wlfmfn.StateSpaceTransform
* Wlfmfn.StateTransformationLinearize
* Wlfmfn.StationaryDistribution
* Wlfmfn.StationaryWaveletPacketTransform
* Wlfmfn.StationaryWaveletTransform
* Wlfmfn.StatusArea
* Wlfmfn.StatusCentrality
* Wlfmfn.StepMonitor
* Wlfmfn.StieltjesGamma
* Wlfmfn.StirlingS1
* Wlfmfn.StirlingS2
* Wlfmfn.StopAsynchronousTask
* Wlfmfn.StopScheduledTask
* Wlfmfn.StrataVariables
* Wlfmfn.StratonovichProcess
* Wlfmfn.StreamColorFunction
* Wlfmfn.StreamColorFunctionScaling
* Wlfmfn.StreamDensityPlot
* Wlfmfn.StreamPlot
* Wlfmfn.StreamPoints
* Wlfmfn.StreamPosition
* Wlfmfn.StreamScale
* Wlfmfn.StreamStyle
* Wlfmfn.Streams

* Wlfmfn.String
* Wlfmfn.StringCases
* Wlfmfn.StringCount
* Wlfmfn.StringDrop

* Wlfmfn.StringExpression:
s1 ~~ s2 ~~ ... or StringExpression[s1,s2,…]
represents a sequence of strings and symbolic string objects si.
Details
yields an ordinary string obtained by concatenating the characters in the .
The following objects can appear in StringExpression:
"string"  a literal string of characters
_  any single character
__  any substring of one or more characters
___  any substring of zero or more characters
, , x___  substrings given the name x
x:pattern  pattern given the name x
pattern..  pattern repeated one or more times
pattern...  pattern repeated zero or more times
or  a pattern matching at least one of the
patt/;cond  a pattern for which cond evaluates to True
pattern?test  a pattern for which test yields True for each character
Whitespace  a sequence of whitespace characters
NumberString  the characters of a number
DatePattern[spec]  the characters of a date
charobj  an object representing a character class (see below)
RegularExpression["regexp"]  substring matching a regular expression
StringExpression[…]  an arbitrary string expression
The following represent classes of characters:
{c1,c2,…}  any of the
Characters["c1c2…"]  any of the
CharacterRange["c1","c2"]  any character in the range to
HexadecimalCharacter  hexadecimal digit 0-9, a-f, A-F
DigitCharacter  digit 0–9
LetterCharacter  letter
WhitespaceCharacter  space, newline, tab, or other whitespace character
WordCharacter  letter or digit
Except[p]  any character except ones matching p
The following represent positions in strings:
StartOfString  start of the whole string
EndOfString  end of the whole string
StartOfLine  start of a line
EndOfLine  end of a line
WordBoundary  boundary between word characters and others
Except[WordBoundary]  anywhere except a word boundary
When constructs like or are present, there may be several different ways in which a given StringExpression can match a particular string.
By default, the Wolfram Language will use the one that makes pattern elements that appear earlier in the StringExpression match the longest possible substrings.
The following determine which match will be used if there are several possibilities:
Shortest[p]  the shortest consistent match for p
Longest[p]  the longest consistent match for p (default)
In matching ordinary expressions instead of strings, the shortest instead of the longest consistent match is used.
StringExpression objects can be used in many string manipulation functions, including StringReplace, StringCases, StringSplit, and StringMatchQ.
StringExpression has attributes Flat and OneIdentity.
[http://reference.wolfram.com/language/ref/StringExpression.html]

* Wlfmfn.StringForm
* Wlfmfn.StringFormat
* Wlfmfn.StringFreeQ
* Wlfmfn.StringInsert

* Wlfmfn.StringJoin:
"s1"<>"s2"<>…, StringJoin["s1","s2",…], or StringJoin[{"s1","s2",…}]
yields a string consisting of a concatenation of the .
Details
StringJoin has attribute Flat.
[http://reference.wolfram.com/language/ref/StringJoin.html]

* Wlfmfn.StringLength
* Wlfmfn.StringMatchQ
* Wlfmfn.StringPosition
* Wlfmfn.StringQ
* Wlfmfn.StringReplace

* Wlfmfn.StringReplaceList:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.StringReplacePart
* Wlfmfn.StringReverse
* Wlfmfn.StringRotateLeft
* Wlfmfn.StringRotateRight
* Wlfmfn.StringSkeleton
* Wlfmfn.StringSplit
* Wlfmfn.StringTake
* Wlfmfn.StringTemplate
* Wlfmfn.StringToStream
* Wlfmfn.StringTrim

* Wlfmfn.StripOnInput
* Wlfmfn.StripWrapperBoxes
* Wlfmfn.StructuralImportance
* Wlfmfn.StructuredArray
* Wlfmfn.StructuredSelection
* Wlfmfn.StruveH
* Wlfmfn.StruveL
* Wlfmfn.Stub
* Wlfmfn.StudentTDistribution
* Wlfmfn.Style
* Wlfmfn.StyleBox

* Wlfmfn.StyleData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.StyleDefinitions
* Wlfmfn.SubMinus
* Wlfmfn.SubPlus
* Wlfmfn.SubStar
* Wlfmfn.Subfactorial
* Wlfmfn.Subgraph
* Wlfmfn.SubresultantPolynomialRemainders
* Wlfmfn.SubresultantPolynomials
* Wlfmfn.Subresultants
* Wlfmfn.Subscript
* Wlfmfn.SubscriptBox
* Wlfmfn.SubscriptBoxOptions
* Wlfmfn.Subset
* Wlfmfn.SubsetEqual
* Wlfmfn.SubsetQ
* Wlfmfn.Subsets
* Wlfmfn.Subsuperscript
* Wlfmfn.SubsuperscriptBox
* Wlfmfn.SubsuperscriptBoxOptions
* Wlfmfn.Subtract
* Wlfmfn.SubtractFrom
* Wlfmfn.Succeeds
* Wlfmfn.SucceedsEqual
* Wlfmfn.SucceedsSlantEqual
* Wlfmfn.SucceedsTilde
* Wlfmfn.SuchThat

* Wlfmfn.Sum:
Sum[f,{i,imax}]
evaluates the sum .
Sum[f,{i,imin,imax}]
starts with .
Sum[f,{i,imin,imax,di}]
uses steps .
Sum[f,{i,{i1,i2,…}}]
uses successive values , , … .
Sum[f,{i,imin,imax},{j,jmin,jmax},…]
evaluates the multiple sum .
Sum[f,i]
gives the indefinite sum .
Details and Options
Sum[f,{i,imax}] can be entered as .
can be entered as EscsumEsc or \[Sum].
Sum[f,{i,imin,imax}] can be entered as .
The limits should be underscripts and overscripts of in normal input, and subscripts and superscripts when embedded in other text.
Sum uses the standard Wolfram Language iteration specification.
The iteration variable i is treated as local, effectively using Block.
If the range of a sum is finite, is typically assigned a sequence of values, with being evaluated for each one.
In multiple sums, the range of the outermost variable is given first. »
The limits of summation need not be numbers. They can be Infinity or symbolic expressions. » »
If a sum cannot be carried out explicitly by adding up a finite number of terms, Sum will attempt to find a symbolic result. In this case, f is first evaluated symbolically.
The indefinite sum is defined so that its difference with respect to i gives f. »
Definite and indefinite summation can be mixed in any order. »
The following options can be given:
Assumptions  $Assumptions  assumptions to make about parameters
GenerateConditions  False  whether to generate conditions on parameters
Method  Automatic  method to use
Regularization  None  what regularization scheme to use
VerifyConvergence  True  whether to verify convergence
Possible values for Regularization include: None, , , , , and . specifies different schemes for different variables in a multiple sum.
Method->"method" performs the summation using the specified method.
Method->{"strategy",Method->{"meth1","meth2",…}} uses the methods , controlled by the specified strategy method.
Possible strategy methods include:
 sequentially try each method until one succeeds
 sequentially try each method and return the best result
 try each method in parallel until one succeeds
 try each method in parallel and return the best result
 use iterated univariate summation
Specific methods include:
Automatic  automatically selected method
 special finite hypergeometric term summation
 indefinite hypergeometric term summation
 general definite hypergeometric term summation
 definite hypergeometric term summation
 summation based on counting solutions in level sets
 logarithmic series summation
 periodic function summation
 polygamma series representation summation
 polygamma integral representation summation
 polygamma summation by parts
 polynomial summation
 polynomial exponential summation
 polynomial trigonometric summation
 compute the sum procedurally
 indefinite q-hypergeometric term summation
 definite q-hypergeometric term summation
 q-rational function summation
 rational times exponential summation
 rational function summation
 rational trigonometric summation
 summation based on table lookup
Sum can do essentially all sums that are given in standard books of tables.
Sum is output in StandardForm using .
[http://reference.wolfram.com/language/ref/Sum.html]

* Wlfmfn.SumConvergence
* Wlfmfn.SunPosition
* Wlfmfn.Sunday
* Wlfmfn.Sunrise
* Wlfmfn.Sunset
* Wlfmfn.SuperDagger
* Wlfmfn.SuperMinus
* Wlfmfn.SuperPlus
* Wlfmfn.SuperStar

* Wlfmfn.SupernovaData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Superscript:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SuperscriptBox:
SuperscriptBox[x,y]
is the low-level box representation for in notebook expressions.
Details and Options
SuperscriptBox is the low-level representation of Superscript. Except for low-level notebook expression manipulation, SuperscriptBox should not need to be used directly.
Inside SuperscriptBox[x,y] can be input as .
In a notebook a SuperscriptBox can be created using Ctrl+6 or Ctrl+^. Ctrl+Space moves out of the superscript.
In StandardForm, SuperscriptBox[x,y] is interpreted on input as Power[x,y].
The baseline of SuperscriptBox[x,y] is taken to be the baseline of x.
SuperscriptBox[x,y] is usually output with y in a smaller font than x.
In StandardForm, explicit SuperscriptBox objects are output literally. You can use DisplayForm to see the display form of such objects.
[http://reference.wolfram.com/language/ref/SuperscriptBox.html]

* Wlfmfn.SuperscriptBoxOptions
* Wlfmfn.Superset
* Wlfmfn.SupersetEqual
* Wlfmfn.Surd

* Wlfmfn.SurfaceData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SurvivalDistribution
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SurvivalFunction
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SurvivalModel
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SurvivalModelFit
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SuspendPacket
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SuzukiDistribution
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SuzukiGroupSuz
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SwatchLegend
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Switch
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Symbol:
Symbol["name"]
refers to a symbol with the specified name.
Details
All symbols, whether explicitly entered using Symbol or not, have head Symbol.
can be used as a pattern to represent any symbol.
The string in Symbol["name"] must be an appropriate name for a symbol. It can contain any letters, letter-like forms, or digits, but cannot start with a digit.
Symbol["name"] creates a new symbol if none exists with the specified name.
A symbol such as has a name .
If Symbol["name"] creates a new symbol, it does so in the context specified by $Context.
[http://reference.wolfram.com/language/ref/Symbol.html]

* Wlfmfn.SymbolName:
SymbolName[symbol]
gives the name of the specified symbol.
Details
SymbolName evaluates its input. »
SymbolName always returns a string.
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.SymletWavelet
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Symmetric
* Wlfmfn.SymmetricGroup
* Wlfmfn.SymmetricMatrixQ
* Wlfmfn.SymmetricPolynomial
* Wlfmfn.SymmetricReduction
* Wlfmfn.Symmetrize
* Wlfmfn.SymmetrizedArray
* Wlfmfn.SymmetrizedArrayRules
* Wlfmfn.SymmetrizedDependentComponents
* Wlfmfn.SymmetrizedIndependentComponents
* Wlfmfn.SymmetrizedReplacePart
* Wlfmfn.SynchronousInitialization
* Wlfmfn.SynchronousUpdating
* Wlfmfn.SyntaxForm

* Wlfmfn.SyntaxInformation:
SyntaxInformation[f]
gives information used to generate syntax coloring and other advisories when is entered as input.
Details
SyntaxInformation[f]={"prop1"->data1,"prop2"->data2,…} defines syntax properties for f.
Possible properties include:
"ArgumentsPattern"  patterns for the sequence of allowed arguments
"LocalVariables"  type and allowed positions of local variables
"ColorEqualSigns"  argument positions for which should be colored
The setting for is of the form , where the can be , , , , OptionsPattern[], or .
If the setting for specifies that f takes options, then valid option names are determined from Options[f].
The setting for is of the form . Possible types include "Table", , , , , . and give the minimum and maximum argument positions at which the variables can appear. can be Infinity.
A setting for of specifies that local variables that appear inside Dynamic should not be specially colored.
The setting for is of the form .
[http://reference.wolfram.com/language/ref/SyntaxInformation.html]

* Wlfmfn.SyntaxLength

* Wlfmfn.SyntaxPacket

* Wlfmfn.SyntaxQ

* Wlfmfn.SystemDialogInput
* Wlfmfn.SystemInformation
* Wlfmfn.SystemOpen
* Wlfmfn.SystemOptions
* Wlfmfn.SystemsModelDelay
* Wlfmfn.SystemsModelDelayApproximate
* Wlfmfn.SystemsModelDelete
* Wlfmfn.SystemsModelDimensions
* Wlfmfn.SystemsModelExtract
* Wlfmfn.SystemsModelFeedbackConnect
* Wlfmfn.SystemsModelLabels
* Wlfmfn.SystemsModelLinearity
* Wlfmfn.SystemsModelMerge
* Wlfmfn.SystemsModelOrder
* Wlfmfn.SystemsModelParallelConnect
* Wlfmfn.SystemsModelSeriesConnect
* Wlfmfn.SystemsModelStateFeedbackConnect
* Wlfmfn.SystemsModelVectorRelativeOrders

Wlfmfn.T

name::
* McsEngl.Wlfmfn.T@cptIt,

http://reference.wolfram.com/language/ref/.html,
* Wlfmfn.TTest
* Wlfmfn.TabView
* Wlfmfn.TabViewBoxOptions

* Wlfmfn.Table:
Table[expr,{imax}]
generates a list of copies of expr.
Table[expr,{i,imax}]
generates a list of the values of expr when i runs from 1 to .
Table[expr,{i,imin,imax}]
starts with .
Table[expr,{i,imin,imax,di}]
uses steps di.
Table[expr,{i,{i1,i2,…}}]
uses the successive values , , ….
Table[expr,{i,imin,imax},{j,jmin,jmax},…]
gives a nested list. The list associated with i is outermost. »
Details
You can use Table to build up vectors, matrices, tensors and other arrays.
Table uses the standard Wolfram Language iteration specification.
Table evaluates its arguments in a nonstandard way.
Table[expr,spec] first evaluates spec, then localizes the variable specified, and successively assigns values to it, each time evaluating expr.
Table effectively uses Block to localize values or variables.
Table[expr,spec1,spec2] is effectively equivalent to Table[Table[expr,spec2],spec1].
[http://reference.wolfram.com/language/ref/Table.html]

* Wlfmfn.TableAlignments
* Wlfmfn.TableDepth
* Wlfmfn.TableDirections
* Wlfmfn.TableForm
* Wlfmfn.TableHeadings
* Wlfmfn.TableSpacing
* Wlfmfn.TagBox
* Wlfmfn.TagBoxOptions
* Wlfmfn.TagSet
* Wlfmfn.TagSetDelayed
* Wlfmfn.TagUnset
* Wlfmfn.TaggingRules
* Wlfmfn.Take
* Wlfmfn.TakeWhile
* Wlfmfn.Tally
* Wlfmfn.Tan
* Wlfmfn.Tanh
* Wlfmfn.Target
* Wlfmfn.TargetFunctions
* Wlfmfn.TargetUnits
* Wlfmfn.TautologyQ

* Wlfmfn.TeXForm:
* entity#ql:wl'tex_computation#,
===
TeXForm[expr]
prints as a TeX version of expr.
Details
TeXForm produces AMS-LaTeX-compatible TeX output.
TeXForm acts as a "wrapper", which affects printing, but not evaluation.
TeXForm translates standard mathematical functions and operations.
TeXForm[expr] is equivalent to TeXForm[TraditionalForm[expr]]. TeXForm[StandardForm[expr]] can be used to get StandardForm TeX output. »
Symbols with names like and that correspond to TeX symbols are translated into their corresponding TeX symbols. »
Following standard mathematical conventions, single-character symbol names are given in italic font, while multiple character names are given in roman font.
Wolfram Language special characters are translated whenever possible to their TeX equivalents.
[http://reference.wolfram.com/language/ref/TeXForm.html]

* Wlfmfn.TelegraphProcess
* Wlfmfn.TemplateApply
* Wlfmfn.TemplateBox
* Wlfmfn.TemplateBoxOptions
* Wlfmfn.TemplateExpression
* Wlfmfn.TemplateIf

* Wlfmfn.TemplateObject
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.TemplateSequence
* Wlfmfn.TemplateSlot
* Wlfmfn.TemplateWith

* Wlfmfn.TemporalData:
TemporalData[{v1,v2,…},tspec]
represents temporal data with values at times specified by tspec.
TemporalData[{{v11,v12,…},{v21,v22,…},…},tspec]
represents a temporal data collection with values at times specified by tspec.
TemporalData[{{t1,v1},{t2,v2}…}]
represents temporal data specified by time-value pairs .
TemporalData[{{{t11,v11},{t12,v12}…},{{t21,v21},{t22,v22},…},…}]
represents a temporal data collection given as lists of time-value pairs .
Details and Options
TemporalData represents a collection of paths composed of time-value pairs .
The values can be scalars or arrays of any dimension, but must all be of equal dimensionality.
The following times tspec can be given:
Automatic  use uniformly spaced times starting at 0
{tmin}  use uniformly spaced times starting at
{tmin,tmax}  use uniformly spaced times to
{tmin,tmax,dt}  use times to in steps of dt
{{t1,t2,…}}  use explicit times
{tspec1,tspec2,…}  use different times for each path in the collection
The can be numbers or any valid input to AbsoluteTime.
The values , , and dt can be given as numbers, dates, or Automatic.
TemporalData objects of equal dimensionality can be combined into a single object using TemporalData[{td1,td2,…}].
Normal[td] returns a list containing time-value pairs for each path.
Specifying gives the empirical slice distribution at time t.
A joint empirical slice distribution for times can be obtained by specifying .
Properties of a TemporalData object td can be obtained from td["property"].
A list of available properties can be obtained using td["Properties"].
Some properties of the collection of paths:
"Components"  split the collection into individual components
"PathCount"  the number of paths in the collection
"PathLengths"  a list containing the length of each path
"Paths"  a list containing time-value pairs for each path
"TimeList"  a list containing times for each path
"ValueDimensions"  the dimensionality of the values
"ValueList"  a list containing values for each path
If dates are given as input, td["Times"] returns them in AbsoluteTime.
Some properties for obtaining parts of the collection:
"Part"  a subset of the original data
"Path"  time-value pairs for a given path
"PathFunction"  an interpolated path function
"Values"  values for a given path
"Times"  times for a given path
"SliceData"  a slice through all paths at a given time
"SliceDistribution"  empirical distribution of slice data at a given time
Specifying gives the time-value pairs for the paths specified by p, where p can be any valid Part specification.
The property returns interpolated paths specified by p.
Specifying gives TemporalData for paths specified by p and times specified by tspec. If necessary, the paths are resampled according to .
Giving returns a slice through all paths at time t, where t can be a number or valid input to AbsoluteTime.
The specification gives a multivariate slice at times .
TemporalData takes the following options:
CalendarType  "Gregorian"  the calendar type to use
HolidayCalendar  {"UnitedStates","Default"}  the holiday calendar to use
MetaInformation  None  include additional meta-information
MissingDataMethod  None  method to use for missing values
ResamplingMethod  "Interpolation"  the method to use for resampling paths
ValueDimensions  Automatic  the dimensions of the values
TemporalRegularity  Automatic  whether to assume the data is regular
By default, zero-order interpolation is used for resampling paths. The setting ResamplingMethod->{"Interpolation",opts} can be given, where opts are options passed to Interpolation.
The setting ValueDimensions->dim specifies that the values are of dimension dim. Setting ValueDimensions->Automatic attempts to automatically determine the dimension of the values from the data.
Setting the MissingDataMethod->Automatic will automatically interpolate values with head Missing, according to the ResamplingMethod setting. By default, values with head Missing are treated as missing.
[http://reference.wolfram.com/language/ref/TemporalData.html]

* Wlfmfn.TemporalRegularity
* Wlfmfn.Temporary
* Wlfmfn.TensorContract
* Wlfmfn.TensorDimensions
* Wlfmfn.TensorExpand
* Wlfmfn.TensorProduct
* Wlfmfn.TensorRank
* Wlfmfn.TensorReduce
* Wlfmfn.TensorSymmetry
* Wlfmfn.TensorTranspose
* Wlfmfn.TensorWedge
* Wlfmfn.TestID
* Wlfmfn.TestReport

* Wlfmfn.TestReportObject
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.TestResultObject
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Tetrahedron
* Wlfmfn.Text
* Wlfmfn.Text3DBoxOptions
* Wlfmfn.TextAlignment
* Wlfmfn.TextCell
* Wlfmfn.TextClipboardType

* Wlfmfn.TextData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.TextJustification
* Wlfmfn.TextPacket
* Wlfmfn.TextRecognize
* Wlfmfn.TextString
* Wlfmfn.Texture
* Wlfmfn.TextureCoordinateFunction
* Wlfmfn.TextureCoordinateScaling
* Wlfmfn.Therefore

* Wlfmfn.ThermodynamicData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ThermometerGauge
* Wlfmfn.Thick
* Wlfmfn.Thickness
* Wlfmfn.Thin
* Wlfmfn.Thinning
* Wlfmfn.ThompsonGroupTh
* Wlfmfn.Thread
* Wlfmfn.ThreadDepth
* Wlfmfn.ThreeJSymbol
* Wlfmfn.Threshold
* Wlfmfn.Through

* Wlfmfn.Throw:
Throw[value]
stops evaluation and returns value as the value of the nearest enclosing Catch.
Throw[value,tag]
is caught only by Catch[expr,form] where tag matches form.
Details
You can use Throw and Catch to exit functions such as Nest, Fold, FixedPoint, and Scan.
tag can be any expression.
tag in Throw[value,tag] is re?evaluated every time it is compared to form in Catch[expr,form].
An error is generated and an unevaluated Throw is returned if there is no appropriate enclosing Catch to catch the Throw.
[http://reference.wolfram.com/language/ref/Throw.html]

* Wlfmfn.Thumbnail
* Wlfmfn.Thursday
* Wlfmfn.Ticks
* Wlfmfn.TicksStyle
* Wlfmfn.Tilde
* Wlfmfn.TildeEqual
* Wlfmfn.TildeFullEqual
* Wlfmfn.TildeTilde
* Wlfmfn.TimeConstrained
* Wlfmfn.TimeConstraint
* Wlfmfn.TimeDirection
* Wlfmfn.TimeFormat

* Wlfmfn.TimeObject
TimeObject[]
represents the current time.
TimeObject[{h,m,s}]
represents a time object of standard normalized form.
TimeObject[date]
gives the time component of the specified date representation.
Details and Options
TimeObject[] uses whatever time has been set on your computer system by default.
Shorter lists can be used in TimeObject[{h,m,s}], which represents the time to whatever accuracy is specified: {h} is not treated as being equivalent to .
TimeObject allows addition and subtraction of time quantities.
Subtracting two TimeObject constructs yields a time quantity.
The following options can be given:
TimeZone  $TimeZone  time zone being used
TimeZone specifications should be a numerical offset from GMT.
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.TimeSeries:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.TimeSeriesAggregate:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.TimeSeriesForecast:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.TimeSeriesInsert:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.TimeSeriesInvertibility:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.TimeSeriesMap:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.TimeSeriesMapThread:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.TimeSeriesModel:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.TimeSeriesModelFit:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.TimeSeriesResample:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.TimeSeriesRescale:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.TimeSeriesShift:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.TimeSeriesThread:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.TimeSeriesWindow:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.TimeUsed:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.TimeValue:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.TimeZone:
TimeZone
is an option for DateString, AbsoluteTime, and related functions that specifies the time zone to use for dates and times.
Details
TimeZone->z specifies that results should be returned for a time zone in which z hours must be added to Greenwich Mean Time (GMT) to obtain local time.
The typical default setting is TimeZone:>$TimeZone.
U.S. Eastern Standard Time (EST) corresponds to time zone .
Daylight Saving Time corrections must be included in the time zone, so U.S. Eastern Daylight Time (EDT) corresponds to time zone .
Settings for TimeZone need not be integers.
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.TimeZoneConvert:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Times:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.TimesBy:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Timing:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Tiny
* Wlfmfn.TitsGroupT
* Wlfmfn.ToBoxes
* Wlfmfn.ToCharacterCode
* Wlfmfn.ToContinuousTimeModel
* Wlfmfn.ToDiscreteTimeModel
* Wlfmfn.ToEntity

* Wlfmfn.ToExpression:
ToExpression[input]
gives the expression obtained by interpreting strings or boxes as Wolfram Language input.
ToExpression[input,form]
uses interpretation rules corresponding to the specified form.
ToExpression[input,form,h]
wraps the head h around the expression produced before evaluating it.
Details
form can be InputForm, StandardForm, TeXForm, TraditionalForm, or MathMLForm.
ToExpression["string"] uses InputForm interpretation rules.
ToExpression[boxes] uses StandardForm interpretation rules.
ToExpression prints a message and returns $Failed if it finds a syntax error. ToExpression does not call $SyntaxHandler. »
The input given in ToExpression can correspond to multiple Wolfram Language expressions. ToExpression processes each one in turn, just like Get. »
ToExpression[input,form,Hold] can be used to convert input to an expression, but with the expression wrapped in Hold to prevent evaluation. »
ToExpression uses any relevant definitions given for MakeExpression.
[http://reference.wolfram.com/language/ref/ToExpression.html]

* Wlfmfn.ToInvertibleTimeSeries
* Wlfmfn.ToLowerCase
* Wlfmfn.ToNumberField
* Wlfmfn.ToRadicals
* Wlfmfn.ToRules

* Wlfmfn.ToString:
ToString[expr]
gives a string corresponding to the printed form of expr in OutputForm.
ToString[expr,form]
gives the string corresponding to output in the specified form.
Details and Options
ToString supports the same set of options as OpenAppend, with default settings FormatType->OutputForm, PageWidth->Infinity, TotalWidth->Infinity.
ToString uses any relevant definitions given for Format and MakeBoxes. »
[http://reference.wolfram.com/language/ref/ToString.html]

* Wlfmfn.ToUpperCase
* Wlfmfn.Today
* Wlfmfn.ToeplitzMatrix
* Wlfmfn.Together
* Wlfmfn.Toggler
* Wlfmfn.TogglerBar
* Wlfmfn.TogglerBoxOptions
* Wlfmfn.TokenWords
* Wlfmfn.Tolerance
* Wlfmfn.Tomorrow
* Wlfmfn.Tooltip
* Wlfmfn.TooltipBoxOptions
* Wlfmfn.TooltipDelay
* Wlfmfn.TooltipStyle
* Wlfmfn.Top
* Wlfmfn.TopHatTransform
* Wlfmfn.TopologicalSort
* Wlfmfn.Total
* Wlfmfn.TotalVariationFilter
* Wlfmfn.TotalWidth
* Wlfmfn.TouchPosition
* Wlfmfn.TouchscreenAutoZoom
* Wlfmfn.TouchscreenControlPlacement
* Wlfmfn.Tr

* Wlfmfn.Trace:
Trace[expr]
generates a list of all expressions used in the evaluation of expr.
Trace[expr,form]
includes only those expressions which match form.
Trace[expr,s]
includes all evaluations which use transformation rules associated with the symbol s.
Details and Options
In general, form in Trace[expr,form] is compared both with each complete expression that is evaluated, and with the tag associated with any transformation rule used in the evaluation.
Trace[expr,lhs->rhs] picks out expressions which match lhs, then replaces them with rhs in the list returned.
All expressions in the list returned by Trace are wrapped in HoldForm.
Trace returns a set of nested lists. Each individual list corresponds to a single evaluation chain, which contains the sequence of forms found for a particular expression. The list has sublists which give the histories of subsidiary evaluations.
The following options can be given:
MatchLocalNames  True  whether to allow x to stand for
TraceAbove  False  whether to show evaluation chains which contain the chain containing form
TraceBackward  False  whether to show expressions preceding form in the evaluation chain
TraceDepth  Infinity  how many levels of nested evaluations to include
TraceForward  False  whether to show expressions following form in the evaluation chain
TraceOff  None  forms within which to switch off tracing
TraceOn  _  forms within which to switch on tracing
TraceOriginal  False  whether to look at expressions before their heads and arguments are evaluated
During the execution of Trace, the settings for the form argument, and for the options TraceOn and TraceOff, can be modified by resetting the values of the global variables , , and , respectively.
[http://reference.wolfram.com/language/ref/Trace.html]

* Wlfmfn.TraceAbove
* Wlfmfn.TraceBackward
* Wlfmfn.TraceDepth
* Wlfmfn.TraceDialog
* Wlfmfn.TraceForward
* Wlfmfn.TraceOff
* Wlfmfn.TraceOn
* Wlfmfn.TraceOriginal
* Wlfmfn.TracePrint
* Wlfmfn.TraceScan
* Wlfmfn.TrackedSymbols
* Wlfmfn.TrackingFunction
* Wlfmfn.TradingChart
* Wlfmfn.TraditionalForm
* Wlfmfn.TransferFunctionCancel
* Wlfmfn.TransferFunctionExpand
* Wlfmfn.TransferFunctionFactor
* Wlfmfn.TransferFunctionModel
* Wlfmfn.TransferFunctionPoles
* Wlfmfn.TransferFunctionTransform
* Wlfmfn.TransferFunctionZeros
* Wlfmfn.TransformationClass
* Wlfmfn.TransformationFunction
* Wlfmfn.TransformationFunctions
* Wlfmfn.TransformationMatrix
* Wlfmfn.TransformedDistribution
* Wlfmfn.TransformedField
* Wlfmfn.TransformedProcess
* Wlfmfn.TransformedRegion
* Wlfmfn.TransitionDirection
* Wlfmfn.TransitionDuration
* Wlfmfn.TransitionEffect
* Wlfmfn.TransitiveClosureGraph
* Wlfmfn.TransitiveReductionGraph
* Wlfmfn.Translate
* Wlfmfn.TranslationTransform
* Wlfmfn.Transparent
* Wlfmfn.Transpose
* Wlfmfn.TreeForm
* Wlfmfn.TreeGraph
* Wlfmfn.TreeGraphQ
* Wlfmfn.TreePlot
* Wlfmfn.TrendStyle
* Wlfmfn.Triangle
* Wlfmfn.TriangleWave
* Wlfmfn.TriangularDistribution
* Wlfmfn.TriangulateMesh
* Wlfmfn.Trig
* Wlfmfn.TrigExpand
* Wlfmfn.TrigFactor

* Wlfmfn.TrigFactorList:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.TrigReduce
* Wlfmfn.TrigToExp
* Wlfmfn.Trigger
* Wlfmfn.TrimmedMean

* Wlfmfn.TropicalStormData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.True
* Wlfmfn.TrueQ
* Wlfmfn.TruncatedDistribution
* Wlfmfn.TsallisQExponentialDistribution
* Wlfmfn.TsallisQGaussianDistribution
* Wlfmfn.Tube
* Wlfmfn.TubeBSplineCurveBoxOptions
* Wlfmfn.TubeBezierCurveBoxOptions
* Wlfmfn.TubeBoxOptions
* Wlfmfn.Tuesday
* Wlfmfn.TukeyLambdaDistribution
* Wlfmfn.TukeyWindow

* Wlfmfn.TunnelData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Tuples:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.TuranGraph:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.TuringMachine:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.TuttePolynomial

Wlfmfn.U

name::
* McsEngl.Wlfmfn.U@cptIt,

* Wlfmfn.URLBuild:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.URLDecode:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.URLEncode:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.URLExecute:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.URLExpand:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.URLFetch:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.URLFetchAsynchronous:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.URLParse:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.URLQueryDecode:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.URLQueryEncode:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.URLSave:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.URLSaveAsynchronous:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.URLShorten:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UnateQ:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Uncompress:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Undefined:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UnderBar:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Underflow:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Underlined:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Underoverscript:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UnderoverscriptBox:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UnderoverscriptBoxOptions:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Underscript:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UnderscriptBox:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UnderscriptBoxOptions:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UnderseaFeatureData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UndirectedEdge:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UndirectedGraph:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UndirectedGraphQ:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UndoOptions:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UndoTrackedVariables:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Unequal:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Unevaluated:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UniformDistribution:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UniformGraphDistribution:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UniformSumDistribution:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Uninstall:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Union:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UnionPlus:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Unique:
Unique — generate a symbol with a unique name
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UnitBox:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UnitConvert:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UnitDimensions:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UnitRootTest:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UnitSimplify:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UnitStep:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UnitSystem:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UnitTriangle:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UnitVector:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UnitaryMatrixQ:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Unitize:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UnityDimensions:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UniversityData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Unprotect:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UnsameQ:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UnsavedVariables:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Unset:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UnsetShared:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UpArrow:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UpArrowBar:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UpArrowDownArrow:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UpDownArrow:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UpEquilibrium:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UpSet:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UpSetDelayed:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UpTee:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UpTeeArrow:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UpValues:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Update:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UpdateInterval:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UpperCaseQ:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UpperLeftArrow:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UpperRightArrow:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UpperTriangularize:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Upsample:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UsingFrontEnd:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.UtilityFunction:
[http://reference.wolfram.com/language/ref/.html]

Wlfmfn.V

name::
* McsEngl.Wlfmfn.V@cptIt,

http://reference.wolfram.com/language/ref/.html,
* Wlfmfn.ValidationLength
* Wlfmfn.ValidationSet

* Wlfmfn.ValueBoxOptions

* Wlfmfn.ValueDimensions

* Wlfmfn.ValueQ:
ValueQ[expr]
gives True if a value has been defined for expr, and gives False otherwise.
Details
ValueQ has attribute HoldFirst.
ValueQ gives False only if expr would not change if it were to be entered as Wolfram Language input.
[http://reference.wolfram.com/language/ref/ValueQ.html]

* Wlfmfn.Values:
Values[?key1?val1,key2?val2,…?]
gives a list of the values in an association.
Values[{key1?val1,key2?val2,…}]
gives a list of the in a list of rules.
Details
Values has attribute Listable.
Values[key->val] gives val.
[http://reference.wolfram.com/language/ref/Values.html]

* Wlfmfn.Variables:
Variables[poly]
gives a list of all independent variables in a polynomial.
[http://reference.wolfram.com/language/ref/Variables.html]

* Wlfmfn.Variance
* Wlfmfn.VarianceEquivalenceTest
* Wlfmfn.VarianceEstimatorFunction
* Wlfmfn.VarianceGammaDistribution
* Wlfmfn.VarianceTest
* Wlfmfn.VectorAngle
* Wlfmfn.VectorColorFunction
* Wlfmfn.VectorColorFunctionScaling
* Wlfmfn.VectorDensityPlot
* Wlfmfn.VectorPlot
* Wlfmfn.VectorPlot3D
* Wlfmfn.VectorPoints
* Wlfmfn.VectorQ
* Wlfmfn.VectorScale
* Wlfmfn.VectorStyle
* Wlfmfn.Vectors
* Wlfmfn.Vee
* Wlfmfn.Verbatim
* Wlfmfn.VerificationTest
* Wlfmfn.VerifyConvergence
* Wlfmfn.VerifySolutions
* Wlfmfn.VerifyTestAssumptions
* Wlfmfn.VertexAdd
* Wlfmfn.VertexCapacity
* Wlfmfn.VertexColors
* Wlfmfn.VertexComponent
* Wlfmfn.VertexConnectivity
* Wlfmfn.VertexContract
* Wlfmfn.VertexCoordinateRules
* Wlfmfn.VertexCoordinates
* Wlfmfn.VertexCorrelationSimilarity
* Wlfmfn.VertexCosineSimilarity
* Wlfmfn.VertexCount
* Wlfmfn.VertexCoverQ
* Wlfmfn.VertexDataCoordinates
* Wlfmfn.VertexDegree
* Wlfmfn.VertexDelete
* Wlfmfn.VertexDiceSimilarity
* Wlfmfn.VertexEccentricity
* Wlfmfn.VertexInComponent
* Wlfmfn.VertexInDegree
* Wlfmfn.VertexIndex
* Wlfmfn.VertexJaccardSimilarity
* Wlfmfn.VertexLabelStyle
* Wlfmfn.VertexLabeling
* Wlfmfn.VertexLabels

* Wlfmfn.VertexList:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.VertexNormals
* Wlfmfn.VertexOutComponent
* Wlfmfn.VertexOutDegree
* Wlfmfn.VertexQ
* Wlfmfn.VertexRenderingFunction
* Wlfmfn.VertexReplace
* Wlfmfn.VertexShape
* Wlfmfn.VertexShapeFunction
* Wlfmfn.VertexSize
* Wlfmfn.VertexStyle
* Wlfmfn.VertexTextureCoordinates
* Wlfmfn.VertexWeight
* Wlfmfn.VerticalBar
* Wlfmfn.VerticalGauge
* Wlfmfn.VerticalSeparator
* Wlfmfn.VerticalSlider
* Wlfmfn.VerticalTilde
* Wlfmfn.ViewAngle
* Wlfmfn.ViewCenter
* Wlfmfn.ViewMatrix
* Wlfmfn.ViewPoint
* Wlfmfn.ViewRange
* Wlfmfn.ViewVector
* Wlfmfn.ViewVertical
* Wlfmfn.Visible
* Wlfmfn.VoigtDistribution

* Wlfmfn.VolcanoData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Volume:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.VonMisesDistribution:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.VoronoiMesh

Wlfmfn.W

name::
* McsEngl.Wlfmfn.W@cptIt,

http://reference.wolfram.com/language/ref/.html,
* Wlfmfn.WaitAll
* Wlfmfn.WaitAsynchronousTask
* Wlfmfn.WaitNext
* Wlfmfn.WakebyDistribution
* Wlfmfn.WalleniusHypergeometricDistribution
* Wlfmfn.WaringYuleDistribution
* Wlfmfn.WatershedComponents
* Wlfmfn.WatsonUSquareTest
* Wlfmfn.WattsStrogatzGraphDistribution
* Wlfmfn.WaveletBestBasis
* Wlfmfn.WaveletFilterCoefficients
* Wlfmfn.WaveletImagePlot
* Wlfmfn.WaveletListPlot
* Wlfmfn.WaveletMapIndexed
* Wlfmfn.WaveletMatrixPlot
* Wlfmfn.WaveletPhi
* Wlfmfn.WaveletPsi
* Wlfmfn.WaveletScale
* Wlfmfn.WaveletScalogram
* Wlfmfn.WaveletThreshold
* Wlfmfn.WeakStationarity
* Wlfmfn.WeaklyConnectedComponents
* Wlfmfn.WeaklyConnectedGraphQ

* Wlfmfn.WeatherData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.WeberE
* Wlfmfn.Wedge
* Wlfmfn.Wednesday
* Wlfmfn.WeibullDistribution
* Wlfmfn.WeierstrassHalfPeriods
* Wlfmfn.WeierstrassInvariants
* Wlfmfn.WeierstrassP
* Wlfmfn.WeierstrassPPrime
* Wlfmfn.WeierstrassSigma
* Wlfmfn.WeierstrassZeta
* Wlfmfn.WeightedAdjacencyGraph
* Wlfmfn.WeightedAdjacencyMatrix

* Wlfmfn.WeightedData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.WeightedGraphQ
* Wlfmfn.Weights
* Wlfmfn.WelchWindow
* Wlfmfn.WheelGraph
* Wlfmfn.WhenEvent
* Wlfmfn.Which

* Wlfmfn.While:
* entity: looping#ql:wl'loop#,
===
While[test,body]
evaluates test, then body, repetitively, until test first fails to give True.
Details
While[test] does the loop with a null body.
If Break[] is generated in the evaluation of body, the While loop exits.
Continue[] exits the evaluation of body, and continues the loop.
Unless an explicit Return is used, the value returned by While is Null.
Note that in an example like the roles of and are reversed relative to C-like programming languages.
[http://reference.wolfram.com/language/ref/While.html]

* Wlfmfn.White
* Wlfmfn.WhiteNoiseProcess
* Wlfmfn.WhitePoint

* Wlfmfn.Whitespace:
Whitespace
represents a sequence of whitespace characters in StringExpression.
Details
Whitespace is taken to include spaces, tabs, and newlines.
[http://reference.wolfram.com/language/ref/Whitespace.html]

* Wlfmfn.WhitespaceCharacter:
WhitespaceCharacter
represents a single whitespace character in StringExpression.
Details
Whitespace characters are taken to include spaces, tabs, and newlines.
[http://reference.wolfram.com/language/ref/WhitespaceCharacter.html]

* Wlfmfn.WhittakerM
* Wlfmfn.WhittakerW
* Wlfmfn.WienerFilter
* Wlfmfn.WienerProcess
* Wlfmfn.WignerD
* Wlfmfn.WignerSemicircleDistribution
* Wlfmfn.WilksW
* Wlfmfn.WilksWTest

* Wlfmfn.WindDirectionData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.WindSpeedData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.WindVectorData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.WindowClickSelect
* Wlfmfn.WindowElements
* Wlfmfn.WindowFloating
* Wlfmfn.WindowFrame
* Wlfmfn.WindowMargins
* Wlfmfn.WindowMovable
* Wlfmfn.WindowOpacity
* Wlfmfn.WindowSize
* Wlfmfn.WindowStatusArea
* Wlfmfn.WindowTitle
* Wlfmfn.WindowToolbars
* Wlfmfn.With
* Wlfmfn.WolframAlpha
* Wlfmfn.Word
* Wlfmfn.WordBoundary

* Wlfmfn.WordCharacter:
WordCharacter
represents a letter or digit character in StringExpression.
Details
WordCharacter matches any character for which either LetterQ or DigitQ yields True. »
[http://reference.wolfram.com/language/ref/WordCharacter.html]

* Wlfmfn.WordData:
WordData["word","property"]
gives the specified property for the English word .
WordData["word"]
gives a list of full word specifications representing possible uses and senses of .
WordData[wordspec,"property"]
gives a property for a particular word specification.
Details
A particular use or sense of a word can be represented by a word specification of the form , where is a part of speech and is a sense tag.
Words that occur only in one sense can be specified just by . Words that occur only in one sense as a given part of speech can be specified by .
In WordData, ordinary words are capitalized as they would be within a sentence (such as or ).
Some multiword phrases (such as ) can be used and are treated like single words.
Parts of speech include , , , , as well as , , etc.
Sense tags are capitalized like Wolfram Language names.
WordData[] gives a list of all words and phrases available in WordData.
For properties that depend on the use or sense of a word, WordData[wordspec,"property"] gives a list of rules for each use and sense of a word consistent with wordspec.
WordData[wordspec,"property","form"] yields results in the following forms:
"List"  a single list of results for all word specifications
"Rules"  a list of word specifications for each word specification
"ShortRules"  a list of word results for each word specification
Basic grammatical properties of words include:
"PartsOfSpeech"  possible parts of speech for a word
WordData[All,"part"] gives all words of a given part of speech. WordData[All,"Stopwords"] gives a list of words typically ignored in text comparisons. WordData[All,"PartsOfSpeech"] gives a list of parts of speech.
WordData[patt,"Lookup"] gives a list of all available words matching the string pattern patt.
Basic meaning-related properties of words include:
"Antonyms"  words with an opposite meaning (e.g. "large" from "small")
"BroaderTerms"  generalizations of a word (e.g. "shape" from "circle")
"Definitions"  definitions for a word
"Examples"  examples of the word in use
"NarrowerTerms"  specializations of a word (e.g. "circle" from "shape")
"Synonyms"  words with the same meaning (e.g. "large" from "big")
Properties describing usage characteristics for words include:
"ConceptWeight"  rough estimate of semantic importance
"GeographicDomain"  geographic region to which the word relates (e.g. )
"UsageField"  field or category in which the word is used (e.g. )
"UsageType"  type of word usage (e.g. , )
Lexical properties of words include:
"Hyphenation"  hyphenation blocks in a word
"PhoneticForm"  IPA phonetic representation
Morphological properties for words include:
"BaseForm"  base uninflected form of a word (e.g. "large" from "larger")
"InflectedForms"  inflected forms of a word (e.g. "went" from "go")
"MorphologicalDerivatives"  words that are morphologically derived from a word
"MorphologicalSource"  word from which a word is morphologically derived
"PorterStem"  Porter-stemmed form of word
Special properties for nouns include:
"CompositeTerms"  entities made from a material (e.g. "brass" from "copper")
"DerivedAdjectives"  derived adjectives (e.g. "American" from "America")
"MaterialTerms"  terms for constituent material (e.g. "copper" from "brass")
"PartTerms"  terms for parts (e.g. "finger" from "hand")
"SubsetTerms"  terms for subsets (e.g. "Arthropoda" from "Animalia")
"SupersetTerms"  terms for supersets (e.g. "Animalia" from "Arthropoda")
"WholeTerms"  terms for wholes (e.g. "hand" from "finger")
Special properties for verbs include:
"CausesTerms"  verbs for causes (e.g. "kill" from "die")
"ConsequencesTerms"  verbs for consequences (e.g. "die" from "kill")
"EntailedTerms"  verbs for entailed actions (e.g. "step" from "walk")
"SentenceFrames"  ways that the verb can appear in phrases
"PhrasalVerbs"  phrasal forms for verbs (e.g. "move on" from "move")
Special properties for adjectives include:
"BaseNoun"  noun the adjective is derived from (e.g. "handy" from "hand")
"DerivedAdverb"  derived adverb (e.g. "quickly" from "quick")
Special properties for adverbs include:
"BaseAdjective"  adjective the adverb is derived from (e.g. "quick" for "quickly")
Word labeling properties include:
"WordNetID"  WordNet synset IDs for a word
WordData[wordspec,"property","ann"] gives various annotations associated with a property. Typical annotations include:
"Description"  a textual description of the property
"Note"  special note about the property given
WordData[All,"Properties"] gives all properties supported by WordData.
Using WordData may require internet connectivity.
[http://reference.wolfram.com/language/ref/WordData.html]

* Wlfmfn.WordSearch:
WordSearch
is an option for Find and FindList that specifies whether the text searched for must appear as a word.
Details
With the setting WordSearch->True, the text must appear as a word, delimited by word or record separators, as specified by WordSeparators or RecordSeparators.
[http://reference.wolfram.com/language/ref/WordSearch.html]

* Wlfmfn.WordSeparators:
WordSeparators
is an option for Read, Find, and related functions that specifies the list of strings to be taken as delimiters for words.
Details
The default setting is WordSeparators->{" ","\t"}.
Strings used as word separators may contain several characters.
With the option setting NullWords->False, any number of word separators may appear between any two successive words.
WordSeparators->{{lsep1,…},{rsep1,…}} specifies different left and right separators for words. Words must have a left separator at the beginning, a right separator at the end, and cannot contain any separators.
Strings given as record separators are automatically taken as word separators.
[http://reference.wolfram.com/language/ref/WordSeparators.html]

* Wlfmfn.WorkingPrecision

* Wlfmfn.WrapAround

* Wlfmfn.Write

* Wlfmfn.WriteLine

* Wlfmfn.WriteString

* Wlfmfn.Wronskian

Wlfmfn.X

name::
* McsEngl.Wlfmfn.X@cptIt,

http://reference.wolfram.com/language/ref/.html,
* Wlfmfn.XMLElement

* Wlfmfn.XMLObject
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.XMLTemplate
* Wlfmfn.XYZColor
* Wlfmfn.Xnor
* Wlfmfn.Xor

Wlfmfn.Y

name::
* McsEngl.Wlfmfn.Y@cptIt,

* Wlfmfn.http://reference.wolfram.com/language/ref/Yellow.html:

* Wlfmfn.http://reference.wolfram.com/language/ref/Yesterday.html:
gives a DateObject representing the previous day.
Details
Yesterday yields an object of the form DateObject[{y,m,d}].

* Wlfmfn.http://reference.wolfram.com/language/ref/YuleDissimilarity.html:

Wlfmfn.Z

name::
* McsEngl.Wlfmfn.Z@cptIt,

http://reference.wolfram.com/language/ref/.html,

* Wlfmfn.ZIPCodeData:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ZTest:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ZTransform:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ZernikeR:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ZeroSymmetric:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ZeroTest:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.Zeta:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ZetaZero:
[http://reference.wolfram.com/language/ref/.html]

* Wlfmfn.ZipfDistribution:
[http://reference.wolfram.com/language/ref/.html]

[http://reference.wolfram.com/language/guide/AlphabeticalListing.html]

Wlfmfn.BUILT-IN

name::
* McsEngl.Wlfmfn.BUILT-IN@cptIt,

_DESCRIPTION:
The Wolfram Language has about 5000 built-in functions. All have names in which each word starts with a capital letter:
[http://www.wolfram.com/language/fast-introduction-for-programmers/built-in-functions/]
===
The built-in functions of the Wolfram Language implement a very large number of algorithms from computer science and mathematics. Some of these algorithms are fairly old, but the vast majority had to be created or at least modified specifically for the Wolfram Language. Most of the more mathematical algorithms in the Wolfram Language ultimately carry out operations which at least at some time in the past were performed by hand. In almost all cases, however, the algorithms use methods very different from those common in hand calculation.
[http://reference.wolfram.com/language/tutorial/TheAlgorithmsOfTheWolframLanguage.html]

Wlfmfn.NUMERICAL

name::
* McsEngl.Wlfmfn.NUMERICAL@cptIt,

Wlfmfn.OPERATOR

name::
* McsEngl.Wlfmfn.OPERATOR@cptIt,
* McsEngl.lagWlfm'operator@cptIt,
* McsEngl.Wlfmopr@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/Operators.html,
* http://reference.wolfram.com/language/tutorial/OperatorInputForms.html,
* http://reference.wolfram.com/language/tutorial/OperatorsWithoutBuiltInMeanings.html,
* http://reference.wolfram.com/language/tutorial/WorkingWithOperators.html,

_CODE.WL:
+, ->, ?  operators

_DESCRIPTION:
Operators are ultimately what determine the structure of the expression formed from a particular piece of input. The Wolfram Language involves several general classes of operators, distinguished by the different positions in which they appear with respect to their operands.
prefix  !x  Not[x]
postfix  x!  Factorial[x]
infix  x+y+z  Plus[x,y,z]
matchfix  {x,y,z}  List[x,y,z]
compound  x/:y=z  TagSet[x,y,z]
overfix    OverHat[x]
Examples of classes of operators in the Wolfram Language.

Operators typically work by picking up operands from definite positions around them. But when a string contains more than one operator, the result can in general depend on which operator picks up its operands first.

Thus, for example, could potentially be interpreted either as or as depending on whether or picks up its operands first.

To avoid such ambiguities, the Wolfram Language assigns a precedence to each operator that can appear. Operators with higher precedence are then taken to pick up their operands first.

Thus, for example, the multiplication operator is assigned higher precedence than , so that it picks up its operands first, and is interpreted as rather than .
[http://reference.wolfram.com/language/tutorial/TheSyntaxOfTheWolframLanguage.html]
===
You can think of an expression like f[x] as being formed by applying an operator f to the expression x. You can think of an expression like f[g[x]] as the result of composing the operators f and g, and applying the result to x.
[http://reference.wolfram.com/language/tutorial/WorkingWithOperators.html]

wlopr'operand

name::
* McsEngl.wlopr'operand@cptIt,
* McsEngl.Wlfmopr'argument@cptIt,

wlopr'precedence

name::
* McsEngl.wlopr'precedence@cptIt,

_DESCRIPTION:
The Wolfram Language has a definite grammar that specifies how your input should be converted to internal form. One aspect of the grammar is that it specifies how pieces of your input should be grouped. For example, if you enter an expression such as a+b^c, the Wolfram Language grammar specifies that this should be considered, following standard mathematical notation, as a+(b^c) rather than (a+b)^c. The Wolfram Language chooses this grouping because it treats the operator ^ as having a higher precedence than +. In general, the arguments of operators with higher precedence are grouped before those of operators with lower precedence.
[http://reference.wolfram.com/language/tutorial/SpecialWaysToInputExpressions.html]

SPECIFIC

* wlopr.specific,

wlopr.ACTION

name::
* McsEngl.wlopr.ACTION@cptIt,

_SPECIFIC:
Operators Used to Represent Actions
form
full name
alias
°  \[wlopr.SmallCircle]  EscscEsc
?  \[wlopr.CirclePlus]  Escc+Esc
?  \[wlopr.CircleMinus]  Escc-Esc
?  \[wlopr.CircleTimes]  Escc*Esc
?  \[wlopr.CircleDot]  Escc.Esc
?  \[wlopr.Diamond]  EscdiaEsc
·  \[wlopr.CenterDot]  Esc.Esc
?  \[wlopr.Star]  EscstarEsc
?  \[wlopr.VerticalTilde]  
\  \[wlopr.Backslash]  Esc\Esc
form
full name
alias
?  \[wlopr.Wedge]  Esc^Esc
?  \[wlopr.Vee]  EscvEsc
?  \[wlopr.Union]  EscunEsc
?  \[wlopr.UnionPlus]  
?  \[wlopr.Intersection]  EscinterEsc
?  \[wlopr.SquareIntersection]  
?  \[wlopr.SquareUnion]  
?  \[wlopr.Coproduct]  EsccoprodEsc
?  \[wlopr.Cap]  
?  \[wlopr.Cup]  
?  \[wlopr.Square]  EscsqEsc
Operators typically used to represent actions. All the operators except \[Square] are infix.

Following the Wolfram Language's usual convention, all the operators in the table are interpreted to give functions whose names are exactly the names of the characters that appear in the operators.

The operators are interpreted as functions with corresponding names.
In[3]:=  
Click for copyable input
Out[3]//FullForm=

All the operators in the table above, except for , are infix, so that they must appear in between their operands.
[http://reference.wolfram.com/language/tutorial/Operators.html#292]

wlopr.ARROW

name::
* McsEngl.wlopr.ARROW@cptIt,

_SPECIFIC:
Operators Based on Arrows and Vectors
Operators based on arrows are often used in pure mathematics and elsewhere to represent various kinds of transformations or changes.

is equivalent to .
In[5]:=  
Click for copyable input
Out[5]=  
form
full name
alias
?  \[wlopr.Rule]  Esc->Esc
?  \[wlopr.RuleDelayed]  Esc:>Esc
form
full name
alias
?  \[wlopr.Implies]  Esc=>Esc
?  \[wlopr.RoundImplies]  
Arrow-like operators with built-in meanings in the Wolfram Language.

form
full name
alias
?  \[wlopr.RightArrow]  Esc?->Esc
?  \[wlopr.LeftArrow]  Esc<-Esc
?  \[wlopr.LeftRightArrow]  Esc<->Esc
?  \[wlopr.LongRightArrow]  Esc-->Esc
?  \[wlopr.LongLeftArrow]  Esc<--Esc
?  \[wlopr.LongLeftRightArrow]  Esc<-->Esc
?  \[wlopr.ShortRightArrow]  
?  \[wlopr.ShortLeftArrow]  
?  \[wlopr.RightTeeArrow]  
?  \[wlopr.LeftTeeArrow]  
?  \[wlopr.RightArrowBar]  
?  \[wlopr.LeftArrowBar]  
?  \[wlopr.DoubleRightArrow]  Esc?=>Esc
?  \[wlopr.DoubleLeftArrow]  Esc?<=Esc
?  \[wlopr.DoubleLeftRightArrow]  Esc<=>Esc
?  \[wlopr.DoubleLongRightArrow]  Esc==>Esc
?  \[wlopr.DoubleLongLeftArrow]  Esc<==Esc
?  \[wlopr.DoubleLongLeftRightArrow]  Esc<==>Esc
form
full name
?  \[wlopr.UpArrow]  
?  \[wlopr.DownArrow]  
?  \[wlopr.UpDownArrow]  
?  \[wlopr.UpTeeArrow]  
?  \[wlopr.DownTeeArrow]  
?  \[wlopr.UpArrowBar]  
?  \[wlopr.DownArrowBar]  
?  \[wlopr.DoubleUpArrow]  
?  \[wlopr.DoubleDownArrow]  
?  \[wlopr.DoubleUpDownArrow]  
?  \[wlopr.RightArrowLeftArrow]  
?  \[wlopr.LeftArrowRightArrow]  
?  \[wlopr.UpArrowDownArrow]  
?  \[wlopr.DownArrowUpArrow]  
?  \[wlopr.LowerRightArrow]  
?  \[wlopr.LowerLeftArrow]  
?  \[wlopr.UpperLeftArrow]  
?  \[wlopr.UpperRightArrow]  
Ordinary arrows.

form
full name
alias
?  \[wlopr.RightVector]  EscvecEsc
?  \[wlopr.LeftVector]  
?  \[wlopr.LeftRightVector]  
?  \[wlopr.DownRightVector]  
?  \[wlopr.DownLeftVector]  
?  \[wlopr.DownLeftRightVector]  
?  \[wlopr.RightTeeVector]  
?  \[wlopr.LeftTeeVector]  
?  \[wlopr.DownRightTeeVector]  
?  \[wlopr.DownLeftTeeVector]  
?  \[wlopr.RightVectorBar]  
?  \[wlopr.LeftVectorBar]  
?  \[wlopr.DownRightVectorBar]  
?  \[wlopr.DownLeftVectorBar]  
?  \[wlopr.Equilibrium]  EscequiEsc
?  \[wlopr.ReverseEquilibrium]  
form
full name
?  \[wlopr.LeftUpVector]  
?  \[wlopr.LeftDownVector]  
?  \[wlopr.LeftUpDownVector]  
?  \[wlopr.RightUpVector]  
?  \[wlopr.RightDownVector]  
?  \[wlopr.RightUpDownVector]  
?  \[wlopr.LeftUpTeeVector]  
?  \[wlopr.LeftDownTeeVector]  
?  \[wlopr.RightUpTeeVector]  
?  \[wlopr.RightDownTeeVector]  
?  \[wlopr.LeftUpVectorBar]  
?  \[wlopr.LeftDownVectorBar]  
?  \[wlopr.RightUpVectorBar]  
?  \[wlopr.RightDownVectorBar]  
?  \[wlopr.UpEquilibrium]  
?  \[wlopr.ReverseUpEquilibrium]  
Vectors and related arrows.

All the arrow and vector-like operators in the Wolfram Language are infix.
In[6]:=  
Click for copyable input
Out[6]=  
form
full name
alias
?  \[wlopr.RightTee]  EscrTEsc
?  \[wlopr.LeftTee]  EsclTEsc
?  \[wlopr.UpTee]  EscuTEsc
?  \[wlopr.DownTee]  EscdTEsc
form
full name
?  \[wlopr.DoubleRightTee]  
?  \[wlopr.DoubleLeftTee]  
Tees.
[http://reference.wolfram.com/language/tutorial/Operators.html#27644]

wlopr.BRACKETING

name::
* McsEngl.wlopr.BRACKETING@cptIt,

_SPECIFIC:
Bracketing Operators
form
full name
alias
?  \[wlopr.LeftFloor]  EsclfEsc
?  \[wlopr.RightFloor]  EscrfEsc
?  \[wlopr.LeftCeiling]  EsclcEsc
?  \[wlopr.RightCeiling]  EscrcEsc
[  \[wlopr.LeftDoubleBracket]  Esc[[Esc
]  \[wlopr.RightDoubleBracket]  Esc]]Esc
form
full name
alias
<  \[wlopr.LeftAngleBracket]  Esc<Esc
>  \[wlopr.RightAngleBracket]  Esc>Esc
?  \[wlopr.LeftBracketingBar]  Escl|Esc
?  \[wlopr.RightBracketingBar]  Escr|Esc
?  \[wlopr.LeftDoubleBracketingBar]  Escl||Esc
?  \[wlopr.RightDoubleBracketingBar]  Escr||Esc
[http://reference.wolfram.com/language/tutorial/Operators.html#14771]

wlopr.COMPOSITE

name::
* McsEngl.wlopr.COMPOSITE@cptIt,

You should avoid inserting any spaces between the different characters in composite operators such as /., =., and >=. Although in some cases such spaces are allowed, they are liable to lead to confusion.

wlopr.INFIX x~f~y

name::
* McsEngl.wlopr.INFIX x~f~y@cptIt,
* McsEngl.Wlfmopr.sblTilda@cptIt,

wlopr.LOGICAL

name::
* McsEngl.wlopr.LOGICAL@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/RelationalAndLogicalOperators.html,
* http://reference.wolfram.com/language/howto/UseLogicalOperators.html,

_SPECIFIC:
Logical and Other Connectives
form
full name
aliases
?  \[wlopr.And]  Esc, EscandEsc
?  \[wlopr.Or]  Esc, EscorEsc
¬  \[wlopr.Not]  Esc, EscnotEsc
?  \[wlopr.Element]  EscelEsc
?  \[wlopr.ForAll]  EscfaEsc
?  \[wlopr.Exists]  EscexEsc
?  \[wlopr.NotExists]  Esc!exEsc
?  \[wlopr.Xor]  EscxorEsc
?  \[wlopr.Nand]  EscnandEsc
?  \[wlopr.Nor]  EscnorEsc
form
full name
alias
?  \[wlopr.Implies]  Esc=>Esc
?  \[wlopr.RoundImplies]  
?  \[wlopr.Therefore]  EsctfEsc
?  \[wlopr.Because]  
?  \[wlopr.RightTee]  
?  \[wlopr.LeftTee]  
?  \[wlopr.DoubleRightTee]  
?  \[wlopr.DoubleLeftTee]  
?  \[wlopr.SuchThat]  EscstEsc
?  \[wlopr.VerticalSeparator]  Esc|Esc
:  \[wlopr.Colon]  Esc:Esc
Operators used as logical connectives.

The operators , , and are interpreted as corresponding to the built-in functions And, Or, and Not, and are equivalent to the keyboard operators , , and . The operators , , and correspond to the built-in functions Xor, Nand, and Nor. Note that is a prefix operator.

and are both taken to give the built-in function Implies[x,y]. gives the built-in function Element[x,y].

This is interpreted using the built-in functions And and Implies.
In[1]:=  
Click for copyable input
Out[1]=  
The Wolfram Language supports most of the standard syntax used in mathematical logic. In the Wolfram Language, however, the variables that appear in the quantifiers , , and must appear as subscripts. If they appeared directly after the quantifier symbols then there could be a conflict with multiplication operations.

and are essentially prefix operators like .
In[2]:=  
Click for copyable input
Out[2]//FullForm=
[http://reference.wolfram.com/language/tutorial/Operators.html#23281]

wlopr.MATCHFIX

name::
* McsEngl.wlopr.MATCHFIX@cptIt,

_DESCRIPTION:
The delimiters in bracketed objects are matchfix operators. But since these delimiters explicitly enclose all operands, no precedence need be assigned to such operators.
[http://reference.wolfram.com/language/tutorial/InputSyntax.html]

wlopr.MATH

name::
* McsEngl.wlopr.MATH@cptIt,

_SPECIFIC:
Basic Mathematical Operators
form
full name
alias
Χ  \[wlopr.Times]  Esc*Esc
χ  \[wlopr.Divide]  EscdivEsc
v  \[wlopr.Sqrt]  EscsqrtEsc
form
full name
alias
?  \[wlopr.Cross]  EsccrossEsc
±  \[wlopr.PlusMinus]  Esc+-Esc
±  \[wlopr.MinusPlus]  Esc-+Esc
Some operators used in basic arithmetic and algebra.

Note that the for \[Cross] is distinguished by being drawn slightly smaller than the for \[Times].

xΧy  Times[x,y]  multiplication
xχy  Divide[x,y]  division
vx  Sqrt[x]  square root
x?y  Cross[x,y]  vector cross product
±x  PlusMinus[x]  (no built-in meaning)
x±y  PlusMinus[x,y]  (no built-in meaning)
±x  MinusPlus[x]  (no built-in meaning)
x±y  MinusPlus[x,y]  (no built-in meaning)
Interpretation of some operators in basic arithmetic and algebra.

Operators in Calculus and Algebra
form
full name
alias
?  \[wlopr.Del]  EscdelEsc
?  \[wlopr.PartialD]  EscpdEsc
?  \[wlopr.DifferentialD]  EscddEsc
?  \[wlopr.Sum]  EscsumEsc
?  \[wlopr.Product]  EscprodEsc
form
full name
alias
?  \[wlopr.Integral]  EscintEsc
?  \[wlopr.ContourIntegral]  EsccintEsc
?  \[wlopr.DoubleContourIntegral]  
?  \[wlopr.CounterClockwiseContourIntegral]  EsccccintEsc
?  \[wlopr.ClockwiseContourIntegral]  EscccintEsc
Operators used in calculus.

form
full name
aliases
?  \[wlopr.Conjugate]  EsccoEsc, EscconjEsc
?  \[wlopr.Transpose]  EsctrEsc
form
full name
alias
?  \[wlopr.ConjugateTranspose]  EscctEsc
?  \[wlopr.HermitianConjugate]  EschcEsc
Operators for complex numbers and matrices.
[http://reference.wolfram.com/language/tutorial/Operators.html#18467]

wlopr.PERCENT (%)

name::
* McsEngl.wlopr.PERCENT (%)@cptIt,
* McsEngl.Wlfmopr.sblPercent@cptIt,

_DESCRIPTION:
Inputs the last output.

wlopr.POSTFIX x//f

name::
* McsEngl.wlopr.POSTFIX x//f@cptIt,
* McsEngl.Wlfmopr.sblSlashSlash@cptIt,

_DESCRIPTION:
This "postfix form" is exactly equivalent to f[x+y].
In[1]:=  x+y//f
Out[1]=  f[x+y]
[http://reference.wolfram.com/language/tutorial/SpecialWaysToInputExpressions.html]

_CODE.WL:
> {1,2,3} // Length
3

wlopr.PREFIX f@x

name::
* McsEngl.wlopr.PREFIX f@x,
* McsEngl.Wlfmopr.sblAt@cptIt,

_CODE.WL:
> Length @ {1,2,3}
3

wlopr.RELATIONAL

name::
* McsEngl.wlopr.RELATIONAL@cptIt,
* McsEngl.Wlfmopr.relation@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/RelationalAndLogicalOperators.html,
* http://reference.wolfram.com/language/guide/RelationalOperatorsAndCharacters.html,

_DESCRIPTION:
Relational Operators & Characters
The Wolfram Language supports a large collection of relational operator characters, each of which can also be used as an element of Wolfram Language syntax, representing a formal operator named after the character.
[http://reference.wolfram.com/language/guide/RelationalOperatorsAndCharacters.html]

_SPECIFIC:
Operators Used to Represent Relations
form  full name  alias
?  \[wlopr.Equal#ql:wls.equal#]  Esc==Esc
?  \[wlopr.LongEqual]  Escl=Esc
=  \[wlopr.Congruent]  Esc===Esc
~  \[wlopr.Tilde]  EscEsc
�  \[wlopr.TildeTilde]  EscEsc
?  \[wlopr.TildeEqual]  Esc=Esc
?  \[wlopr.TildeFullEqual]  Esc==Esc
?  \[wlopr.EqualTilde]  EscEsc
?  \[wlopr.HumpEqual]  Esch=Esc
?  \[wlopr.HumpDownHump]  
?  \[wlopr.CupCap]  
?  \[wlopr.DotEqual]  
?  \[wlopr.NotEqual]  Esc!=Esc
?  \[wlopr.NotCongruent]  Esc!===Esc
?  \[wlopr.NotTilde]  EscEsc
?  \[wlopr.NotTildeTilde]  EscEsc
?  \[wlopr.NotTildeEqual]  Esc=Esc
?  \[wlopr.NotTildeFullEqual]  Esc==Esc
?  \[wlopr.NotEqualTilde]  EscEsc
?  \[wlopr.NotHumpEqual]  Esc!h=Esc
?  \[wlopr.NotHumpDownHump]  
?  \[wlopr.NotCupCap]  
?  \[wlopr.Proportional]  EscpropEsc
?  \[wlopr.Proportion]  
Operators usually used to represent similarity or equivalence.

The special character (or \[Equal]) is an alternative input form for . is used both for input and output.
In[4]:=  
Out[4]=  
[http://reference.wolfram.com/language/tutorial/Operators.html#26299]

wlopr.REPLACEMENT (/.)

name::
* McsEngl.wlopr.REPLACEMENT (/.)@cptIt,
* McsEngl.Wlfmopr.sblSlashDot@cptIt,

_DESCRIPTION:
expr/.lhs->rhs  apply a transformation rule to a specific expression
[http://reference.wolfram.com/language/tutorial/MakingDefinitions.html]

wlopr.sblColonColon (::)

name::
* McsEngl.wlopr.sblColonColon (::)@cptIt,

_CODE.WL:
On[General::newsym]  print a message whenever a new symbol is created

wlopr.SEMICOLON (;)

name::
* McsEngl.wlopr.SEMICOLON (;)@cptIt,
* McsEngl.Wlfmopr.sblSemicolon@cptIt,

_DESCRIPTION:
the semicolons used to separate expressions in a Wolfram Language program.

Wlfmfn.PURE

name::
* McsEngl.Wlfmfn.PURE@cptIt,

_DESCRIPTION:
Pure functions are used very often in the Wolfram Language. They let you use a function without having to define an explicit name for it.
[http://reference.wolfram.com/language/howto/UseShorthandNotations.html]

lagWlfm'LIST-(lt) {...}

name::
* McsEngl.lagWlfm'LIST-(lt) {...}@cptIt,
* McsEngl.Wlfmlt@cptIt,
* McsEngl.lagWlfm'list@cptIt,
* McsEngl.Wlfmlist@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/guide/ConstructingLists.html,

_CODE.WL:
{e1,e2,...}

_DESCRIPTION:
Lists are a basic way to collect things together in the Wolfram Language. {1,2,3} is a list of numbers. On their own, lists don’t do anything; they’re just a way to store things. So if you give a list as input, it’ll just come back unchanged:
In[1]:=  
Click for copyable input
Out[1]=  
[http://www.wolfram.com/language/elementary-introduction/03-first-look-at-lists.html]
===
Lists are central constructs in the Wolfram Language, used to represent collections, arrays, sets, and sequences of all kinds. Lists can have any structure and size and can routinely involve even millions of elements. Well over a thousand built-in functions throughout the Wolfram Language operate directly on lists, making lists a powerful vehicle for interoperability.
[http://reference.wolfram.com/language/guide/ListManipulation.html]
===
Lists are very general objects that represent collections of expressions.
Functions with attribute Listable are automatically "threaded" over lists, so that they act separately on each list element. Most built-in mathematical functions are Listable.
{a,b,c} represents a vector.
{{a,b},{c,d}} represents a matrix.
Nested lists can be used to represent tensors.

_GENERIC:
Since lists are just a particular kind of expression
[http://reference.wolfram.com/language/tutorial/PartsOfExpressions.html]

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/AddingRemovingAndModifyingListElements.html,
* http://reference.wolfram.com/language/tutorial/CombiningLists.html,
* http://reference.wolfram.com/language/tutorial/GettingPiecesOfLists.html,
* http://reference.wolfram.com/language/tutorial/MakingListsOfObjects.html,
* http://reference.wolfram.com/language/tutorial/ManipulatingListsByTheirIndices.html,
* http://reference.wolfram.com/language/tutorial/NestedLists.html,
* http://reference.wolfram.com/language/tutorial/TestingAndSearchingListElements.html,
===
* http://reference.wolfram.com/language/guide/ListManipulation.html,

wll'element

name::
* McsEngl.wll'element@cptIt,

wll'function

name::
* McsEngl.wll'function@cptIt,

_DESCRIPTION:
Well over a thousand built-in functions throughout the Wolfram Language operate directly on lists, making lists a powerful vehicle for interoperability.
[http://reference.wolfram.com/language/guide/ListManipulation.html]

lagWlfm'PATTERN-(pn)

name::
* McsEngl.lagWlfm'PATTERN-(pn)@cptIt,
* McsEngl.lagWlfm'pattern@cptIt,
* McsEngl.lagWlfm'pattern-language@cptIt,
* McsEngl.Wlfmpattern@cptIt,

_DESCRIPTION:
Patterns stand for classes of expressions.
The basic pattern construct _ (pronounced “blank”) stands for any expression.
[http://www.wolfram.com/language/fast-introduction-for-programmers/patterns/]
===
One of the unique strengths of the Wolfram Language is its powerful and succinct—yet highly readable—symbolic pattern language. Convenient both for immediate use in individual functions, and for systematic large-scale programming, the Wolfram Language's pattern language generalizes concepts like regular expressions to describe general patterns for arbitrary symbolic structures.
[http://reference.wolfram.com/language/guide/Patterns.html]
===
At the core of the Wolfram Language's symbolic programming paradigm is the concept of transformation rules for arbitrary symbolic patterns. The Wolfram Language's pattern language conveniently describes a very general set of classes of expressions, making possible uniquely readable, elegant and efficient programs.
[http://reference.wolfram.com/language/guide/RulesAndPatterns.html]

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/PatternsOverview.html,
* http://reference.wolfram.com/language/tutorial/Introduction-Patterns.html,
* http://reference.wolfram.com/language/tutorial/SpecifyingTypesOfExpressionInPatterns.html,
===
* http://reference.wolfram.com/language/guide/RulesAndPatterns.html,
* http://reference.wolfram.com/language/guide/Patterns.html,

wlpattern'alternative

name::
* McsEngl.wlpattern'alternative@cptIt,

_DESCRIPTION:
patt1|patt2|…  a pattern that can have one of several forms
Specifying patterns that involve alternatives.
[http://reference.wolfram.com/language/tutorial/PatternsInvolvingAlternatives.html]

wlpattern'blank

name::
* McsEngl.wlpattern'blank@cptIt,
* McsEngl.Wlfmopr.blank@cptIt,
* McsEngl.Wlfmopr.sblUnderscore@cptIt,

_DESCRIPTION:
The basic object that appears in almost all Wolfram Language patterns is _ (traditionally called "blank" by Wolfram Language programmers). The fundamental rule is simply that _ stands for any expression. On most keyboards the underscore character appears as the shifted version of the dash character.

Thus, for example, the pattern f[_] stands for any expression of the form f[anything]. The pattern f[x_] also stands for any expression of the form f[anything], but gives the name x to the expression anything, allowing you to refer to it on the right-hand side of a transformation rule.
[http://reference.wolfram.com/language/tutorial/Introduction-Patterns.html]

wlpattern'constraint

name::
* McsEngl.wlpattern'constraint@cptIt,
* McsEngl.Wlfmpattern'condition@cptIt,

_DESCRIPTION:
Putting Constraints on Patterns
The Wolfram Language provides a general mechanism for specifying constraints on patterns. All you need to do is to put /;condition at the end of a pattern to signify that it applies only when the specified condition is True. You can read the operator as "slash-semi", "whenever", or "provided that".
[http://reference.wolfram.com/language/tutorial/PuttingConstraintsOnPatterns.html]

_OPERATOR.WL:
* wlopr.sblSlashSemicolon,
* wlopr.slash_semi,
===
You can use /; on whole definitions and transformation rules, as well as on individual patterns. In general, you can put /;condition at the end of any := definition or :> rule to tell the Wolfram Language that the definition or rule applies only when the specified condition holds. Note that conditions should not usually be put at the end of = definitions or -> rules, since they will then be evaluated immediately, as discussed in "Immediate and Delayed Definitions".
[http://reference.wolfram.com/language/tutorial/PuttingConstraintsOnPatterns.html]

wlpattern'function

name::
* McsEngl.wlpattern'function@cptIt,

_FUNCTION:
* Pattern#ql:wls.pattern#

wlpattern'matching

name::
* McsEngl.wlpattern'matching@cptIt,

_DESCRIPTION:
The internal code associated with pattern matching is approximately 250 pages long.
[http://reference.wolfram.com/language/tutorial/SomeNotesOnInternalImplementation.html]

wlpattern'sequence

name::
* McsEngl.wlpattern'sequence@cptIt,

_DESCRIPTION:
In some cases you may need to specify pattern sequences that are more intricate than things like or x..; for such situations you can use PatternSequence[p1,p2,…].

PatternSequence[p1,p2,…]  a sequence of arguments matching
Pattern sequences.
[http://reference.wolfram.com/language/tutorial/PatternSequences.html]

wlpattern'usage

name::
* McsEngl.wlpattern'usage@cptIt,

You can use patterns in transformation rules to specify how classes of expressions should be transformed.
In[1]:=  f[a] + f[b] /. f[x_] -> x^2
Out[1]=  a^2 + b^2
[http://reference.wolfram.com/language/tutorial/Introduction-Patterns.html]

You can use patterns to find the positions of all expressions in a particular class.
In[2]:=  Position[{f[a], g[b], f[c]}, f[x_]]
Out[2]=  {{1},{3}}
[http://reference.wolfram.com/language/tutorial/Introduction-Patterns.html]

SPECIFIC

_EXAMPLE:
f[n_]   with any argument, named
f[n_,m_]   with two arguments, named and
x^n_   to any power, with the power named
x_^n_  any expression to any power
a_+b_  a sum of two expressions
{a1_,a2_}  a list of two expressions
f[n_,n_]   with two identical arguments
Some examples of patterns.
[http://reference.wolfram.com/language/tutorial/Introduction-Patterns.html]

wlpattern.ANY

name::
* McsEngl.wlpattern.ANY@cptIt,

_DESCRIPTION:
The underscore character is a pattern object that can stand for any Wolfram Language expression.
[http://reference.wolfram.com/language/howto/CleanUpDataImportedFromAWebsite.html]

wlpattern.HEAD

name::
* McsEngl.wlpattern.HEAD@cptIt,

_DESCRIPTION:
In a pattern, _h and x_h represent expressions that are constrained to have head h. Thus, for example, _Integer represents any integer, while _List represents any list.
[http://reference.wolfram.com/language/tutorial/SpecifyingTypesOfExpressionInPatterns.html]

wlpattern.REPEATED

name::
* McsEngl.wlpattern.REPEATED@cptIt,

_DESCRIPTION:
Repeated Patterns
expr..  a pattern or other expression repeated one or more times
expr...  a pattern or other expression repeated zero or more times
Repeated patterns.
[http://reference.wolfram.com/language/tutorial/RepeatedPatterns.html]

wlpattern.STRING

name::
* McsEngl.wlpattern.STRING@cptIt,
* McsEngl.lagWlfm'string-pattern@cptIt,

_DESCRIPTION:
String patterns are implemented using a symbolic extension of the PCRE regular expression library.
[http://reference.wolfram.com/language/tutorial/SomeNotesOnInternalImplementation.html]

_WHOLE:
* string-computation#ql:wl'computation.string#

_ADDRESS.WPG:
* http://reference.wolfram.com/language/guide/StringPatterns.html,

wlpattern.TYPE

name::
* McsEngl.wlpattern.TYPE@cptIt,

_DESCRIPTION:
x_h    an expression with head h
x_Integer  an integer
x_Real  an approximate real number
x_Complex  a complex number
x_List  a list
x_Symbol  a symbol
Patterns for objects with specified heads.
[http://reference.wolfram.com/language/tutorial/SpecifyingTypesOfExpressionInPatterns.html]

lagWlfm'module

name::
* McsEngl.lagWlfm'module@cptIt,
* McsEngl.Wlfmmodule@cptIt,
* McsEngl.Wlfmmdl@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/HowModulesWork.html,

_DESCRIPTION:
The Wolfram Language normally assumes that all your variables are global. This means that every time you use a name like , the Wolfram Language normally assumes that you are referring to the same object.

Particularly when you write programs, however, you may not want all your variables to be global. You may, for example, want to use the name to refer to two quite different variables in two different programs. In this case, you need the in each program to be treated as a local variable.

You can set up local variables in the Wolfram Language using modules. Within each module, you can give a list of variables which are to be treated as local to the module.
[http://reference.wolfram.com/language/tutorial/ModulesAndLocalVariables.html]

lagWlfm'block

name::
* McsEngl.lagWlfm'block@cptIt,
* McsEngl.Wlfmblk@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/BlocksComparedWithModules.html,

_DESCRIPTION:
Modules in the Wolfram Language allow you to treat the names of variables as local. Sometimes, however, you want the names to be global, but values to be local. You can do this in the Wolfram Language using Block.
[http://reference.wolfram.com/language/tutorial/BlocksAndLocalValues.html]

lagWlfm'package

name::
* McsEngl.lagWlfm'package@cptIt,
* McsEngl.Wlfmpkg@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/WolframLanguagePackages.html,
* http://reference.wolfram.com/language/tutorial/ContextsAndPackages.html,
* http://reference.wolfram.com/language/guide/PackageDevelopment.html,

_DESCRIPTION:
Wolfram Language packages are files written in the Wolfram Language. They consist of collections of Wolfram Language definitions which "teach" the Wolfram Language about particular application areas.
[http://reference.wolfram.com/language/tutorial/WolframLanguagePackages.html]
===
A typical package written in the Wolfram Language introduces several new symbols intended for use outside the package. These symbols may correspond for example to new functions or new objects defined in the package.
There is a general convention that all new symbols introduced in a particular package are put into a context whose name is related to the name of the package. When you read in the package, it adds this context at the beginning of your context search path $ContextPath.
[http://reference.wolfram.com/language/tutorial/ContextsAndPackages.html]
===
With Wolfram Language packages, it is conventional to associate contexts whose names correspond to the names of the packages. Packages typically use BeginPackage and EndPackage to define objects in the appropriate context, and to add the context to the global $ContextPath. EndPackage prints a warning about any symbols that were created in a package but which are "shadowed" by existing symbols on the context search path.
[http://reference.wolfram.com/language/tutorial/BasicObjects.html#1832]

wlpkg'doing.LOADING

name::
* McsEngl.wlpkg'doing.LOADING@cptIt,

_DESCRIPTION:
Other tutorials have discussed explicit loading of Wolfram Language packages using <<package and Needs[package]. Sometimes, however, you may want to set the Wolfram Language up so that it automatically loads a particular package when the package is needed.

You can use DeclarePackage to give the names of symbols which are defined in a particular package. Then, when one of these symbols is actually used, the Wolfram Language will automatically load the package where the symbol is defined.
[http://reference.wolfram.com/language/tutorial/AutomaticLoadingOfPackages.html]

wlpkg'symbol

name::
* McsEngl.wlpkg'symbol@cptIt,

_DESCRIPTION:
In a typical Wolfram Language package, there are generally two kinds of new symbols that are introduced. The first kind are ones that you want to “export” for use outside the package. The second kind are ones that you want to use only internally within the package. You can distinguish these two kinds of symbols by putting them in different contexts.

The usual convention is to put symbols intended for export in a context with a name Package` that corresponds to the name of the package. Whenever the package is read in, it adds this context to the context search path, so that the symbols in this context can be referred to by their short names.

Symbols that are not intended for export, but are instead intended only for internal use within the package, are conventionally put into a context with the name Package`Private`. This context is not added to the context search path. As a result, the symbols in this context cannot be accessed except by giving their full names.
[http://reference.wolfram.com/language/tutorial/SettingUpWolframLanguagePackages.html]

lagWlfm'program

name::
* McsEngl.lagWlfm'program@cptIt,

_DESCRIPTION:
In order to write the most general Wolfram Language programs you will sometimes need to find out global information about the setup under which your program is being run.
[http://reference.wolfram.com/language/tutorial/GlobalSystemInformation.html]
===
Scoping Constructs
The flexibility of the Wolfram Language's symbolic architecture is reflected in its rich collection of carefully defined constructs for localization and modularization. The use of multiple forms of scoping allows for more elegant, readable, and efficient programs, supports the concept of programs as data, and allows direct correspondence with mathematical notions of variables.
[http://reference.wolfram.com/language/guide/ScopingConstructs.html]

lagWlfm'codeFIRST

name::
* McsEngl.lagWlfm'codeFIRST@cptIt,
* McsEngl.lagWlfm'archetype@cptIt,
* McsEngl.lagWlfm'codeHuman@cptIt,
* McsEngl.Wlfmcdf@cptIt, {2014-09-21}

_DESCRIPTION:
WHAT wl 'computes'|processes, ie natural-language-text, math, audio, images, files, system-information, etc. ALL these is code, that represents entities of the world.
[hmnSngo.2014-09-24]
===
The Wolfram Language handles many different kinds of things: mathematical formulas, lists, and graphics, to name a few. Although they often look very different, the Wolfram Language represents all of these things in one uniform way. They are all expressions.
[http://reference.wolfram.com/language/tutorial/EverythingIsAnExpression.html]
===
The Wolfram Language can routinely import and export hundreds of megabytes in all standard basic formats—in addition to supporting hundrends of more structured formats.
[http://reference.wolfram.com/language/guide/BasicFormats.html]
===
Data Analytics
Sequence Analysis
Geomapping
Control Theory
Reliability Analysis
Interprocess Communication

SPECIFIC

_SPECIFIC:
* String_Processing#ql:wl'computation.string#

lagWlfm'Audio-Processing

name::
* McsEngl.lagWlfm'Audio-Processing@cptIt,

lagWlfm'Binary-Computation

name::
* McsEngl.lagWlfm'Binary-Computation@cptIt,

lagWlfm'Data

name::
* McsEngl.lagWlfm'Data@cptIt,

_SPECIFIC:
"3DS" — 3D Studio format (.3ds)
"ACO" — Adobe color palette format (.aco)
"Affymetrix" — Affymetrix microarray formats (.cel, .cdf, .chp, .gin, .psi)
"AgilentMicroarray" — Agilent microarray data format (.txt)
"AIFF" — AIFF Macintosh sound format (.aif, .aiff)
"ApacheLog" — Apache access log file format
"ArcGRID" — ESRI GIS format
"AU" — µ law encoding Unix Audio Format (.au)
"AVI" — Microsoft AVI format (.avi)
"Base64" — Base64 ASCII encoding
"BDF" — BDF physiological signal recordings format (.bdf)
"Bit" — sequence of binary bits
"BMP" — Microsoft bitmap format (.bmp)
"Byte" — sequence of 8-bit unsigned integers
"BYU" — BYU 3D geometry format (.byu)
"BZIP2" — bzip2 compression format (.bz2)
"C" — C code generation (.c)
"CDED" — Canadian digital elevation data (.dem)
"CDF" — Wolfram Computable Document Format (.cdf)
"Character8" — sequence of 8-bit characters
"Character16" — sequence of 16-bit Unicode characters
"Complex64" — IEEE single-precision complex numbers
"Complex128" — IEEE double-precision complex numbers
"Complex256" — IEEE quad-precision complex numbers
"CSV" — comma-separated values (.csv)
"CUR" — Windows cursor resource format (.cur)
"DBF" — dBase database file (.dbf)
"DICOM" — DICOM medical image format (.dcm, .dic)
"DIF" — VisiCalc data interchange format (.dif)
"DIMACS" — DIMACS graph data format (.col, .col.b)
"Directory" — filesystem directory hierarchy
"DOT" — DOT graph data format (.gv, .dot)
"DXF" — AutoCAD 2D and 3D format (.dxf)
"EDF" — EDF physiological signal recordings format (.edf)
"EMF" — Windows metafile and enhanced metafile formats
"EPS" — Encapsulated PostScript (.eps)
"ExpressionML" — Wolfram Language expression XML format (.xml)
"FASTA" — bioinformatics sequence format (.fasta, .fa, .fsa, .mpfa)
"FASTQ" — FASTQ molecular biology format (.fastq, .fq)
"FCS" — FCS molecular biology format (.fcs, .lmd)
"FITS" — FITS astronomical data and image format (.fit, .fits)
"FLAC" — FLAC lossless audio codec (.flac)
"GenBank" — GenBank molecular biology format (.gb, .gbk)
"GeoTIFF" — annotated TIFF raster files (.tif)
"GIF" — static or animated GIF (.gif)
"Graph6" — dense graph format (.g6)
"Graphlet" — GML graph data (.gml)
"GraphML" — GraphML graph format (.graphml)
"GRIB" — GRIB scientific data format (.grb, .grib)
"GTOPO30" — USGS global topographic data (.dem)
"GXL" — GXL graph data (.gxl)
"GZIP" — Unix GZIP compression (.gz)
"HarwellBoeing" — Harwell–Boeing sparse matrix format
"HDF" — NCSA hierarchical data format (.hdf)
"HDF5" — NCSA HDF 5 hierarchical data format (.h5)
"HIN" — HyperChen HIN data format (.hin)
"HTML" — HTML format (.htm, .html), including embedded GIFs, CSS, etc.
"ICC" — ICC color profile format (.icc, .icm)
"ICO" — Windows icon resource format (.ico)
"ICS" — iCalendar format (.ics, .ical, .ifb)
"ICNS" — Macintosh icons format (.icns)
"Integer8" — sequence of 8-bit signed integers
"Integer16" — sequence of 16-bit signed integers
"Integer24" — sequence of 24-bit signed integers
"Integer32" — sequence of 32-bit signed integers
"Integer64" — sequence of 64-bit signed integers
"Integer128" — sequence of 128-bit signed integers
"JCAMP-DX" — chemical spectrosocopy format (.jdx, .dx, .jcm)
"JPEG" — JPEG raster image format (.jpeg, .jpg)
"JPEG2000" — JPEG 2000/JP2 raster image format (.jp2, .j2k)
"JVX" — JavaView format (.jvx)
"JSON" — JSON web service description (.json)
"KML" — Google Earth GIS format (.kml, .kmz)
"LaTeX" — LaTeX format (.latex)
"List" — numbers or strings, one per line
"LWO" — LightWave 3D file format (.lwo)
"MAT" — MATLAB/Octave data format (.mat)
"MathML" — MathML math content format
"Maya" — Maya entity files (.ma)
"MBOX" — MBOX Unix mailbox format (.mbox)
"MDB" — Microsoft Access database file (.mdb)
"MGF" — Wolfram Mathematica MGF bitmap format (.mgf)
"MIDI" — MIDI music format (.mid)
"MMCIF" — MMCIF 3D molecular model format (.cif)
"MOL" — MDL MOL molecular models and drawings format (.mol)
"MOL2" — Tripos MOL2 format (.mol2)
"MPS" — MPS linear programming system format (.mps)
"MTP" — Minitab portable worksheet format (.mtp)
"MTX" — Matrix Market sparse matrix format (.mtx)
"MX" — Wolfram Language serialized package format (.mx)
"NASACDF" — NASA common data format (.cdf)
"NB" — Wolfram Notebook format (.nb)
"NDK" — NDK seismographic data format (.ndk)
"NetCDF" — Unidata scientific data format
"NEXUS" — NEXUS phylogenetic format (.nex, .nxs)
"NOFF" — 3D object file format with normals (.noff, .cnoff)
"OBJ" — Wavefront OBJ format (.obj)
"ODS" — OpenDocument spreadsheet format (.ods)
"OFF" — 3D object file format (.off, .coff)
"OpenEXR" — OpenEXR raster image format (.exr)
"Package" — Wolfram Language package source (.m)
"Pajek" — Pajek graph data format (.net)
"PBM" — ASCII portable bitmap format (.pbm)
"PCX" — Windows Paintbrush format (.pcx)
"PDB" — Protein Data Bank format (.pdb)
"PDF" — Adobe Acrobat PDF format (.pdf)
"PGM" — ASCII portable graymap format (.pgm)
"PICT" — Macintosh PICT format (.pict)
"PLY" — PLY 3D geometry format (.ply)
"PNG" — PNG raster image format (.png)
"PNM" — ASCII portable raster format (.pnm)
"POV" — POV-Ray ray-tracing object description format (.pov)
"PPM" — ASCII portable color pixmap format (.ppm)
"PXR" — Pixar raster format (.pxr)
"QuickTime" — Apple QuickTime multimedia container format (.mov)
"RawBitmap" — pure binary bitmap data
"Real32" — IEEE single-precision real numbers
"Real64" — IEEE double-precision real numbers
"Real128" — IEEE quad-precision real numbers
"RIB" — Renderman interchange format (.rib)
"RSS" — RSS feed format (.rss)
"RTF" — Microsoft Rich Text Format (.rtf)
"SCT" — Scitex CT prepress format (.sct)
"SDF" — MDL SDF format (.sdf)
"SDTS" — SDTS DLG and DEM spatial data files
"SDTSDEM" — digital elevation files
"SFF" — SFF molecular biology format (.sff)
"SHP" — ESRI shape file format (.shp)
"SMILES" — SMILES chemical format (.smi)
"SND" — SND file format (.snd)
"SP3" — geospatial data format (.sp3)
"Sparse6" — sparse graph format (.s6)
"STL" — stereolithography format (.stl)
"String" — arbitrary data as a Wolfram Language string
"SVG" — Scalable Vector Graphics format (.svg)
"SWF" — Flash multimedia format (.swf)
"SurferGRID" — geospatial data format (.grd)
"SXC" — OpenOffice 1.0 spreadsheet file (.sxc)
"Table" — arbitrary tabular data (.dat)
"TAR" — Unix TAR archive (.tar)
"TerminatedString" — null-terminated string
"TeX" — TeX document format (.tex)
"Text" — plain text (.txt)
"TGA" — TrueVision Targa format (.tga)
"TLE" — TLE satellite data format (.tle, .tce)
"TGF" — TGF graph format (.tgf)
"TIFF" — TIFF raster image format (.tiff, .tif)
"TSV" — tab-separated values (.tsv)
"UnsignedInteger8" — sequence of 8-bit unsigned integers
"UnsignedInteger16" — sequence of 16-bit unsigned integers
"UnsignedInteger24" — sequence of 24-bit unsigned integers
"UnsignedInteger32" — sequence of 32-bit unsigned integers
"UnsignedInteger64" — sequence of 64-bit unsigned integers
"UnsignedInteger128" — sequence of 128-bit unsigned integers
"USGSDEM" — USGS ASCII DEM digital elevation file (.dem)
"UUE" — Unix uuencode format (.uue, .enc)
"VCF" — vCard format (.vcf)
"VCS" — vCalendar format (.vcs)
"VideoFrames" — sequence of raster images
"VRML" — Virtual Reality Modeling Language format (.vrml)
"VTK" — Visualization Toolkit 3D format (.vtk)
"WAV" — Microsoft WAV audio format (.wav)
"Wave64" — Sony Wave64 audio format (.w64)
"WDX" — Wolfram data exchange format (.wdx)
"WMF" — Windows metafile format (.wmf)
"X3D" — X3D XML geometry format (.x3d)
"XBM" — X bitmap format (.xbm)
"XHTML" — XML-syntax HTML (.xhtml)
"XHTMLMathML" — XHTML with embedded MathML
"XLS" — Excel spreadsheet format (.xls)
"XLSX" — Microsoft Excel 2007 format (.xlsx)
"XML" — arbitrary XML (.xml)
"XPORT" — SAS interchange format (.stx, .xpt)
"XYZ" — XYZ molecule geometry file (.xyz)
"ZIP" — Windows ZIP archive (.zip)
"ZPR" — Z Corp 3D printer format (.zpr)
[http://reference.wolfram.com/language/guide/ListingOfAllFormats.html]

lagWlfm'Engineering-Data

name::
* McsEngl.lagWlfm'Engineering-Data@cptIt,

lagWlfm'Financial-Data

name::
* McsEngl.lagWlfm'Financial-Data@cptIt,

lagWlfm'Genomic-Data

name::
* McsEngl.lagWlfm'Genomic-Data@cptIt,

lagWlfm'Geographic-Data

name::
* McsEngl.lagWlfm'Geographic-Data@cptIt,

lagWlfm'Physics-Chemistry-Data

name::
* McsEngl.lagWlfm'Physics-Chemistry-Data@cptIt,

lagWlfm'Popular-Culture-Data

name::
* McsEngl.lagWlfm'Popular-Culture-Data@cptIt,

lagWlfm'Socioeconomic-Data

name::
* McsEngl.lagWlfm'Socioeconomic-Data@cptIt,

lagWlfm'Units-and-Measures

name::
* McsEngl.lagWlfm'Units-and-Measures@cptIt,

lagWlfm'Weather-Data

name::
* McsEngl.lagWlfm'Weather-Data@cptIt,

lagWlfm'Document-Generation

name::
* McsEngl.lagWlfm'Document-Generation@cptIt,

lagWlfm'File-processing#ql:wl'file-computation#

name::
* McsEngl.lagWlfm'File-processing@cptIt,

lagWlfm'Financial-Computation

name::
* McsEngl.lagWlfm'Financial-Computation@cptIt,

lagWlfm'Image-Processing

name::
* McsEngl.lagWlfm'Image-Processing@cptIt,

lagWlfm'visualization2D

name::
* McsEngl.lagWlfm'visualization2D@cptIt,

lagWlfm'visualization3D

name::
* McsEngl.lagWlfm'visualization3D@cptIt,

lagWlfm'Machine-Learning

name::
* McsEngl.lagWlfm'Machine-Learning@cptIt,

lagWlfm'Math#ql:wl'computation.math#

name::
* McsEngl.lagWlfm'Math@cptIt,

lagWlfm'natural-language-understanding

name::
* McsEngl.lagWlfm'natural-language-understanding@cptIt,

lagWlfm'Time-Series

name::
* McsEngl.lagWlfm'Time-Series@cptIt,

lagWlfm'codeSECOND

name::
* McsEngl.lagWlfm'codeSECOND@cptIt,
* McsEngl.lagWlfm'codeProgramming@cptIt,
* McsEngl.lagWlfm'codeSource@cptIt,
* McsEngl.lagWlfm'source-code@cptIt,
* McsEngl.Wlfmcds@cptIt, {2014-09-21}

_DESCRIPTION:
The Wolfram Language handles many different kinds of things: mathematical formulas, lists, and graphics, to name a few. Although they often look very different, the Wolfram Language represents all of these things in one uniform way. They are all expressions.
[http://reference.wolfram.com/language/tutorial/EverythingIsAnExpression.html]

wlcds'character

name::
* McsEngl.wlcds'character@cptIt,
* McsEngl.lagWlfm'character.source-code@cptIt,
* McsEngl.lagWlfm'source-code-character@cptIt,
* McsEngl.lagWlfm'source-code-symbol@cptIt,
* McsEngl.lagWlfm'source-code-unit@cptIt,
* McsEngl.lagWlfm'unit.second@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/RawCharacterEncodings.html,
===
* http://reference.wolfram.com/language/guide/CharacterOperations.html,
* http://reference.wolfram.com/language/guide/ListingOfNamedCharacters.html,
* http://reference.wolfram.com/language/guide/InternationalCharacterSets.html,

wlcds'input

name::
* McsEngl.wlcds'input@cptIt,
* McsEngl.lagWlfm'entry@cptIt,
* McsEngl.lagWlfm'typing@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/TwoDimensionalExpressionInputOverview.html,
* http://reference.wolfram.com/language/tutorial/TextualInputAndOutputOverview.html,
* http://reference.wolfram.com/language/guide/DefiningCustomNotation.html,
* http://reference.wolfram.com/language/Notation/guide/NotationPackage.html,

lagWlfm'codeTHIRD

name::
* McsEngl.lagWlfm'codeTHIRD@cptIt,
* McsEngl.lagWlfm'codeMachine@cptIt,
* McsEngl.lagWlfm'codeBinary@cptIt,
* McsEngl.lagWlfm'machine-code@cptIt,
* McsEngl.Wlfmcdt@cptIt, {2014-09-21}

lagWlfm'comment

name::
* McsEngl.lagWlfm'comment@cptIt,

_CODE.WL:
(*comment*)  input to be ignored

lagWlfm'computation

name::
* McsEngl.lagWlfm'computation@cptIt,
* McsEngl.lagWlfm'computation.DATA@cptIt,
* McsEngl.lagWlfm'data-computation@cptIt,

_DESCRIPTION:
How to | Use Curated Data
An efficient load-on-demand mechanism makes hundreds of gigabytes of carefully curated and continually updated data immediately available inside the Wolfram Language for use in computations. This data, curated at Wolfram Research, can be accessed and processed in a coherent way.
[http://reference.wolfram.com/language/howto/UseCuratedData.html]

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/BuildingUpCalculationsOverview.html,
* http://reference.wolfram.com/language/tutorial/UnitsOverview.html,
===
* http://reference.wolfram.com/language/guide/CulturalData.html,
* http://reference.wolfram.com/language/guide/KnowledgeRepresentationAndAccess.html,
* http://reference.wolfram.com/language/guide/SocioeconomicAndDemographicData.html,
===
* http://reference.wolfram.com/language/howto/UseCuratedData.html,

_FUNCTION.WL:
* AstronomicalData
* ChemicalData
* CityData
* CountryData
* ExampleData
* ElementData#ql:wls.ElementData#,
* FinancialData
* GraphData#ql:wls.GraphData#,
* IsotopeData
* KnotData
* LatticeData
* ParticleData
* PolyhedronData
* ProteinData#ql:wls.proteindata#,
* WordData#ql:wls.worddata#

lagWlfm'computation.CONTROL-STRUCTURE

name::
* McsEngl.lagWlfm'computation.CONTROL-STRUCTURE@cptIt,
* McsEngl.lagWlfm'control-structure@cptIt,
* McsEngl.lagWlfm'flow-control@cptIt,

_DESCRIPTION:
The execution of a Wolfram Language program involves the evaluation of a sequence of Wolfram Language expressions. In simple programs, the expressions to be evaluated may be separated by semicolons, and evaluated one after another. Often, however, you need to evaluate expressions several times, in some kind of "loop".
[http://reference.wolfram.com/language/tutorial/LoopsAndControlStructures.html]
===
Flow Control
Traditional procedural programming languages typically require programmers to define an explicit "flow of control" at every stage in their programs. The Wolfram Language provides standard flow control primitives, with various symbolic extensions—though its higher-level programming paradigm usually frees programmers from having to specify the details of flow control.
[http://reference.wolfram.com/language/guide/FlowControl.html]

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/InterruptsAndAborts.html,

lagWlfm'computation.GEOGRAPHIC-DATA

name::
* McsEngl.lagWlfm'computation.GEOGRAPHIC-DATA@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/guide/GeographicData.html,

_DESCRIPTION:
The Wolfram Language has built-in access to extensive geographic data, including detailed worldwide maps and computable information on millions of geographic entities. Free-form linguistic input makes it easy to specify geographic entities and classes of entities (e.g. "counties in Illinois"). The Wolfram Language then provides an integrated symbolic representation for geographic constructs, together with detailed ontological classification and the ability to do sophisticated geodetic computations, as well as computations on socioeconomic and other data.
[http://reference.wolfram.com/language/guide/GeographicData.html]

lagWlfm'computation.HUMAN

name::
* McsEngl.lagWlfm'computation.HUMAN@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/guide/PeopleAndHistory.html,

lagWlfm'computation.LOOPING

name::
* McsEngl.lagWlfm'computation.LOOPING@cptIt,
* McsEngl.lagWlfm'loop@cptIt,
* McsEngl.lagWlfm'looping@cptIt,

_DESCRIPTION:
The execution of a Wolfram Language program involves the evaluation of a sequence of Wolfram Language expressions. In simple programs, the expressions to be evaluated may be separated by semicolons, and evaluated one after another. Often, however, you need to evaluate expressions several times, in some kind of "loop".
[http://reference.wolfram.com/language/tutorial/LoopsAndControlStructures.html]

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/ApplyingFunctionsRepeatedly.html,
* http://reference.wolfram.com/language/tutorial/RepetitiveOperations.html,

_FUNCTION.WL:
* Do#ql:wls.do#,
* For#ql:wls.for#,
* Nest#ql:wls.nest#,
* NestList#ql:wls.nestlist#,
* While#ql:wls.while#

lagWlfm'computation.STRING

name::
* McsEngl.lagWlfm'computation.STRING@cptIt,
* McsEngl.lagWlfm'string-manipulation@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/KeyboardShortcutListing.html,
* http://reference.wolfram.com/language/tutorial/LettersAndLetterLikeForms.html,
* http://reference.wolfram.com/language/tutorial/RegularExpressions.html,
===
* http://reference.wolfram.com/language/guide/GreekLetters.html,
* http://reference.wolfram.com/language/guide/VariantLetters.html,
* http://reference.wolfram.com/language/guide/NonPrintingCharacters.html,
* http://reference.wolfram.com/language/guide/CharacterOperations.html,
* http://reference.wolfram.com/language/guide/StringManipulation.html,

_DESCRIPTION:
Regular Expressions
General Wolfram Language patterns provide a powerful way to do string manipulation. But particularly if you are familiar with specialized string manipulation languages, you may sometimes find it convenient to specify string patterns using regular expression notation. You can do this in the Wolfram Language with RegularExpression objects.
[http://reference.wolfram.com/language/tutorial/RegularExpressions.html]

lagWlfm'character

name::
* McsEngl.lagWlfm'character@cptIt,
* McsEngl.Wlfmchr@cptIt,

_DESCRIPTION:
The Wolfram System provides systemwide support for a large number of special characters. Each character has a name and a number of shortcut aliases. They are fully supported by the standard Wolfram System fonts.
[http://reference.wolfram.com/language/tutorial/Introduction-ListingOfNamedCharacters.html]

_INPUT:
1) Esc name Esc
2) \[name]
3) \:unicode_naumber
4) \nn (octal number)

wlchr.NAMED

name::
* McsEngl.wlchr.NAMED@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/ref/character/AAcute.html,
===
* http://reference.wolfram.com/language/tutorial/Introduction-ListingOfNamedCharacters.html,

Listing of Named Characters
The Wolfram System provides systemwide support for a large number of special characters. Each character has a name and a number of shortcut aliases. They are fully supported by the standard Wolfram System fonts. For further information about named characters, including character interpretations and naming conventions, please see "Named Characters".

Characters
α — \[wlsbl.AAcute] Unicode: 00E1. Alias: Esca'Esc. Letter. Included in ISO Latin-1.
a — \[wlsbl.ABar]
a — \[wlsbl.ACup]
δ — \[wlsbl.ADoubleDot]
ζ — \[wlsbl.AE]
ΰ — \[wlsbl.AGrave]
β — \[wlsbl.AHat]
? — \[wlsbl.Aleph]
Esc — \[wlsbl.AliasDelimiter]
Esc — \[wlsbl.AliasIndicator]
— \[wlsbl.AlignmentMarker]
a — \[wlsbl.Alpha]
? — \[wlsbl.AltKey]
? — \[wlsbl.And]
? — \[wlsbl.Angle]
Ε — \[wlsbl.Angstrom]
ε — \[wlsbl.ARing]
? — \[wlsbl.AscendingEllipsis]
γ — \[wlsbl.ATilde]
— \[wlsbl.AutoLeftMatch]
— \[wlsbl.AutoOperand]
? — \[wlsbl.AutoPlaceholder]
— \[wlsbl.AutoRightMatch]
— \[wlsbl.AutoSpace]
\ — \[wlsbl.Backslash]
? — \[wlsbl.BeamedEighthNote]
? — \[wlsbl.BeamedSixteenthNote]
? — \[wlsbl.Because]
? — \[wlsbl.Bet]
ί — \[wlsbl.Beta]
? — \[wlsbl.BlackBishop]
? — \[wlsbl.BlackKing]
? — \[wlsbl.BlackKnight]
? — \[wlsbl.BlackPawn]
? — \[wlsbl.BlackQueen]
? — \[wlsbl.BlackRook]
? — \[wlsbl.Breve]
• — \[wlsbl.Bullet]
c — \[wlsbl.CAcute]
Α — \[wlsbl.CapitalAAcute]
A — \[wlsbl.CapitalABar]
A — \[wlsbl.CapitalACup]
Δ — \[wlsbl.CapitalADoubleDot]
Ζ — \[wlsbl.CapitalAE]
ΐ — \[wlsbl.CapitalAGrave]
Β — \[wlsbl.CapitalAHat]
? — \[wlsbl.CapitalAlpha]
Ε — \[wlsbl.CapitalARing]
Γ — \[wlsbl.CapitalATilde]
? — \[wlsbl.CapitalBeta]
C — \[wlsbl.CapitalCAcute]
Η — \[wlsbl.CapitalCCedilla]
C — \[wlsbl.CapitalCHacek]
? — \[wlsbl.CapitalChi]
? — \[wlsbl.CapitalDelta]
D — \[wlsbl.CapitalDHacek]
? — \[wlsbl.CapitalDifferentialD]
? — \[wlsbl.CapitalDigamma]
Ι — \[wlsbl.CapitalEAcute]
E — \[wlsbl.CapitalEBar]
E — \[wlsbl.CapitalECup]
Λ — \[wlsbl.CapitalEDoubleDot]
Θ — \[wlsbl.CapitalEGrave]
E — \[wlsbl.CapitalEHacek]
Κ — \[wlsbl.CapitalEHat]
? — \[wlsbl.CapitalEpsilon]
? — \[wlsbl.CapitalEta]
Π — \[http://reference.wolfram.com/language/ref/character/CapitalEth.html] Unicode: 00D0. Alias: EscD-Esc. Letter. Included in ISO Latin-1.
G — \[wlsbl.CapitalGamma]
Ν — \[wlsbl.CapitalIAcute]
I — \[wlsbl.CapitalICup]
Ο — \[wlsbl.CapitalIDoubleDot]
Μ — \[wlsbl.CapitalIGrave]
Ξ — \[wlsbl.CapitalIHat]
? — \[wlsbl.CapitalIota]
? — \[wlsbl.CapitalKappa]
? — \[wlsbl.CapitalKoppa]
? — \[wlsbl.CapitalLambda]
L — \[wlsbl.CapitalLSlash]
? — \[wlsbl.CapitalMu]
N — \[wlsbl.CapitalNHacek]
Ρ — \[wlsbl.CapitalNTilde]
? — \[wlsbl.CapitalNu]
Σ — \[wlsbl.CapitalOAcute]
O — \[wlsbl.CapitalODoubleAcute]
Φ — \[wlsbl.CapitalODoubleDot]
� — \[wlsbl.CapitalOE]
� — \[wlsbl.CapitalOGrave]
Τ — \[wlsbl.CapitalOHat]
O — \[wlsbl.CapitalOmega]
? — \[wlsbl.CapitalOmicron]
Ψ — \[wlsbl.CapitalOSlash]
Υ — \[wlsbl.CapitalOTilde]
F — \[wlsbl.CapitalPhi]
? — \[wlsbl.CapitalPi]
? — \[wlsbl.CapitalPsi]
R — \[wlsbl.CapitalRHacek]
? — \[wlsbl.CapitalRho]
? — \[wlsbl.CapitalSampi]
� — \[wlsbl.CapitalSHacek]
S — \[wlsbl.CapitalSigma]
? — \[wlsbl.CapitalStigma]
? — \[wlsbl.CapitalTau]
T — \[wlsbl.CapitalTHacek]
T — \[wlsbl.CapitalTheta]
ή — \[wlsbl.CapitalThorn]
Ϊ — \[wlsbl.CapitalUAcute]
U — \[wlsbl.CapitalUDoubleAcute]
ά — \[wlsbl.CapitalUDoubleDot]
Ω — \[wlsbl.CapitalUGrave]
Ϋ — \[wlsbl.CapitalUHat]
? — \[wlsbl.CapitalUpsilon]
U — \[wlsbl.CapitalURing]
? — \[wlsbl.CapitalXi]
έ — \[wlsbl.CapitalYAcute]
? — \[wlsbl.CapitalZeta]
� — \[wlsbl.CapitalZHacek]
? — \[wlsbl.Cap]
η — \[wlsbl.CCedilla]
Έ — \[wlsbl.Cedilla]
· — \[wlsbl.CenterDot]
? — \[wlsbl.CenterEllipsis]
Ά — \[wlsbl.Cent]
c — \[wlsbl.CHacek]
? — \[wlsbl.Checkmark]
? — \[wlsbl.Chi]
? — \[wlsbl.CircleDot]
? — \[wlsbl.CircleMinus]
? — \[wlsbl.CirclePlus]
? — \[wlsbl.CircleTimes]
? — \[wlsbl.ClockwiseContourIntegral]
” — \[wlsbl.CloseCurlyDoubleQuote]
’ — \[wlsbl.CloseCurlyQuote]
? — \[wlsbl.CloverLeaf]
? — \[wlsbl.ClubSuit]
: — \[wlsbl.Colon]
? — \[wlsbl.CommandKey]
= — \[wlsbl.Congruent]
? — \[wlsbl.Conjugate]
? — \[wlsbl.ConjugateTranspose]
? — \[wlsbl.ConstantC]
? — \[wlsbl.Continuation]
? — \[wlsbl.ContourIntegral]
? — \[wlsbl.ControlKey]
? — \[wlsbl.Coproduct]
© — \[wlsbl.Copyright]
? — \[wlsbl.CounterClockwiseContourIntegral]
? — \[wlsbl.Cross]
? — \[wlsbl.CupCap]
? — \[wlsbl.Cup]
? — \[wlsbl.CurlyCapitalUpsilon]
e — \[wlsbl.CurlyEpsilon]
? — \[wlsbl.CurlyKappa]
f — \[wlsbl.CurlyPhi]
? — \[wlsbl.CurlyPi]
? — \[wlsbl.CurlyRho]
? — \[wlsbl.CurlyTheta]
¤ — \[wlsbl.Currency]
† — \[wlsbl.Dagger]
? — \[wlsbl.Dalet]
– — \[wlsbl.Dash]
° — \[wlsbl.Degree]
? — \[wlsbl.DeleteKey]
? — \[wlsbl.Del]
d — \[wlsbl.Delta]
? — \[wlsbl.DescendingEllipsis]
d — \[wlsbl.DHacek]
? — \[wlsbl.Diameter]
? — \[wlsbl.Diamond]
? — \[wlsbl.DiamondSuit]
? — \[wlsbl.DifferenceDelta]
? — \[wlsbl.DifferentialD]
? — \[wlsbl.Digamma]
? — \[wlsbl.DiscreteRatio]
? — \[wlsbl.DiscreteShift]
— \[wlsbl.DiscretionaryHyphen]
— \[wlsbl.DiscretionaryLineSeparator]
— \[wlsbl.DiscretionaryParagraphSeparator]
χ — \[wlsbl.Divide]
? — \[wlsbl.DotEqual]
i — \[wlsbl.DotlessI]
? — \[wlsbl.DotlessJ]
? — \[wlsbl.DottedSquare]
? — \[wlsbl.DoubleContourIntegral]
‡ — \[wlsbl.DoubleDagger]
? — \[wlsbl.DoubledGamma]
? — \[wlsbl.DoubleDownArrow]
? — \[wlsbl.DoubledPi]
? — \[wlsbl.DoubleLeftArrow]
? — \[wlsbl.DoubleLeftRightArrow]
? — \[wlsbl.DoubleLeftTee]
? — \[wlsbl.DoubleLongLeftArrow]
? — \[wlsbl.DoubleLongLeftRightArrow]
? — \[wlsbl.DoubleLongRightArrow]
? — \[wlsbl.DoublePrime]
? — \[wlsbl.DoubleRightArrow]
? — \[wlsbl.DoubleRightTee]
? — \[wlsbl.DoubleStruckA]
? — \[wlsbl.DoubleStruckB]
? — \[wlsbl.DoubleStruckC]
? — \[wlsbl.DoubleStruckCapitalA]
? — \[wlsbl.DoubleStruckCapitalB]
? — \[wlsbl.DoubleStruckCapitalC]
? — \[wlsbl.DoubleStruckCapitalD]
? — \[wlsbl.DoubleStruckCapitalE]
? — \[wlsbl.DoubleStruckCapitalF]
? — \[wlsbl.DoubleStruckCapitalG]
? — \[wlsbl.DoubleStruckCapitalH]
? — \[wlsbl.DoubleStruckCapitalI]
? — \[wlsbl.DoubleStruckCapitalJ]
? — \[wlsbl.DoubleStruckCapitalK]
? — \[wlsbl.DoubleStruckCapitalL]
? — \[wlsbl.DoubleStruckCapitalM]
? — \[wlsbl.DoubleStruckCapitalN]
? — \[wlsbl.DoubleStruckCapitalO]
? — \[wlsbl.DoubleStruckCapitalP]
? — \[wlsbl.DoubleStruckCapitalQ]
? — \[wlsbl.DoubleStruckCapitalR]
? — \[wlsbl.DoubleStruckCapitalS]
? — \[wlsbl.DoubleStruckCapitalT]
? — \[wlsbl.DoubleStruckCapitalU]
? — \[wlsbl.DoubleStruckCapitalV]
? — \[wlsbl.DoubleStruckCapitalW]
? — \[wlsbl.DoubleStruckCapitalX]
? — \[wlsbl.DoubleStruckCapitalY]
? — \[wlsbl.DoubleStruckCapitalZ]
? — \[wlsbl.DoubleStruckD]
? — \[wlsbl.DoubleStruckE]
? — \[wlsbl.DoubleStruckEight]
? — \[wlsbl.DoubleStruckF]
? — \[wlsbl.DoubleStruckFive]
? — \[wlsbl.DoubleStruckFour]
? — \[wlsbl.DoubleStruckG]
? — \[wlsbl.DoubleStruckH]
? — \[wlsbl.DoubleStruckI]
? — \[wlsbl.DoubleStruckJ]
? — \[wlsbl.DoubleStruckK]
? — \[wlsbl.DoubleStruckL]
? — \[wlsbl.DoubleStruckM]
? — \[wlsbl.DoubleStruckN]
? — \[wlsbl.DoubleStruckNine]
? — \[wlsbl.DoubleStruckO]
? — \[wlsbl.DoubleStruckOne]
? — \[wlsbl.DoubleStruckP]
? — \[wlsbl.DoubleStruckQ]
? — \[wlsbl.DoubleStruckR]
? — \[wlsbl.DoubleStruckS]
? — \[wlsbl.DoubleStruckSeven]
? — \[wlsbl.DoubleStruckSix]
? — \[wlsbl.DoubleStruckT]
? — \[wlsbl.DoubleStruckThree]
? — \[wlsbl.DoubleStruckTwo]
? — \[wlsbl.DoubleStruckU]
? — \[wlsbl.DoubleStruckV]
? — \[wlsbl.DoubleStruckW]
? — \[wlsbl.DoubleStruckX]
? — \[wlsbl.DoubleStruckY]
? — \[wlsbl.DoubleStruckZ]
? — \[wlsbl.DoubleStruckZero]
? — \[wlsbl.DoubleUpArrow]
? — \[wlsbl.DoubleUpDownArrow]
? — \[wlsbl.DoubleVerticalBar]
? — \[wlsbl.DownArrowBar]
? — \[wlsbl.DownArrow]
? — \[wlsbl.DownArrowUpArrow]
? — \[wlsbl.DownBreve]
΅ — \[wlsbl.DownExclamation]
? — \[wlsbl.DownLeftRightVector]
? — \[wlsbl.DownLeftTeeVector]
? — \[wlsbl.DownLeftVector]
? — \[wlsbl.DownLeftVectorBar]
? — \[wlsbl.DownPointer]
Ώ — \[wlsbl.DownQuestion]
? — \[wlsbl.DownRightTeeVector]
? — \[wlsbl.DownRightVector]
? — \[wlsbl.DownRightVectorBar]
? — \[wlsbl.DownTeeArrow]
? — \[wlsbl.DownTee]
ι — \[wlsbl.EAcute]
? — \[wlsbl.Earth]
e — \[wlsbl.EBar]
e — \[wlsbl.ECup]
λ — \[wlsbl.EDoubleDot]
θ — \[wlsbl.EGrave]
e — \[wlsbl.EHacek]
κ — \[wlsbl.EHat]
? — \[wlsbl.EighthNote]
? — \[wlsbl.Element]
… — \[wlsbl.Ellipsis]
? — \[wlsbl.EmptyCircle]
? — \[wlsbl.EmptyDiamond]
? — \[wlsbl.EmptyDownTriangle]
? — \[wlsbl.EmptyRectangle]
Ψ — \[wlsbl.EmptySet]
? — \[wlsbl.EmptySmallCircle]
? — \[wlsbl.EmptySmallSquare]
? — \[wlsbl.EmptySquare]
? — \[wlsbl.EmptyUpTriangle]
? — \[wlsbl.EmptyVerySmallSquare]
? — \[wlsbl.EnterKey]
? — \[wlsbl.EntityEnd]
? — \[wlsbl.EntityStart]
? — \[wlsbl.Epsilon]
? — \[wlsbl.Equal]
? — \[wlsbl.EqualTilde]
? — \[wlsbl.Equilibrium]
? — \[wlsbl.Equivalent]
? — \[wlsbl.ErrorIndicator]
? — \[wlsbl.EscapeKey]
? — \[wlsbl.Eta]
π — \[wlsbl.Eth]
€ — \[wlsbl.Euro]
? — \[wlsbl.Exists]
? — \[wlsbl.ExponentialE]
? — \[wlsbl.FiLigature]
? — \[wlsbl.FilledCircle]
? — \[wlsbl.FilledDiamond]
? — \[wlsbl.FilledDownTriangle]
? — \[wlsbl.FilledLeftTriangle]
? — \[wlsbl.FilledRectangle]
? — \[wlsbl.FilledRightTriangle]
? — \[wlsbl.FilledSmallCircle]
¦ — \[wlsbl.FilledSmallSquare]
¦ — \[wlsbl.FilledSquare]
? — \[wlsbl.FilledUpTriangle]
? — \[wlsbl.FilledVerySmallSquare]
? — \[wlsbl.FinalSigma]
? — \[wlsbl.FirstPage]
? — \[wlsbl.FivePointedStar]
? — \[wlsbl.Flat]
? — \[wlsbl.FlLigature]
ƒ — \[wlsbl.Florin]
? — \[wlsbl.ForAll]
a — \[wlsbl.FormalA]
a — \[wlsbl.FormalAlpha]
b — \[wlsbl.FormalB]
ί — \[wlsbl.FormalBeta]
c — \[wlsbl.FormalC]
A — \[wlsbl.FormalCapitalA]
? — \[wlsbl.FormalCapitalAlpha]
B — \[wlsbl.FormalCapitalB]
? — \[wlsbl.FormalCapitalBeta]
C — \[wlsbl.FormalCapitalC]
? — \[wlsbl.FormalCapitalChi]
D — \[wlsbl.FormalCapitalD]
? — \[wlsbl.FormalCapitalDelta]
? — \[wlsbl.FormalCapitalDigamma]
E — \[wlsbl.FormalCapitalE]
? — \[wlsbl.FormalCapitalEpsilon]
? — \[wlsbl.FormalCapitalEta]
F — \[wlsbl.FormalCapitalF]
G — \[wlsbl.FormalCapitalG]
G — \[wlsbl.FormalCapitalGamma]
H — \[wlsbl.FormalCapitalH]
I — \[wlsbl.FormalCapitalI]
? — \[wlsbl.FormalCapitalIota]
J — \[wlsbl.FormalCapitalJ]
K — \[wlsbl.FormalCapitalK]
? — \[wlsbl.FormalCapitalKappa]
? — \[wlsbl.FormalCapitalKoppa]
L — \[wlsbl.FormalCapitalL]
? — \[wlsbl.FormalCapitalLambda]
M — \[wlsbl.FormalCapitalM]
? — \[wlsbl.FormalCapitalMu]
N — \[wlsbl.FormalCapitalN]
? — \[wlsbl.FormalCapitalNu]
O — \[wlsbl.FormalCapitalO]
O — \[wlsbl.FormalCapitalOmega]
? — \[wlsbl.FormalCapitalOmicron]
P — \[wlsbl.FormalCapitalP]
F — \[wlsbl.FormalCapitalPhi]
? — \[wlsbl.FormalCapitalPi]
? — \[wlsbl.FormalCapitalPsi]
Q — \[wlsbl.FormalCapitalQ]
R — \[wlsbl.FormalCapitalR]
? — \[wlsbl.FormalCapitalRho]
S — \[wlsbl.FormalCapitalS]
? — \[wlsbl.FormalCapitalSampi]
S — \[wlsbl.FormalCapitalSigma]
? — \[wlsbl.FormalCapitalStigma]
T — \[wlsbl.FormalCapitalT]
? — \[wlsbl.FormalCapitalTau]
T — \[wlsbl.FormalCapitalTheta]
U — \[wlsbl.FormalCapitalU]
? — \[wlsbl.FormalCapitalUpsilon]
V — \[wlsbl.FormalCapitalV]
W — \[wlsbl.FormalCapitalW]
X — \[wlsbl.FormalCapitalX]
? — \[wlsbl.FormalCapitalXi]
Y — \[wlsbl.FormalCapitalY]
Z — \[wlsbl.FormalCapitalZ]
? — \[wlsbl.FormalCapitalZeta]
? — \[wlsbl.FormalChi]
? — \[wlsbl.FormalCurlyCapitalUpsilon]
e — \[wlsbl.FormalCurlyEpsilon]
? — \[wlsbl.FormalCurlyKappa]
f — \[wlsbl.FormalCurlyPhi]
? — \[wlsbl.FormalCurlyPi]
? — \[wlsbl.FormalCurlyRho]
? — \[wlsbl.FormalCurlyTheta]
d — \[wlsbl.FormalD]
d — \[wlsbl.FormalDelta]
? — \[wlsbl.FormalDigamma]
e — \[wlsbl.FormalE]
? — \[wlsbl.FormalEpsilon]
? — \[wlsbl.FormalEta]
f — \[wlsbl.FormalF]
? — \[wlsbl.FormalFinalSigma]
g — \[wlsbl.FormalG]
? — \[wlsbl.FormalGamma]
h — \[wlsbl.FormalH]
i — \[wlsbl.FormalI]
? — \[wlsbl.FormalIota]
j — \[wlsbl.FormalJ]
k — \[wlsbl.FormalK]
? — \[wlsbl.FormalKappa]
? — \[wlsbl.FormalKoppa]
l — \[wlsbl.FormalL]
? — \[wlsbl.FormalLambda]
m — \[wlsbl.FormalM]
µ — \[wlsbl.FormalMu]
n — \[wlsbl.FormalN]
? — \[wlsbl.FormalNu]
o — \[wlsbl.FormalO]
? — \[wlsbl.FormalOmega]
? — \[wlsbl.FormalOmicron]
p — \[wlsbl.FormalP]
? — \[wlsbl.FormalPhi]
p — \[wlsbl.FormalPi]
? — \[wlsbl.FormalPsi]
q — \[wlsbl.FormalQ]
r — \[wlsbl.FormalR]
? — \[wlsbl.FormalRho]
s — \[wlsbl.FormalS]
? — \[wlsbl.FormalSampi]
s — \[wlsbl.FormalSigma]
? — \[wlsbl.FormalStigma]
t — \[wlsbl.FormalT]
t — \[wlsbl.FormalTau]
? — \[wlsbl.FormalTheta]
u — \[wlsbl.FormalU]
? — \[wlsbl.FormalUpsilon]
v — \[wlsbl.FormalV]
w — \[wlsbl.FormalW]
x — \[wlsbl.FormalX]
? — \[wlsbl.FormalXi]
y — \[wlsbl.FormalY]
z — \[wlsbl.FormalZ]
? — \[wlsbl.FormalZeta]
? — \[wlsbl.FreakedSmiley]
? — \[wlsbl.Function]
? — \[wlsbl.Gamma]
? — \[wlsbl.Gimel]
? — \[wlsbl.GothicA]
? — \[wlsbl.GothicB]
? — \[wlsbl.GothicC]
? — \[wlsbl.GothicCapitalA]
? — \[wlsbl.GothicCapitalB]
C — \[wlsbl.GothicCapitalC]
? — \[wlsbl.GothicCapitalD]
? — \[wlsbl.GothicCapitalE]
? — \[wlsbl.GothicCapitalF]
? — \[wlsbl.GothicCapitalG]
H — \[wlsbl.GothicCapitalH]
I — \[wlsbl.GothicCapitalI]
? — \[wlsbl.GothicCapitalJ]
? — \[wlsbl.GothicCapitalK]
? — \[wlsbl.GothicCapitalL]
? — \[wlsbl.GothicCapitalM]
? — \[wlsbl.GothicCapitalN]
? — \[wlsbl.GothicCapitalO]
? — \[wlsbl.GothicCapitalP]
? — \[wlsbl.GothicCapitalQ]
R — \[wlsbl.GothicCapitalR]
? — \[wlsbl.GothicCapitalS]
? — \[wlsbl.GothicCapitalT]
? — \[wlsbl.GothicCapitalU]
? — \[wlsbl.GothicCapitalV]
? — \[wlsbl.GothicCapitalW]
? — \[wlsbl.GothicCapitalX]
? — \[wlsbl.GothicCapitalY]
Z — \[wlsbl.GothicCapitalZ]
? — \[wlsbl.GothicD]
? — \[wlsbl.GothicE]
? — \[wlsbl.GothicEight]
? — \[wlsbl.GothicF]
? — \[wlsbl.GothicFive]
? — \[wlsbl.GothicFour]
? — \[wlsbl.GothicG]
? — \[wlsbl.GothicH]
? — \[wlsbl.GothicI]
? — \[wlsbl.GothicJ]
? — \[wlsbl.GothicK]
? — \[wlsbl.GothicL]
? — \[wlsbl.GothicM]
? — \[wlsbl.GothicN]
? — \[wlsbl.GothicNine]
? — \[wlsbl.GothicO]
? — \[wlsbl.GothicOne]
? — \[wlsbl.GothicP]
? — \[wlsbl.GothicQ]
? — \[wlsbl.GothicR]
? — \[wlsbl.GothicS]
? — \[wlsbl.GothicSeven]
? — \[wlsbl.GothicSix]
? — \[wlsbl.GothicT]
? — \[wlsbl.GothicThree]
? — \[wlsbl.GothicTwo]
? — \[wlsbl.GothicU]
? — \[wlsbl.GothicV]
? — \[wlsbl.GothicW]
? — \[wlsbl.GothicX]
? — \[wlsbl.GothicY]
? — \[wlsbl.GothicZ]
? — \[wlsbl.GothicZero]
? — \[wlsbl.GrayCircle]
¦ — \[wlsbl.GraySquare]
? — \[wlsbl.GreaterEqualLess]
= — \[wlsbl.GreaterEqual]
? — \[wlsbl.GreaterFullEqual]
» — \[wlsbl.GreaterGreater]
? — \[wlsbl.GreaterLess]
? — \[wlsbl.GreaterSlantEqual]
? — \[wlsbl.GreaterTilde]
? — \[wlsbl.Hacek]
? — \[wlsbl.HappySmiley]
? — \[wlsbl.HBar]
? — \[wlsbl.HeartSuit]
? — \[wlsbl.HermitianConjugate]
- — \[wlsbl.HorizontalLine]
? — \[wlsbl.HumpDownHump]
? — \[wlsbl.HumpEqual]
- — \[wlsbl.Hyphen]
ν — \[wlsbl.IAcute]
i — \[wlsbl.ICup]
ο — \[wlsbl.IDoubleDot]
μ — \[wlsbl.IGrave]
ξ — \[wlsbl.IHat]
? — \[wlsbl.ImaginaryI]
? — \[wlsbl.ImaginaryJ]
— \[wlsbl.ImplicitPlus]
? — \[wlsbl.Implies]
— \[wlsbl.IndentingNewLine]
8 — \[wlsbl.Infinity]
? — \[wlsbl.Integral]
? — \[wlsbl.Intersection]
— \[wlsbl.InvisibleApplication]
— \[wlsbl.InvisibleComma]
— \[wlsbl.InvisiblePostfixScriptBase]
— \[wlsbl.InvisiblePrefixScriptBase]
— \[wlsbl.InvisibleSpace]
— \[wlsbl.InvisibleTimes]
? — \[wlsbl.Iota]
? — \[wlsbl.Jupiter]
? — \[wlsbl.Kappa]
? — \[wlsbl.KernelIcon]
? — \[wlsbl.Koppa]
? — \[wlsbl.Lambda]
? — \[wlsbl.LastPage]
< — \[wlsbl.LeftAngleBracket]
? — \[wlsbl.LeftArrowBar]
? — \[wlsbl.LeftArrow]
? — \[wlsbl.LeftArrowRightArrow]
? — \[wlsbl.LeftAssociation]
? — \[wlsbl.LeftBracketingBar]
? — \[wlsbl.LeftCeiling]
[ — \[wlsbl.LeftDoubleBracket]
? — \[wlsbl.LeftDoubleBracketingBar]
? — \[wlsbl.LeftDownTeeVector]
? — \[wlsbl.LeftDownVectorBar]
? — \[wlsbl.LeftDownVector]
? — \[wlsbl.LeftFloor]
« — \[wlsbl.LeftGuillemet]
? — \[wlsbl.LeftModified]
? — \[wlsbl.LeftPointer]
? — \[wlsbl.LeftRightArrow]
? — \[wlsbl.LeftRightVector]
? — \[wlsbl.LeftSkeleton]
? — \[wlsbl.LeftTee]
? — \[wlsbl.LeftTeeArrow]
? — \[wlsbl.LeftTeeVector]
? — \[wlsbl.LeftTriangle]
? — \[wlsbl.LeftTriangleBar]
? — \[wlsbl.LeftTriangleEqual]
? — \[wlsbl.LeftUpDownVector]
? — \[wlsbl.LeftUpTeeVector]
? — \[wlsbl.LeftUpVector]
? — \[wlsbl.LeftUpVectorBar]
? — \[wlsbl.LeftVector]
? — \[wlsbl.LeftVectorBar]
= — \[wlsbl.LessEqual]
? — \[wlsbl.LessEqualGreater]
? — \[wlsbl.LessFullEqual]
? — \[wlsbl.LessGreater]
« — \[wlsbl.LessLess]
? — \[wlsbl.LessSlantEqual]
? — \[wlsbl.LessTilde]
— \[wlsbl.LetterSpace]
? — \[wlsbl.LightBulb]
— \[wlsbl.LineSeparator]
— — \[wlsbl.LongDash]
? — \[wlsbl.LongEqual]
? — \[wlsbl.LongLeftArrow]
? — \[wlsbl.LongLeftRightArrow]
? — \[wlsbl.LongRightArrow]
? — \[wlsbl.LowerLeftArrow]
? — \[wlsbl.LowerRightArrow]
l — \[wlsbl.LSlash]
? — \[wlsbl.Mars]
? — \[wlsbl.MathematicaIcon]
? — \[wlsbl.MeasuredAngle]
? — \[wlsbl.MediumSpace]
? — \[wlsbl.Mercury]
? — \[wlsbl.Mho]
µ — \[wlsbl.Micro]
± — \[wlsbl.MinusPlus]
µ — \[wlsbl.Mu]
? — \[wlsbl.Nand]
? — \[wlsbl.Natural]
— \[wlsbl.NegativeMediumSpace]
— \[wlsbl.NegativeThickSpace]
— \[wlsbl.NegativeThinSpace]
— \[wlsbl.NegativeVeryThinSpace]
? — \[wlsbl.Neptune]
? — \[wlsbl.NestedGreaterGreater]
? — \[wlsbl.NestedLessLess]
? — \[wlsbl.NeutralSmiley]
— \[wlsbl.NewLine]
n — \[wlsbl.NHacek]
— \[wlsbl.NoBreak]
— \[wlsbl.NonBreakingSpace]
? — \[wlsbl.Nor]
? — \[wlsbl.NotCongruent]
? — \[wlsbl.NotCupCap]
? — \[wlsbl.NotDoubleVerticalBar]
? — \[wlsbl.NotElement]
? — \[wlsbl.NotEqual]
? — \[wlsbl.NotEqualTilde]
? — \[wlsbl.NotExists]
? — \[wlsbl.NotGreater]
? — \[wlsbl.NotGreaterEqual]
? — \[wlsbl.NotGreaterFullEqual]
? — \[wlsbl.NotGreaterGreater]
? — \[wlsbl.NotGreaterLess]
? — \[wlsbl.NotGreaterSlantEqual]
? — \[wlsbl.NotGreaterTilde]
? — \[wlsbl.NotHumpDownHump]
? — \[wlsbl.NotHumpEqual]
? — \[wlsbl.NotLeftTriangle]
? — \[wlsbl.NotLeftTriangleBar]
? — \[wlsbl.NotLeftTriangleEqual]
? — \[wlsbl.NotLessEqual]
? — \[wlsbl.NotLessFullEqual]
? — \[wlsbl.NotLessGreater]
? — \[wlsbl.NotLess]
? — \[wlsbl.NotLessLess]
? — \[wlsbl.NotLessSlantEqual]
? — \[wlsbl.NotLessTilde]
¬ — \[wlsbl.Not]
? — \[wlsbl.NotNestedGreaterGreater]
? — \[wlsbl.NotNestedLessLess]
? — \[wlsbl.NotPrecedes]
? — \[wlsbl.NotPrecedesEqual]
? — \[wlsbl.NotPrecedesSlantEqual]
? — \[wlsbl.NotPrecedesTilde]
? — \[wlsbl.NotReverseElement]
? — \[wlsbl.NotRightTriangle]
? — \[wlsbl.NotRightTriangleBar]
? — \[wlsbl.NotRightTriangleEqual]
? — \[wlsbl.NotSquareSubset]
? — \[wlsbl.NotSquareSubsetEqual]
? — \[wlsbl.NotSquareSuperset]
? — \[wlsbl.NotSquareSupersetEqual]
? — \[wlsbl.NotSubset]
? — \[wlsbl.NotSubsetEqual]
? — \[wlsbl.NotSucceeds]
? — \[wlsbl.NotSucceedsEqual]
? — \[wlsbl.NotSucceedsSlantEqual]
? — \[wlsbl.NotSucceedsTilde]
? — \[wlsbl.NotSuperset]
? — \[wlsbl.NotSupersetEqual]
? — \[wlsbl.NotTilde]
? — \[wlsbl.NotTildeEqual]
? — \[wlsbl.NotTildeFullEqual]
? — \[wlsbl.NotTildeTilde]
? — \[wlsbl.NotVerticalBar]
ρ — \[wlsbl.NTilde]
? — \[wlsbl.Nu]
— \[wlsbl.Null]
? — \[wlsbl.NumberSign]
σ — \[wlsbl.OAcute]
o — \[wlsbl.ODoubleAcute]
φ — \[wlsbl.ODoubleDot]
� — \[wlsbl.OE]
ς — \[wlsbl.OGrave]
τ — \[wlsbl.OHat]
? — \[wlsbl.Omega]
? — \[wlsbl.Omicron]
“ — \[wlsbl.OpenCurlyDoubleQuote]
‘ — \[wlsbl.OpenCurlyQuote]
? — \[wlsbl.OptionKey]
? — \[wlsbl.Or]
ψ — \[wlsbl.OSlash]
υ — \[wlsbl.OTilde]
? — \[wlsbl.OverBrace]
? — \[wlsbl.OverBracket]
? — \[wlsbl.OverParenthesis]
¶ — \[wlsbl.Paragraph]
— \[wlsbl.ParagraphSeparator]
? — \[wlsbl.PartialD]
? — \[wlsbl.Phi]
p — \[wlsbl.Pi]
? — \[wlsbl.Piecewise]
? — \[wlsbl.Placeholder]
± — \[wlsbl.PlusMinus]
? — \[wlsbl.Pluto]
? — \[wlsbl.Precedes]
? — \[wlsbl.PrecedesEqual]
? — \[wlsbl.PrecedesSlantEqual]
? — \[wlsbl.PrecedesTilde]
' — \[wlsbl.Prime]
? — \[wlsbl.Product]
? — \[wlsbl.Proportion]
? — \[wlsbl.Proportional]
? — \[wlsbl.Psi]
? — \[wlsbl.QuarterNote]
& — \[wlsbl.RawAmpersand]
@ — \[wlsbl.RawAt]
` — \[wlsbl.RawBackquote]
\ — \[wlsbl.RawBackslash]
: — \[wlsbl.RawColon]
, — \[wlsbl.RawComma]
- — \[wlsbl.RawDash]
$ — \[wlsbl.RawDollar]
. — \[wlsbl.RawDot]
" — \[wlsbl.RawDoubleQuote]
= — \[wlsbl.RawEqual]
— \[wlsbl.RawEscape]
! — \[wlsbl.RawExclamation]
> — \[wlsbl.RawGreater]
{ — \[wlsbl.RawLeftBrace]
[ — \[wlsbl.RawLeftBracket]
( — \[wlsbl.RawLeftParenthesis]
< — \[wlsbl.RawLess]
# — \[wlsbl.RawNumberSign]
% — \[wlsbl.RawPercent]
+ — \[wlsbl.RawPlus]
? — \[wlsbl.RawQuestion]
' — \[wlsbl.RawQuote]
— \[wlsbl.RawReturn]
} — \[wlsbl.RawRightBrace]
] — \[wlsbl.RawRightBracket]
) — \[wlsbl.RawRightParenthesis]
; — \[wlsbl.RawSemicolon]
/ — \[wlsbl.RawSlash]
— \[wlsbl.RawSpace]
* — \[wlsbl.RawStar]
— \[wlsbl.RawTab]
~ — \[wlsbl.RawTilde]
_ — \[wlsbl.RawUnderscore]
| — \[wlsbl.RawVerticalBar]
^ — \[wlsbl.RawWedge]
® — \[wlsbl.RegisteredTrademark]
? — \[wlsbl.ReturnIndicator]
? — \[wlsbl.ReturnKey]
? — \[wlsbl.ReverseDoublePrime]
? — \[wlsbl.ReverseElement]
? — \[wlsbl.ReverseEquilibrium]
` — \[wlsbl.ReversePrime]
? — \[wlsbl.ReverseUpEquilibrium]
r — \[wlsbl.RHacek]
? — \[wlsbl.Rho]
? — \[wlsbl.RightAngle]
> — \[wlsbl.RightAngleBracket]
? — \[wlsbl.RightArrow]
? — \[wlsbl.RightArrowBar]
? — \[wlsbl.RightArrowLeftArrow]
? — \[wlsbl.RightAssociation]
? — \[wlsbl.RightBracketingBar]
? — \[wlsbl.RightCeiling]
] — \[wlsbl.RightDoubleBracket]
? — \[wlsbl.RightDoubleBracketingBar]
? — \[wlsbl.RightDownTeeVector]
? — \[wlsbl.RightDownVector]
? — \[wlsbl.RightDownVectorBar]
? — \[wlsbl.RightFloor]
» — \[wlsbl.RightGuillemet]
? — \[wlsbl.RightModified]
? — \[wlsbl.RightPointer]
? — \[wlsbl.RightSkeleton]
? — \[wlsbl.RightTee]
? — \[wlsbl.RightTeeArrow]
? — \[wlsbl.RightTeeVector]
? — \[wlsbl.RightTriangle]
? — \[wlsbl.RightTriangleBar]
? — \[wlsbl.RightTriangleEqual]
? — \[wlsbl.RightUpDownVector]
? — \[wlsbl.RightUpTeeVector]
? — \[wlsbl.RightUpVector]
? — \[wlsbl.RightUpVectorBar]
? — \[wlsbl.RightVector]
? — \[wlsbl.RightVectorBar]
? — \[wlsbl.RoundImplies]
? — \[wlsbl.RoundSpaceIndicator]
? — \[wlsbl.Rule]
? — \[wlsbl.RuleDelayed]
? — \[wlsbl.SadSmiley]
? — \[wlsbl.Sampi]
? — \[wlsbl.Saturn]
? — \[wlsbl.ScriptA]
? — \[wlsbl.ScriptB]
? — \[wlsbl.ScriptC]
? — \[wlsbl.ScriptCapitalA]
B — \[wlsbl.ScriptCapitalB]
? — \[wlsbl.ScriptCapitalC]
? — \[wlsbl.ScriptCapitalD]
E — \[wlsbl.ScriptCapitalE]
F — \[wlsbl.ScriptCapitalF]
? — \[wlsbl.ScriptCapitalG]
H — \[wlsbl.ScriptCapitalH]
I — \[wlsbl.ScriptCapitalI]
? — \[wlsbl.ScriptCapitalJ]
? — \[wlsbl.ScriptCapitalK]
L — \[wlsbl.ScriptCapitalL]
M — \[wlsbl.ScriptCapitalM]
? — \[wlsbl.ScriptCapitalN]
? — \[wlsbl.ScriptCapitalO]
? — \[wlsbl.ScriptCapitalP]
? — \[wlsbl.ScriptCapitalQ]
R — \[wlsbl.ScriptCapitalR]
? — \[wlsbl.ScriptCapitalS]
? — \[wlsbl.ScriptCapitalT]
? — \[wlsbl.ScriptCapitalU]
? — \[wlsbl.ScriptCapitalV]
? — \[wlsbl.ScriptCapitalW]
? — \[wlsbl.ScriptCapitalX]
? — \[wlsbl.ScriptCapitalY]
? — \[wlsbl.ScriptCapitalZ]
? — \[wlsbl.ScriptD]
? — \[wlsbl.ScriptDotlessI]
? — \[wlsbl.ScriptDotlessJ]
e — \[wlsbl.ScriptE]
? — \[wlsbl.ScriptEight]
? — \[wlsbl.ScriptF]
? — \[wlsbl.ScriptFive]
? — \[wlsbl.ScriptFour]
g — \[wlsbl.ScriptG]
? — \[wlsbl.ScriptH]
? — \[wlsbl.ScriptI]
? — \[wlsbl.ScriptJ]
? — \[wlsbl.ScriptK]
l — \[wlsbl.ScriptL]
? — \[wlsbl.ScriptM]
? — \[wlsbl.ScriptN]
? — \[wlsbl.ScriptNine]
o — \[wlsbl.ScriptO]
? — \[wlsbl.ScriptOne]
? — \[wlsbl.ScriptP]
? — \[wlsbl.ScriptQ]
? — \[wlsbl.ScriptR]
? — \[wlsbl.ScriptS]
? — \[wlsbl.ScriptSeven]
? — \[wlsbl.ScriptSix]
? — \[wlsbl.ScriptT]
? — \[wlsbl.ScriptThree]
? — \[wlsbl.ScriptTwo]
? — \[wlsbl.ScriptU]
? — \[wlsbl.ScriptV]
? — \[wlsbl.ScriptW]
? — \[wlsbl.ScriptX]
? — \[wlsbl.ScriptY]
? — \[wlsbl.ScriptZ], Unicode: F6CB. Alias: EscsczEsc.
? — \[wlsbl.ScriptZero]
§ — \[wlsbl.Section]
? — \[wlsbl.SelectionPlaceholder]
� — \[wlsbl.SHacek]
? — \[wlsbl.Sharp]
? — \[wlsbl.ShortLeftArrow]
? — \[wlsbl.ShortRightArrow]
s — \[wlsbl.Sigma]
? — \[wlsbl.SixPointedStar]
? — \[wlsbl.SkeletonIndicator]
° — \[wlsbl.SmallCircle]
? — \[wlsbl.SpaceIndicator]
? — \[wlsbl.SpaceKey]
? — \[wlsbl.SpadeSuit]
? — \[wlsbl.SpanFromAbove]
? — \[wlsbl.SpanFromBoth]
? — \[wlsbl.SpanFromLeft]
? — \[wlsbl.SphericalAngle]
v — \[wlsbl.Sqrt]
? — \[wlsbl.Square]
? — \[wlsbl.SquareIntersection]
? — \[wlsbl.SquareSubset]
? — \[wlsbl.SquareSubsetEqual]
? — \[wlsbl.SquareSuperset]
? — \[wlsbl.SquareSupersetEqual]
? — \[wlsbl.SquareUnion]
? — \[wlsbl.Star]
£ — \[wlsbl.Sterling]
? — \[wlsbl.Stigma]
? — \[wlsbl.Subset]
? — \[wlsbl.SubsetEqual]
? — \[wlsbl.Succeeds]
? — \[wlsbl.SucceedsEqual]
? — \[wlsbl.SucceedsSlantEqual]
? — \[wlsbl.SucceedsTilde]
? — \[wlsbl.SuchThat]
? — \[wlsbl.Sum]
? — \[wlsbl.Superset]
? — \[wlsbl.SupersetEqual]
? — \[wlsbl.SystemEnterKey]
ί — \[wlsbl.SZ]
? — \[wlsbl.TabKey]
t — \[wlsbl.Tau]
t — \[wlsbl.THacek]
? — \[wlsbl.Therefore]
? — \[wlsbl.Theta]
— \[wlsbl.ThickSpace]
— \[wlsbl.ThinSpace]
ώ — \[wlsbl.Thorn]
~ — \[wlsbl.Tilde]
? — \[wlsbl.TildeEqual]
? — \[wlsbl.TildeFullEqual]
� — \[wlsbl.TildeTilde]
Χ — \[wlsbl.Times]
™ — \[wlsbl.Trademark]
? — \[wlsbl.Transpose]
ϊ — \[wlsbl.UAcute]
u — \[wlsbl.UDoubleAcute]
ό — \[wlsbl.UDoubleDot]
ω — \[wlsbl.UGrave]
ϋ — \[wlsbl.UHat]
? — \[wlsbl.UnderBrace]
? — \[wlsbl.UnderBracket]
? — \[wlsbl.UnderParenthesis]
? — \[wlsbl.Union]
? — \[wlsbl.UnionPlus]
? — \[wlsbl.UpArrow]
? — \[wlsbl.UpArrowBar]
? — \[wlsbl.UpArrowDownArrow]
? — \[wlsbl.UpDownArrow]
? — \[wlsbl.UpEquilibrium]
? — \[wlsbl.UpperLeftArrow]
? — \[wlsbl.UpperRightArrow]
? — \[wlsbl.UpPointer]
? — \[wlsbl.Upsilon]
? — \[wlsbl.UpTee]
? — \[wlsbl.UpTeeArrow]
? — \[wlsbl.Uranus]
u — \[wlsbl.URing]
? — \[wlsbl.Vee]
? — \[wlsbl.Venus]
? — \[wlsbl.VerticalBar]
? — \[wlsbl.VerticalEllipsis]
¦ — \[wlsbl.VerticalLine]
? — \[wlsbl.VerticalSeparator]
? — \[wlsbl.VerticalTilde]
? — \[wlsbl.VeryThinSpace]
? — \[wlsbl.WarningSign]
? — \[wlsbl.WatchIcon]
? — \[wlsbl.Wedge]
P — \[wlsbl.WeierstrassP]
? — \[wlsbl.WhiteBishop]
? — \[wlsbl.WhiteKing]
? — \[wlsbl.WhiteKnight]
? — \[wlsbl.WhitePawn]
? — \[wlsbl.WhiteQueen]
? — \[wlsbl.WhiteRook]
? — \[wlsbl.Wolf]
? — \[wlsbl.WolframLanguageLogo]
? — \[wlsbl.WolframLanguageLogoCircle]
? — \[wlsbl.Xi]
? — \[wlsbl.Xnor]
? — \[wlsbl.Xor]
ύ — \[wlsbl.YAcute]
� — \[wlsbl.YDoubleDot]
¥ — \[wlsbl.Yen]
? — \[wlsbl.Zeta]
� — \[wlsbl.ZHacek]
[http://reference.wolfram.com/language/guide/ListingOfNamedCharacters.html]

wlchr.SPACE

name::
* McsEngl.wlchr.SPACE@cptIt,

Spacing Characters
¦ Ordinary keyboard space (\[RawSpace])
¦ \[VeryThinSpace], \[ThinSpace], …, \[ThickSpace]
¦ \[NegativeVeryThinSpace], \[NegativeThinSpace], …, \[NegativeThickSpace]
¦ (\[SpaceIndicator])
Spacing characters equivalent to an ordinary keyboard space.
[http://reference.wolfram.com/language/tutorial/OperatorInputForms.html]

wlchr.SPECIAL

name::
* McsEngl.wlchr.SPECIAL@cptIt,

_DESCRIPTION:
Special Characters
The Wolfram Language not only has systemwide support for arbitrary Unicode characters, but also includes nearly a thousand carefully designed characters for mathematical notation and technical presentation—all fully integrated into
[http://reference.wolfram.com/language/guide/SpecialCharacters.html]

lagWlfm'font

name::
* McsEngl.lagWlfm'font@cptIt,

_DESCRIPTION:
Font Matching
The special fonts provided with the Wolfram System include all the characters given in this listing. Some of these characters also appear in certain ordinary text fonts.

When rendering text in a particular font, the Wolfram System notebook front end will use all the characters available in that font. It will use the special Wolfram System fonts only for other characters.

A choice is made between Times-like, Helvetica-like (sans serif) and Courier-like (monospaced) variants to achieve the best matching with the ordinary text font in use.
[http://reference.wolfram.com/language/tutorial/Introduction-ListingOfNamedCharacters.html]

lagWlfm'function.string

name::
* McsEngl.lagWlfm'function.string@cptIt,

_FUNCTION.WL:
* RegularExpression#ql:wls.regularexpression#

lagWlfm'computation.WEATHER-DATA

name::
* McsEngl.lagWlfm'computation.WEATHER-DATA@cptIt,

_DESCRIPTION:
Weather Data
The Wolfram Language has direct access to a worldwide feed of real-time weather data, together with complete historical data, stretching back more than a century in many locations. Within the Wolfram Language, weather data immediately becomes fully computable, using symbolic representations for measured quantities, geo positions, dates, time series, etc.
[http://reference.wolfram.com/language/guide/WeatherData.html]

lagWlfm'computation.AUDIO

name::
* McsEngl.lagWlfm'computation.AUDIO@cptIt,
* McsEngl.lagWlfm'sound-computation@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/GraphicsAndSoundOverview.html,

lagWlfm'computation.COMPUTER-DATA

name::
* McsEngl.lagWlfm'computation.COMPUTER-DATA@cptIt,

_DESCRIPTION:
The Wolfram Language supports many formats, with many subformats, variants, and options.
[http://reference.wolfram.com/language/guide/ListingOfAllFormats.html]
===
Computation with Structured Datasets
The symbolic character of the Wolfram Language allows it to support an unprecedentedly flexible and general approach to structured datasets. Unifying both relational (SQL-like) and hierarchical (no-SQL) approaches, the Wolfram Language incorporates a new kind of uniquely powerful data query language—with seamless scaling from direct in-memory computation to computations backed by external files or databases.
[http://reference.wolfram.com/language/guide/ComputationWithStructuredDatasets.html]

_ADDRESS.WPG:
* http://reference.wolfram.com/language/guide/ImportingAndExporting.html,
* http://reference.wolfram.com/language/guide/ListingOfAllFormats.html,
* http://reference.wolfram.com/language/guide/ComputationWithStructuredDatasets.html,
* http://reference.wolfram.com/language/guide/BinaryData.html,

lagWlfm'MathML-computation

name::
* McsEngl.lagWlfm'MathML-computation@cptIt,

_FUNCTION:
* MathMLForm#ql:wls.mathmlform#

lagWlfm'TeX-computation;

name::
* McsEngl.lagWlfm'TeX-computation;@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/GeneratingAndImportingTeX.html,
* http://reference.wolfram.com/language/howto/GenerateTeXWithTheWolframLanguage.html,

_FUNCTION:
* TeXForm#ql:wls.texform#

lagWlfm'XML-computation

name::
* McsEngl.lagWlfm'XML-computation@cptIt,

_DESCRIPTION:
As the world's best-developed tree-oriented symbolic language, the Wolfram Language is uniquely suited to working with XML. Not only can the Wolfram Language generate XML from scratch, it can also import any XML with any DTD, transform and analyze it using any of the Wolfram Language's powerful symbolic capabilities, then export it as arbitrary XML.
[http://reference.wolfram.com/language/guide/XMLImportAndExport.html]

lagWlfm'computation.FILE

name::
* McsEngl.lagWlfm'computation.FILE@cptIt,
* McsEngl.Wlfmfile@cptIt,
* McsEngl.lagWlfm'file-computation@cptIt,
* McsEngl.lagWlfm'file-manipulation@cptIt,
* McsEngl.lagWlfm'file-operation@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/FilesAndStreams.html,
* http://reference.wolfram.com/language/tutorial/ManipulatingFilesAndDirectories.html,
* http://reference.wolfram.com/language/tutorial/NamingAndFindingFiles.html,
* http://reference.wolfram.com/language/tutorial/ReadingAndWritingWolframSystemFiles.html,
* http://reference.wolfram.com/language/tutorial/WolframSystemFileOrganization.html,
===
* http://reference.wolfram.com/language/guide/DirectoriesAndDirectoryOperations.html,
* http://reference.wolfram.com/language/guide/FileOperations.html,
* http://reference.wolfram.com/language/guide/LowLevelFileOperations.html,
* http://reference.wolfram.com/language/guide/OperationsOnFileNames.html,
===
* http://reference.wolfram.com/language/howto/InputAndConstructFileNamesInTheWolframLanguage.html,
* http://reference.wolfram.com/language/howto/InsertAFilePath.html,

_DESCRIPTION:
The Wolfram Language provides efficient system-independent direct access to all aspects of files of any size.
[http://reference.wolfram.com/language/guide/LowLevelFileOperations.html]
===
In addition to a rich set of standard file operations, the Wolfram Language's unified symbolic architecture makes it easy to apply algorithmic approaches and efficient higher-level programming to many file and system administration tasks.
[http://reference.wolfram.com/language/guide/FileOperations.html]
===
You can use files on your computer system to store definitions and results from the Wolfram Language. The most general approach is to store everything as plain text that is appropriate for input to the Wolfram Language. With this approach, a version of the Wolfram Language running on one computer system produces files that can be read by a version running on any computer system. In addition, such files can be manipulated by other standard programs, such as text editors.
[http://reference.wolfram.com/language/tutorial/ReadingAndWritingWolframSystemFiles.html]

wlfile'extension

name::
* McsEngl.wlfile'extension@cptIt,

_SPECIFIC:
file.m  Wolfram Language expression file in plain text format
file.nb  Wolfram System notebook file
file.mx  Wolfram Language definitions in DumpSave format
Typical names of Wolfram System files.
[http://reference.wolfram.com/language/tutorial/NamingAndFindingFiles.html]

wlfile'directory-computation

name::
* McsEngl.wlfile'directory-computation@cptIt,
* McsEngl.lagWlfm'directory-manipulation@cptIt,

* McsEngl.Wlfmdrr@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/NamingAndFindingFiles.html,

_CODE.WL:
Directory[]  your current working directory
SetDirectory["dir"]  set your current working directory
ResetDirectory[]  revert to your previous working directory
Manipulating directories.


ParentDirectory[]  the parent of your current working directory
$InitialDirectory  the initial directory when the Wolfram System was started
$HomeDirectory  your home directory, if this is defined
$BaseDirectory  the base directory for systemwide files to be loaded by the Wolfram System
$UserBaseDirectory  the base directory for user-specific files to be loaded by the Wolfram System
$InstallationDirectory  the top-level directory in which your Wolfram System installation resides
Special directories.

wlfile'function

name::
* McsEngl.wlfile'function@cptIt,

_FUNCTION.WL:
* FileNameSplit#ql:wls.filenamesplit#

wlfile.BINARY

name::
* McsEngl.wlfile.BINARY@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/BinaryFiles.html,

lagWlfm'computation.IMAGE

name::
* McsEngl.lagWlfm'computation.IMAGE@cptIt,
* McsEngl.lagWlfm'image-computation@cptIt,

_DESCRIPTION:
Symbolic Graphics Language
The Wolfram Language uses the powerful idea of building up all 2D and 3D graphics from symbolic primitives—which can be manipulated using all standard Wolfram Language functions and seamlessly integrated with text, math, or tables. Symbolic graphics can also be used as input—and can be made dynamic and interactive.
[http://reference.wolfram.com/language/guide/SymbolicGraphicsLanguage.html]

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/GraphicsAndSoundOverview.html,
* http://reference.wolfram.com/language/tutorial/TheStructureOfGraphics.html,
===
* http://reference.wolfram.com/language/guide/SymbolicGraphicsLanguage.html,
* http://reference.wolfram.com/language/guide/3DGraphicsOptions.html,
* http://reference.wolfram.com/language/guide/GraphicsCoordinates.html,
* http://reference.wolfram.com/language/guide/GraphicsDirectives.html,
* http://reference.wolfram.com/language/guide/GraphicsObjects.html,
* http://reference.wolfram.com/language/guide/GraphicsTransformations.html,
* http://reference.wolfram.com/language/guide/RasterImageFormats.html,
* http://reference.wolfram.com/language/guide/VectorGraphicsFormats.html,
* http://reference.wolfram.com/language/guide/CombiningGraphics.html,
* http://reference.wolfram.com/language/tutorial/RedrawingAndCombiningPlots.html,

lagWlfm'computation.NATURAL-LANGUAGE

name::
* McsEngl.lagWlfm'computation.NATURAL-LANGUAGE@cptIt,
* McsEngl.lagWlfm'natural-language-computation@cptIt,

_DESCRIPTION:
Linguistic Data
The Wolfram Language has not only convenient built-in multilingual dictionaries, but also built-in information on word meaning, structure, and usage, as well as the relationship between words. Together with the Wolfram Language's tightly integrated string manipulation functions, visualization, and data import and export, this provides a uniquely powerful platform for natural language computing.
[http://reference.wolfram.com/language/guide/LinguisticData.html]

_ADDRESS.WPG:
* http://reference.wolfram.com/language/guide/FreeFormAndExternalInput.html,
* http://reference.wolfram.com/language/guide/LinguisticData.html,

lagWlfm'computation.SCIENCE

name::
* McsEngl.lagWlfm'computation.SCIENCE@cptIt,
* McsEngl.lagWlfm'computation.SCIENCE-DATA@cptIt,
* McsEngl.lagWlfm'science-computation@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/guide/LifeSciencesAndMedicineDataAndComputation.html,
* http://reference.wolfram.com/language/guide/ScientificAndTechnicalData.html,

lagWlfm'computation.CHEMISTRY

name::
* McsEngl.lagWlfm'computation.CHEMISTRY@cptIt,
* McsEngl.lagWlfm'chemistry-computation@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/guide/PhysicsAndChemistryDataAndComputation.html,
* http://reference.wolfram.com/language/note/ElementDataSourceInformation.html,

lagWlfm'computation.EARTH-SCIENCE

name::
* McsEngl.lagWlfm'computation.EARTH-SCIENCE@cptIt,
* McsEngl.lagWlfm'earth-science-computation@cptIt,

_DESCRIPTION:
Earth Sciences: Data & Computation
The Wolfram Language provides seamless access to the curated and continuously updated Wolfram Knowledgebase used in Wolfram|Alpha—which includes a wide range of types of data for the earth sciences. Free-form linguistics provide a convenient mechanism for accessing all available data; more common categories also have specific associated Wolfram Language functions.
[http://reference.wolfram.com/language/guide/EarthSciencesDataAndComputation.html]

lagWlfm'computation.ECONOMICS

name::
* McsEngl.lagWlfm'computation.ECONOMICS@cptIt,
* McsEngl.lagWlfm'economics-computation@cptIt,

_DESCRIPTION:
The Wolfram Language has fully integrated support for many of the tools used in classical and modern finance. These capabilities include financial instrument valuation, advanced time value of money computations, and advanced financial charting with a library of technical indicators. The Wolfram Language also provides immediate access to a large array of financial and economic data, and contains financial import and export tools for working with external data.
[http://reference.wolfram.com/language/guide/Finance.html]

_ADDRESS.WPG:
* http://reference.wolfram.com/language/guide/Finance.html,
* http://reference.wolfram.com/language/guide/FinancialAndEconomicData.html,
* http://reference.wolfram.com/language/guide/FinancialVisualization.html,

_FUNCTION.WL:
* CurrencyConvert#ql:wls.currencyconvert#

lagWlfm'computation.MATH

name::
* McsEngl.lagWlfm'computation.MATH@cptIt,
* McsEngl.lagWlfm'math-computation@cptIt,

_DESCRIPTION:
The Wolfram Language provides direct access to a large volume of mathematical data, specially organized and created for the Wolfram Language. The data is available in a wide range of forms suitable for direct integration into Wolfram Language computations.
[http://reference.wolfram.com/language/guide/MathematicalData.html]

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/AlgebraicManipulationOverview.html,
* http://reference.wolfram.com/language/tutorial/ManipulatingEquationsAndInequalitiesOverview.html,
* http://reference.wolfram.com/language/tutorial/TheRepresentationOfDerivatives.html,
* http://reference.wolfram.com/language/tutorial/SymbolicCalculations.html,
===
* http://reference.wolfram.com/language/guide/BooleanComputation.html,
* http://reference.wolfram.com/language/guide/ComputationalGeometry.html,
* http://reference.wolfram.com/language/guide/DiscreteMathematics.html,
* http://reference.wolfram.com/language/guide/MatricesAndLinearAlgebra.html,
* http://reference.wolfram.com/language/guide/NumberTheory.html,
* http://reference.wolfram.com/language/guide/OperationsOnSets.html,
* http://reference.wolfram.com/language/guide/TheoremProving.html,

lagWlfm'Algebraic-Computation

name::
* McsEngl.lagWlfm'Algebraic-Computation@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/AlgebraicManipulationOverview.html,

lagWlfm'Boolean-Computation

name::
* McsEngl.lagWlfm'Boolean-Computation@cptIt,

_DESCRIPTION:
Boolean Computation
Building on its core symbolic architecture, the Wolfram Language gives immediate access to the latest in industrial-strength Boolean computation. With highly general symbolic representations of Boolean functions, with full support for "don't-care" arguments and values, the Wolfram Language provides state-of-the-art Boolean function transformation, minimization, elimination, satisfiability, and analysis, making possible verification, testing, and other applications involving hundreds to hundreds of thousands of variables.
[http://reference.wolfram.com/language/guide/BooleanComputation.html]

lagWlfm'Calculus-Computation

name::
* McsEngl.lagWlfm'Calculus-Computation@cptIt,

lagWlfm'Combinatorial-Optimization

name::
* McsEngl.lagWlfm'Combinatorial-Optimization@cptIt,

lagWlfm'Computational-Geometry

name::
* McsEngl.lagWlfm'Computational-Geometry@cptIt,

lagWlfm'Discrete-Mathematics

name::
* McsEngl.lagWlfm'Discrete-Mathematics@cptIt,

_DESCRIPTION:
Discrete Mathematics
The Wolfram Language has been used to make many important discoveries in discrete mathematics over the past two decades. Its integration of highly efficient and often original algorithms together with its high-level symbolic language has made it a unique environment for the exploration, development, and application of discrete mathematics.
[http://reference.wolfram.com/language/guide/DiscreteMathematics.html]

lagWlfm'Equation-Solving

name::
* McsEngl.lagWlfm'Equation-Solving@cptIt,

lagWlfm'Graph-Analysis

name::
* McsEngl.lagWlfm'Graph-Analysis@cptIt,

lagWlfm'Mathematical-Typesetting

name::
* McsEngl.lagWlfm'Mathematical-Typesetting@cptIt,

lagWlfm'Matrix-Computation

name::
* McsEngl.lagWlfm'Matrix-Computation@cptIt,

lagWlfm'Number-Theory

name::
* McsEngl.lagWlfm'Number-Theory@cptIt,

_DESCRIPTION:
Number Theory
Packing a large number of sophisticated algorithms—many recent and original—into a powerful collection of functions, the Wolfram Language draws on almost every major result in number theory. A key tool for two decades in the advance of the field, the Wolfram Language's symbolic architecture and web of highly efficient algorithms make it a unique platform for number theoretic experiment, discovery, and proof.
[http://reference.wolfram.com/language/guide/NumberTheory.html]

lagWlfm'computation.PHYSICS

name::
* McsEngl.lagWlfm'computation.PHYSICS@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/guide/PhysicsAndChemistryDataAndComputation.html,

lagWlfm'computation.TIME

name::
* McsEngl.lagWlfm'computation.TIME@cptIt,
* McsEngl.Wlfmtime@cptIt,
* McsEngl.lagWlfm'time-computation@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/guide/DateAndTime.html,
* http://reference.wolfram.com/language/guide/TimeMeasurementAndOptimization.html,
* http://reference.wolfram.com/language/guide/TimedEvaluations.html,

wltime.FUNCTION

name::
* McsEngl.wltime.FUNCTION@cptIt,

_FUNCTION.WL:
* AbsoluteTime#ql:wls.absolutetime#,
* EventSeries#ql:wls.eventseries#,
* DateList#ql:wls.datelist#,
* DateObject#ql:wls.dateobject#,
* DateString#ql:wls.datestring#,
* TimeObject#ql:wls.timeobject#,
* TimeZone,

wltime.TIME-SERIES

name::
* McsEngl.wltime.TIME-SERIES@cptIt,
* McsEngl.lagWlfm'computation.time-series@cptIt,
* McsEngl.lagWlfm'time-series-computation@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/guide/TimeSeries.html,

_DESCRIPTION:
Time Series
Time series are collections of values that are ordered in time. Preserving this ordering helps identify trends, detect seasonal patterns, and predict future values. Such series show up in many fields, from econometrics (unemployment rates, …), finance (stock prices, …), and demography (birth rates, …) to meteorology (rainfall, …), physiology (heart rates, …), and information technology (network traffic, …).

Time series are tightly integrated into the Wolfram Language, allowing for seamless workflows with absolute or calendar time, regular or irregular sampling, scalar or vector values, single or multiple series, and in the presence of missing data. The Wolfram Language offers an extensive collection of tools for processing time series. These tools range from descriptive statistics, filters, and visualization to forecasts, simulation, and highly automated modeling frameworks.
[http://reference.wolfram.com/language/guide/TimeSeries.html]

lagWlfm'computation.WEB

name::
* McsEngl.lagWlfm'computation.WEB@cptIt,
* McsEngl.lagWlfm'web-computation@cptIt,
* McsEngl.lagWlfm'web-operation@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/InternetConnectivity.html,
* http://reference.wolfram.com/language/tutorial/ExchangingMaterialWithTheWeb.html,
===
* http://reference.wolfram.com/language/guide/WebOperations.html,
===
* http://reference.wolfram.com/language/howto/CleanUpDataImportedFromAWebsite.html,

_DESCRIPTION:
The Wolfram Language provides many mechanisms for interfacing with the web—from exporting graphics and structured interactive documents to interacting with web APIs, importing web data, setting up cloud-based web services, and manipulating URLs and other web constructs.
[http://reference.wolfram.com/language/guide/WebOperations.html]

lagWlfm'Cloud-computation

name::
* McsEngl.lagWlfm'Cloud-computation@cptIt,
* McsEngl.lagWlfm'computation.cloud@cptIt,

* McsEngl.Wlfmcloud@cptIt,

_DESCRIPTION:
Cloud Functions & Deployment
The Wolfram Language is deeply integrated with the cloud, providing seamless persistent storage of code and data, cloud computation, and instant external deployment through active documents, APIs, forms, apps, etc.
[http://reference.wolfram.com/language/guide/CloudFunctionsAndDeployment.html]

_ADDRESS.WPG:
* http://reference.wolfram.com/language/guide/CloudFunctionsAndDeployment.html,
* http://reference.wolfram.com/language/guide/ManagingContentInTheCloud.html,

_DESCRIPTION:
Cloud Execution Metadata
Within the Wolfram Cloud, the Wolfram Language provides rich access to available information about the user or process that has initiated the execution of code, making it convenient to set up location- and user-aware services.
[http://reference.wolfram.com/language/guide/CloudExecutionMetadata.html]

wlcloud'function

name::
* McsEngl.wlcloud'function@cptIt,

_FUNCTION.WL:
* CloudDirectory,
* CloudFunction,
* CloudObject#ql:wls.cloudobject#

wlcloud'Wolfram-Programming-Cloud

name::
* McsEngl.wlcloud'Wolfram-Programming-Cloud@cptIt,
* McsEngl.Wolfram-Programming-Cloud@cptIt,
* McsEngl.Wlfmc@cptIt, {2014-09-18}
* McsEngl.wpc@cptIt,

_DESCRIPTION:
FREE_ACCESS:
Full access to the Wolfram Language
Instant API development
Wolfram Instant Form development
This free plan enables anyone to experience the Wolfram Language through Wolfram Programming Cloud. It has some restrictions:
30-day limit on deployments
Limits on how certain functions may be used
This will not hinder your ability to explore the language, test deployments, and develop your ideas.
[http://www.wolfram.com/programming-cloud/pricing/]
===
With Wolfram Programming Cloud, you can develop and deploy a useful application in minutes-and build a major production system in days or weeks. In this video, we'll introduce you to the web interface and deployment options and provide pointers to additional resources. - See more at: [http://www.wolfram.com/broadcast/video.php?c=362&v=1051#sthash.gSJ1qxTH.dpuf]

lagWlfm'HTML-computation

name::
* McsEngl.lagWlfm'HTML-computation@cptIt,

lagWlfm'internet-connectivity

name::
* McsEngl.lagWlfm'internet-connectivity@cptIt,

_DESCRIPTION:
The Wolfram System provides important functionality through accessing the internet. Most Wolfram Language functions that provide computable data operate by loading data over the internet. Some functions require real-time access to the internet; others update a local data repository by accessing the internet when required. The Wolfram Language also requires internet access when you explicitly use Import to read from a URL, or when you use web services. The Wolfram Language documentation system also supports automatic updating via the internet.

When you call a data function like FinancialData, the Wolfram Language gets the data it needs from the internet. When you click a link to a documentation notebook or call a data function like CountryData, the Wolfram Language knows whether a newer version of the information is available on a Wolfram Research Paclet Server, and if so it will download and install the update automatically. In the case of smaller paclets like documentation notebooks, this is often so fast that you will not even notice it happening.

The Wolfram System acts like a web browser when it accesses the internet, so if you can browse the web from your computer, you should be able to use the Wolfram System's internet connectivity features, although in some cases additional configuration may be required.
[http://reference.wolfram.com/language/tutorial/InternetConnectivity.html]

lagWlfm'URL-computation

name::
* McsEngl.lagWlfm'URL-computation@cptIt,

lagWlfm'Wolfram-Alpha

name::
* McsEngl.lagWlfm'Wolfram-Alpha@cptIt,
* McsEngl.lagWlfm'WolframAlpha@cptIt,

* McsEngl.Wlfmwa@cptIt, {2014-09-28}

_DESCRIPTION:
Entity expressions can be created by using the Ctrl+Equal WolframAlpha interface.
===
of the Wolfram|Alpha computational knowledge engine,
[http://reference.wolfram.com/language/guide/WolframAlphaIntegration.html]

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/DataFormatsInWolframAlpha.html,
* http://reference.wolfram.com/language/guide/WolframAlphaIntegration.html,

_DESCRIPTION:
The Wolfram Language has integrated interactive and programmatic access to the full power of the Wolfram|Alpha computational knowledge engine, using it to allow free-form linguistic input of computations and programs, as well as extensive data and computation capabilities that rely on the Wolfram|Alpha knowledgebase and curated data.
[http://reference.wolfram.com/language/guide/WolframAlphaIntegration.html]

wlwa'computation

name::
* McsEngl.wlwa'computation@cptIt,

_SYMBOL:
* Databin#ql:wls.databin#,
* ExcludePods#ql:wls.excludepods#,
* IncludePods#ql:wls.includepods#,
* PodStates#ql:wls.podstates#,
* PodWidth#ql:wls.podwidth#

wlwa'data-drop

name::
* McsEngl.wlwa'data-drop@cptIt,
* McsEngl.lagWlfm'data-drop@cptIt,
* McsEngl.lagWlfm'datadrop@cptIt,

_DESCRIPTION:
The Wolfram Data Drop is a general repository for data that is incrementally added, typically from external sources, through APIs as well as web, email, and other interfaces.
[http://reference.wolfram.com/language/guide/UsingTheWolframDataDrop.html]

wlwa'knowledgebase

name::
* McsEngl.wlwa'knowledgebase@cptIt,
* McsEngl.lagWlfm'knowledgebase@cptIt,
* McsEngl.lagWlfm'wolfram-knowledgebase@cptIt,
* McsEngl.wolfram-knowledgebase@cptIt,

_DESCRIPTION:
The Wolfram Knowledgebase is the largest component of Wolfram|Alpha.
[http://www.wolfram.com/knowledgebase/]

_ADDRESS.WPG:
* http://reference.wolfram.com/language/guide/UsingTheWolframDataDrop.html,
* http://reference.wolfram.com/language/howto/UseCuratedData.html,

_DESCRIPTION:
An efficient load-on-demand mechanism makes hundreds of gigabytes of carefully curated and continually updated data immediately available inside the Wolfram Language for use in computations. This data, curated at Wolfram Research, can be accessed and processed in a coherent way.
[http://reference.wolfram.com/language/howto/UseCuratedData.html]
===
CommonName[entity] will look up the common name
- from the online Wolfram Knowledgebase or
- from the system cache.
[http://reference.wolfram.com/language/ref/CommonName.html]
===
WDF makes use of the Wolfram Language and the Wolfram Knowledgebase to provide a standardized computable description of real-world constructs and data.
[http://reference.wolfram.com/language/guide/WDFWolframDataFramework.html]
===
Build in as much knowledge as possible
Unlike other programming languages, the philosophy of the Wolfram Language is to build as much knowledge—about algorithms and about the world—into the language as possible.
By far the largest web of algorithms ever assembled
Includes 25+ years of state-of-the-art algorithm development in Mathematica
World's largest collection of computable knowledge
Continually curated data on thousands of domains, as used in Wolfram|Alpha
[http://www.wolfram.com/language/principles/]

wlwa'Wolfram-Data-Framework

name::
* McsEngl.wlwa'Wolfram-Data-Framework@cptIt,
* McsEngl.WDF@cptIt,
* McsEngl.lagWlfm'wolfram-data-framework@cptIt,
* McsEngl.lagWlfm'worldview@cptIt,

_DESCRIPTION:
WDF: Wolfram Data Framework
Have a broad built-in model of the world
Through its Wolfram|Alpha lineage, the Wolfram Language knows how to do not just computations about abstract data structures, but also ones that directly reference things in the real world.
Seamlessly handle units, dates, geolocations, etc.
Standard representation for millions of real-world entities
Extensible symbolic framework for representing real-world data
Continually updated knowledgebase battle-tested in Wolfram|Alpha
[http://www.wolfram.com/language/principles//]
===
wl is Knowledge Based
(Our own buzzword) As one of its core principles, the Wolfram Language has extensive knowledge—about algorithms and about the world—built in.
[http://www.wolfram.com/language/for-experts/]

lagWlfm'deployment

name::
* McsEngl.lagWlfm'deployment@cptIt,

lagWlfm'universal-deployment-system

name::
* McsEngl.lagWlfm'universal-deployment-system@cptIt,

_DESCRIPTION:
Made possible by Wolfram's unique technology stack, the Universal Deployment System (UDS) offers a dramatic change in the economics of software development by automating the process of deploying functionality across the diverse technologies of the modern computing marketplace.
Create your material once, then use the UDS to automatically deploy it—as a high-volume service, a polished end-user product, or a flexible software component—across cloud, desktop, server, mobile, and embedded systems.
[http://www.wolfram.com/universal-deployment-system/]

lagWlfm'human

name::
* McsEngl.lagWlfm'human@cptIt,

_SPECIFIC:
* Stephen_Wolfram#cptHuman294#

lagWlfm'notebook

name::
* McsEngl.lagWlfm'notebook@cptIt,
* McsEngl.lagWlfm'notebook-interface@cptIt,
* McsEngl.lagWlfm'standard-frontend-interface@cptIt,

* McsEngl.Wlfmnbk@cptIt,
* McsEngl.Wlfmnotebook@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/ManipulatingNotebooksOverview.html,
* http://reference.wolfram.com/language/tutorial/NotebooksAsWolframLanguageExpressions.html,
* http://reference.wolfram.com/language/tutorial/ManipulatingNotebooksFromTheKernel.html,
===
* http://reference.wolfram.com/language/guide/NotebookBasics.html,
* http://reference.wolfram.com/language/guide/LowLevelNotebookStructure.html,
* http://reference.wolfram.com/language/guide/LowLevelNotebookProgramming.html,

_DESCRIPTION:
The Wolfram Language's symbolic document paradigm makes it uniquely easy to create complex structured documents programmatically, including both graphical elements and dynamic interactivity.
[http://reference.wolfram.com/language/guide/DocumentGeneration.html]
===
Notebooks
Notebooks are represented as Wolfram Language expressions.
Notebook files contain additional cached outline information in the form of Wolfram Language comments. This information makes possible efficient random access.
Incremental saving of notebooks is done so as to minimize rewriting of data, moving data already written out whenever possible.
Platform-independent double-buffering is used by default to minimize flicker when window contents are updated.
Autoscrolling uses a control-theoretical mechanism to optimize smoothness and controllability.
All characters are represented internally and in files using Unicode values. Mapping tables for many encodings are included to support communication with system interfaces and third-party software that use other encodings.
When copying text to the clipboard, many technical characters and all private-space characters are encoded using their verbose long names instead of their Unicode values to improve readability by software that may not be able to properly render those characters. All alphabetical characters are encoded in Unicode regardless of the system's localized language.
Spell checking is done using algorithms and a 100,000-word English dictionary that includes standard English, technical terms, and words used by the Wolfram Language. Spelling correction is done using textual, phonetic, and keyboard distance metrics.
Hyphenation is done using the Liang hyphenation algorithm and the standard TeX patterns for English hyphenation.
[http://reference.wolfram.com/language/tutorial/SomeNotesOnInternalImplementation.html]
===
Low-Level Notebook Structure
Like everything else in the Wolfram Language, notebooks are ultimately symbolic expressions. When you edit notebooks—or apply high-level programmatic functions—the Wolfram Language automatically updates these expressions. But if you look at the lowest level—say by opening a notebook file as text—you will see the underlying expressions, in which formatting constructs are represented as a hierarchy of low-level symbolic "boxes".
[http://reference.wolfram.com/language/guide/LowLevelNotebookStructure.html]

Wlfmnotebook'cell

name::
* McsEngl.Wlfmnotebook'cell@cptIt,
* McsEngl.Wlfmcell@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/TheStructureOfCells.html,
* http://reference.wolfram.com/language/tutorial/CellsAsWolframLanguageExpressions.html,
* http://reference.wolfram.com/language/tutorial/OptionsForCells.html,

_DESCRIPTION:
Like other objects in the Wolfram Language, the cells in a notebook, and in fact the whole notebook itself, are all ultimately represented as Wolfram Language expressions. With the standard notebook front end, you can use the command Show Expression to see the text of the Wolfram Language expression that corresponds to any particular cell.
[http://reference.wolfram.com/language/tutorial/CellsAsWolframLanguageExpressions.html]

Wlfmnotebook'cell-style

name::
* McsEngl.Wlfmnotebook'cell-style@cptIt,

_DESCRIPTION:
"Title"    the title of the notebook
"Section"    a section heading
"Subsection"  a subsection heading
"Text"    ordinary text
"Input"    Wolfram Language input
"Output"    Wolfram Language output
Some typical cell styles defined in notebooks.
[http://reference.wolfram.com/language/tutorial/CellsAsWolframLanguageExpressions.html]

Wlfmnotebook'formating

name::
* McsEngl.Wlfmnotebook'formating@cptIt,

_DESCRIPTION:
* Wolfram Language notebooks include all the usual features of a top-quality word-processing system, plus many additional special capabilities. In all, there are over a thousand formatting and styling options, all accessible both from menus and at a programmatic level. Wolfram Language notebooks have an underlying symbolic structure that allows full markup, cascading stylesheets, and the ability to immediately restyle a document. Notebooks can be optimized not only for interactive use, but also for export to web and print media.
[http://reference.wolfram.com/language/guide/NotebookFormattingAndStyling.html]

Wlfmnotebook'option

name::
* McsEngl.Wlfmnotebook'option@cptIt,

_ADDRESS.WPG:
* http://reference.wolfram.com/language/tutorial/OptionsForNotebooks.html,

lagWlfm'security

name::
* McsEngl.lagWlfm'security@cptIt,

_DESCRIPTION:
The Wolfram Language provides users with access to their computer's file system (Files), interprocess communication (WSTP Wolfram Language Functions), evaluation of data as code (Converting between Expressions and Strings), and the ability to run arbitrary external programs (Calling External Programs).
While these features enable Wolfram Language users to create powerful programs that can perform truly useful tasks, they bring with them the potential for misuse.
[http://reference.wolfram.com/language/tutorial/NotebookSecurity.html]

lagWlfm'resource

name::
* McsEngl.lagWlfm'resource@cptIt,

_ADDRESS.WPG:
* http://www.wolfram.com/language/elementary-introduction/other-resources.html,
* http://www.wolfram.com/language/elementary-introduction/preface.html,
* http://www.wolfram.com/language/?source=nav,
* http://reference.wolfram.com/language//
* http://reference.wolfram.com/language/guide/HowToTopics.html,
* http://www.wolfram.com/language/fast-introduction-for-programmers/interactive-usage//
* http://reference.wolfram.com/language/tutorial/TheFourKindsOfBracketingInTheWolframLanguage.html,
* http://reference.wolfram.com/language/tutorial/SomeGeneralNotationsAndConventions.html,
* http://reference.wolfram.com/language/guide/LayoutAndTables.html,

lagWlfm'documentation

name::
* McsEngl.lagWlfm'documentation@cptIt,

_DESCRIPTION:
Documentation is authored in Wolfram System notebooks. It is then processed by special Wolfram Language programs to create the final documentation notebooks and the online documentation website as well as other Wolfram Language content, such as the database of syntax coloring information and the usage messages.
[http://reference.wolfram.com/language/tutorial/SomeNotesOnInternalImplementation.html]

lagWlfm'user-interface

name::
* McsEngl.lagWlfm'user-interface@cptIt,

_DESCRIPTION:
The Wolfram System is usually used interactively, but it can also operate in a batch mode—say taking input from a file and writing output to a file. In such a case, a program cannot for example expect to get interactive input from the user.
[http://reference.wolfram.com/language/tutorial/GlobalSystemInformation.html]

lagWlfm'Animator

name::
* McsEngl.lagWlfm'Animator@cptIt,

_DESCRIPTION:
Animations are another important feature of the Wolfram Language, and Animator is the name of the control used to manage them. The job of an Animator control is to automatically push the value of a variable through a given domain.
[http://reference.wolfram.com/language/tutorial/IntroductionToControlObjects.html]

lagWlfm'control-object

name::
* McsEngl.lagWlfm'control-object@cptIt,

_DESCRIPTION:
The Wolfram Language includes many controls and structures related to controls as part of its core language. These control objects are supported in a completely seamless way throughout the Wolfram Language, and can be used anywhere an expression can be used.

These control objects also have a rich option environment, through which their behavior and display can be varied to suit your particular needs. In many cases, the display can be completely taken over by the user, allowing interfaces to be built to arbitrary graphic design specifications.

The function Manipulate is one such interface, which provides a simple and powerful environment for exploring Wolfram Language expressions. In fact, Manipulate was actually written entirely in the Wolfram Language, using control objects and other layout constructs. For many applications, it is perfectly sufficient to just use Manipulate rather than concerning yourself with the low-level control objects or with this tutorial. But if you have an application in mind that is not satisfied by an existing framework, there is no substitute for using the control objects directly.

Note that this tutorial will not discuss matters already covered in "Introduction to Dynamic", so it is suggested that you familiarize yourself with that tutorial first before proceeding with this one.
[http://reference.wolfram.com/language/tutorial/IntroductionToControlObjects.html]

lagWlfm'WSTP

name::
* McsEngl.lagWlfm'WSTP@cptIt,

_DESCRIPTION:
WSTP
The Wolfram Symbolic Transfer Protocol (WSTP) is a presentation-level protocol that can be layered on top of any transport medium, both message-based and stream-based.
WSTP encodes data in a compressed format when it determines that both ends of a link are on compatible computer systems.
WSTP can transmit out-of-band data such as interrupts as well as Wolfram Language expressions.
When possible WSTP is implemented using dynamically linked shared libraries.
[http://reference.wolfram.com/language/tutorial/SomeNotesOnInternalImplementation.html]

lagWlfm'EVOLUTION

name::
* McsEngl.lagWlfm'EVOLUTION@cptIt,

_DESCRIPTION:
The Wolfram Language is first and foremost an evolution of the symbolic language developed for Mathematica over the course of more than 25 years. But it's considerably more than that—adding the knowledge, knowledge representation and natural language abilities of Wolfram|Alpha, as well as a new symbolic deployment mechanism created with the Wolfram Cloud.
[http://www.wolfram.com/language/for-experts/]

lagWlfm'version10 {2014}

name::
* McsEngl.lagWlfm'version10 {2014}@cptIt,

Introduced in 2014 (10.0)

_ADDRESS.WPG:
* http://reference.wolfram.com/language/guide/NewIn100CoreLanguageAndStructure.html,

lagWlfm'version9 {2012}

name::
* McsEngl.lagWlfm'version9 {2012}@cptIt,

Introduced in 2012 (9.0)

_DESCRIPTION:
Mathematica 9 introduced some key features for interfacing Mathematica to other systems.
HTTP operations are supported with a range of functions for interacting with URLs and web sites, allowing synchronous and asynchronous interactions.
Extensions to Mathematica streams allow them to be backed by data sources such as documents residing on web sites.
A new toolkit for linking to the R statistical system enables users to integrate their R work with Mathematica.
[http://reference.wolfram.com/language/guide/NewIn90SystemsInterfacesAndDeployment.html]

lagWlfm'version8 {2010}

name::
* McsEngl.lagWlfm'version8 {2010}@cptIt,

Introduced in 2010 (8.0)

_DESCRIPTION:
Version 8.0 introduces new features to load functions from shared libraries, giving a new way to incorporate external code into Mathematica.
It also adds support for GPU computing with new links to the CUDA and OpenCL environments.
Version 8.0 also contains new tools for working with C code, including C code generation, symbolic representation of C code, and Mathematica functions to drive standard C compilers for the platforms on which Mathematica is available.
[http://reference.wolfram.com/language/guide/NewIn80SystemsInterfacesAndDeployment.html]

lagWlfm'version7 {2008}

name::
* McsEngl.lagWlfm'version7 {2008}@cptIt,

Introduced in 2008 (7.0)

_DESCRIPTION:
Version 7.0 introduces built-in zero-configuration parallel computing. Taking full advantage of Mathematica's unique symbolic architecture, Version 7.0 provides an unprecedentedly easy and powerful system for taking advantage of multicore and network parallel computing environments. Version 7.0 also introduces new operations on file names that enhance integration into the systems programming workflow.
[http://reference.wolfram.com/language/guide/NewIn70SystemsInterfacesAndDeployment.html]

lagWlfm'version6 {2007}

name::
* McsEngl.lagWlfm'version6 {2007}@cptIt,

Updated in 2007 (6.0)

_DESCRIPTION:
Mathematica 6.0 represented one of the world's most advanced software engineering endeavors. Building on Mathematica's symbolic programming foundations, a series of software engineering innovations made possible the new dynamic interactivity of Mathematica 6.0, and further extended Mathematica's highly efficient cross-platform communication capabilities.
[http://reference.wolfram.com/language/guide/NewIn60SystemInterfacesAndDeployment.html]
===
The source code of the Wolfram System has changed greatly since Version 1 was released.
The total number of lines of code in the kernel grew from 150,000 in Version 1 to 350,000 in Version 2, 600,000 in Version 3, 800,000 in Version 4, 1.5 million in Version 5, and 2.5 million in Version 6.
In addition, at every stage existing code has been revised—so that Version 6 has only a small percent of its code in common with Version 1.

Despite these changes in internal code, however, the user-level design of the Wolfram System has remained compatible from Version 1 on. Much functionality has been added, but programs created for the Wolfram System Version 1 will almost always run absolutely unchanged under Version 6.
[http://reference.wolfram.com/language/tutorial/TheSoftwareEngineeringOfTheWolframSystem.html]

box-generators:
Starting in Version 6, there is a higher-level interface to this box language which takes much of the pain out of using boxes directly, while still exposing all the same typesetting and layout power. Functions in this new layer are often referred to as box generators, but there is no need for you to be aware of the box language to use them effectively. In this tutorial, we will take a look at box generators that are relevant for displaying a wide variety of expressions, and we will show some ways in which they can be used to generate beautifully formatted output that goes beyond simple mathematical typesetting.
[http://reference.wolfram.com/language/tutorial/FormattedOutput.html]

warning-messages:
In Version 6, warning messages involving functions returning non-numeric values are Off by default.
[http://reference.wolfram.com/language/tutorial/SomeNotesOnInternalImplementation.html]

lagWlfm'version5 {2004}

name::
* McsEngl.lagWlfm'version5 {2004}@cptIt,

Introduced in 2004 (5.1)

lagWlfm'version4 {1999}

name::
* McsEngl.lagWlfm'version4 {1999}@cptIt,

Introduced in 1999 (4.0)

lagWlfm'version3 {1996}

name::
* McsEngl.lagWlfm'version3 {1996}@cptIt,

Introduced in 1996 (3.0)

box-language:
Ever since Version 3 of the Wolfram Language, there has been rich support for arbitrary mathematical typesetting and layout.
Underlying all that power was a so-called box language, which allowed notebooks themselves to be Wolfram Language expressions.
This approach turned out to be very powerful, and has formed the basis of many unique features in the Wolfram Language.
However, despite the power of the box language, in practice it was awkward enough for users to access directly that few did.
[http://reference.wolfram.com/language/tutorial/FormattedOutput.html]

lagWlfm'version2 {1991}

name::
* McsEngl.lagWlfm'version2 {1991}@cptIt,

Introduced in 1991 (2.0)

lagWlfm'version1 {1988}

name::
* McsEngl.lagWlfm'version1 {1988}@cptIt,

Introduced in 1988 (1.0)

Since the beginning of its development in 1986, the effort spent directly on creating the source code for the Wolfram System is about a thousand developer-years. In addition, a comparable or somewhat larger effort has been spent on testing and verification.
[http://reference.wolfram.com/language/tutorial/TheSoftwareEngineeringOfTheWolframSystem.html]

lcp.EVOLUTING#cptCore546.171#

name::
* McsEngl.lcp.EVOLUTING@cptIt,

2000s (2000-2009)

1990s (1990-1999)

{time.1990s}:
=== OBJECT_ORIENTED_PROGRAMMING
is the programming buzzword of the 90s.
[E.R. HARROLD, Java Tutorial, {1996-11-20}]

{time.1990s middle}:
=== INTERNET:
The rapid growth of the Internet in the mid-1990's created opportunities for new languages.
[http://en.wikipedia.org/wiki/Programming_language]

{time.1978}:
=== STATICALLY_TYPED_FUNCTIONAL_PGM:
In 1978, ML built a polymorphic type system on top of Lisp, pioneering statically typed functional programming languages.
[http://en.wikipedia.org/wiki/Programming_language]

{time.1990}:
=== C_PGM:
ANSI released the book "Programming Language C", a standard description of C.
"The history of programming language is a history of movement from what-to-do descriptions to what-I-want descriptions"
[Winston-et-al, 1990, 166#cptResource112]

{1980s (1980-1989)}

{time.1980s late}:
=== 3GL
began to take hold in the late 80's.
[E.R. HARROLD, Java Tutorial, {1996-11-20}]

{time.1987}:
=== PEARL:
Perl, originally a Unix scripting tool first released in 1987, became common in dynamic Web sites.
[http://en.wikipedia.org/wiki/Programming_language]

{time.1986}:
=== C++.
Bjarne Stroustrup, who developed it, wrote the first book for this object oriented language.

{1970's (1970-1979)}

{time.1970s middle}:
=== OBJECT_ORIENTED_PGM:
in the mid-1970s, Smalltalk followed [Simula] with the first "purely" object-oriented language.
[http://en.wikipedia.org/wiki/Programming_language]

{time.1972}:
=== LOGIC_PROGRAMMING_LANGUAGE:
Prolog, designed in 1972, was the first logic programming language.
[http://en.wikipedia.org/wiki/Programming_language]

{time.1971}:
=== C.
Brian Kernighan and Dennis Ritchie began developing a new programming language called C.

{1960s (1960-1969)}

{time.1960s}:
=== OBJECT_ORIENTED_PGM:
In the 1960s, Simula was the first language designed to support object-oriented programming;
[http://en.wikipedia.org/wiki/Programming_language]

{time.1968}:
=== GOTO:
Edsger Dijkstra, in a famous 1968 letter published in the Communications of the ACM, argued that GOTO statements should be eliminated from all "higher level" programming languages. [24]
24. Dijkstra, Edsger W. (March 1968). "Go To Statement Considered Harmful". Communications of the ACM 11 (3): 147–148. Retrieved on 2006-06-29.
[http://en.wikipedia.org/wiki/Programming_language]

{time.1965}:
=== BASIC.
Was designed at Dartmouth College by J.Kemeny and T.Kutz.

{time.1960}:
=== LISP.
Developed by J. McCarthy at the MIT. Popular in AI.

PROGRAM ON SCREEN:
Digital's first computer, called the PDP-1, introduced in Nov 1960, changed everything. It was the first commercial computer to allow a user to type a program on a keyboard, see the program displayed on a screen to make sure it was correct, run the program and receive a prompt answer.

{time.1960s early}:
=== COBOL.
It was developed for the large computers of the early 1960s.

{1950s (1950-1959)}

{time.1950s middle}:
=== ASSEMBLY:
In the early days of computing, at least until the mid-1950s, all programs were written in assembly language.

{time.1954-1957}:
=== FORTRAN.
Developed by an IBM team headed by J.W. Bacus.

* FORTRAN, developed by John Backus at IBM starting in 1954, was the first major programming language to remove the obstacles presented by machine code in the creation of complex programs.
[http://en.wikipedia.org/wiki/Imperative_programming]

{time.1952}:
=== first compiled language:
In the 1960s, high-level programming languages using a compiler were commonly called autocodes. Examples of autocodes are COBOL and Fortran.
The first autocode and its compiler were developed by Alick Glennie in 1952 for the Mark 1 computer at the University of Manchester and is considered by some to be the first compiled programming language.
[http://en.wikipedia.org/wiki/Imperative_programming]

lcp'version

name::
* McsEngl.lcp'version@cptIt,

FvMcs.language.computer.REPRESENTATION

name::
* McsEngl.conceptIt501,
* McsEngl.language.computer.REPRESENTATION@cptIt,
* McsEngl.FvMcs.language.computer.REPRESENTATION@cptIt,
* McsEngl.ccl@cptIt501,
* McsEngl.computer-format@cptIt501,
* McsEngl.computer-information-representation-language@cptIt501, {2013-12-24}
* McsEngl.computer-language.processingNo@cptIt501, {2013-12-24}
* McsEngl.computer-language.representation@cptIt501, {2013-12-24}
* McsEngl.content-computer-language@cptIt501, 2007-12-01
* McsEngl.content-language@cptIt501,
* McsEngl.data-computer-language@cptIt501,
* McsEngl.data-format@cptIt501, {2011-08-29}
* McsEngl.data-language@cptIt501,
* McsEngl.data-represenation@cptIt501, {2007-12-31}
* McsEngl.data-represenation-language@cptIt501, {2012-03-05}
* McsEngl.data-representation-method@cptIt501, {2008-01-21}
* McsEngl.dataTech-format@cptIt501, {2008-01-03}
* McsEngl.drl@cptIt501, {2012-03-05}
* McsEngl.drm@cptIt501, {2011-08-30}
* McsEngl.DRM-data-representation-method@cptIt,
* McsEngl.encoding-method-for-machine-readable-texts@cptIt501,
* McsEngl.format@cptIt501,
* McsEngl.format-for-data@cptIt501,
* McsEngl.infoTech-format@cptIt501,
* McsEngl.knowledge-representation-language@cptIt,
* McsEngl.kr language@cptIt,
* McsEngl.mdr@cptIt501, {2011-08-31}
* McsEngl.methodDataRepresentation@cptIt501, {2011-08-31}
* McsEngl.non-instruction-computer-language@cptIt501,
* McsEngl.computer-representation-method@cptIt458, {2008-01-21}
* McsEngl.software-representation-language@cptIt501, {2013-12-24}
* McsEngl.lagCmr@cptIt,
* McsEngl.lcr@cptIt501, {2014-02-05}
* McsEngl.lngRpn@cptIt501, {2014-01-31}
* lagCmr,
====== lagoGreek:
* McsElln.ΑΝΑΠΑΡΑΣΤΑΣΗ-ΓΝΩΣΗΣ@cptIt,
* McsElln.ΑΠΕΙΚΟΝΙΣΗ-ΓΝΩΣΗΣ@cptIt,
* McsElln.ΚΩΔΙΚΟΠΟΙΗΣΗ-ΓΝΩΣΗΣ@cptIt,
* McsElln.ΠΑΡΑΣΤΑΣΗ-ΓΝΩΣΗΣ@cptIt,

Its major deliverable is a set of Guidelines, which specify encoding methods for machine-readable texts,
[http://en.wikipedia.org/wiki/Text_Encoding_Initiative]

DEFINITION

Computer_Brainepto_Representation is a HUMAN_BRAINEPTO_REPRESENTATION_MENTOD that human use in computer to represent braineptos in order to manage them.
[KasNik, 2007-12-01]

KRM is any information storage method, except plain or markup text, so that programs can reasoning on it.
[KasNik, 2007-11-29]

Every KMS uses a KRL to represent the knowledge in a computer-language.
Eg ONTOLINGUA uses a KIF like krl to represent it in Lisp.
UNFORTUNATLY ALL kms implementations use the implementation-terminology (both krl and computer-language) to describe their conceptualization (knowledge) of their application-domains.
This forces the 'authors' to have knowledge of the krl (and some times and of the computer-language because kif for example has lisp notation). This means that the author must be a computer-specialist!! This is the reason why the Ontolingua system, even thought it is online, has not the acceptance the one it must has it.
The AUTHORS#ql:kms'author# in their conceptualization (in creating ontologies!) must use the terminology the scientists use. And the KMS must use this terminology in their commands.
[nikkas 2000jul22]

KRL is a 'computer language' (formalism) we use to represent 'human information' in order to manage (store, retrieve, edit, check for truth, ...) it with a computer.
[nikos, {1998-04-24}]

Knowledge representation is an issue that arises in both cognitive science and artificial intelligence. In cognitive science it is concerned with how people store and process information. In artificial intelligence (AI) the primary aim is to store knowledge so that programs can process it and achieve the verisimilitude of human intelligence. AI researchers have borrowed representation theories from cognitive science.
[http://en.wikipedia.org/wiki/Knowledge_representation]

Σ'ΟΛΕΣ ΤΙΣ ΠΕΡΙΠΤΩΣΕΙΣ ΒΡΙΣΚΕΤΑΙ ΚΑΠΟΙΟΣ ΤΡΟΠΟΣ ΑΝΤΙΣΤΟΙΧΙΑΣ "ΣΗΜΑΣΙΩΝ" ΜΕΣΩ "ΓΛΩΣΣΑΣ" "ΑΝΑΦΕΡΟΜΕΝΩΝ".
"ΣΗΜΑΣΙΑ" ΟΜΩΣ ΣΗΜΑΙΝΕΙ ΥΠΟΚΕΙΜΕΝΙΚΟ.

ΕΙΝΑΙ ΑΔΥΝΑΤΟ ΜΟΝΟ ΑΠΟ ΤΟ ΓΛΩΣΣΙΚΟ ΣΥΣΤΗΜΑ ΝΑ ΦΤΙΑΞΟΥΜΕ ΕΝΑ ΣΥΣΤΗΜΑ ΣΗΜΑΣΙΩΝ. Ο ΡΟΛΟΣ ΤΟΥ ΥΠΟΚΕΙΜΕΝΟΥ ΕΙΝΑΙ ΠΑΝΤΑ ΕΝΕΡΓΟΣ.
[ΝΙΚΟΣ, ΝΟΕΜ 1993]

The main effort of the research in knowledge representation is providing theories and systems for expressing structured knowledge and for accessing and reasoning with it in a principled way.
[http://mnemosyne.itc.it:1024/dl/] {1998-04-17}

Frame-based system offer the properties below:
descriptive semantics ease of implementation procedural attachements (methods, demons) different kinds of inheritance useful meta-models
[http://dpt-info.u-strasbg.fr/~w3eric/liia-gtln/projets/c3l.html] 1998feb03

lagCmr'GENERIC

_GENERIC:
* software-method#cptItsoft204.2#
* HUMAN_BRAINEPTO_REPRESENTATION#cptCore343#
* MAPUINO#cptCore475.179#
* COMPUTER_LANGUAGE#cptIt458#

lagCmr'ENVIEINO

name::
* McsEngl.lagCmr'ENVIEINO@cptIt,

lagCmr'DOMAIN

name::
* McsEngl.lagCmr'DOMAIN@cptIt,
* McsEngl.domain'in'drm@cptIt,

_SPECIFIC:
lagRpn'DATO#cptCore181.62#

lagCmr'DomainOut

name::
* McsEngl.lagCmr'DomainOut@cptIt,

_SPECIFIC:
* collectionKnowledge#cptItsoft497.1#

lagCmr'KRP (MAPUOLO=WHO)#cptIt497#

name::
* McsEngl.lagCmr'KRP (MAPUOLO=WHO)@cptIt,

_EXPLANATION:
Knowledge Management Systems that use this KR Language.

lagCmr'archetype

name::
* McsEngl.lagCmr'archetype@cptIt,

lagCmr'DomainIn

name::
* McsEngl.lagCmr'DomainIn@cptIt,

lagCmr'code

name::
* McsEngl.lagCmr'code@cptIt,

lagCmr'code'syntax

name::
* McsEngl.lagCmr'code'syntax@cptIt,
* McsEngl.lcr'syntax@cptIt,

As with many computer-oriented languages, the syntax of KIF is most easily described in three layers.
a) First, there are the basic characters#ql:krl'character# of the language.
b) These characters can be combined to form lexemes#ql:krl'lexeme#.
c) Finally, the lexemes of the language can be combined to form grammatically legal expressions#ql:krl'expression#.
Although this layering is not strictly esential to the specification of KIF, it simplifies the description of the syntax by dealing with white space at the lexeme level and eliminating that detail from the expression level.
[KIF SPEC, M.R. GENESERETH, 1995mar] 2000jul26

lagCmr'code.character

name::
* McsEngl.lagCmr'code.character@cptIt,
* McsEngl.lcr'character@cptIt,
* McsEngl.character.lcr@cptIt,

_DEFINITION:
The 'symbols' the language uses.
[hmnSngo.2000jul25]

lagCmr'code.DATA#cptIt242#

name::
* McsEngl.lagCmr'code.DATA@cptIt,
* McsEngl.lcr'data@cptIt,

lagCmr'code.LEXEME

name::
* McsEngl.lagCmr'code.LEXEME@cptIt,
* McsEngl.lcr'lexeme@cptIt,
* McsEngl.lexeme.lcr@cptIt,

_DEFINITION:
Lexemes are combinations of characters.
[hmnSngo.2000jul25]

lagCmr'code.ATOM (structureNo)

name::
* McsEngl.lagCmr'code.ATOM (structureNo)@cptIt,
* McsEngl.lcr'atom@cptIt,
* McsEngl.atom.lcr@cptIt,

_DESCRIPTION:
Atoms is non structured CODE that represents an archetype.
[hmnSngo.2014-02-06]

lagCmr'code.ATOM.NO (structure)

name::
* McsEngl.lagCmr'code.ATOM.NO (structure)@cptIt,
* McsEngl.lcr'expression@cptIt,
* McsEngl.expression.lcr@cptIt,

DEFINITION SYNTHETIC:
EXPRESSIONS are combinations of lexemes.
[hmnSngo.2000jul24]

lagCmr'DomainOut

name::
* McsEngl.lagCmr'DomainOut@cptIt,

lagCmr'Evaluation

name::
* McsEngl.lagCmr'Evaluation@cptIt,
* McsEngl.evaluation'of'krl@cptIt501,

I think that most krl immitate natural-language to represent knowledge. We need a radical approach to do it, as for example airplanes don't flap their wings.
[hmnSngo.{2000-09-14}]

The two most important criteria for a knowledge representation language are expressiveness and efficiency. Expressiveness is the most important criterion for entering knowledge. Efficiency is the most important criterion for making inferences over that knowledge.
Expressiveness in a representation language is the ability to express facts, rules, and relationships quickly, easily, and in a principled and factored way.
Efficiency in a representation language is the ability to conclude new facts from existing facts as quickly and easily as possible, with as much coverage as possible.
Most programming languages, for example C++, would have a high efficiency but a low expressiveness if used as a knowledge representation language. The efficiency would be high because there would be a tight coupling between the knowledge and the program inferencing over that knowledge, and the knowledge would be in an easily machine-readable form. The expressiveness would be low because all ontological engineers or knowledge enterers would have to be C++ programmers, and they would all be constrained to express only those assertions which can be programmed in C++.
Most natural languages, for example English, would have a high expressiveness but a low efficiency if used as a knowledge representation language. The expressiveness would be high because it is quick and easy to express facts, rules, and relationships in English. The efficiency would be low because it would be almost impossible to reason about English sentences to conclude new English sentences, since natural language is so complex, ambiguous, and computationally inefficient.
[http://www.cyc.com/doc/handbook/oe/06-el-hl-and-the-canonicalizer.html] 2007-09-22

lagCmr'Implementation#attEnv#

name::
* McsEngl.lagCmr'Implementation@cptIt,

Every "standard=language" must have some programs that "understand" them (=implement) them.
[KasNik, 2007-12-05]

lagCmr'Organization#cptIt968: attEnv#

name::
* McsEngl.lagCmr'Organization@cptIt,

lagCmr'ResourceInfHmn#cptResource843: attEnv#

name::
* McsEngl.lagCmr'ResourceInfHmn@cptIt,

INTERNET#ql::DEZIGNEPTERO.NFO:http.kr#:

lagCmr'Usage

name::
* McsEngl.lagCmr'Usage@cptIt,

Every cl is used for something.

_SPECIFIC:
* communication-between-computers (interchange)
* processing

lagCmr'doing#cptCore475#

name::
* McsEngl.lagCmr'doing@cptIt,

A krl must transform (map) 'knowledge' to 'FORMAL-KNOWLEDGE' using a language (rules).
People know also to transform knowledge (conceptual-systems/models) to 'INFORMATION' (statement-system).
Knowledge lies in our minds, but formal-knowledge can be stored in a machine and we can use rules to transform it to information.
Formal-Knowledge can/must be isomorphic to its referent (the reality). Formal-Information can NOT be.
[hmnSngo.2000jul30]

A krl must have the ability to transform 'information' to 'knowledge' and 'knowledge' to 'information' (Is this natural-language understanding?)

logic'krl transforsm 'information' to 'formal-information'.
[nikkas 2000jul25]

lagCmr'Goal#cptIt215#

name::
* McsEngl.lagCmr'Goal@cptIt,

The goal of krls is to find the most efficient way to model the real world.
[Nikos {1998-04-21}]

lagCmr'EVOLUTION#cptCore546.171#

name::
* McsEngl.lagCmr'EVOLUTION@cptIt,

{time.2005 RIF WG:
The RIF working group was chartered in late 2005. Among its goals was drawing in members of the commercial rules marketplace. The working group started with more than 50 members and two chairs drawn from industry, Christian de Saint-Marie of ILOG, and Chris Welty of IBM.
[http://en.wikipedia.org/wiki/Rule_Interchange_Format]

{time.2004-02-10 OWL
The World Wide Web Consortium created the "Web Ontology Working Group" which began work on 2001-11-01 chaired by James Hendler and Guus Schreiber. The first working drafts of the abstract syntax, reference and synopsis were published in July 2002. The OWL documents became a formal W3C recommendation on 2004-02-10 and the working group was disbanded on 2004-05-31.[4]
[http://en.wikipedia.org/wiki/Web_Ontology_Language]

{time.1984 CycL
In 1984, Doug Lenat started the Cyc Project with the objective of codify, in machine-usable form, millions of pieces of knowledge that comprise human common sense. CycL presented a proprietary knowledge representation schema that utilized first-order relationships.
[http://en.wikipedia.org/wiki/Knowledge_Science] 2007-12-02

{time.1970s Frame_Based_Representation:
In the field of Artificial Intelligence, a frame is a data structure introduced by Marvin Minsky in the 1970s that can be used for knowledge representation. Roughly similar to the object-oriented paradigm, they represent classes (called frames) with certain properties called attributes or slots. Slots may contain values, refer to other frames (relations) or contain methods. Frames are thus a machine-usable formalization of concepts or schemata.
[http://en.wikipedia.org/wiki/Frame_language]

CONCEPT-EVOLUTION

{1998-04-24}:
I made one-concept the "krl" and "kr technology" concepts.
[nikos, {1998-04-24}]

SPECIFIC

name::
* McsEngl.lcr.specific@cptIt,

_SPECIFIC: lcr.Alphabetically:
* binary-based
* CSV##
* human-readable-method
* humanNo-readable-method
* knowledge-representation-language#cptItsoft525.3#
* MATHEMATICAL_KNOWLEDGE_REPRESENTATION#cptCore89.1#
* standard--data-representation#cptItsoft139#
* TeX#cptItsoft440#
* text-based
* visual
* XML-based
* XML#cptIt439#

lagRpn.SPECIFIC_DIVISION.commoness (2011-08-30):
_SPECIFIC:
* standard--data-representation#cptItsoft139#
* non-standard--data-representation

_SPECIFIC:
KR Paradigms
There are several paradigms that have emerged from these perspectives. The paradigms may be simply surveyed and/or if time permits, one or more may be introduced in some detail. Here are the key paradigms:

Procedural Knowledge: Knowledge is encoded in functions/procedures.
For example: function Person(X) return boolean is if (X = ``Socrates'') or (X = ``Hillary'') then return true else return false;
function Mortal(X) return boolean is return person(X);

Networks: A compromise between declarative and procedural schemes. Knowledge is represented in a labeled, directed graph whose nodes represent concepts and entities, while its arcs represent relationships between these entities and concepts.

Frames: Much like a semantic network except each node represents prototypical concepts and/or situations. Each node has several property slots whose values may be specified or inherited by default.

Logic: A way of declaratively representing knowledge.
For example:
person(Socrates).
person(Hillary).
forall X [person(X) ---> mortal(X)]

Decision Trees: Concepts are organized in the form of a tree.

Statistical Knowledge: The use of certainty factors, Bayesian Networks, Dempster-Shafer Theory, Fuzzy Logics, ..., etc.

Rules: The use of Production Systems to encode condition-action rules (as in expert systems).

Parallel Distributed processing: The use of connectionist models.

Subsumption Architectures: Behaviors are encoded (represented) using layers of simple (numeric) finite-state machine elements.

Hybrid Schemes: Any representation formalism employing a combination of KR schemes.
[June 5, 1995. Deepak Kumar Bryn Mawr College dkumar@cc.brynmawr.edu ]

lagCmr.SPECIFIC-DIVISION.info

_CREATED: {2007-12-02}

name::
* McsEngl.lagCmr.SPECIFIC-DIVISION.info@cptIt,

_SPECIFIC:
* lingo-lcr#cptItsoft501.3#
* semasial-lcr#cptIt501.2#
* KOGNEPTO_DRM#cptIt501.1#

lagCmr.ARCHITECTURAL-DESCRIPTION

_CREATED: {2012-04-28}

NAME

name::
* McsEngl.lagCmr.ARCHITECTURAL-DESCRIPTION@cptIt,
* McsEngl.conceptIt276,
* McsEngl.computer-language.ARCHITECTURAL-DESCRIPTION@cptIt,
* McsEngl.ADL@cptIt276, {2012-04-28}
* McsEngl.architectural-description-language@cptIt276, {2012-04-28}

DEFINITION

An architectural description language (ADL) is used to describe a software architecture. An ADL may be a formal or semi-formal descriptive language, a graphics language, or include both. The advantage of using an ADL lies in the ability to rigorously specify an architecture so that it can be analyzed. An ADL may have associated with it a set of tools for doing useful analysis of architectures specified in the language. In recent years, there has been a considerable amount of research into developing ADLs.
[http://en.wikipedia.org/wiki/Architecture_description_language]

GENERIC

_GENERIC:
* computer_language#cptItsoft204#

lagCmr.Associative-Memory

name::
* McsEngl.lagCmr.Associative-Memory@cptIt,
* McsEngl.associative-memory@cptIt501i,

_DESCRIPTION:
Content-addressed or associative memory refers to a memory organization in which the memory is accessed by its content (as opposed to an explicit address). Thus, reference clues are "associated" with actual memory contents until a desirable match (or set of matches) is found. Production systems are obvious examples of systems that employ such a memory.
Associative memory stands as the most likely model for cognitive memories, as well. Humans retrieve information best when it can be linked to other related information. This linking is fast, direct and labyrinthian in the sense that the memory map is many-to-many and homomorphic.

Modular-Integrated Architecture (ICARUS) Problem Space Architecture (Soar)
[http://krusty.eecs.umich.edu/cogarch4/toc_defs/defs_props/defs_assoc.html] 1998feb16

lagCmr.CSS#cptIt576#

name::
* McsEngl.lagCmr.CSS@cptIt,

lagCmr.CSV

name::
* McsEngl.lagCmr.CSV@cptIt,
* McsEngl.conceptIt501.14,
* McsEngl.comma-separated-values@cptIt501.14,
* McsEngl.CSV@cptIt501.4,

_GENERIC:
* human-readable--drm#cptItsoft501.12#

_DESCRIPTION:
The comma-separated values (CSV) pseudo-file[1] format is a set of file formats used to store tabular data in which numbers and text are stored in plain-text form that can be easily written and read in a text editor. In fact, because the goal of reading and writing the format take precedence over consistency, there effectively is no “CSV standard”[2]: only the understanding that plain text is delimited by a symbol. Traditionally, lines in the text file represent rows in a table, and commas separate the columns.

Because the files are usually text files, differences in encodings produce different binary files that may not be compatible with each other. Additionally, different CSV-like implementations frequently arise as the format is modified to handle richer table content such as allowing a different field separator character (necessary if numeric fields are written with a comma instead of a decimal point) or extensions to allow numbers, the separator character, or newline characters in text fields.

Despite these differences CSV remains a simple file format that is widely supported. Among its most common uses is to move tabular data between programs that naturally operate on a more efficient or complete proprietary format. For example: a CSV file might be used to transfer information from a database program to a spreadsheet.

Example of a USA/UK CSV file (where the decimal separator is a period/full stop and the value separator is a comma):

Year,Make,Model,Length
1997,Ford,E350,2.34
2000,Mercury,Cougar,2.38
Example of a German and Dutch CSV/SSV file (where the decimal separator is a comma and the value separator is a semicolon):

Year;Make;Model;Length
1997;Ford;E350;2,34
2000;Mercury;Cougar;2,38
[http://en.wikipedia.org/wiki/Comma-separated_values]

csv'Standard

name::
* McsEngl.csv'Standard@cptIt,

_SPECIFIC:
* RFC 4180
[http://tools.ietf.org/html/rfc4180]

lagCmr.Entity_relationship_model

An entity-relationship model (ERM) is an abstract conceptual representation of structured data. Entity-relationship modeling is a relational schema database modeling method, used in software engineering to produce a type of conceptual data model (or semantic data model) of a system, often a relational database, and its requirements in a top-down fashion. Diagrams created using this process are called entity-relationship diagrams, or ER diagrams or ERDs for short. Originally proposed in 1976 by Peter Chen, many variants of the process have subsequently been devised.
[http://en.wikipedia.org/wiki/Entity-relationship] 2008-08-08

lagCmr.FILE_FORMAT

_CREATED: {2007-12-21}

name::
* McsEngl.conceptIt164,
* McsEngl.computer-file-format@cptIt164,
* McsEngl.computer-language.FILE-FORMAT,
* McsEngl.file-format@cptIt164,
* McsEngl.methodFile-format@cptIt164,
* McsEngl.method.file-format,

fileformat'DEFINITION

A file format is a particular way to encode information for storage in a computer file.
Since a disk drive, or indeed any computer storage, can store only bits, the computer must have some way of converting information to 0s and 1s and vice-versa. There are different kinds of formats for different kinds of information. Within any format type, e.g., word processor documents, there will typically be several different formats. Sometimes these formats compete with each other.
[http://en.wikipedia.org/wiki/File_format]

fileformat'GENERIC

_GENERIC:
* software-method#cptItsoft204.2#

fileformat'Conversion

name::
* McsEngl.fileformat'Conversion@cptIt,
* McsEngl.conversion-of-fileformat@cptIt164i,
* McsEngl.data-conversion@cptIt164i,
* McsEngl.data-transformation@cptIt164i,

_DEFINITION:
Data conversion is the conversion of one form of computer data to another--the changing of bits from being in one format to a different one, usually for the purpose of application interoperability or of capability of using new features. At the simplest level, data conversion can be exemplified by conversion of a text file from one character encoding to another. More complex conversions are those of office file formats, and conversions of image and audio file formats are an endeavor that is beyond the ken of ordinary computer users.
...
Open vs. secret specifications
Successful data conversion requires thorough knowledge of the workings of both source and target formats. In the case where the specification of a format is unknown, reverse engineering will be needed to carry out conversion. Reverse engineering can achieve close approximation of the original specifications, but errors and missing features can still result. The binary format of Microsoft Office documents (DOC, XLS, PPT and the rest) is undocumented, and anyone who seeks interoperability with those formats needs to reverse-engineer them. Such efforts have so far been fairly successful, so that most Microsoft Word files open without any ill-effect in the competing OpenOffice.org Writer, but the few that don't, usually very complex ones, utilizing more obscure features of the DOC file format, serve to show the limits of reverse-engineering.
[http://en.wikipedia.org/wiki/Data_conversion]

fileformat'Identification

name::
* McsEngl.fileformat'Identification@cptIt,

Since files are seen by programs as streams of data, a method is required to determine the format of a particular file within the filesystem—an example of metadata. Different operating systems have traditionally taken different approaches to this problem, with each approach having its own advantages and disadvantages.
Of course, most modern operating systems, and individual applications, need to use all of these approaches to process various files, at least to be able to read 'foreign' file formats, if not work with them completely.
[http://en.wikipedia.org/wiki/File_format]

fileformat'Specification

name::
* McsEngl.fileformat'Specification@cptIt,

Many file formats, including some of the most well-known file formats, have a published specification document (often with a reference implementation) that describes exactly how the data is to be encoded, and which can be used to determine whether or not a particular program treats a particular file format correctly. There are, however, two reasons why this is not always the case. First, some file format developers view their specification documents as trade secrets, and therefore do not release them to the public. Second, some file format developers never spend time writing a separate specification document; rather, the format is defined only implicitly, through the program(s) that manipulate data in the format.
[http://en.wikipedia.org/wiki/File_format]

SPECIFIC

name::
* McsEngl.fileformat.specific@cptIt,

A computer file format is a particular way to encode information for storage on a computer. Some computer file formats are open standards, or even open formats.
[http://en.wikipedia.org/wiki/Category:Computer_file_formats]

_SPECIFIC: fileformat.Alphabetically:
* archive-fileformat
* COMPRESSION

_SPECIFIC: fileformat.SPECIFIC_DIVISION.DATA_STORED:
* AUDIO_FILEFORMAT
* IMAGE_FILEFORMAT
* TEXT_FILEFORMAT

fileformat.AUDIO

name::
* McsEngl.fileformat.AUDIO@cptIt,
* McsEngl.audio-fileformat@cptIt164i,

_DEFINITION:
An audio file format is a container format for storing audio data on a computer system.
The general approach towards storing digital audio is to sample the audio voltage (which on playback, would correspond to a certain position of the membrane in a speaker) of the individual chanels with a certain resolution (the number of bits per sample) in regular intervals (forming the sample rate). This data can then be stored uncompressed or compressed to reduce the file size.
[http://en.wikipedia.org/wiki/Audio_file_format]

A file format specifies the structure of a sound file, including not only the format of the raw audio data in the file, but also other information that can be stored in the file. Sound files come in various standard varieties, such as WAVE (also known as WAV, and often associated with PCs), AIFF (often associated with Macintoshes), and AU (often associated with UNIX systems). The different types of sound file have different structures. For example, they might have a different arrangement of data in the file's "header." A header contains descriptive information that typically precedes the file's actual audio samples, although some file formats allow successive "chunks" of descriptive and audio data. The header includes a specification of the data format that was used for storing the audio in the sound file. Any of these types of sound file can contain various data formats (although usually there is only one data format within a given file), and the same data format can be used in files that have different file formats.
[jdk 140]

_SPECIFIC:
It is important to distinguish between a file format and a codec. A codec performs the encoding and decoding of the raw audio data while the data itself is stored in a file with a specific audio file format. Though most audio file formats support only one audio codec, a file format may support multiple codecs, as AVI does.
There are three major groups of audio file formats:
* Uncompressed audio formats, such as WAV, AIFF and AU;
* formats with lossless compression, such as FLAC, Monkey's Audio (filename extension APE), WavPack (filename extension WV), Shorten, TTA, Apple Lossless and lossless Windows Media Audio (WMA); and
* formats with lossy compression, such as MP3, Vorbis, lossy Windows Media Audio (WMA) and AAC.
[http://en.wikipedia.org/wiki/Audio_file_format]

AIFF, AU, AVI, GSM, MIDI, MP2, MP3, QT, RMF, WAV

fileformat.Container

name::
* McsEngl.fileformat.Container@cptIt,
* McsEngl.container-fileformat@cptIt164i,

A container format is a computer file format that can contain various types of data, compressed by means of standardized audio/video codecs. The container file is used to identify and interleave the different data types. Simpler container formats can contain different types of audio codecs, while more advanced container formats can support multiple audio and video streams, subtitles, chapter-information, and meta-data (tags) - along with the synchronization information needed to play back the various streams together.
[http://en.wikipedia.org/wiki/Container_formats]

fileformat.Image

name::
* McsEngl.fileformat.Image@cptIt,
* McsEngl.image-fileformat@cptIt164i,
* McsEngl.graphic-format@cptIt164i,

_DEFINITION:
Image file formats provide a standardized method of organizing and storing image data. This article deals with digital image formats used to store photographic and other image information. Image files are made up of either pixel or vector (geometric) data, which is rasterized to pixels in the display process, with a few exceptions in vector graphic display. The pixels that comprise an image are in the form of a grid of columns and rows. Each of the pixels in an image stores digital numbers representing brightness and color.
[http://en.wikipedia.org/wiki/Image_file_formats]

_SPECIFIC:
Raster formats
-JPEG
-TIFF
-RAW
-PNG
-GIF
-BMP
-PPM, PGM, PBM, PNM
Vector formats
-SVG
-Others

fileformat.RTF

name::
* McsEngl.fileformat.RTF@cptIt,
* McsEngl.rtf@cptIt164i,

RTF is an abbreviation for Rich Text Format, it is a file format defined by Microsoft as an adaption of the Document Content Architecture (DCA) format.
RTF and DCA formats are used for transferring text documents between applications, even those applications running on different platforms.
For example, a word processing document created with Microsoft Word could be converted to the RTF format and transferred to an Apple Macintosh system.
[SOURCE: PC-GLOSSARY 1993]

fileformat.PDF

name::
* McsEngl.fileformat.PDF@cptIt,
* McsEngl.PDF@cptIt,

_DESCRIPTION: The Portable Document Format (PDF) is the file format created by Adobe Systems in 1993 for document exchange. PDF is used for representing two-dimensional documents in a device-independent and display resolution-independent fixed-layout document format. Each PDF file encapsulates a complete description of a 2-D document (and, with Acrobat 3-D, embedded 3-D documents) that includes the text, fonts, images, and 2-D vector graphics that compose the document.
PDF is an open standard, and recently took a major step towards becoming ISO 32000. [1][2]
[http://en.wikipedia.org/wiki/PDF]

pdf'converting

name::
* McsEngl.pdf'converting@cptIt,

_ADDRESS.WPG:
* http://www.pdfonline.com/convert-pdf-to-html// per paragraph
* http://www.pdf.investintech.com/ per line.
* http://webdesign.about.com/od/pdf/tp/tools-for-converting-pdf-to-html.htm,
* http://www.pdftohtml.net// (wants email)
* http://www.okdosoft.com/okdo-pdf-to-all-converter-professional.htm,
* http://coolwanglu.github.io/pdf2htmlEX//
* http://www.intrapdf.com/convert_pdf_to_html.htm,
* http://www.somepdf.com/some-pdf-to-html-converter.html,
* http://en.wikipedia.org/wiki/Poppler_%28software%29,
* http://coolwanglu.github.io/pdf2htmlEX/doc/tb108wang.html,
* http://www.aspose.com/cloud/pdf-api.aspx?gclid=Cj0KEQjwt7KiBRD9lOePpe_BhrgBEiQAHaS_1-H8VOA9Henr44uSjKljCYyGD9QlodyBmNjeHF0BhvsaAjVs8P8HAQ,
* https://tomassetti.me/how-to-convert-a-pdf-to-excel/,

pdf'resource

name::
* McsEngl.pdf'resource@cptIt,

_ADDRESS.WPG:

fileformat.Proprietary-format

name::
* McsEngl.fileformat.Proprietary-format@cptIt,
* McsEngl.proprietary-format@cptIt458i,

A proprietary format is a file format which is covered by a patent or copyright. Typically such restrictions attempt to prevent Reverse engineering, though reverse engineering of file formats for the purposes of interoperability is generally believed to be legal by those who practise it. Legal positions differ according to each country's laws related to, among other thing, software patents.
The opposite of a proprietary format is an open format which does not place restrictions on end users and are often also human readable.
[http://en.wikipedia.org/wiki/Proprietary_format]

fileformat.ProprietaryNo

name::
* McsEngl.fileformat.ProprietaryNo@cptIt,
* McsEngl.non-proprietary-fileformat@cptIt164i,
* McsEngl.open-format@cptIt458i,

_DESCRIPTION:
An open format is a published specification for storing digital data, usually maintained by a non-proprietary standards organization, and free of legal restrictions on use. For example, an open format must be implementable by both proprietary and free/open source software, using the typical licenses used by each. In contrast to open formats, proprietary formats are controlled and defined by private interests. Open formats are a subset of open standards.
The primary goal of open formats is to guarantee long-term access to data without current or future uncertainty with regard to legal rights or technical specification. A common secondary goal of open formats is to enable competition, instead of allowing a vendor's control over a proprietary format to inhibit use of competing products. Governments have increasingly shown an interest in open format issues.
[http://en.wikipedia.org/wiki/Open_format]

fileformat.Video.Flash

name::
* McsEngl.fileformat.Video.Flash@cptIt,
* McsEngl.flash-video-fileformat@cptIt164i,

_DEFINITION:
Flash Video is the name of a file format used to deliver video over the Internet using Adobe Flash Player (formerly known as Macromedia Flash Player) version 6, 7, 8, or 9. Until version 9 update 2 of the Flash Player, Flash Video referred to a proprietary file format, having the extension FLV. The most recent public release of Flash Player supports H.264 video and HE-AAC audio. Flash Video content may also be embedded within SWF files. Notable users of the Flash Video format include YouTube, Google Video, Reuters.com, Yahoo! Video, MySpace, and many television news operations are also using Flash Video on their websites.
[http://en.wikipedia.org/wiki/FLV]

lagCmr.HTML#cptIt568#

name::
* McsEngl.lagCmr.HTML@cptIt,

lagCmr.Human-readable

name::
* McsEngl.lagCmr.Human-readable@cptIt,
* McsEngl.conceptIt501.12,
* McsEngl.character-based--data-representation-mehtod@cptIt501.12, {2011-08-31}
* McsEngl.human-readable--data-representation-mehtod@cptIt501.12, {2011-08-31}
* McsEngl.text-based--data-representation-mehtod@cptIt501.12, {2011-08-31}
* McsEngl.textual-representation-method@cptIt501.12, {2011-08-31}

_SPECIFIC:
* CSV#cptItsoft501.14#
* JSON#cptItsoft554.6#
* markup-representation#cptItsoft501.9#
* YAML#cptItsoft501.15#

lagCmr.HumanNo-readable

name::
* McsEngl.lagCmr.HumanNo-readable@cptIt,
* McsEngl.conceptIt501.13,
* McsEngl.binary--data-representation-mehtod@cptIt501.13, {2011-08-31}
* McsEngl.humanNo-readable--data-representation-mehtod@cptIt501.13, {2011-08-31}
* McsEngl.machine-readable--data-representation-mehtod@cptIt501.13, {2011-08-31}

lagCmr.iCalendar

_CREATED: {2007-12-05}

name::
* McsEngl.lagCmr.iCalendar@cptIt,
* McsEngl.icalendar'drm@cptIt501i,

_DEFINITION:
iCalendar is a standard (RFC 2445) for calendar data exchange. The standard is sometimes referred to as "iCal", which also is the name of the Apple, Inc. calendar program (see iCal) that provides one of the implementations of the standard.

iCalendar allows users to send meeting requests and tasks to other users through email. Recipients of the iCalendar email (with supported software) can respond to the sender easily or counter propose another meeting date/time.

It is implemented/supported by a large number of products. iCalendar data is typically exchanged using traditional email, but the standard is designed to be independent of the transport protocol. For example, it can also be shared and edited by using a WebDav server, or SyncML. Simple web servers (using just the HTTP protocol) are often used to distribute iCalendar data about an event and to publish busy times of an individual. Publishers can embed iCalendar data in web pages using hCalendar, a 1:1 microformat representation of iCalendar in semantic (X)HTML.
[http://en.wikipedia.org/wiki/ICalendar]

lagCmr.KNOWLEDGE

_CREATED: {2014-02-05} {2011-09-02} {2007-12-01}

name::
* McsEngl.lagCmr.KNOWLEDGE@cptIt,

NAME:
* McsEngl.conceptIt525.3,
* McsEngl.lagCnpt@cptIt,
* McsEngl.content_language-501.7@cptIt,
* McsEngl.encoding_method_for_machine_readable_texts-501@cptIt,
* McsEngl.lagKnlg.REPRESENTATION (processingNo)@cptIt,
* McsEngl.knowledge_representation_formalism@cptIt, 1998-04-24,
* McsEngl.knowledge_representation_mapuino@cptIt, 2007-08-08,
* McsEngl.knowledge_representation_language@cptIt,
* McsEngl.knowledge_representation_method@cptIt,
* McsEngl.knowledge_representation_paradigm@cptIt,
* McsEngl.krm-501.7@cptIt,
* McsEngl.knowledge_representation_formalism-501.7@cptIt,
* McsEngl.knowledge representation language@cptIt,
* McsEngl.knowledge_representation_method-501@cptIt,
* McsEngl.kr_language@cptIt,
* McsEngl.language.kr-501@cptIt,
* McsEngl.KNOWLEDGE_REPRESENTATION-501@cptIt,
* McsEngl.knowledge_representation_method/technique/technology/shceme@cptIt,
* McsEngl.knowledge_representation_language-501.7@cptIt,
* McsEngl.methodKnowledgeRepresentation-525.3@cptIt, 2011-09-02,
* McsEngl.mkr-525.3@cptIt, 2011-09-02,
* McsEngl.standard_for_data-362@cptIt,
* McsEngl.lcrk@cptIt501, 2014-02-05,
* McsEngl.krl@cptIt525.3, 2013-12-24,
* McsEngl.krl-501.7@cptIt,
* McsEngl.KR@cptIt,
* McsEngl.kr-362@cptIt,
* McsEngl.krl-501.7@cptIt,
===
* We study theoretical properties of knowledge representation and reasoning formalisms, but are also involved in developing practical knowledge-based systems.
[http://www.cs.vu.nl/en/sec/ai/kr/] 2007-12-24
====== lagoGreek:
* McsElln.ΑΝΑΠΑΡΑΣΤΑΣΗ-ΓΝΩΣΗΣ@cptIt,
* McsElln.ΑΠΕΙΚΟΝΙΣΗ-ΓΝΩΣΗΣ@cptIt,
* McsElln.ΚΩΔΙΚΟΠΟΙΗΣΗ-ΓΝΩΣΗΣ@cptIt,
* McsElln.ΠΑΡΑΣΤΑΣΗ-ΓΝΩΣΗΣ@cptIt,

mkr'GENERIC:
* language.computer.knowledge#cptItsoft525#
* language.computer.representation#cptItsoft501#

_DEFINITION:
KRM is any data-representation-method, except plain or markup text, so that programs can reason on it.
[hmnSngo.2011-08-30]
===
* Knowledge representation is an issue that arises in both cognitive science and artificial intelligence. In cognitive science it is concerned with how people store and process information. In artificial intelligence (AI) the primary aim is to store knowledge so that programs can process it and achieve the verisimilitude of human intelligence. AI researchers have borrowed representation theories from cognitive science.
... KR is most commonly used to refer to representations intended for processing by modern computers, and in particular, for representations consisting of explicit objects (the class of all elephants, or Clyde a certain individual), and of assertions or claims about them ('Clyde is an elephant', or 'all elephants are grey'). Representing knowledge in such explicit form enables computers to draw conclusions from knowledge already stored ('Clyde is grey').
[http://en.wikipedia.org/wiki/Knowledge_representation]

mkr'GOAL:
Since knowledge is used to achieve intelligent behavior, the fundamental goal of knowledge representation is to represent knowledge in a manner as to facilitate inferencing i.e. drawing conclusions from knowledge.
[http://en.wikipedia.org/wiki/Knowledge_representation]

mkr'PROBLEM:
There are well known problems such as
- "spreading activation" (this is a problem in navigating a network of nodes),
- "subsumption" (this is concerned with selective inheritance; e.g. an ATV can be thought of as a specialization of a car but it inherits only particular characteristics) and
- "classification." For example a tomato could be classified both as a fruit and a vegetable.
[http://en.wikipedia.org/wiki/Knowledge_representation]

* mkr'program-knowledge#cptItsoft497#

resourceInfHmn#cptResource843#

_SPECIFIC:
* http://www.cs.ru.nl/~peterl/teaching/KeR/summary.pdf,

SPECIFIC

name::
* McsEngl.lcrk.specific@cptIt,

_SPECIFIC:
* brainual-krl#cptItsoft501.1#
* concept-mapping#cptItsoft525.7#
* conceptual-graph#cptItsoft515#
* Cycl#cptItsoft517#
* description-logics#cptItsoft560#
* entity-attribute value##
* explicit-knowledge##
* explicitNo##
* first-order-logic##
* formal-concept-analysis##
* frame-based#cptItsoft475#
* KIF#cptIt563#
* KL_ONE##
* logic-krl#cptIt525.6#
* loom-krl##
* ontology-krl#cptItsoft511#
* OWL#cptIt562#
* RDF,
* RIF##
* semantic-network#cptIt501.6#
* semasial-krl#cptIt525.8#
* SHOE##
* topic-maps#cptIt526#
* uniform##
* uniformNo##
* visual-krl#cptIt434#

lagCmr.knowledge.BRAINUAL

_CREATED: {2000-07-27}

name::
* McsEngl.lagCmr.knowledge.BRAINUAL@cptIt,
* McsEngl.conceptIt525.5,
* McsEngl.conceptIt501.1,
* McsEngl.artificial-brainepto-model-representation@cptIt501.1,
* McsEngl.brainepto-ccl@cptIt501.1, {2007-12-02}
* McsEngl.brainepto-content-computer-langauge@cptIt501.1,
* McsEngl.conceptual-paradigm, {2000-07-28}
* McsEngl.conceptual-methodology,
* McsEngl.lagKnlg.representation.BRAINUAL@cptIt,
* McsEngl.kognepto-representation-method@cptIt501.1, {2008-01-26}
* McsEngl.koncesto-krm@cptIt501.1, {2008-01-24}
* McsEngl.kognesto-drm@cptIt501.1,

=== _NOTES: I changed the name from 'conceptual-model' to 'conceptual-methodology' because with the name 'conceptual-model' I mean also 'knowledge'.
[hmnSngo.2000jul28]

_DEFINITION:
* Kognepto_representation_method is any DRM#ql:drm_data_representation_method# that represents ANALOGICALLY kognepto_views#ql:kognepto_view#.
[KasNik, 2008-01-26]

* Brainepto_CCL is a content_computer_language that uses artificial_brainepto_models#cptCore452# to represent braineptos.
[KasNik, 2007-12-02]

* Every krl IMPLEMENTS a conceptual'model of the world more or less consiously.
The logic-languages transform 'human-information' (system of statements) to 'formal-information' that help the computer to inference on this information. Their conceptual-model usally emphasizes into the general-specific relations.
[hmnSngo.2000jul27]


SCS    CycL    KIF    CODE4-KR    FrameRepr    Desc.Logic
Object,  
Relation,  
Knowledge,
Information,
Concept,          Concept,    Frame/Unit,
AttributeRel,                Slot,
Attribute,                Value,
Cpt-Name,  
Cpt-Referent,
GeneralCpt,          SuperConcept/Type,        Concept,
SpecificCpt,          SubConcept/SubType,
IndividualCpt,          Instance,
WholeCpt,  

Cpt-AttRel-Att,          Statement,    FrameSlotValue,

_SPECIFIC:
* BB_CCL
* CONCEPT-MAPPING#cptIt525.7#
* ONTOLOGY-LANGUAGE#ql:ontology_language##cptIt511#
* SEMANTIC-NETWORK#cptIt501.6#

ENVIEINO:
* program-knowledge#cptItsoft497#

lagCmr.knowledge.SEMASIAL

_CREATED: {2007-12-02}

name::
* McsEngl.lagCmr.knowledge.SEMASIAL@cptIt,
* McsEngl.conceptIt525.8,
* McsEngl.langeto-representation-method@cptIt525.8, {2008-01-26}
* McsEngl.langeto-krm@cptIt525.8, {2008-01-24}
* McsEngl.lagKnlg.representation.SEMASIAL@cptIt,
* McsEngl.meaning-representation@cptIt525.8,
* McsEngl.mineto'ccl@cptIt525.8, {2007-12-02}

_DEFINITION:
* Langeto_representation_method is any DRM#ql:drm_data_representation_method# that represents ANALOGICALLY langeto-views#cptCore593#.
[KasNik, 2008-01-26]
===
* MINETO_CCL is a content_computer_language that uses mineto-models#cptCore593# to represent braineptos.
[KasNik, 2007-12-02]

lagCmr.knowledge.COMMON-LOGIC {2007}

_CREATED: {2014-02-06}

name::
* McsEngl.lagCmr.knowledge.COMMON-LOGIC {2007}@cptIt,
* McsEngl.conceptIt501.17,
* McsEngl.common-logic@cptIt501.17,

_DESCRIPTION:
Common Logic is a logic framework intended for information exchange and transmission. The framework allows for a variety of different syntactic forms, called dialects, all expressible within a common XML-based syntax and all sharing a single semantics.
Common Logic has some novel features, chief among them being a syntax which is signature-free and permits 'higher-order' constructions such as quantification over classes or relations while preserving a firstorder model theory, and a semantics which allows theories to describe intensional entities such as classes or properties. It also fixes the meanings of a few conventions in widespread use, such as numerals to denote integers and quotation marks to denote character strings, and has provision for the use of datatypes and for naming, importing and transmitting content on the World Wide Web using XML.
[Common Logic ISO/IEC 24707:2007-10-01(E) First edition]

lagCmrCl'resource

name::
* McsEngl.lagCmrCl'resource@cptIt,

_ADDRESS.WPG:
* http://iso-commonlogic.org//

lagCmrCl.CGIF

name::
* McsEngl.lagCmrCl.CGIF@cptIt,
* McsEngl.CGIF@cptIt,

_DESCRIPTION:
Conceptual Graph Interchange Format
CGIF
text version of conceptual graphs whose rules of formation conform to Annex B of this International Standard
NOTE Sometimes may refer to an example of a character string that conforms to Annex B. Intended to convey exactly the same structure and semantics as an equivalent conceptual graph.
[Common Logic ISO/IEC 24707:2007-10-01(E) First edition]

lagCmrCl.CLIF

name::
* McsEngl.lagCmrCl.CLIF@cptIt,
* McsEngl.CLIF@cptIt,

_DESCRIPTION:
Common Logic Interchange Format
CLIF
KIF-based syntax that is used for illustration purposes in this International Standard
NOTE It is one of the concrete syntaxes as described in Annex A. The name “KIF” is not used for this syntax in order to distinguish it from the commonly used KIF dialects. No assumptions are made in this International Standard with respect to KIF semantics; in particular, no equivalence between CLIF and KIF is intended.
[Common Logic ISO/IEC 24707:2007-10-01(E) First edition]

lagCmrCl.DIALECT

name::
* McsEngl.lagCmrCl.DIALECT@cptIt,
* McsEngl.dialect.lcrCl@cptIt,

_DESCRIPTION:
3.8 dialect
concrete instance of Common Logic syntax that shares (at least some of) the uniform semantics of Common Logic
NOTE A dialect may be textual or graphical or possibly some other form. A dialect by definition is also a conforming language (see 7.1 for further details).
[Common Logic ISO/IEC 24707:2007-10-01(E) First edition]

lagCmrCl.XCL

name::
* McsEngl.lagCmrCl.XCL@cptIt,
* McsEngl.XCL@cptIt,

_DESCRIPTION:
eXtensible Common Logic Markup Language XCL
XML-based syntax for Common Logic
[Common Logic ISO/IEC 24707:2007-10-01(E) First edition]

lagCmr.knowledge.CONCEPT-MAPS

_CREATED: {2007-08-10} {2007-12-02}

name::
* McsEngl.lagCmr.knowledge.CONCEPT-MAPS@cptIt,
* McsEngl.conceptIt525.7,
* McsEngl.concept-mapping@cptIt525.7,
* McsEngl.lagKnlg.CONCEPT-MAPPING@cptIt,
* McsEngl.krl.concept-map@cptIt525.7,
====== lagoGreek:
* McsElln.ΓΛΩΣΣΑ-ΧΑΡΤΗ-ΕΝΝΟΙΩΝ@cptIt,

_GENERIC:
* visual-krl#ql:krl.visual-501i#

_DEFINITION:
A concept map is a diagram showing the relationships among concepts. It is a graphical tool for organizing and representing knowledge.

Concepts, usually represented as boxes or circles, are connected with labeled arrows in a downward-branching hierarchical structure. The relationship between concepts can be articulated in linking phrases such as "gives rise to", "results in", "is required by," or "contributes to".[1]

The technique for visualizing these relationships among different concepts is called "concept mapping".

An industry standard that implements formal rules for designing at least a subset of such diagrams is the Unified Modeling Language (UML).
[http://en.wikipedia.org/wiki/Concept_map]
===
Concept maps are graphical tools for organizing and representing knowledge. They include concepts, usually enclosed in circles or boxes of some type, and relationships between concepts indicated by a connecting line linking two concepts. Words on the line, referred to as linking words or linking phrases, specify the relationship between the two concepts. We define concept as a perceived regularity in events or objects, or records of events or objects, designated by a label. The label for most concepts is a word, although sometimes we use symbols such as + or %, and sometimes more than one word is used. Propositions are statements about some object or event in the universe, either naturally occurring or constructed. Propositions contain two or more concepts connected using linking words or phrases to form a meaningful statement. Sometimes these are called semantic units, or units of meaning.
[http://cmap.ihmc.us/Publications/ResearchPapers/TheoryCmaps/TheoryUnderlyingConceptMaps.htm]

_GENERIC
* KNOWLEDGE_REPRESENTATION_LANGUAGE#cptIt501.7#
* BRAINEPTO_CCL#cptIt501.1#

EVOLUTION

The technique of concept mapping was developed by Joseph D. Novak[1][2] and his research team at Cornell University in the 1970s as a means of representing the emerging science knowledge of students.
[http://en.wikipedia.org/wiki/Concept_mapping]

resourceInfHmn#cptResource843#

The Theory Underlying Concept Maps and How to Construct Them[1]
Joseph D. Novak & Alberto J. Can~as
Florida Institute for Human and Machine Cognition
Pensacola Fl, 32502
www.ihmc.us
Technical Report IHMC CmapTools 2006-01
[http://cmap.ihmc.us/Publications/ResearchPapers/TheoryCmaps/TheoryUnderlyingConceptMaps.htm]

PROGRAM

(JAVA open-source) Verified Concept Mapping for Eliciting Conceptual Understanding
Laurent Cimolino, Judy Kay and Amanda Miller
http://www.cs.usyd.edu.au/~judy/Homec/Ronto.html:
Concept mapping is a valuable technique for education evaluation. Concepts maps have become a common tool for externalising learner conceptions of a domain. There are many available tools for learners to draw concept maps. Concept mapping has strong foundations in theories of learning and in empirical studies of brain activity. The approach has many potential roles in education. We are concerned with the use of concept maps as a mechanism for determining the way that a learner conceptualises a domain. From this, we aim to build accurate and detailed learner models of the learner's conceptual knowledge of a domain. Since our research focuses on scrutable learner modelling and strong learner control, the concept map is a natural tool for eliciting learner models. In line with our philosophy of learner control, our current work explores approaches to building verified concept maps for the purpose of modelling the student's knowledge. We consider it critical to verify concept maps before using them as a basis for reasoning about the student's knowledge. This is because it is very easy for a student to accidentally link the wrong concept or omit a concept or a link from their concept map. Moreover, revision of concept maps is a normal and important part of the concept mapping process. The vcm tool supports teachers in defining effective diagnostic concept mapping tasks so that students can provide a detailed, verified model of their understanding or personal ontology for a domain.

_GENERIC
* PROGRAM#cptIt59#

_SPECIFIC:
* CmapTool

USAGE

Concept maps are widely used in education and business for:
* Note taking and summarizing gleaning key concepts, their relationships and hierarchy from documents and source materials
* New knowledge creation: e.g., transforming tacit knowledge into an organizational resource, mapping team knowledge
* Institutional knowledge preservation (retention), e.g, eliciting and mapping expert knowledge of employees prior to retirement
* Collaborative knowledge modeling and the transfer of expert knowledge
* Facilitating the creation of shared vision and shared understanding within a team or organization
* Instructional design: concept maps used as Ausubelian "advance organizers" which provide an initial conceptual frame for subsequent information and learning.
* Training: concept maps used as Ausubelian "advanced organizers" to represent the training context and its relationship to their jobs, to the organization's strategic objectives, to training goals.
* Increasing meaningful learning:
* Communicating complex ideas and arguments:
* Examining the symmetry of complex ideas and arguments and associated terminology:
* Detailing the entire structure of an idea, train of thought, or line of argument (with the specific goal of exposing faults, errors, or gaps in one's own reasoning) for the scrutiny of others.
* Enhancing metacognition (learning to learn, and thinking about knowledge)
* Improving language ability
* Assessing learner understanding of learning objectives, concepts, and the relationship among those concepts
[http://en.wikipedia.org/wiki/Concept_maps]

lagCmr.knowledge.CONCEPTUAL-GRAPH (cg)

_CREATED: {1998-02-20} cg'toc#ql:[Level CONCEPT:rl? conceptIt515#.

NAME

name::
* McsEngl.lagCmr.knowledge.CONCEPTUAL-GRAPH (cg)@cptIt,
* McsEngl.conceptIt515,
* McsEngl.cg@cptIt515,
* McsEngl.conceptual-graphs,
* McsEngl.conceptual'graphs@cptIt515,
* McsEngl.conceptual-structures,
* McsEngl.lagKnlg.CONCEPTUAL-GRAPH@cptIt,

DEFINITION

CGs use the system-hierarchy and thus if as unit we use 'concepts' we create 'conceptual-systems' ie knowledge.
[hmnSngo.2001jan28]

Conceptual graphs (CGs) are a system of logic based on the existential graphs of Charles Sanders Peirce and the semantic networks of artificial intelligence. They express meaning in a form that is logically precise, humanly readable, and computationally tractable. With a direct mapping to language, conceptual graphs serve as an intermediate language for translating computer-oriented formalisms to and from natural languages. With their graphic representation, they serve as a readable, but formal design and specification language. CGs have been implemented in a variety of projects for information retrieval, database design, expert systems, and natural language processing.
[Sowa, http://www.bestweb.net/~sowa/cg/index.htm, (2000jul30)]

Conceptual structures are a kind of knowledge representation developed in John Sowa's book "Conceptual Structures: Information Processing in Mind and Machine[1984]''. They are a graphic notation for typed first-order logic which has been applied domains including natural language processing, information systems modelling, program specification, information retrieval, machine learning and case based reasoning.
[faq] 1998feb20

Conceptual graphs (CGs) are a synthesis of
- Peirce's existential graphs (EGs) with
- the semantic networks that had been independently developed for artificial intelligence and computational linguistics.
[Fulfilling Peirce's Dream: Conceptual Structures and Communities of Inquiry, Leroy Searle, Mary Keeler, John Sowa, Harry Deluagch, and Dickson Lukose, ICCS'97]

Developed by John Sowa at IBM Wathon Research center based on Charls S. Pierce's (1839-1914) Existential Graphs.
[G. Ellis Lectures 1996] {1998-04-23}

cg'GENERIC

_GENERIC:
* method-knowledge#cptItsoft525#

cg'Concept

name::
* McsEngl.cg'Concept@cptIt,
* McsEngl.concept'in'conceptual'graphs@cptIt515,

_DEFINITION:
** In a conceptual graph, the boxes are called concepts.
** A node in a CG that refers to an entity#ql:cgt'entity#, a set of entities, or a range of entities.
** Every concept has a concept type t and a referent r.

NIKKAS:
** A cg-concept can be mapped to a statement's-constituent which plus states (cg-relations) make up statements.
[2001jan14]

They call concepts the 'things' and the 'processes'. But and the conceptual-relations which are 'states' are also concepts in human-knowledge.
[2001jan13]

COREFERENCE-SETS#ql:cg'coreference'set#:
A concept can belong to many coreference-sets.

cg'concept'REFERENT

name::
* McsEngl.cg'concept'REFERENT@cptIt,
* McsEngl.cg'REFERENT@cptIt,
* McsEngl.cg'REFERENT'FIELD@cptIt,

_DEFINITION:
** concept = [Type: Referent]
** CGIF: A referent consists of a quantifier, a designator, and a descriptor in any order.
 Referent ::= {Quantifier#ql:cgif'Quantifier#, Designator#ql:cgif'Designator#, Descriptor#ql:cgif'Descriptor#}
Any or all of the three parts of a referent may be an empty string. An empty referent, which implies an existential quantifier, an undefined designator, and a blank CG as descriptor, indicates that the concept refers to something that conforms to the concept type, but without giving any further information that might help to identify it.

EVALUATION:
* Mainly "referent" is an individual or denotes another structure.
[KasNik, 2007-12-15]

* referent is an atomic-specific-concept. "the actual referent is a physical entity of type ... that exists somewhere in the world".
[hmnSngo.2001jan13]

cg'QUANTIFIER

name::
* McsEngl.cg'QUANTIFIER@cptIt,

DEFINITION (CGIF):
A quantifier is an existential or a defined quantifier.
 Quantifier ::= Existential | DefinedQuantifier
An existential quantifier is represented by an empty string "". A defined quantifier is defined in Chapter 8 by an expansion of the containing CG to an equivalent CG that does not contain that quantifier.

cg'DESIGNATOR

name::
* McsEngl.cg'DESIGNATOR@cptIt,

DEFINITION (CGIF):
designator. A symbol in the referent-field#ql:cgt'referent'field# of a concept that determines the referent of the concept by showing its literal form, specifying its location, or describing it by a nested-CG#ql:cgt'nested'conceptual'graph#.
[dpANS1999]

A designator is
1) a literal, OR
2) a locator, OR
3) an empty string that represents an undefined designator.

IN-CGIF-GRAMMAR#ql:cgif'designator#:
A designator is
- a literal (344, "xxxx", %xxx"xxx"),
- a locator (Name#ql:cgif'name# (xxx, 'xxx')|IndividualMarker#ql:cgif'IndividualMarker# (#222)|Indexical#ql:cgif'Indexical#(#xxx)),
- or an empty string that represents an undefined designator.
 partof: Referent#ql:cgif'Referent#,
 Designator ::= Literal#ql:cgif'Literal# | Locator#ql:cgif'Locator# | ""

cg'LITERAL:
1) a number: OR
2) a string enclosed in double quotes, OR
3) an-encoded-literal#ql:cgif'encodedliteral#: An encoded literal is the character "%" followed by an identifier#ql:cgif'identifier# and a string enclosed in double quotes. The identifier specifies some implementation-dependent method for interpreting the following string.

Any double quote that occurs in a literal must be preceded with a backslash.

cg'LOCATOR:
1) a-name-(cg'name)#ql:cgif'name#: A name is a string of one or more letters OR a string of one or more arbitrary characters enclosed in single quotes, OR
2) an-individual-marker-(cg'marker)#ql:cgif'individualmarker#: An individual marker is the character "#" followed by an integer. OR
3) an-indexical-(cg'indexical)#ql:cgif'indexical#: An indexical is the character "#" followed by an optional identifier.

cg'DESCRIPTOR

name::
* McsEngl.cg'DESCRIPTOR@cptIt,

_DEFINITION:
A descriptor is a conceptual-graph that is nested in the referent-field of a concept.

cg'CONTEXT

name::
* McsEngl.cg'CONTEXT@cptIt,

_DEFINITION:
A concept that contains a nonblank CG that is used to describe the referent#ql:cg'referent# of the concept.
[CG Standard, http://www.bestweb.net/~sowa/cg/cgdpansw.htm, 1999aug01]

The concept and its referent that is compound (have a graph) they call context.
[hmnSngo.2001jan28]

A REFERENT IS CONTEXT:
* A referent forms a context#ql:cg'context# if it has a descriptor.

cg'concept'TYPE

name::
* McsEngl.cg'concept'TYPE@cptIt,

nikkas: type is the 'general-concept' of the concept.
[2001jan13]

Every concept has a concept type t and a referent r.
Comment.
This abstract definition does not say how the type and referent are represented. In computer storage, they may be represented by a pair of pointers, one pointing to a specification of the concept type and the other pointing to a specification of the referent. In the concrete notations, the type field is on the left, and the referent field is on the right.
In the concept [Bus], "Bus" is the type, and the referent field contains a blank, which represents an existential quantifier; the actual referent is a physical entity of type Bus that exists somewhere in the world.
In the concept [Person: John], "Person" specifies the type, and the name "John" designates some person who is the referent.
[CG Standard, http://www.bestweb.net/~sowa/cg/cgdpansw.htm, 1999aug01]

CONCEPT TYPE DEFINITION:
* with a label.
* with a concept (formal-parameter) and a graph.
* signature: is the type of the formal-parameter.

cg'concept.COREFERENCE

name::
* McsEngl.cg'concept.COREFERENCE@cptIt,

Coreference-concepts are called the concepts of a coreference-set:
(A set of concepts in a CG that refer to the same entity or entities.
In CGIF, the members of a coreference-set are marked by coreference-labels. One of the dominant-nodes is marked with a defining-label, prefixed with an asterisk; all the other nodes, are marked with bound-labels, prefixed with a question mark.
In CGIF and LF, the members of a coreference-set are marked with coreference-labels#ql:cgt'coreference'*# that have matching identifiers.
in DF, they may be linked by dotted lines called coreference links.)

cg'concept.BOUND

name::
* McsEngl.cg'concept.BOUND@cptIt,

A bound'label is an identifier prefixed with the character "?" that marks a bound-concept of a coreference-set#ql:cg'coreference'set#.

cg'concept.DEFINING

name::
* McsEngl.cg'concept.DEFINING@cptIt,

A defining'label is an identifier prefixed with the character "*" that marks the defining-concept of a coreference set.
The concept in which a defining label appears is called the defining concept for that label; a defining concept may contain at most one defining label and no bound coreference labels. Any defining concept must be a dominant concept as defined in Section 6.9. Every bound label must be resolvable to a unique defining coreference label within the same context or some containing context. When conceptual graphs are imported from one context into another, however, three kinds of conflicts may arise:
-  A defining concept is being imported into a context that is within the scope of another defining concept with the same identifier.
-  A defining concept is being imported into a context that contains some nested context that has a defining concept with the same identifier.
-  Somewhere in the same knowledge base there exists a defining concept whose identifier is the same as the identifier of the defining concept that is being imported, but neither concept is within the scope of the other.
In cases (1) and (2), any possible conflict can be detected by scanning no further than the right bracket "]" that encloses the context into which the graph is being imported. Therefore, in those two cases, the newly imported defining coreference label and all its bound labels must be replaced with an identifier that is guaranteed to be distinct. In case (3), there is no conflict that could affect the semantics of the conceptual graphs or any correctly designed CG tool; but since a human reader might be confused by the similar labels, a CG tool may replace the identifier of one of the defining coreference labels and all its bound labels.

cg'concept.DOMINANT

name::
* McsEngl.cg'concept.DOMINANT@cptIt,

A dominant-concept must be a member of ONE coref-set#ql:cg'coreference'set#.

cg'concept.SUBORDINATE

name::
* McsEngl.cg'concept.SUBORDINATE@cptIt,

SUBORDINATE-CONCEPT is a NON-dominant (it has more than one coreference-sets).

cg'relation

name::
* McsEngl.cg'relation@cptIt,
* McsEngl.cg'relation'TermEnglish:@cptIt,
* McsEngl.relation'in'conceptual'graphs-515i@cptIt,
* McsEngl.cg'CONCEPTUAL'RELATION@cptIt,

_DEFINITION:
** the circles are called conceptual relations.

** A node in a CG that has zero or more arcs#ql:cgt'arc#, each of which links the conceptual relation to some concept#ql:cgt'concept#.

conceptual-relation: A node in a CG that has zero or more arcs#ql:cgt'arc#, each of which links the conceptual relation to some concept#ql:cgt'concept#.
[dpANS1999]

IN-CGIF#ql:cgif'relation#:
Relation. A conceptual relation (Relation) begins with a left parenthesis "(" followed by a relation type label or a lambda expression. It continues with zero or more arcs and an optional semicolon ";" and relation comment. It ends with a right parenthesis ")".
 partof: CG#ql:cgif'cg#,
 Relation ::= "(" (RelTypeLabel#ql:cgif'RelTypeLabel# | LambdaExpression#ql:cgif'LambdaExpression#) Arc#ql:cgif'Arc#* (";" Comment)? ")"
If the relation type label or the lambda expression has a valence n, the relation must have a sequence of exactly n arcs.

cg'relation'ARGUMENTS | cg'relation'ARC:
of a relation are the 'concepts' with wich it is related.

cg'relation'VALENCE:
is the number of its arguments.

cg'relation'SIGNATURE:
The syntax of types the relation supports.

cg'CONCEPTUAL'GRAPH

name::
* McsEngl.cg'CONCEPTUAL'GRAPH@cptIt,
* McsEngl.cg'CG@cptIt,
* McsEngl.cg'GRAPH@cptIt,

_DEFINITION:
cgif: A conceptual graph (CG) is a list of zero or more
- concepts,
- conceptual relations,
- actors,
- special contexts, or
- CG comments.

Informally, a CG is a structure of concepts and conceptual relations where every arc links a concept node and a conceptual relation node.
[CG Standard, http://www.bestweb.net/~sowa/cg/cgdpansw.htm, 1999aug01]

Conceptual graphs are abstract information structures that are independent of notation. In principle, CGs can be drawn in any style that preserves the formal definitions.
...
A conceptual graph g is a bipartite graph [nikkas: a bipartite graph have the relations as nodes, in contrast to 'hypergraph' where a relation is an arch with two or more endpoints] that has two kinds of nodes called concepts and conceptual relations.
a) Every arc a of g must link a conceptual relation r in g to a concept c in g. The arc a is said to belong to the relation r; it is said to be attached to the concept c, but it does not belong to c.
b) The conceptual graph g may have concepts that are not linked to any conceptual relation; but every arc that belongs to any conceptual relation in g must be attached to exactly one concept in g.
c) Three kinds of conceptual graphs are given distinguished names:
 1) The blank is an empty conceptual graph with no concepts, conceptual relations, or arcs.
 2) A singleton is a conceptual graph that consists of a single concept, but no conceptual relations or arcs.
 3) A star is a conceptual graph that consists of a single conceptual relation r and 1 or more concepts, which are attached to the arcs of r.
[Sowa]

EXAMPLE:
To illustrate this definition, consider the following conceptual graph, which represents the sentence John is going to Boston:
[Person: John]->(Agnt)->[Go]<-(Dest)<-[City: Boston].
This graph contains three concepts: [Person: John], [Go], and [City: Boston]. It contains two conceptual relations: (Agnt) relates [Go] to the agent John, and (Dest) relates [Go] to the destination Boston. The term bipartite means that every arc of a conceptual graph connects one concept and one conceptual relation; there are no arcs that connect concepts to concepts or relations to relations. Two of the four arcs in the graph belong to (Agnt), and the other two belong to (Dest).
[Sowa]

NIKKAS:
A cg can be mapped to a 'statement'.
[2001jan14]

ENCLOSING-REFERENT/ENCLOSING-CONCEPT(CONTEXT-CONCEPT):
A graph could be the referent of concept. This referent is the enclosing-referent of the graph and this concept is the enclosing-concept of the graph.

CONTEXT-DEPTH:
The level of nesting of this graph.

cg'coreference'set:
A coreference set C in a conceptual graph g
is a set of one or more concepts selected from g or from graphs nested in contexts of g.
For any coreference set C, there must be one or more concepts in C, called the dominant nodes of C, which include all concepts of C within their scope. All dominant nodes of C must be co-nested.
If a concept c is a dominant node of a coreference set C, it may not be a member of any other coreference set.
A concept c may be member of more than one coreference set {C1,C2,...} provided that c is not a dominant node of any Ci.
A coreference set C may consist of a single concept c, which is then the dominant node of C.

A set of concepts in a CG that refer to the same entity or entities.
In CGIF, the members of a coreference-set are marked by coreference-labels. One of the dominant-nodes is marked with a defining-label, prefixed with an asterisk; all the other nodes, are marked with bound-labels, prefixed with a question mark.
In CGIF and LF, the members of a coreference-set are marked with coreference-labels#ql:cg'coreference'*# that have matching identifiers.
in DF, they may be linked by dotted lines called coreference links.

cg'CG.NESTED

name::
* McsEngl.cg'CG.NESTED@cptIt,

nested'conceptual'graph.
A CG that is used as a designator#ql:cgt'designator# in the referent-field of some concept.

cg'CG.SIMPLE

name::
* McsEngl.cg'CG.SIMPLE@cptIt,

simple'graph:
A conceptual graph that contains no contexts#ql:cgt'context#, negations, or defined quantifiers.

cg'CG.SINGLETON

name::
* McsEngl.cg'CG.SINGLETON@cptIt,

singleton'graph. A CG that contains a single concept and no conceptual relations.

cg'CG.STAR

name::
* McsEngl.cg'CG.STAR@cptIt,

star'graph. A CG that contains a single conceptual relation and the concepts that are attached to each of its arcs.

cg'evaluation

name::
* McsEngl.cg'evaluation@cptIt,

It uses 2 building units, instead of one.
* it is language based.
* dificult terminology.
[KasNik, 2007-12-15]

cg'GRAMMAR

name::
* McsEngl.cg'GRAMMAR@cptIt,

Extended BNF grammar for CGIF
("?" means 0 or 1 times, "*" means 0 to N times, "+" means 1 to N times)

CG := (Concept | Relation | Actor | SpecialContext)+
SpecialContext:= "~[" CG "]" | "[" SpecialType ":"? CG "]"
SpecialType := "if" | "then" | "either" | "or" | "sc"
Actor := "<" Type(N) ArcConcept* "|" ArcConcept* Annotation? ">"

Concept := "[" ConceptType? (CorefLinks? Referent?)+ Annotation? "]"
Relation := "(" RelationType ArcConcept* Annotation? ")"

ConceptType := Identifier | CT_expression
CT_expression := "(" "lambda" "(" CT_parameter ")" CG ")" | CT_disjuncts
CT_parameter := ConceptType DefLabel?
CT_disjuncts := "(" CT_conjuncts ("|" CT_conjuncts)* ")"
CT_conjuncts := CT_term ("&" CT_term)*
CT_term := "~"? ConceptType

RelationType := Identifier | RT_expression
RT_expression := "(" "lambda" "(" RT_signature ")" CG ")" | RT_disjuncts
RT_signature := RT_parameter ("," RT_parameter)*
RT_parameter := RelationType DefLabel?
RT_disjuncts := "(" RT_conjuncts ("|" RT_conjuncts)* ")"
RT_conjuncts := RT_term ("&" RT_term)*
RT_term := "~"? RelationType

CorefLink := DefLabel | BoundLabel*
Referent := ":" (Designator? Descriptor?)+
Descriptor := Structure | CG
Structure := StructID? Collection

Designator := Literal | Locator | Quantifier
Literal := Number | Quoted2_str
Quantifier := "@" (UnsignedInt | Identifier Collection?)
Locator := Name | IndividualMarker | Indexical | Identifier

Collection := "{" ArcConcept* "}" | "{(" ArcConcept* ")}"
ArcConcept := Concept | BoundLabel | Collection | Point_in_time | Time
| Literal | Locator | "@" (Identifier Collection)

//Lexical elements (some LEX syntax is used):
StructID := '%' Identifier
DefLabel := "*" Identifier
BoundLabel := "?" Identifier
IndividualMarker:= "#" UnsignedInt
Indexical := "#" Identifier?
Digit := [0-9]
UnsignedInt := Digit+
Letter := [a-zA-Z_]
Identifier := IdLetter1 IdLetter*
IdLetter1 := Letter | "#"Letter | "#."
IdLetter := Letter | Digit | "#" | "_" | "-" | "/" | "?" | "&" | "~"
| "."?[a-z0-9?#~] //"." may be within an identifier but not at the end
| "://" //a URL may be an identifier
Number := ("+"|"-")? Digit+ ("." Digit* )?
Point_in_time := Date" "Time?
Date := ([0-9][0-9]?"/")?[0-9][0-9]?"/""-"?[0-9][0-9]?[0-9]?[0-9]?
Time := [0-9][0-9]?":"[0-9][0-9](":"[0-9][0-9])?

Name := DelimitedStr("'") //'...' (as in the standard)
Usual_string := DelimitedStr('"') //"..." (as QuotedStr in the standard)
Robust_string :=
QuotedStr := "$("([^\)]|(\)[^$]))*")$" //$(...)$
QuotedStr := Usual_string | Robust_string
[http://www.webkb.org/doc/CGIF.html]

cg'NOTATION (REPRESENTATION)

name::
* McsEngl.cg'NOTATION (REPRESENTATION)@cptIt,

cg'CGIF

name::
* McsEngl.cg'CGIF@cptIt,
* McsEngl.cgif@cptIt515,
* McsEngl.conceptual'graph'interchange'format@cptIt515i,

For communications between computers, another form called the conceptual graph interchange format (CGIF) has a simpler syntax and a more restricted character set. Following is the CGIF form of Figure 1:
[Cat: *x] [Mat: *y] (On ?x ?y).

cgif'EXAMPLES

name::
* McsEngl.cgif'EXAMPLES@cptIt,

John is going to Boston by bus:
[Go *x]
 (Agnt ?x [Person: John])
 (Dest ?x [City: Boston])
 (Inst ?x [Bus])
-----------------------------------------------
[P: Go *x1, Present-Interval-Imperfect]
(Por ?x1 [John, Singular])
(To ?x1 [Boston])
(By ?x1 [Bus)).

That the computer ignored the message angered kirk:
[Statement: [P: anger *x1, Past]
(Por ?x1
 [Statement: [ingore *x2, Past]
 (Por ?x2 [Computer])
 (Pon ?x2 [Message]) ])
(Pon ?x1 [Kirk]) ].

Tom believes that Anna wants to marry a sailor:
[Statement: [P: Believe *x1, Present]
(Sor ?x1 [Tom])
(Son ?x1
 [Statement: [P: Marry *x2, Present]
 (Por ?x2 [Anna])
 (Pon ?x2 [Sailor]) ]) ].
---------------------------------------------------------
[Believe *x2]
(Expr ?x2 [Person: 'Tom'])
(Thme ?x2
 [Proposition: [Want *x4] [Person: *x3 'Mary']
 (Expr ?x4 ?x3)
 (Thme ?x4
   [Situation: [Marry *x5]
   (Agnt ?x5 ?x3)
   (Thme ?x5 [Sailor]) ]) ])

A person is between a rock and a hard place:
[Statement: [P: Am *x1, ]
(Sor ?x1 [Person])
(Son ?x1 [(between [Rock] [Place *x2]) (Prop ?x2 [Hard]) ]) ].
---------------------------------------------------------
(Betw [Rock] [Place *x] [Person])
(Attr ?x [Hard])

Concept is the unit of Conceptual-Information:
[Statement: [P: Call *x1]
(Por ?x1 [I])
(Pon ?x1 [Concept])
(Pon ?x1 [ (of [Unit] [Conceptual-Information]) ]) ].

= I call concept the unit of conceptual-information. [nikkas 2001jan16]
--------------- notio -----------
[Statement: [ Call *x1]
(Por ?x1 [I])
(Pon ?x1 [Concept])
(Pon ?x1 [Const: (of [Unit] [ConceptualInformation]) ]) ].
>>>
[Statement:
[Call:*a][I:*b][Concept:*c]
[Const:*d[Unit:*e][ConceptualInformation:*f](of?e?f)]
(Por?a?b)(Pon?a?c)(Pon?a?d)]
>>>LF:
[Statement[Call*a]-
 -1->(Por)-2->[I]
 -1->(Pon)-2->[Concept]
 -1->(Pon)-2->[Const[Unit]-1->(of)-2->[ConceptualInformation] ] ]

Lexical Categories:

The lexical categories of CGIF are defined as sequences of characters as specified in ISO/IEC 10646-1. Characters outside the 7-bit subset of ISO/IEC 10646-1 occur only in strings that represent identifiers, literals, and comments. By using escape sequences in such strings, it is possible to encode and transmit CGIF in the 7-bit subset of ISO/IEC 10646-1. Numerical values are represented by the conventions of ANSI X3.42. The following lexical categories may be used in EBNF rules in this chapter or in the translation rules in chapters 8 and 9:

cgif'EscapeSequence. An escape sequence is a sequence of characters beginning with a backslash that is used to represent certain characters. Nine escape sequences are said to be valid:
Backspace: "\b".
Horizontal tab: "\t".
Linefeed: "\n".
Form feed: "\f".
Carriage return: "\r".
Double quote: "\"".
Single quote: "\'".
Backslash: "\\".
Unicode: "\uXXXX", where each X represents one of the following hexadecimal digits: "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f", "A", "B", "C", "D", "E", "F". In CGIF, escape sequences appear only in identifiers, comments, and quoted strings. In identifiers, none of the first eight escape sequences may appear; only Unicode escapes that represent a letter or digit that is outside the 7-bit subset of ISO/IEC 10646-1 may appear in an identifer. In comments and quoted strings, Unicode escapes may be used to represent any character, including those in the 7-bit and 8-bit subsets of ISO/IEC 10646-1.

cgif'Identifier. An identifier is a string beginning with a letter or underscore "_" and continuing with zero or more letters, digits, or underscores.
 Identifier ::= (Letter#ql:cgif'Letter# | "_") (Letter | Digit | "_")*
Case is not significant: two identifiers that differ only in the case of one or more letters are said to match. As an example, the identifier "CarStop" matches "CarsTop" and "carstop". Identifiers beginning with "_" followed by one or more digits are generated by the Gensym rule defined in Section 8.2. Such identifiers should be avoided unless they have been generated by a call to the Gensym rule.

cgif'Number. A number is a sequence of characters that represents an integer or a floating-point number as defined in ANSI X3.42.

cgif'String. A string is a sequence of zero or more characters as specified in ISO/IEC 10646-1. The first eight escape sequences must be used to represent the characters they define; a Unicode escape sequence must be used for all characters outside the 8-bit subset of ISO/IEC 10646-1. Characters in the 8-bit subset may be represented by a Unicode escape sequence. The backslash "\\", double quote "\"", or single quote "\'" or their Unicode representations "\u005c", "\u0022", and "\u0027" may only occur in valid escape sequences.

cgif'WhiteSpace. White space is a sequence of one or more characters that represent a space, a horizontal tab, a carriage return, a line feed, or a form feed.

Comment.
These definitions allow CG tools that use 7 or 8 bits to represent each character to maintain compatibility with tools that use 16 or more bits per character. Tools with the smaller character sets may leave the Unicode escapes unprocessed in identifiers and quoted strings, while tools that support the larger character sets may expand them to their 16-bit forms.

Syntactic Categories

Every syntactic category of CGIF is first described in English and then defined formally by an EBNF rule, as defined in Annex B. Each EBNF rule is followed by an English statement of possible constraints and implications. Context-sensitive constraints, which are determined by the abstract syntax defined in Chapter 6 or by the extended syntax defined in Chapter 8, are stated with a reference to the governing section in Chapter 6 or 8. In all questions of interpretation, the EBNF rules take precedence over the English descriptions and statements. The following syntactic categories may be used in EBNF rules and translation rules:

cgif'Actor. An actor begins with a less-than symbol "<" followed by a relation type label or a lambda expression. It continues with zero or more arcs, a vertical bar "|", zero or more arcs, and an optional semicolon ";" and actor comment. It ends with a greater-than symbol ">".
 Actor ::= "<" (RelTypeLabel | LambdaExpression#ql:cgif'LambdaExpression#)
Arc#ql:cgif'Arc#* "|" Arc* (";" ActorComment)? ">"
The arcs that precede the vertical bar are called input arcs, and the arcs that follow the vertical bar are called output arcs. If the relation type label or lambda expression has valence n, the total number of input and output arcs must be equal to n.

cgif'ActorComment. An actor comment is a sequence of zero or more characters that appears in a actor after a semicolon ";" and before the final ">". Any occurrence of ">" terminates an actor comment; the corresponding Unicode escape \u003e does not terminate an actor comment.

cgif'Arc. An arc of a conceptual relation is specified by either a concept or a bound label.
 partof: Relation#ql:cgif'Relation#,
 Arc ::= Concept#ql:cgif'Concept# | BoundLabel#ql:cgif'BoundLabel#
Formally, an arc is a pair consisting of one concept and one conceptual relation. In CGIF, the concept attached to the arc is determined by the concept or bound label in its specification; the relation to which the arc belongs is the one in whose specification the arc is contained.

cgif'BoundLabel. A bound label (BoundLabel) consists of a question mark "?" followed by an identifier.
 BoundLabel ::= "?" Identifier#ql:cgif'Identifier#
A bound label is said to match a defining-label#ql:cgif'deflabel# if their identifiers are identical, ignoring possible differences between uppercase and lowercase letters.

cgif'CG. A conceptual graph (CG) is a list of zero or more concepts, conceptual relations, actors, special contexts, or CG comments.
STOP-SYNTHESIS : partof: this is the outmost whole.
STAR-ANALYSIS: CG ::= (Concept#ql:cgif'concept# | Relation#ql:cgif'Relation# | Actor#ql:cgif'Actor# | SpecialContext#ql:cgif'SpecialContext#
| CGComment#ql:cgif'CGComment# )*
The alternatives may occur in any order provided that any bound coreference label must occur later in the CGIF stream and must be within the scope of the defining label that has an identical identifier. The definition permits an empty CG, which contains nothing. An empty CG, which says nothing, is always true.
examples:
** [Concept: 'Cat'] //a concept.
** (On) //a relation.
** [Concept:*a'Cat'][mat:*b](On?a?b) //2 cpts, 1 r l t.
** [Statement: *x (on ?x [y])] = [Statement:*a[?a][y:*b](on?a?b)]
** (not [statement: *x]) = [statement:*a](not?a)
** [cpt: *z[cpt: *x ] [cpt:*y] (of ?x ?y)] = [cpt:[cpt:*a][cpt:*b](of?a?b)]

cgif'CGComment. A CG comment is a sequence of zero or more characters enclosed in the strings "/*" and "*/".
 CGComment ::= "/*" Character* "*/"
Any occurrence of "*/" terminates a CG comment; the corresponding Unicode escape "\u002a\u002f" does not terminate a CG comment.

cgif'Concept. A concept begins with a left bracket "[" followed by an optional type followed by either optional coreference links or a colon and optional coreference links and optional referent in any order. Then comes an optional semicolon ";" followed by a concept comment. Finally, the concept is terminated by a right bracket "]".
 partof: CG#ql:cgif'cg#, Arc#ql:cgif'arc#,
 Concept ::= "[" Type#ql:cgif'Type#? (Coreflinks#ql:cgif'Coreflinks#? | (":" {Coreflinks?, Referent#ql:cgif'Referent#?}) )
(";" ConComment#ql:cgif'concomment#)? "]"
If the type is omitted, the default type is Entity. This rule permits the coreference labels to come before or after the referent. If the referent is a CG that contains bound labels that match a defining label on the current concept, the defining label must precede the referent. In Figure 4, for example, the concept [Person: Mary] could be written in CGIF as [Person:'Mary'*x]; the coreferent concept [T] could be written [?x], and its implict type would be Entity.

cgif'ConComment. A concept comment (ConComment) is a sequence of zero or more characters that appears in a concept after a semicolon ";" and before the final "]". Any occurrence of "]" terminates a concept comment; the corresponding Unicode escape "\u005d" does not terminate a concept comment.
- partof: Concept#ql:cgif'concept#,

cgif'ConTypeLabel. A concept type label (ConTypeLabel) is any identifier other than the five special context labels "If", "Then", "Either", "Or", and "SC" or the reserved label "Else".

cgif'CorefLinks. Coreference links (CorefLinks) are either a single defining coreference label or a sequence of zero or more bound labels.
 CorefLinks ::= DefLabel | BoundLabel#ql:cgif'BoundLabel#*
If a dominant concept node, as specified in Section 6.9, has any coreference label, it must be either a defining label or a single bound label that has the same identifier as the defining label of some co-nested concept.
- partof: Concept#ql:cgif'concept#,

cgif'DefLabel. A defining label (DefLabel) consists of an asterisk "*" followed by an identifier.
 DefLabel ::= "*" Identifier
The concept in which a defining label appears is called the defining concept for that label; a defining concept may contain at most one defining label and no bound coreference labels. Any defining concept must be a dominant concept as defined in Section 6.9. Every bound label must be resolvable to a unique defining coreference label within the same context or some containing context. When conceptual graphs are imported from one context into another, however, three kinds of conflicts may arise:
-  A defining concept is being imported into a context that is within the scope of another defining concept with the same identifier.
-  A defining concept is being imported into a context that contains some nested context that has a defining concept with the same identifier.
-  Somewhere in the same knowledge base there exists a defining concept whose identifier is the same as the identifier of the defining concept that is being imported, but neither concept is within the scope of the other.
In cases (1) and (2), any possible conflict can be detected by scanning no further than the right bracket "]" that encloses the context into which the graph is being imported. Therefore, in those two cases, the newly imported defining coreference label and all its bound labels must be replaced with an identifier that is guaranteed to be distinct. In case (3), there is no conflict that could affect the semantics of the conceptual graphs or any correctly designed CG tool; but since a human reader might be confused by the similar labels, a CG tool may replace the identifier of one of the defining coreference labels and all its bound labels.

cgif'Descriptor. A descriptor is a conceptual graph that is nested in the referent field of a concept.
 partof: Referent#ql:cgif'Referent#,
 Descriptor ::= CG#ql:cgif'cg#
A context-free rule, such as this, cannot express the condition that a CG is only called a descriptor when it is nested inside some concept. Any CG may be used as a descriptor, including a blank CG.
A descriptor is a string, possibly empty, that represents a CG in the referent of some concept.

cgif'Designator. A designator is
- a literal (344, "xxxx", %xxx"xxx"),
- a locator (Name#ql:cgif'name# (xxx, 'xxx')|IndividualMarker#ql:cgif'IndividualMarker# (#222)|Indexical#ql:cgif'Indexical#(#xxx)),
- or an empty string that represents an undefined designator.
 partof: Referent#ql:cgif'Referent#,
 Designator ::= Literal#ql:cgif'Literal# | Locator#ql:cgif'Locator# | ""

cgif'EncodedLiteral An encoded literal is the character "%" followed by an identifier and a string enclosed in double quotes.
 EncodedLiteral ::= "%" Identifier "\"" String "\""
The identifier specifies some implementation-dependent method for interpreting the following string.

cgif'FormalParameter. A formal parameter consists of a type and a optional defining label.
 FormalParameter ::= Type#ql:cgif'Type# [DefLabel#ql:cgif'DefLabel#]
The defining label is required if the body of the lambda expression contains any matching bound labels.

cgif'Indexical. An indexical is the character "#" followed by an optional identifier.
 Indexical ::= "#" Identifier?
The identifier specifies some implementation-dependent method that may be used to replace the indexical with a bound label.

cgif'IndividualMarker. An individual marker is the character "#" followed by an integer.
 IndividualMarker ::= "#" Integer
The integer specifies an index to some entry in a catalog of individuals.

cgif'LambdaExpression. A lambda expression begins with "(" and the keyword "lambda", it continues a signature and a conceptual graph, and it ends with ")".
 partof: Relation#ql:cgif'Relation#, Actor,
 LambdaExpression ::= "(" "lambda" Signature#ql:cgif'Signature# CG ")"
A lambda expression with n formal parameters [of signature] is called an n-adic labda expression. The simplest example, represented "(lambda ())", is a 0-adic lambda expression with a blank CG.
- example:
(lambda (Person*x, City*y) [Go *z] (Agnt ?z ?x) (Dest ?z ?y))

cgif'Literal. A literal is a number, a string enclosed in double quotes, or an encoded literal.
 Literal ::= Number | "\"" String#ql:cgif'string# "\"" | EncodedLiteral#ql:cgif'EncodedLiteral#
Any double quote that occurs in a literal must be preceded with a backslash.

cgif'Locator. A locator is a name, an individual marker, or an indexical.
 Locator ::= Name | IndividualMarker#ql:cgif'IndividualMarker# | Indexical#ql:cgif'Indexical#

cgif'Name. A name is a string of one or more letters or a string of one or more arbitrary characters enclosed in single quotes "\'".
 Name ::= Letter+ | ("\'" Character+ "\'")
The quotes are optional for one-word names like John, but they are required for names that contain nonletters, such as 'John Q. Public'. A string in double quotes, such as "John Q. Public", is a literal.

cgif'Negation. A negation begins with a tilde "~" and a left bracket "[" followed by a conceptual graph and a right bracket "]".
 Negation ::= "~[" CG "]"
A negation is an abbreviation for a concept of type Proposition with an attached relation of type Neg. It has a simpler syntax, which does not permit coreference labels or attached conceptual relations. If such features are required, the negation can be expressed by the unabbreviated form with an explicit Neg relation. In CGIF, the tilde "~" is the only symbol used to abbreviate Neg. In LF or DF, the not sign "¬" may be used as an alternative to "~", but "¬" is avoided in CGIF because it is outside the 7-bit subset of ISO/IEC 10646-1.

cgif'Quantifier. A quantifier is an existential or a defined quantifier.
 partof: Referent#ql:cgif'Referent#,
 Quantifier ::= Existential | DefinedQuantifier
An existential quantifier is represented by an empty string "". A defined quantifier is defined in Chapter 8 by an expansion of the containing CG to an equivalent CG that does not contain that quantifier.

cgif'Referent. A referent consists of a quantifier, a designator, and a descriptor in any order.
 partof: Concept#ql:cgif'concept#,
 Referent ::= {Quantifier#ql:cgif'Quantifier#, Designator#ql:cgif'Designator#, Descriptor#ql:cgif'Descriptor#}
Any or all of the three parts of a referent may be an empty string. An empty referent, which implies an existential quantifier, an undefined designator, and a blank CG as descriptor, indicates that the concept refers to something that conforms to the concept type, but without giving any further information that might help to identify it.

cgif'Relation. A conceptual relation (Relation) begins with a left parenthesis "(" followed by a relation type label or a lambda expression. It continues with zero or more arcs and an optional semicolon ";" and relation comment. It ends with a right parenthesis ")".
 partof: CG#ql:cgif'cg#,
 Relation ::= "(" (RelTypeLabel#ql:cgif'RelTypeLabel# | LambdaExpression#ql:cgif'LambdaExpression#) Arc#ql:cgif'Arc#* (";" Comment)? ")"
If the relation type label or the lambda expression has a valence n, the relation must have a sequence of exactly n arcs.

cgif'RelComment. A relation comment is a sequence of zero or more characters that appears in a conceptual relation after a semicolon ";" and before the final ")". Any occurrence of ")" terminates a relation comment; the corresponding Unicode escape "\u0029" does not terminate a relation comment.

cgif'RelTypeLabel. A relation type label (RelTypeLabel) is any identifier#ql:cgif'identifier# other than "lambda".
 partof: Relation#ql:cgif'Relation#,

cgif'Signature. A signature is a parenthesized list of zero or more formal parameters separated by commas.
 Signature ::= "(" (FormalParameter#ql:cgif'FormalParameter# ("," FormalParameter)*)? ")"

cgif'SpecialConLabel. A special context label (SpecialConLabel) is one of the five identifiers "If", "Then", "Either", "Or", and "SC".
 SpecialConLabel ::= "If" | "Then" | "Either" | "Or" | "SC"
The identifier "Else" is reserved for possible future use as a special context label. None of the special context labels or the identifier "Else" may be used as a type label.

cgif'SpecialContext. A special context is a negation or a left bracket, a special context label, a CG, and a right bracket.
 SpecialContext ::= Negation#ql:cgif'negation# | "[" SpecialConLabel CG "]"
In Chapter 8, every special context is a defined by a translation to a context as defined in Section 6.8. Therefore, it is a kind of concept. But unlike other concepts, a special context may not have a defined quantifier, coreference labels, or attached conceptual relations.

cgif'Type. A type is a concept type label or a monadic lambda expression.
 partof: Concept#ql:cgif'concept#,
 Type ::= ConTypeLabel#ql:cgif'ConTypeLabel# | "(lambda" "(" FormalParameter ")" CG ")"
[CG Standard, http://www.bestweb.net/~sowa/cg/cgdpansw.htm, 1999aug01]

cg'DISPLAY'FORM

name::
* McsEngl.cg'DISPLAY'FORM@cptIt,


#img.CATONMAT.BMP# This graphic form, which is called the display form, is highly readable for humans and it maps directly to the abstract CG form.

cg'LINEAR'FORM

name::
* McsEngl.cg'LINEAR'FORM@cptIt,
* McsEngl.cg'LF@cptIt,

The linear form for CGs is intended as a more compact notation than DF, but with good human readability. It is exactly equivalent in expressive power to the abstract syntax and the display form. Following is the LF for Figure 1 "John is going to Boston by bus.":
[Go]-
(Agnt)?[Person: John]
(Dest)?[City: Boston]
(Inst)?[Bus].

To save space on the printed page, there is a second notation called the linear form, which is exactly equivalent to the display form in expressive power.
[Cat]<-(On)<-[Mat].

The following EBNF rules define a recommended context-free syntax of the linear form (LF). The starting symbol is CG, which represents a linear representation of a conceptual graph. The referent field, which is common to both the linear form and the display form, is defined in Section 7.2. To minimize dependencies on implementation-dependent encodings, these rules contain no character constants. The symbol BeginConcept, for example, which is normally represented by the left bracket "[", could be redefined as some other symbol if necessary. The recommended print forms are listed in Section 4.5.

A cglf'CG is either a ConceptBranch or a Relation followed by either a ConceptLink or a ConceptList:
- partof: the outmost whole.
 CG ::= ConceptBranch#ql:cglf'ConceptBranch# | Relation#ql:cglf'Relation# (ConceptLink#ql:cglf'ConceptLink# | ConceptList#ql:cglf'conceptlist#)
- examples:
** [*a'Sit']-
 -1->(Sor)-2->[cat]
 -1->(on)-2->[mat]
** (Betw [x] [y] )
>> [x]-1->(Betw) -2->[y]
** (Betw [x] [y] [z])
>> [x]-1->(Betw)-
 <-2-[y]
 <-3-[z]
** (On)->[x]
**

A cglf'ConceptBranch is a Concept, which is optionally followed by either a RelationLink or a RelationList:
- partof: CG, ConceptLink,
 ConceptBranch ::= Concept#ql:cglf'Concept# (RelationLink#ql:cglf'conceptlink# | RelationList#ql:cglf'conceptlist#)?

A cglf'RelationBranch is a Relation, which is optionally followed by either a ConceptLink or a ConceptList:
 RelationBranch ::= Relation (ConceptLink | ConceptList)?

A cglf'ConceptLink is an Arc followed by a ConceptBranch:
- partof: CG, ConceptList, ConceptBranch,
 ConceptLink ::= Arc#ql:cglf'arc# ConceptBranch#ql:cglf'ConceptBranch#

A cglf'RelationLink is an Arc followed by a RelationBranch:
 RelationLink ::= Arc RelationBranch

A cglf'ConceptList is a BeginLinks marker, a ConceptLink, zero or more pairs of LinkSep and ConceptLink, and an EndLinks marker:
- partof: CG, ConceptBranch,
 ConceptList ::= BeginLinks ConceptLink (LinkSep ConceptLink)* EndLinks

A cglf'RelationList is a BeginLinks marker, a RelationLink, zero or more pairs of LinkSep and RelationLink, and an EndLinks marker:
 RelationList ::= BeginLinks RelationLink (LinkSep RelationLink)* EndLinks

A cglf'Concept is a BeginConcept marker, a Type, an optional pair of a FieldSep and a Referent, and an EndConcept marker:
- partof: ConceptBranch,
 Concept ::= BeginConcept Type (FieldSep Referent)? EndConcept

A cglf'Relation is a BeginRelation marker, a Type, and an EndRelation marker:
- partof: CG,
 Relation ::= BeginRelation Type EndRelation
- example:
[*a'Sit']-1->(Sor)-2->[cat]

An cglf'Arc is an optional Integer followed by either a LeftArc or a RightArc:
- partof: ConceptLink,
 Arc ::= Integer? (LeftArc | RightArc)

A cglf'Type is either a TypeLabel or a LambdaExpression:
- partof: Relation, Concept,
 Type ::= TypeLabel | LambdaExpression

cg'resourceInfHmn#cptResource843#

name::
* McsEngl.cg'resourceInfHmn@cptIt,

cg'BIBLIOGRAPHY

name::
* McsEngl.cg'BIBLIOGRAPHY@cptIt,

1995 Ellis:
Gerard Ellis and Robert A. Levinson and William Rich and John F. Sowa (Eds.) (1995) "Conceptual Graphs: Structure-based Knowledge Representation", Proceedings of the Third International Conference on Conceptual Structures ICCS'95, August 14-18, University of California, Santa Cruz, USA, Lecture Notes in Artificial Intelligence, Springer-Verlag, Number 954, Berlin.

1994: Tephenhart ea:
William M. Tepfenhart and Judith P. Dick and John F. Sowa (Eds.) (1994) "Conceptual Structures: Current Practices", Second International Conference on Conceptual Structures, ICCS'94, College Park, Maryland, USA, August, Lecture Notes in Artifical Intelligence, Number 835, Springer-Verlag, Berlin.

1993 Mineau ea:
Guy W. Mineau and Bernard Moulin and John F. Sowa (Eds.) (1993) "Conceptual Graphs for Knowledge Representation", Lecture Notes in Artificial Intelligence, Springer-Verlag, Berlin, Number 699, Proceedings of the 1st International Conference on Conceptual Structures, Quebec City, Canada, August 4-7.

1993 Pfeiffer ea:
Heather D. Pfeiffer and Timothy E. Nagle (Eds.) (1993) "Conceptual Structures: Theory and Implementation", Springer-Verlag, Number 754, Lecture Notes in Artificial Intelligence, Proceedings of the Seventh Annual Workshop on Conceptual Graphs, Las Cruces, New Mexico, July 8-10, 1992.

1993 Sowa:
John F. Sowa (1993) "Relating Diagrams to Logic", Guy W. Mineau and Bernard Moulin and John F. Sowa (Eds.), Conceptual Graphs for Knowledge Representation, Lecture Notes in Artificial Intelligence, Springer-Verlag, Berlin, Number 699, Proceedings of the 1st International Conference on Conceptual Structures, Quebec City, Canada, August 4-7.

1993 Sowa:
John F. Sowa (1993) "Logical Foundations for Representing Object-Oriented Systems", Journal of Experimental & Theoretical Artificial Intelligence, volume 5.

1992 Nagle ea:
Tim Nagle and Jan Nagle and Laurie Gerholz and Peter Eklund (Eds.) (1992) "Conceptual Structures: Current Research and Practice", Ellis Horwood.

1992 Sowa:
John F. Sowa (1992) "Conceptual Graphs Summary", T. E. Nagle and J. A. Nagle and L. L. Gerholz and P. W. Eklund (Eds.), Conceptual Structures: Current Research and Practice, Ellis Horwood, p. 3-51.

1991 Sowa:
John F. Sowa (1991) "Toward the Expressive Power of Natural Language," J.F. Sowa (Ed.), Principles of Semantic Networks: Explorations in the Representation of Knowledge, Morgan Kaufmann, San Mateo, CA, p. 157-189.

1990 Ketner:
Kenneth Laine Ketner (1990) "Elements of Logic: An Introduction to Peirce's Existential Graphs," Texas Tech University Press, Lubbock, Texas.

{time.1984 Sowa:
John F. Sowa (1984) "Conceptual Structures: Information Processing in Mind and Machine", Addison-Wesley, Reading, MA.
** The creator of 'Conceptual Graphs'.
** John Sowa's path-breaking book on conceptual graphs, however, provided a formal implementation of a Peirce-based graphical logic that was also computationally tractable.

1976 Sowa:
Sowa, John F., Conceptual Graphs for a Data Base Interface, IBM Journal of Research and Development, vol. 20, 1976, pp. 336-357.

1973 Roberts:
Don D. Roberts (1973) "The Existential Graphs of Charles S. Peirce", Mouton, The Hague, 1973. Collected papers of Charles Sanders Peirce Charles (1931-58) Hartshorne and Paul Weiss (Eds.) Harvard University Press, Cambridge.

1964 Zeeman:
Zeeman, Jay. ``The Graphical Logic of C. S. Peirce.'' Ph.D. diss., University of Chicago, 1964.

cg'CONFERENCE

name::
* McsEngl.cg'CONFERENCE@cptIt,

Where are the conferences for conceptual structures? There is an annual conference ``International Conference on Conceptual Structures'' (ICCS).
1994: 2nd concference.
1995: http://www.cs.rmit.edu.au/ICCS95
The conference ICCS95 was held at University of California, Santa Cruz, August 14-18,
1996:
http://www.cs.adelaide.edu.au/~iccs96/
The 1996 conference ICCS96 was held in Sydney, Australia
1997:
http://http://www.cs.uah.edu/~iccs97/
The 1997 conference ICCS97 will be held in August in Seattle.

cg'COMPANY

name::
* McsEngl.cg'COMPANY@cptIt,

Peirce Holdings International Pty. Ltd.
* Gerard Ellis (creator of 'peirce' program)
* URL: http://www.phi-net.com/

cg'INTERNET Resource

name::
* McsEngl.cg'INTERNET Resource@cptIt,

http://turing.une.edu.au/~cgtools : tools

cg'MAILGROUP

name::
* McsEngl.cg'MAILGROUP@cptIt,

Where are the electronic forums for discussing conceptual structures? The CG list has moved. To subscribe, send mail as follows:
To: majordomo@cs.uah.edu
Subject:
subscribe cg end
[faq]

cg'TERMS'IN'dpANS1999

name::
* McsEngl.cg'TERMS'IN'dpANS1999@cptIt,

[CG dpANStandard, http://www.bestweb.net/~sowa/cg/cgdpansw.htm, 1999aug01]
For the purpose of this dpANS, the terms and definitions given in ISO/IEC 10646-1, ISO/IEC 14481, ANSI X3.42, and the following list apply. Some terms may be shortened to acronyms or abbreviations, which are listed in parentheses after the term. The term "abstract syntax", for example, may be abbreviated "AS", and "conceptual relation" may be abbreviated "relation".

cgt'abstract'syntax (cgt'AS). A notation-independent specification of all semantically significant features of conceptual-graphs#ql:cgt'conceptual'graph#.

cgt'actor. A conceptual relation whose semantics may be computed or otherwise determined by an IT system external to the current knowledge base. It may affect or be affected by external entities that are not represented in the abstract syntax.

cgt'arc. An ordered pair <r,c>, which is said to link a conceptual-relation#ql:cgt'conceptual'relation# r to a concept#ql:cgt'concept# c.

cgt'blank'graph. An empty CG containing no concepts or conceptual relations.

cgt'bound'label. An identifier prefixed with the character "?" that marks a bound concept of a coreference set.

cgt'catalog'of'individuals. A context of type CatalogOfIndividuals whose designator#ql:cgt'designator# is a CG that contains a unique concept for each individual-marker#ql:cgt'individual'marker# that appears in a knowledge base. It may also contain additional concepts and relations that describe the individuals and the relationships among them.

cgt'compound'graph. A conceptual graph that is not simple#ql:cgt'simple'graph#. It contains one or more contexts or defined-quantifiers#ql:cgt'defined'quantifier#.

cgt'concept. A node in a CG that refers to an entity#ql:cgt'entity#, a set of entities, or a range of entities.

cgt'conceptual'graph (cgt'CG or cgt'graph). An abstract representation for logic with nodes called concepts and conceptual relations, linked together by arcs#ql:cgt'arc#.
[It is the 'system-hierarchy' of 'concepts'. nikkas, 2001-12-30]

cgt'conceptual'graph'interchange'form (cgt'CGIF). A normative concrete representation for conceptual graphs.

cgt'conformance'pair. A pair of identifiers, called the style and expressiveness, which specify the subset of CGIF that may be accepted or generated by an IT system.

cgt'conformity'operator. A symbol "::" that relates types to individual-markers#ql:cgt'individual'marker#. If t::i is true, the entity identified by the individual marker i is said to conform to the type t.

cgt'context. A concept that contains a nonblank CG that is used to describe the referent-of-the-concept#ql:cgt'referent#.

cgt'coreference'label. A defining-label#ql:cg'defining'label# or a bound-label#ql:cgt'bound'label# used to identify the concepts that belong to a particular coreference-set#ql:cgt'coreference'set#.

cgt'coreference'link. A dotted line that links concepts that belong to the same coreference set. Coreference links are used only in the nonnormative DF and LF; in CGIF, they are replaced by coreference labels.

cgt'coreference'set. A set of concepts in a CG that refer to the same entity or entities. In CGIF and LF, the members of a coreference set are marked with coreference labels that have matching identifiers; in DF, they may be linked by dotted lines called coreference links.

cgt'defined'quantifier. Any quantifier#ql:cgt'quantifier# other than the existential. Defined quantifiers are defined in terms of conceptual graphs that contain only existential quantifiers.

cgt'defining'label. An identifier prefixed with the character "*" that marks the defining concept of a coreference set.

cgt'display'form (DF). A nonnormative concrete representation for conceptual graphs that uses graphical displays for better human readability than CGIF.

cgt'encoded'literal. An encoded representation of a literal other than a number or a character string. It may be used to specify strings in a language other than conceptual graphs or MIME encodings of text, images, sound, and video.

cgt'entity. Anything that exists, has existed, or may exist.

cgt'extended'syntax (ES). Extensions to the CGIF syntax defined in terms of the basic features of CGIF.

cgt'first'order'logic (FOL). A version of logic that forms the foundation of many IT languages and systems, including SQL. See Chapter 9 for further information.

cgt'formal'parameter (parameter). A concept in a lambda expression whose referent is not defined until the concept is linked to some coreference set whose referent is defined.

cgt'higher'order'logic (HOL). An extension to first-order logic that is represented by conceptual graphs and KIF. See Chapter 9 for further information.

cgt'identifier. A character string beginning with a letter or the underscore character "_" and continuing with zero or more letters, digits, or underscores. Case is not significant: two identifiers that differ only in the case of one or more letters are considered identical.

cgt'indexical. A designator#ql:cgt'designator# represented by the character "#" followed by an optional identifier. It is used by implementation-dependent methods for locating the referent of a concept.

cgt'individual'marker. A designator#ql:cgt'designator#, represented by the character "#" followed by an integer, used as an index of some entry in the catalog of individuals of the current knowledge base. Individual markers cannot be used to identify individuals across different knowledge bases, but within any single knowledge base, they can serve as unique identifiers or surrogates for the entities referenced in that knowledge base.

cgt'knowledge'base (KB). A context with four nested contexts:
- a type hierarchy,
- a relation hierarchy,
- a catalog of individuals, and
- an outermost context of type Assertion.

cgt'Knowledge'Interchange'Format (KIF). A language for representing logic that has a model-theoretic semantics equivalent to the semantics of conceptual graphs.

cgt'lambda'expression. A CG with zero or more concepts marked as formal parameters. There is no semantic distinction between a CG with no formal parameters and a zero-adic lambda expression.

cgt'layout'information. Specification of the shapes and positions of the nodes and arcs of a CG when it is displayed on a two-dimensional surface. The layout information is not represented in the abstract syntax, and it has no effect on the CG semantics.

cgt'linear'form (LF). A nonnormative concrete representation for conceptual graphs intended for better human readability than CGIF, but without requiring graphical displays.

cgt'negation. A context of type Proposition to which is attached a monadic conceptual relation of type Neg or its abbreviation by the character "~" or "¬".

cgt'nested'conceptual'graph. A CG that is used as a designator#ql:cgt'designator# in the referent field of some concept.

cgt'outermost'context. A context of type Assertion containing a nested CG that asserts the facts and axioms of some knowledge base.

cgt'quantifier. A symbol in the referent-field-of-a-concept that determines the range of entities in the referent of the concept. The default quantifier is the existential, which is represented by a blank; all others are defined quantifiers.

cgt'referent. The entity or entities that a concept refers to.

cgt'referent'field. The area in a concept where the referent is specified.

cgt'relation'hierarchy. A context#ql:cgt'context# of type RelationHierarchy that specifies a partial ordering of relation labels, some or all of which are defined by lambda expressions.

cgt'relation'type'label (relation label). An identifier that specifies a type of conceptual relation.

cgt'scoping'context. A special context with the type label SC, which is used to delimit the scope of quantifiers. No conceptual relation may be linked to any context of type SC.

cgt'signature. For any conceptual relation r with valence n, a list of n types that restrict the types of concepts that may be linked to each of the n arcs of r.

cgt'simple'graph. A conceptual graph that contains no contexts#ql:cgt'context#, negations, or defined quantifiers.

cgt'singleton'graph. A CG that contains a single concept and no conceptual relations.

cgt'special'context. A kind of context defined by the extended syntax in Section 8.1. Special contexts include negations and contexts whose type label is If, Then, Either, Or, and SC.

cgt'star'graph. A CG that contains a single conceptual relation and the concepts that are attached to each of its arcs.

cgt'type'field. The area in a concept node where the concept type is specified.

cgt'type'hierarchy. A context of type TypeHierarchy that specifies a partial ordering of type labels, some or all of which are defined by monadic lambda expressions.

cgt'type'label. An identifier that specifies a type of concept.

cgt'valence. A nonnegative integer that specifies the number of arcs that link a conceptual relation to concepts. All conceptual relations with the same relation label have the same valence. A conceptual relation or relation label of valence n is said to be n-adic; monadic is synonymous with 1-adic, dyadic with 2-adic, and triadic with 3-adic.

cg'TOOL

name::
* McsEngl.cg'TOOL@cptIt,

For information about CG tools see the CG Tools Home Page: http://turing.une.edu.au/~cgtools

cg'CGs'and'EGs

name::
* McsEngl.cg'CGs'and'EGs@cptIt,

cg'DIFFERENCE

name::
* McsEngl.cg'DIFFERENCE@cptIt,

The differences between EGs and CGs result from differences in their origin and motivation.
In formulating EGs, Peirce was trying to find the simplest possible primitives for representing logic and operating on logical statements.
In formulating CGs, Sowa was trying to find the most direct mapping from natural languages to logic.
Since ordinary language has a much richer variety of expressive forms than Peirce's primitives, the CG notation includes many notational extensions that are designed to represent the major semantic forms of natural languages. To balance expressive power with simplicity, CGs provide both a basic and an extended notation.
The basic CG notation is essentially a typed version of Peirce's EGs with the same logical primitives: negation, conjunction, and the existential quantifier.
The extended CG notation, however, provides mechanisms for defining an open-ended range of new forms of expression, each of which has a direct mapping to some natural language expression and a formally defined expansion into the basic primitives. Following are the ways in which the extended CGs differ from EGs:

In the basic CGs, Peirce's line of identity is represented by one or more concept nodes linked by dotted lines called coreference links. As an alternate notation, the dotted lines may be replaced by symbols, called coreference labels, such as *x and ?x. One label marked with * is called the defining node, and the others marked with ? are called bound nodes. The labels are sanctioned by one of Peirce's observations that any line of identity could be cut with the two ends labeled to show how they could be reconnected.

In the extended CGs, generalized quantifiers can be introduced, including the universal, plurals, and various kinds of indexicals. Each of the extended forms, however, is defined by a formal mapping to the basic notation.

Each concept includes a type label inside the concept box. That label corresponds to a monadic predicate that could be attached to an EG line of identity. In the extended notation, the type labels may be replaced by lambda expressions that define them. The term lambda expression is taken from Alonzo Church, but the idea was anticipated by Peirce, who used labeled hooks instead of the Greek letter lambda.

In CGs, Peirce's ovals for negation are represented by concept boxes with the type label Proposition and an attached negation relation Neg (or its abbreviation by a ^ symbol). Instead of Peirce's tinctures for representing modalities, other relations can be attached to the concept box, such as Psbl for possibility or Necs for necessity.

Besides a type label, a concept box includes a referent field that identifies or partially identifies the referent of the concept. Following Peirce, the three kinds of referents are icons (represented by a diagram or picture), indexes (represented by a name or other indexical), and symbols (represented by a nested conceptual graph that describes the entity).

The linguistic work on thematic roles or case relations has been adopted for the basic types of conceptual relations. New types of relations can be defined in terms of them by lambda expressions, which like the lambda expressions for concept types can be written in place of the relation labels.

Except for notation, the basic CGs are minimal variants of EGs. The extended CGs provide a richer notation that maps almost one-to-one to the semantic structures of natural languages. The formal mapping from the extended to the basic CGs helps to bridge the gap between language and logic.
[Fulfilling Peirce's Dream: Conceptual Structures and Communities of Inquiry, Leroy Searle, Mary Keeler, John Sowa, Harry Deluagch, and Dickson Lukose, ICCS'97]

cg'CGs'and'DRSs

name::
* McsEngl.cg'CGs'and'DRSs@cptIt,

When Conceptual Structures appeared at the end of 1983, it did not include recent work by Hans Kamp [8] on discourse representation theory. After spending some time translating English to logic, Kamp had realized that the mapping to predicate calculus involved convoluted distortions of the sentence structure of English and other natural languages. In order to simplify the mapping, Kamp designed his discourse representation structures (DRSs) and formulated rules for representing and resolving indexicals in the DRS notation. Although Kamp's motivation was very different from Peirce's and he had no awareness of Peirce's graphs, Kamp's DRS notation happened to be isomorphic to Peirce's EGs. Since CGs are based on EGs, they are also isomorphic to DRSs; therefore, Kamp's rules for resolving indexicals in the DRS notation can be applied directly to EGs and CGs. A century after Peirce's pioneering work on both graph logic and indexicals, the former proved to be ideally suited for representing the latter.
[8]Kamp, Hans, Events, Discourse Representations, and Temporal References, Langages, vol. 64, 1981, pp. 39-64.
[Fulfilling Peirce's Dream: Conceptual Structures and Communities of Inquiry, Leroy Searle, Mary Keeler, John Sowa, Harry Deluagch, and Dickson Lukose, ICCS'97]

cg'EVOLUTION#cptCore546.171#

name::
* McsEngl.cg'EVOLUTION@cptIt,

{time.1984} Sowa:
John F. Sowa (1984) "Conceptual Structures: Information Processing in Mind and Machine", Addison-Wesley, Reading, MA.
** The creator of 'Conceptual Graphs'.
** John Sowa's path-breaking book on conceptual graphs, however, provided a formal implementation of a Peirce-based graphical logic that was also computationally tractable.

{time.1976} Sowa:
Sowa, John F., Conceptual Graphs for a Data Base Interface, IBM Journal of Research and Development, vol. 20, 1976, pp. 336-357.

{time.1896} Existential-Graphs:
Charles Sanders Peirce developed the logic of Existential Graphs.

lagCmr.knowledge.CONTROLLED-NATURAL-LANGUAGE

_CREATED: {2014-02-06}

name::
* McsEngl.lagCmr.knowledge.CONTROLLED-NATURAL-LANGUAGE@cptIt,

cnl'resource

name::
* McsEngl.cnl'resource@cptIt,

_ADDRESS.WPG:
* Controlled Natural Languages for Knowledge Representation
http://web.science.mq.edu.au/~rolfs/papers/coling10-schwitter.pdf,

lagCmr.knowledge.CycL

_CREATED: {1998-02-26} cycl'toc#ql:[Level CONCEPT:rl? conceptIt517#

name::
* McsEngl.lagCmr.knowledge.CycL@cptIt,

DEFINITION

CycL is Cyc's large and extraordinarily flexible knowledge representation language. It is essentially an augmentation of first-order predicate calculus (FOPC), with extensions to handle equality, default reasoning, skolemization, and some second-order features. (For example, quantification over predicates is allowed in some circumstances, and complete assertions can appear as intensional components of other assertions.) CycL uses a form of circumscription, includes the unique names assumption, and can make use of the closed world assumption where appropriate.
[http://www.cyc.com/cyc/cycl] {2014-02-05}

CycL is a formal language whose syntax derives from first-order predicate calculus (the language of formal logic). In order to express common sense knowledge, however, it goes far beyond first order logic.
[http://www.cyc.com/cyc-2-1/ref/cycl-syntax.html, 1997aug08] 1998feb26

cycl'GENERIC

_GENERIC:
* ONTOLOGY_LANGUAGE#cptIt557#
* language.computer.representation#cptItsoft501#
CycL is a purely declarative language, [http://www.cyc.com/cycl.html 2000jul22]

cycl'WHOLE

_WHOLE:
cyc#cptIt502#

cycl'TERM

name::
* McsEngl.cycl'TERM@cptIt,
* McsEngl.cycl'NAME@cptIt,
* McsEngl.term'in'cycl@cptIt517,
* McsEngl.cycl'unit@cptIt,
* McsEngl.cycl'CONCEPT@cptIt,
* McsEngl.cycl'FRAME@cptIt,

=== _NOTES: Synonymous:   concept, constant, atomic term, unit, frame,
CYC® constants are also called terms or units .
[CYC® Ontology Guide: Introduction August 12, 1997] 1998feb28

_DEFINITION:
A term is basically anything that can be an argument to a predicate#ql:cycl'predicate# or function#ql:cycl'function#.
- Variables#ql:cycl'variable# are terms.
- Constants, both atomic-constants#ql:cycl'atomic'constant# and reified-NATs#ql:cycl'nat.reifiable#, are terms.
- Non-reified-NATs#ql:cycl'nat.reifiable# are terms.
- Numbers,
- strings, or even
- entire formulas can be used as terms.
[http://www.cyc.com/glossary.html 2000jul22] 2000jul24


Each concept in the knowledge base is represented as a CYC® constant .
[CYC® Ontology Guide: Introduction August 12, 1997] 1998feb28

A term is basically anything that can be an argument to a predicate or function. Variables are terms. Constants, both atomic constants and reified nats, are terms. Non-reified NATs are terms. Numbers, strings, or even entire formulas can be used as terms.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb26

_WHOLE:
* The vocabulary of CycL consists of terms.
[http://www.cyc.com/doc/handbook/oe/02-the-syntax-of-cycl.html] 2007-09-21

Constants are the "vocabulary words" of the Cyc knowledge base.
[http://www.cyc.com/cyc-2-1/ref/cycl-syntax.html, 1997aug08] 1998feb26

DATA STRUCTURE:
Each constant has its own data structure in the KB, consisting of the constant and the assertions which describe it.
[http://www.cyc.com/cyc-2-1/ref/cycl-syntax.html, 1997aug08] 1998feb26

_SUBGENERAL:
The set of terms can be divided into
constants,
non-atomic terms (NATs),
variables, and
a few other types of objects.
[http://www.cyc.com/cyc-2-1/ref/cycl-syntax.html, 1997aug08] 1998feb26

cycl'TERM.VARIABLE

name::
* McsEngl.cycl'TERM.VARIABLE@cptIt,
* McsEngl.cycl'VARIABLE-cptIt517@cptIt,

cycl'variable'DEFINITION ANALYTIC:
* Quantified CycL expressions (discussed below) contain one or more variables which stand for constants whose identities are not specified. A variable may appear (nearly) anywhere a constant can appear.
[http://www.cyc.com/doc/handbook/oe/02-the-syntax-of-cycl.html] 2007-09-21

* variable A type of CycL term appearing in rules standing for not-known-in-advance constants that satisfy the formula of a rule. When used in a KB query, variables specify which bindings are sought by the inference engine.

One type of term. Variables appear in Cyc-rules#ql:cycl'rule# to stand for not-known-in-advance constants that satisfy the formula of the rule. Variables also are used in formulas given to the ASK utility, to stand for the results the asker wishes to find.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb27

Quantified CycL expressions (discussed below) contain one or more variables which stand for constants whose identities are not specified. A variable may appear (nearly) anywhere a constant can appear.
[http://www.cyc.com/cyc-2-1/ref/cycl-syntax.html, 1997aug08] {1998-03-01}

WHOLE:
Quantified CycL expressions (discussed below) contain one or more variables which stand for constants whose identities are not specified. A variable may appear (nearly) anywhere a constant can appear.
[http://www.cyc.com/cyc-2-1/ref/cycl-syntax.html, 1997aug08] 1998feb26

name:
Variable names must begin with a question mark and are ordinarily written using capital letters ("?FOO")
[http://www.cyc.com/cyc@cptIt2@cptIt1/ref/cycl-syntax.html, 1997aug08] 1998feb26

cycl'VARIABLE.BOUND

name::
* McsEngl.cycl'VARIABLE.BOUND@cptIt,
* McsEngl.bound'variable'in'cycl-cptIt517@cptIt,

Normally, variables need to be introduced ("bound") by a quantifier before they are used. Each quantifier binds exactly one variable, and every variable used should be bound by exactly one quantifier. Furthermore, a variable has no meaning outside the scope of the quantifier which binds it.
[http://www.cyc.com/cyc-2-1/ref/cycl-syntax.html, 1997aug08] 2000jul25

cycl'VARIABLE.UNBOUND

name::
* McsEngl.cycl'VARIABLE.UNBOUND@cptIt,
* McsEngl.unbound'variable'in'cycl-cptIt517@cptIt,

However, if a unbound variable appears in a CycL formula, it is always assumed to be universally quantified, with the result that
(#$implies (#$owns#$Fred ?X) (#$objectFoundInLocation ?X#$FredsHouse))
is exactly equivalent to (#$forAll ?X (#$implies (#$owns#$Fred ?X) (#$objectFoundInLocation ?X#$FredsHouse)))
[http://www.cyc.com/cyc-2-1/ref/cycl-syntax.html, 1997aug08] 2000jul25

cycl'FORT

name::
* McsEngl.cycl'FORT@cptIt,

cycl'fort'DEZIGNEINO:
* cycl'fort, first'order'reified'terms'in'cycl-517, fort'in'cycl-517,

cycl'fort'DEFINITION-SYTHETIC:
There are two kinds of FORTs: constants and non-atomic terms (NATs).
[http://www.cyc.com/cycdoc/ref/glossary.html#ontology] 2007-09-21

cycl'fort'TUTEINO:
* CYCL_ONTOLOGY#ql:cycl'ontology-*###

The CYC® KB is the repository of Cyc's knowledge. It consists of
- a large number of FORTs#ql:cycl'fort# and
- an even larger number of assertions#ql:cycl'assertion# involving those constants.
[http://www.cyc.com/cycdoc/ref/glossary.html#justification] 2007-09-20

cycl'fort'SPESIFEINO:
* CONSTANT##
* NAT##

There are two kinds of FORTs:
- constants and
- non-atomic terms (NATs).
[http://www.cyc.com/cycdoc/ref/glossary.html#ontology] 2007-09-21

cycl'fort.CONSTANT

name::
* McsEngl.cycl'fort.CONSTANT@cptIt,
* McsEngl.cycl'constant@cptIt,
* McsEngl.constant'in'cycl@cptIt517,

cycl'constant'DEFINITION:
Constants are the words of Cyc's vocabulary.
There are 2 kinds of constants.
a) Atomic-constants#ql:"cycl'atomic'constant"#, such as#$BillM or#$likesAsFriend, have names that begin with "#$".
b) Reified NAT#ql:cycl'nat#s are another type of constant. They often don't have names, but can be referred to with non-atomic terms like (#$FruitFn#$AppleTree).
A constant is one type of term.
[http://www.cyc.com/glossary.html 2000jul22] 2000jul24

cycl'constant'MEANING:
* each constant stands for some thing or concept in the world that we think many people know about and/or that most could understand.
[http://www.cyc.com/doc/handbook/oe/02-the-syntax-of-cycl.html] 2007-09-21

* It's important to remember that the names we assign to constants mean nothing to Cyc. It doesn't matter whether the concept green is represented by#$Green,#$GreenColor,#$Verde,#$Gruen, or#$EMRG.
It's also very important never to assume that you, the observer of the Cyc KB, can know with certainty what a constant denotes to the system, just from seeing its name and nothing else.
The meaning of a constant in CycL is determined by the assertions in the KB that use that constant.
[http://www.cyc.com/cyc-2-1/ref/cycl-syntax.html, 1997aug08] 1998feb26

cycl'constant'NAME:
By convention, the name of every CYC® constant begins with the characters#$;
[CYC® Ontology Guide: Introduction August 12, 1997] 1998feb28

Most Cyc constants have a unique name, such as#$BillM,#$massOfObject, or#$MapleTree. (For information on those that don't, see Reifiable Functions below.) Cyc constants are referred to with the prefix "#$" (read "hash-dollar"). These characters are sometimes omitted in documents describing CycL, and they may be omitted by certain interface tools. But in these Cyc Documentation pages, the policy will be to use the "#$" prefix when referring to Cyc constants.
[http://www.cyc.com/cyc-2-1/ref/cycl-syntax.html, 1997aug08] 1998feb26

cycl'constant'DATA_STRUCTURE:
Each constant has its own data structure in the KB, consisting of
- the constant and
- the assertions which describe it.
[http://www.cyc.com/doc/handbook/oe/02-the-syntax-of-cycl.html] 2007-09-21

cycl'constant.ATOMIC

name::
* McsEngl.cycl'constant.ATOMIC@cptIt,
* McsEngl.atomic'constant'in'cycl-cptIt517@cptIt,
* McsEngl.cycl'ATOMIC'CONSTANT@cptIt,

DEFINITION ANALYTIC:
an atomic (one word) constant.
[http://www.cyc.com/cyc-api.html, v0.3 {1999-03-11}]

Atomic constants are those constants#ql:cycl'constant# which have names that begin with "#$". Atomic constants were put into the KB by explicitly creating them.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb27

cycl'constant.COLLECTION

name::
* McsEngl.cycl'constant.COLLECTION@cptIt,
* McsEngl.collection'in'cycl-cptIt517@cptIt,
* McsEngl.cycl'COLLECTION@cptIt,

DEFINITION ANALYTIC:
a collection is a constant that denotes a set of objects, rather than an individual object. For example, the collection#$Dog denotes the set of all dogs, while the individual#$Snoopy denotes a specific dog. For more on this topic, see the constants#$Collection and#$Individual.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb27

cycl'constant.INDIVIDUAL

name::
* McsEngl.cycl'constant.INDIVIDUAL@cptIt,
* McsEngl.individual'in'cycl-cptIt517@cptIt,
* McsEngl.cycl'individual-cptIt517@cptIt,

In the Cyc ontology, an individual is a constant that denotes a single object, rather than a collection of objects. For example, the individual#$Snoopy denotes a specific dog, while the collection#$Dog denotes the set of all dogs.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb27

cycl'fort.NAT

name::
* McsEngl.cycl'fort.NAT@cptIt,
* McsEngl.cycl'NAT@cptIt,
* McsEngl.cycl'NON'ATOMIC'TERM@cptIt,
* McsEngl.cycl'Term.Nat@cptIt,

DEFINITION ANALYTIC:
* A non-atomic term (NAT) is a way of specifying a term as a function of some other term(s). Every NAT is composed of a function and one or more arguments to that function.
Consider, for example, the function#$FruitFn, which takes as an argument a type of plant and denotes the collection of the fruits of that type of plant. This function can be used to build the following NATs:
(#$FruitFn#$AppleTree)
(#$FruitFn#$PearTree)
(#$FruitFn#$WatermelonPlant)
. . . .
Note that there may or may not be a named CYC constant corresponding to the collection of apples (that is, a constant called#$Apple). The NAT (#$FruitFn#$AppleTree) provides a way of talking about this collection even if the corresponding constant does not exist.
[http://www.cyc.com/doc/handbook/oe/02-the-syntax-of-cycl.html] 2007-09-21

non-atomic term (NAT): A term which is neither a variable nor an atomic constant. NATs are terms formed by applying a function to its arguments.
[http://www.cyc.com/glossary.html 2000jul22] 2000jul24

A non-atomic term (NAT) is a way of specifying a term using a function of some other term(s). Every ground NAT -- one which doesn't involve quantified variables -- is composed of nothing more or less than: a function and one or more arguments to that function. Consider, for example, the function FruitFn, which takes as an argument a type of plant and returns the collection of the fruits of that type of plant. This function can be used to build the following NATs:
(FruitFn AppleTree) (FruitFn PearTree) (FruitFn WatermelonPlant)
The expression (FruitFn AppleTree) has the same meaning as the constant term Apple, namely the set of all the apples, all the fruits of apple trees. Note that there may or may not already be a named CycL constant corresponding to the collection of apples (that is, a constant called Apple). The NAT (FruitFn AppleTree) provides a way of talking about this collection even if the corresponding constant does not exist. Similarly, they enable us to avoid having explicit terms like LiquidHydrogen,. . . LiquidLawrencium, since those hundreds of terms can be expressed as NATs using the single function LiquidFn, as in (LiquidFn Oxygen) to denote the same term that LiquidOxygen would denote if it existed in the ontology, namely all portions (real or imagined, past or present or future, etc.) of liquid oxygen.
NATs can be used anywhere a constant can be used.
[http://www.cyc.com/cycl.html 2000jul22] 2000jul24

NATs are terms formed by applying a function to its arguments.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb27

nat: A Non-Atomic Term is a CycL term (argument to CycL predicate or function) which is neither a variable nor an atomic (one word) constant. NATs are terms formed by applying a CycL function to its arguments.
[http://www.cyc.com/cyc-api.html, v0.3 {1999-03-11}]

GENERAL:
expression,
term,

cycl'NAT.NOT'REIFIABLE

name::
* McsEngl.cycl'NAT.NOT'REIFIABLE@cptIt,
* McsEngl.cycl'Not'Reified'Nat@cptIt,

Non-reifiable functions include mathematical functions like#$PlusFn. Just because we use a NAT like (#$PlusFn 59 64) doesn't mean we want to add to the KB a unit denoting the number 123. If we want to talk about the number 123, we'll just refer to it directly.
[http://www.cyc.com/cyc-2-1/ref/cycl-syntax.html, 1997aug08] 2000jul25

cycl'NAT.REIFIABLE

name::
* McsEngl.cycl'NAT.REIFIABLE@cptIt,
* McsEngl.cycl'Reified'nat@cptIt,
* McsEngl.reified'nat@cptIt517,

_DEFINITION:
Many CycL functions are instances of#$ReifiableFunction. Each time an instance of#$ReifiableFunction is used with a new set of arguments to build a NAT, that NAT is reified, that is, preserved in the Cyc ontology as a constant. Constants which are reified NATs don't start out with proper constant names, but can always be referred to by their NAT expression. They can later be assigned constant names if desired.
[http://www.cyc.com/cyc-2-1/ref/cycl-syntax.html, 1997aug08] 2000jul25

JENEREPTO:
* CYCL_CONSTANT##

cycl'RELATION

name::
* McsEngl.cycl'RELATION@cptIt,
* McsEngl.relation'in'cycl-cptIt517@cptIt,

_DEFINITION:
relation: In the math or database worlds, a relation is a set of ordered n-tuples. One might talk about the relation "Father", whose elements include (Katherine, Lloyd), (Karen, Wes), (John, Bob), and so on, where the first item in each element is a person and the second is that person's biological father. Relations in Cyc® are also ordered n-tuples. The notation we use is different from that above and depends on whether the relation is a function or a predicate. In both cases, we create a constant#ql:cycl'constant# to stand for the relation. In our example, we might call the constant#$FatherOf -- an uppercase name, because it's a function (people have only one biological father). We'd write, for example (#$FatherOf#$Katherine)
to refer to Lloyd, since Katherine and Lloyd are in the "Father" relation.
Predicates are the other main sort of relation in Cyc®. Predicates are used to represent relations which are not functions (not single-valued). The relation "Parents" should be represented with a predicate. For example, we'd write
(#$parents#$Katherine#$Lloyd) (#$parents#$Katherine#$Bonnie)
to say that (Katherine, Lloyd) and (Katherine, Bonnie) are in the "Parents" relation. When using predicates, the arity of the predicate is the same as the arity of the underlying relation; with functions, the arity of the function is one less than the arity of the underlying relation.
[http://www.cyc.com/glossary.html 2000jul22] 2000jul24

relation In the math or database worlds, a relation is a set of ordered n-tuples. One might talk about the relation "Father", whose elements include (Katherine, Lloyd), (Karen, Wes), (John, Bob), and so on, where the first item in each element is a person and the second is that person's biological father. Relations in Cyc are also ordered n-tuples [set of n elements]. The notation we use is different from that above and depends on whether the relation is a function or a predicate. In both cases, we reify a constant to stand for the relation. In our example, we might call the constant#$FatherOf -- an uppercase name, because it's a function (people have only one biological father). We'd write, for example (#$FatherOf#$Katherine) to refer to Lloyd, since Katherine and Lloyd are in the "Father" relation.
Predicates are the other main sort of relation in Cyc. Predicates are used to represent relations which are not functions (not single-valued). The relation "Parents" should be represented with a predicate. For example, we'd write
(#$parents#$Katherine#$Lloyd) (#$parents#$Katherine#$Bonnie) to say that (Katherine, Lloyd) and (Katherine, Bonnie) are in the "Parents" relation. When using predicates, the arity of the predicate is the same as the arity of the underlying relation; with functions, the arity of the function is one less than the arity of the underlying relation.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb26

cycl'RELATION'ARITY

name::
* McsEngl.cycl'RELATION'ARITY@cptIt,
* McsEngl.cycl'ARITY@cptIt,

DEFINITION SYNTHETIC:
The arity of a CycL predicate or function is the number of arguments it takes.
1) Unary predicates and functions take just 1 argument.
2) Binary predicates and functions take 2 arguments.
3) Ternary predicates and functions take 3 arguments.
4) Quaternary predicates and functions take 4 arguments.
5) Quintary predicates and functions take 5 arguments.
No CycL predicate or function currently takes more than 5 arguments.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb27

cycl'relation.TRUTH-FUNCTION

name::
* McsEngl.cycl'relation.TRUTH-FUNCTION@cptIt,
* McsEngl.truth'function'in'cycl-cptIt517@cptIt,

_DEFINITION:
Truth Functions which can be applied to one or more other concepts and return either true or false. For example#$siblings is the sibling relationship, true if the two arguments are siblings. By convention, truth function constants start with a lower-case letter. Truth functions may be broken down into
- logical connectives (such as#$and,#$or,#$not,#$implies),
- quantifiers (#$forAll,#$thereExists, etc.) and
- predicates.
[http://en.wikipedia.org/wiki/Cyc]

cycl'TruthFunction.PREDICATE

name::
* McsEngl.cycl'TruthFunction.PREDICATE@cptIt,

cycl'predicate'DEZIGNEINO:
cycl'PREDICATE-517, predicate'in'cycl-517,

cycl'predicate'DEFINITION:
Predicates are relations#ql:cycl'relation# denoted by Cyc® constants. They can be used to form atomic formulas by applying them to the right number and type of arguments. By convention, constants that denote predicates have names beginning with a lowercase letter.
[http://www.cyc.com/glossary.html 2000jul22] 2000jul24

Predicates can be thought of as functions that always just return true or false. More precisely, they are used to construct CYC®-assertions#ql:cycl'assertion#, which can be evaluated as true or false.
whereas a predicate, applied to legal arguments, always results in an expression which is either true or false, a function may produce (an expression having) any sort of value at all: a number, a word, a collection, etc.
[CYC® Ontology Guide: Introduction August 12, 1997] 1998feb28

Predicates are relations denoted by Cyc constants. They can be used to form atomic-formulas#ql:cycl'atomic'formula# by applying them to the right number and type of arguments.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb26

cycl'predicate'NAME:
By convention, constants that denote predicates have names beginning with a lowercase letter
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb26

cycl'predicate'EXAMPLE:
(#$parents#$Katherine#$Lloyd) =
(#$parents#$Katherine#$Bonnie) = "Bonnie is the parent of Katherine".

cycl'predicate'JENEREINO:
* RELATION
* TRUTH_FUNCTION

cycl'predicate'WHOLE:
* ATOMIC_ASSERTION##

cycl'Predicate'And'Function:
When a CycL predicate is applied to the right number and type of arguments, the expression formed is a CycL formula--a formula expressing a proposition about something.
In contrast, expressions formed with functions as arg 0 (in the leading position) are terms and so do not express propositions.
[http://www.cyc.com/cycdoc/ref/glossary.html] 2007-09-22

cycl'TruthFunction.QUANTIFIER

name::
* McsEngl.cycl'TruthFunction.QUANTIFIER@cptIt,
* McsEngl.cycl'QUANTIFIER-cptIt517@cptIt,

cycl'quantifier'DEFINITION:
A quantifier is a special type of Cyc constant used in quantification. CycL contains five quantifiers:#$forAll,#$thereExists,#$thereExistAtLeast,#$ThereExistAtMost, and#$thereExistExactly. Each quantifier introduces a new variable.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb27

cycl'quantifier'SCOPE:
The scope of a quantifier is the range in which its corresponding variable is bound. It begins with the left parenthesis which precedes the quantifier, and ends with the matching right parenthesis.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb27

cycl'quantifier'SUBGENERAL:
a) Universal quantification corresponds to English expressions like every, all, always, everyone, and anything, while
b) existential quantification corresponds to English expressions like someone, something, and somewhere. CycL contains one universal quantifier,#$forAll, and four existential quantifiers,#$thereExists,#$thereExistAtLeast,#$thereExistAtMost, and#$thereExistExactly.

cycl'TruthFunction.LOGICAL'CONNECTIVE

name::
* McsEngl.cycl'TruthFunction.LOGICAL'CONNECTIVE@cptIt,
* McsEngl.cycl'LOGICAL'CONNECTIVE@cptIt,

DEFINITION ANALYTIC:
Logical connectives are special constants analogous to the logical operators of formal logic. They are used to build up complex formulas out of atomic formulas. The logical connectives of CycL are#$not,#$and,#$or, and#$implies.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb27

cycl'relation.FUNCTION

name::
* McsEngl.cycl'relation.FUNCTION@cptIt,
* McsEngl.cycl'FUNCTION-cptIt517@cptIt,
* McsEngl.function'in'cycl-cptIt517@cptIt,

cycl'function'DEFINITION:
* Functions, which produce new terms from given ones. For example,#$FruitFn, when provided with an argument describing a type (or collection) of plants, will return the collection of its fruits. By convention, function constants start with an upper-case letter and end with the string "Fn".
[http://en.wikipedia.org/wiki/Cyc] 2007-09-21

* A function (in the mathematical sense) is a relation such that for each thing in its domain (the universe of things it can be applied to), there is a single thing in its range (the universe of results it can have) such that the relation holds between them. Functions in CycL are also single-valued. They are denoted by constants in the KB. They can be applied to arguments to form non-atomic terms, which can then appear in formulas as an argument to a predicate.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb26

Functions differ from predicates in that they return a CYC term as a result. Accordingly, function definitions must also describe the type of the result to be returned, using the predicate#$resultIsa. Consider, for example, the function#$GovernmentFn:
(#$arity#$GovernmentFn 1)
(#$arg1Isa#$GovernmentFn#$GeopoliticalEntity)
(#$resultIsa#$GovernmentFn#$RegionalGovernment)
The argument to#$GovernmentFn must always be an instance of#$GeopoliticalEntity, and a NAT created using#$GovernmentFn will always be an instance of#$RegionalGovernment.
[http://www.cyc.com/doc/handbook/oe/02-the-syntax-of-cycl.html] 2007-09-21

cycl'function.EXAMPLE:
(#$FatherFn#$Katherine)
This denotes the father of Katherine, an individual.

cycl'function.SPESIFEINO:
* INDIVIDUAL_FUNCTION
* COLLECTION_FUNCTION
-----------------------------------
* Reifiable Functions
* Unreifiable Functions (regular)
-----------------------------------
* SKOLEM_FUNCTION


Most functions are instances of either#$IndividualDenotingFunction or#$CollectionDenotingFunction.#$GovernmentFn is an example of the former, since a NAT like (#$GovernmentFn#$UnitedStatesOfAmerica) denotes an individual government. On the other hand,#$FruitFn is an example of the latter, since a NAT like (#$FruitFn#$AppleTree) denotes the collection of all apples, not an individual apple.
[http://www.cyc.com/doc/handbook/oe/02-the-syntax-of-cycl.html] 2007-09-21

* Units of measure are regular (but not reifiable) functions [glossary]

cycl'function'AND'predicate:
CYC® functions are syntactically similar to CYC® predicates; but whereas a predicate, applied to legal arguments, always results in an expression which is either true or false, a function may produce (an expression having) any sort of value at all: a number, a word, a collection, etc.
[CYC® Ontology Guide: Introduction August 12, 1997] 1998feb28

cycl'FUNCTION.SKOLEM

name::
* McsEngl.cycl'FUNCTION.SKOLEM@cptIt,
* McsEngl.skolem'function'in'cycl-cptIt517@cptIt,

Skolem functions are Cyc functions which are used in the implementation of formulas that use existential quantification. They are isa#$ReifiableFunction, and are automatically generated.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb26

cycl'EXPRESSION

name::
* McsEngl.cycl'EXPRESSION@cptIt,
* McsEngl.expression'in'cycl-cptIt517@cptIt,

DEFINITION SYNTHETIC:
Terms#ql:cycl'term# are combined into meaningful CycL expressions.
[http://www.cyc.com/cyc-2-1/ref/cycl-syntax.html, 1997aug08] 1998feb26

In the most general sense, an expression is a sequence of symbols. The phrase CycL expression refers to expressions that follow the syntax rules of CycL.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 2000jul25

cycl'expression'SUBGENERAL:
* FORMULA/SENTENCE##
* NAT#ql:cycl'nat###
* GROUND_EXPRESSION
* interval-based quantity expression (IBQE)

a) Some CycL expressions are propositions or statements about the world; these are called constraint language proposition expressions or formulas#ql:"cycl'formula"#.
b) Other CycL expressions form terms that stand for concepts; these are called non-atomic terms (NATs).
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb27

ground expression
An expression is ground iff it contains no variables.
[http://www.cyc.com/cycdoc/ref/glossary.html] 2007-09-22

cycl'EXPRESSION.LITERAL

name::
* McsEngl.cycl'EXPRESSION.LITERAL@cptIt,
* McsEngl.cycl'LITERAL'EXPRESSION@cptIt,

Most generally, a literal is a Cyc expression of the form (predicate arg1 [arg2 ... argn]), or its negation, where the number of arguments to the predicate can be any positive integer (but in Cyc, not more than 5), and the arguments can be any kind of term. For example, (#$likesAsFriend#$Goolsbey#$Brandy) (#$eatsWillingly#$BillM (#$FruitFn ?X)) (#$isa ?CAR#$Automobile) (#$performedBy ?ACT ?ORG) (#$not (#$performedBy ?ACT ?ORG))
Because it includes negated formulas, the class of literals is a superset of the class of atomic formulas.
Usually, "literal" is used to refer to the atomic formulas that make up the internal representation of any assertion's formula. In Cyc-10, formulas that are asserted into the KB are converted into conjunctive normal form; the formula of each single assertion is internally represented as a disjunction of literals. Those literals that would be negated in conjunctive normal form are called negative literals; the rest are called positive literals. GAFs are the subset of literals in which there are no variables.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb27

cycl'EXPRESSION.FORMULA#ql:cycl'formula#

name::
* McsEngl.cycl'EXPRESSION.FORMULA@cptIt,

cycl'ASSERTION

name::
* McsEngl.cycl'ASSERTION@cptIt,
* McsEngl.assertion'in'cycl-cptIt517@cptIt,

cycl'assertion'DEFINITION:
The assertion is the fundamental unit of knowledge in the Cyc system.
Every assertion consists of:
- a CycL-formula#ql:cycl'formula# which states the content of the assertion
- a truth value
- a microtheory of which the assertion is part
- a direction#ql:cycl'direction#
- a justification#ql:cycl'justification#
The set of assertions includes both rules#ql:cycl'rule# and GAFs.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb27

cycl'assertion'TUTEINO:
* CYCL_ONTOLOGY#ql:cycl'ontology-*###

The CYC® KB is the repository of Cyc's knowledge. It consists of
- a large number of FORTs#ql:cycl'fort# and
- an even larger number of assertions#ql:cycl'assertion# involving those constants.
[http://www.cyc.com/cycdoc/ref/glossary.html#justification] 2007-09-20

cycl'assertion'EXAMPLE:
(#$isa#$BillClinton#$UnitedStatesPresident)
"Bill Clinton belongs to the collection of U.S. presidents"

(#$genls#$Tree-ThePlant#$Plant)
"All trees are plants".

(#$capitalCity#$France#$Paris)
"Paris is the capital of France."

cycl'assertion'CREATION:
* before a Cyclist can assert anything using a constant, the constant must be created. There are several ways a Cyclist can do this in the Cyc Browser.
[http://www.cyc.com/doc/handbook/oe/03-from-constants-to-assertions.html]

cycl'assertion'SUBGENERAL:
* ATOMIC_ASSERTION ()##
* COMPLEX_ASSERTION (with logical-connective)##
===================
* RULE_ASSERTION (with implies)##
* FACT_ASSERTION
==================
* QUANTIFIED_ASSERTION (with quantifier)##
===================
* LOCAL_ASSERTION##
* INFERED_ASSERTION##

The set of assertions includes both
- rules and
- GAFs.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb27

The purpose of the ASSERT operation is to add a new assertion--a "fact" or a "rule"--to the KB.
[http://www.cyc.com/cycdoc/ref/glossary.html] 2007-09-22

cycl'ASSERTION'FORMULA (sentence)

name::
* McsEngl.cycl'ASSERTION'FORMULA (sentence)@cptIt,
* McsEngl.cycl'FORMULA@cptIt,
* McsEngl.cycl'EXPRESSION.FORMULA@cptIt,
* McsEngl.cycl'proposition@cptIt,
* McsEngl.cycl'statement@cptIt,
* McsEngl.cycl'sentence@cptIt517,
* McsEngl.cycl'constraint'language'proposition'expression@cptIt,

DEFINITION ANALYTIC:
A formula is an expression#ql:cycl'expression# in a formal language that makes some declarative statement about the world. Formulas are analogous to declarative sentences in English. In CycL, formulas that are well-formed are called CycFormulas.
[http://www.cyc.com/glossary.html 2000jul22] 2000jul24

A formula is an expression#ql:cycl'expression# in a formal language that makes some declarative statement about the world. Formulas are analogous to declarative sentences in English. In CycL, formulas that are well-formed are most properly called constraint language proposition expressions (CLPEs), but we often call them formulas since the proper term is so long.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb27

GENERAL:
* expression#ql:cycl'expression###

STRUCTURE:
Every formula has the structure of a parenthesized list. I.e., it starts with a left parenthesis, then therer follow a series of objects which are commonly designated ARG0, ARG1, ARG2, etc., and finally there is a matching right parenthesis. The object in the ARG0 position may be a predicate, a logical connective, or a quantifier. The remaining arguments may be atomic constants, non-atomic terms, variables, numbers, English strings delimited by double quotes ("), or other formulas.
[http://www.cyc.com/cyc-2-1/ref/cycl-syntax.html, 1997aug08] {1998-03-01}

* CycL sentences combine terms into meaningful expressions.
Every sentence has the structure of a Lisp list. It is enclosed in parentheses, and consists of a list of objects which are commonly designated ARG0, ARG1, ARG2, etc. The object in the ARG0 position may be a predicate, a logical connective, or a quantifier. The remaining arguments may be constants, non-atomic terms, variables, numbers, English strings delimited by double quotes ("), or other sentences.

cycl'SENTENCE'ARGUMENT

name::
* McsEngl.cycl'SENTENCE'ARGUMENT@cptIt,
* McsEngl.argument'in'cyc-cptIt517@cptIt,

_DEFINITION:
Most commonly, the term "argument" is used to refer to any CycL term which follows a predicate, a function, a logical connective, or a quantifier in a Cycl expression. Thus, in the CycL formula (#$likesAsFriend#$BillM#$Goolsbey),#$likesAsFriend is a predicate, and#$BillM and#$Goolsbey are the first and second arguments to that predicate.
[glossary]

Every formula has the structure of a parenthesized list. I.e., it starts with a left parenthesis, then therer follow a series of objects which are commonly designated ARG0, ARG1, ARG2, etc., and finally there is a matching right parenthesis. The object in the ARG0 position may be a predicate, a logical connective, or a quantifier. The remaining arguments may be atomic constants, non-atomic terms, variables, numbers, English strings delimited by double quotes ("), or other formulas.
[http://www.cyc.com/cyc-2-1/ref/cycl-syntax.html, 1997aug08] {1998-03-01}

cycl'sentence.WELL'FORMED

name::
* McsEngl.cycl'sentence.WELL'FORMED@cptIt,
* McsEngl.cycl'CPLE@cptIt,
* McsEngl.cycl'CONSTRAINT'LANGUAGE'PROPOSITION'EXPRESSION@cptIt,
* McsEngl.cycl'Well'formed'formula@cptIt,
* McsEngl.cycl'FORMULA.WFF@cptIt,
* McsEngl.cycl'FORMULA.WELL'FORMED@cptIt,
* McsEngl.cycl'CycFormula@cptIt,

DEFINITION ANALYTIC:
A formula in CycL is well-formed if it conforms to the syntax of CycL and passes all the restrictions on arity and argument types of the relations that are used in it.
...
A constraint language proposition expression is a CycL formula that is well-formed. Sometimes these are called CLPEs or simply formulas .

_SPESIFEPTO:
* ATOMIC (with variable)
* GAF (no variable)
=========================
* AXIOM/LOCAL (not infered)
* INFERRED
===========================
* QUANTIFIED (with quantifier)
* RULE (with implies)

cycl'ASSERTION'DIRECTION

name::
* McsEngl.cycl'ASSERTION'DIRECTION@cptIt,
* McsEngl.cycl'DIRECTION@cptIt,
* McsEngl.cycl'ACCESS'LEVEL@cptIt,

_DEFINITION:
Direction is a value associated with every assertion which determines when inferencing involving that assertion should be performed. There are two possible values for direction: forward and backward.
Inferencing involving assertions with direction forward is performed at assert time (that is, when a new assertion is added to the KB), while inferencing involving assertions with direction backward is postponed until a query occurs and that query allows backward inference.
By default, GAFs have direction forward, while rules#ql:cycl'rule# have direction backward. Only in very special cases should rules have direction forward.
Older Cyc documentation refers to "access levels" rather than to direction. Access level 0 is equivalent to direction forward, while access level 4 or higher is equivalent to direction backward.
[http://www.cyc.com/cyc-2-1/ref/cycl-syntax.html, 1997aug08] {1998-03-01}

cycl'ASSERTION'MICROTHEORY#ql:cycl'microtheory#

name::
* McsEngl.cycl'ASSERTION'MICROTHEORY@cptIt,

Every assertion it is PART OF at least one microtheory.

cycl'ASSERTION'SUPPORT

name::
* McsEngl.cycl'ASSERTION'SUPPORT@cptIt,
* McsEngl.support'of'assertion'in'cycl-cptIt517@cptIt,

A support is a data structure attached to every assertion which lists various justifications for why the assertion is believed to be true (or false, or whatever).
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb27

The support is the one element of an assertion which need not be specified by the KEer when performing knowledge entry. It is created and updated automatically. However, supports can be displayed by KB browsing tools.
[http://www.cyc.com/cyc-2-1/ref/cycl-syntax.html, 1997aug08] {1998-03-01}

cycl'ASSERTION'JUSTIFICATION

name::
* McsEngl.cycl'ASSERTION'JUSTIFICATION@cptIt,
* McsEngl.cycl'JUSTIFICATION@cptIt,
* McsEngl.cycl'source@cptIt,

_DEFINITION:
A justification is a reason for why an assertion is in the KB with its truth-value.
a) Justifications may be local, indicating the assertion was asserted by a user or application program.
b) The other possibility is that a justification may be the final step in an argument which supports the assertion, indicating that the assertion is the result of inference.
c) It is possible for an assertion to have multiple justifications, combining local and inferred supports.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb27

argument The term "argument" is used in two different ways by Cyclists:
a) Most commonly, the term "argument" is used to refer to any CycL term which follows a predicate, a function, a logical connective, or a quantifier in a CycL expression. Thus, in the CycL formula (#$likesAsFriend#$BillM#$Goolsbey),#$likesAsFriend is a predicate, and#$BillM and#$Goolsbey are the first and second arguments to that predicate.
b) Less often, the term "argument" is used to refer to a set of assertions in the Cyc KB which together entail another assertion in the KB. An argument, in this sense, is a component of a justification.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08]

SUBGENERAL:
Source is another term for justification. Each assertion in the Cyc KB may be supported by multiple sources. A source can be local, indicating that the assertion was made by a user, or remote, indicating the assertion was derived in inference. Remote sources have pointers to the rule and premises (assertions themselves) involved in the inference step.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 2000jul25

cycl'ASSERTION'TRUTH'VALUE

name::
* McsEngl.cycl'ASSERTION'TRUTH'VALUE@cptIt,
* McsEngl.cycl'TRUTH'VALUE@cptIt,
* McsEngl.truth'value'in'cycl@cptIt517,

_DEFINITION:
A truth value is a value attached to an assertion which indicates its degree of truth. There are five possible truth values:
1) monotonically true (100) True always and under all conditions. Normally reserved for things that are true by definition.
2) default true (T) Assumed true, but subject to exceptions. Most rules in the KB are default true.
3) unknown (~) Not known to be true, and not known to be false.
4) default false (F) Assumed false, but subject to exceptions.
5) monotonically false (0) False always and under all conditions. Of these, only the first two are commonly used.
Each of these truth values is represented by a different colored ball in the KB Browser. For details on the icons used in the Browser, see the Key for Icons in the Browser.
"Truth value" is a heuristic level property; it is a combination of what is 2 separate properties at the epistemological level: strength (:default or :monotonic) and negation status (whether or not a formula begins with#$not).
If you are unsure whether to make an assertion monotonically true or default true, go with the latter.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb27

cycl'assertion.COMPLEX.NO (no logical-conective)

name::
* McsEngl.cycl'assertion.COMPLEX.NO (no logical-conective)@cptIt,
* McsEngl.atomic'assertion'in'cycl-cptIt517@cptIt,
* McsEngl.atomic'sentence-cptIt517@cptIt,
* McsEngl.cycl'ATOMIC'FORMULA@cptIt,
* McsEngl.atomic'formula'in'cycl-cptIt517@cptIt,

_DEFINITION:
* ATOMIC_ASSERTION is an assertion with an atomic-formula/sentence.
[KasNik, 2007-09-21]

* An atomic formula is an expression in CycL of the following form: a list with opening and closing parentheses such that the first element of the list is a CycL predicate, and the remaining elements are the arguments to the predicate. Atomic formulas use no logical connectives. See also ground atomic formula. In CycL atomic formulas may have variables, constants, or other terms as arguments to the CycL predicate.
[http://www.cyc.com/cycdoc/ref/glossary.html#atomic%20formula]

* when an element of#$Predicate is applied to the legal number and type of arguments, an expression is formed which is a well-formed formula (wff) in CycL. Such expressions are called
- `atomic formulas' if they contain variables, and
- `gafs' (short for `ground atomic formulas') if they contain no variables.
[Cyc Fundamental Vocabulary 10/24/1997] {1998-03-01}

cycl'assertion.GAF (NO variables)

name::
* McsEngl.cycl'assertion.GAF (NO variables)@cptIt,
* McsEngl.cycl'GAF@cptIt,
* McsEngl.cycl'GROUND'ATOMIC'FORMULA@cptIt,
* McsEngl.gaf'in'cycl@cptIt517,
* McsEngl.cycl'ground'assertion@cptIt,
* McsEngl.cycl'gaf'assertion@cptIt,

_DEFINITION:
when an element of#$Predicate is applied to the legal number and type of arguments, an expression is formed which is a well-formed-formula-(wff)#ql:cycl'formula.wff# in CycL. Such expressions are called
- `atomic formulas' if they contain variables, and
- `gafs' (short for `ground atomic formulas') if they contain no variables.
[Cyc Fundamental Vocabulary 10/24/1997] {1998-03-01}

gaf: An acronym for Ground Atomic Formula which is an assertion without any variables. Gafs form the great majority of KB assertions. The Arg0 term in a gaf is the predicate.
[http://www.cyc.com/cyc-api.html, v0.3 {1999-03-11}]

A GAF is a Cyc formula of the form (predicate arg1 [arg2 ... argn]), where the number of arguments to the predicate can be any integer from 1 to 5, and the arguments are all either terms or other formulas, but not variables.
For example,
(#$likesAsFriend#$Goolsbey#$Brandy)
(#$eats#$BillM (#$FruitFn#$AppleTree))
(#$beliefs#$BillM (#$likesAsFriend#$Goolsbey#$Brandy))
GAFs are a subset of atomic formulas [no, above says that gaf is one subset of wwf and the other is the atomic forumlas]. They are those atomic formulas in which no variables appear.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb27

cycl'assertion.COMPLEX (with logical-conective)

name::
* McsEngl.cycl'assertion.COMPLEX (@cptIt,with, logical-conective),
* McsEngl.cycl'complex'assertion-cptIt517@cptIt,
* McsEngl.cycl'complex'sentence-cptIt517@cptIt,

_DEFINITION:
* COMPLEX_ASSERTION is an assertion with an complex-formula/sentence.
[KasNik, 2007-09-21]

Complex sentences can be built up out of atomic sentences or other complex sentences by using logical-connectives#ql:cycl'logical'connective#, which are special constants analogous to the logical operators of formal logic. The most important logical connectives in CycL are#$not,#$and,#$or, and#$implies.
[http://www.cyc.com/doc/handbook/oe/02-the-syntax-of-cycl.html] 2007-09-21

Well-Formedness of Complex Sentences
Any complex sentence formed by using the logical connectives will be well-formed if the sentences given as arguments to the connectives are also well-formed and if the right number of arguments are given. (The sentences given as arguments to the logical connectives need not be atomic sentences, like most of the examples above, but can be any well-formed sentence.) Another way of saying this is that#$not,#$and,#$or and#$implies produce CycLSentences when they are given arguments which are also CycLSentences.
Suppose A and B are syntactically legal, and C is not. Then,
(#$not A)
(#$and A)
(#$and A B)
(#$or A)
(#$or A B)
(#$implies A B)
would all be CycLSentences. But
(#$not A B)
(#$and)
(#$and A C)
(#$implies A)
would NOT be CycLSentences. Why? (#$not A B) violates the requirement that#$not take only one sentence as an argument. (#$and) and (#$implies A) also violate restrictions on the number of sentences these connectives take as arguments. (#$and A C) is not well-formed because C is not; any complex sentence that contained C would be syntactically bad for the same reason.
[http://www.cyc.com/doc/handbook/oe/02-the-syntax-of-cycl.html] 2007-09-21

cycl'assertion.LOCAL

name::
* McsEngl.cycl'assertion.LOCAL@cptIt,
* McsEngl.local'assertion'in'cycl-cptIt517@cptIt,
* McsEngl.cycl'axiom-cptIt517@cptIt,
* McsEngl.axiom'in'cycl-cptIt517@cptIt,

_DEFINITION:
* LOCAL_ASSERTION is an assertion with a local-formula/sentence.
[KasNik, 2007-09-21]

A local assertion is one which was added to the KB from an outside source (most commonly, a human KEer), rather than inferred from other assertions. Local assertions have at least one local justification among their supports.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb27

Strictly speaking, an axiom is one of a set of fundamental formulas that one starts with to prove theorems by deduction.
In Cyc, the axioms are those formulas that have been locally-asserted#ql:cycl'assertion.local# into the Cyc KB. Cyc axioms are well-formed Cyc formulas, since the system won't let you add formulas to Cyc that are not well-formed. However, not all well-formed Cyc formulas are axioms, since not all of them are actually in the KB. And some of the formulas in the KB are not, strictly speaking, axioms, since they were added to the KB via inference, not locally asserted.
In informal usage, though, Cyclists don't always adhere to the strict meaning of axiom, and may refer to a formula they are considering adding to the KB or have recently removed from the KB as an axiom.
Axiom is also the name of one of the internal KB data structure types.

cycl'assertion.LOCAL.NO

name::
* McsEngl.cycl'assertion.LOCAL.NO@cptIt,
* McsEngl.inferred'assertion'in'cycl-cptIt517@cptIt,

_DEFINITION:
* INFERRED_ASSERTION is an assertion with an inferred-formula/sentence.
[KasNik, 2007-09-21]

A local assertion is one which was added to the KB from an outside source (most commonly, a human KEer), rather than inferred from other assertions.
Local assertions have at least one local justification among their supports.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb27

cycl'assertion.QUANTIFIED (with quantifier)

name::
* McsEngl.cycl'assertion.QUANTIFIED (with quantifier)@cptIt,
* McsEngl.cycl'quantified'assertion-cptIt517@cptIt,
* McsEngl.cycl'quantified'sentence-cptIt517@cptIt,

_DEFINITION:
* QUANTIFIED_ASSERTION is an assertion with a quantified-formula/sentence.
[KasNik, 2007-09-21]

As you probably by now expect, any formula beginning with a quantifier#ql:cycl'quantifier-*# is well-formed if and only if its arguments are of the right number, of the right types, in the right order, and its formula argument is well-formed.
[http://www.cyc.com/cyc-2-1/ref/cycl-syntax.html, 1997aug08] 2000jul25

Well-Formedness of Quantified Sentences
As you probably by now expect, any sentence beginning with a quantifier is well-formed if and only if
- its arguments are of the right number,
- of the right types,
- in the right order, and
- its sentence argument is well-formed.
[http://www.cyc.com/doc/handbook/oe/02-the-syntax-of-cycl.html] 2007-09-21

cycl'assertion.RULE (with implies)

name::
* McsEngl.cycl'assertion.RULE (with implies)@cptIt,
* McsEngl.cycl'rule@cptIt,
* McsEngl.cycl'RULE'FORMULA@cptIt,
* McsEngl.rule'in'cycl@cptIt517,
* McsEngl.cycl'RULE'ASSERTION@cptIt,
* McsEngl.cycl'CONDITIONAL@cptIt,

DEFINITION ANALYTIC:
* RULE_ASSERTION is an assertion with a rule-formula/sentence.
[KasNik, 2007-09-21]

Informally, a rule is any Cyc-formula#ql:cycl'formula# which begins with #$implies, that is, any conditional. A rule has two parts, called its antecedent and consequent, or right-hand side and left-hand side.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb27

* Sentences can also contain variables, strings starting with "?". These sentences are called "rules".
[http://en.wikipedia.org/wiki/Cyc]

RELATION TO CAUSAL-RELATION:
Newcomers to formal logic may misinterpret#$implies as implying a causal relationship. But, strictly speaking, a#$implies assertion says only that either the first argument is false, or the second argument is true.
[http://www.cyc.com/cyc-2-1/ref/cycl-syntax.html, 1997aug08] {1998-03-01}

cycl'KNOWLEDGE-BASE (ontology)

name::
* McsEngl.cycl'KNOWLEDGE-BASE (ontology)@cptIt,

cyDEZG:
* cyc'ONTOLOGY-517,
* cycl'ONTOLOGY-517,
* ontology'in'cycl-517,

DEFINITION SYNTHETIC:
knowledge base (KB): The Cyc® KB is the repository of Cyc's knowledge. It consists of
- a large number of constants#ql:cycl'constant# and
- an even larger number of assertions#ql:cycl'assertion# involving those constants.
[http://www.cyc.com/glossary.html 2000jul22] 2000jul24

A set of CycL sentences forms a knowledge base.
[http://www.cyc.com/cycl.html 2000jul22] 2000jul24

The KB consists of
- terms--which constitute the vocabulary of CycL--and
- assertions#ql:cycl'assertion# which relate those terms.
[The CYC® Technology Cycorp. All rights reserved. September 15, 1997] 1998feb27


The Cyc KB is the repository of Cyc's knowledge. It consists of a large number of constants and an even larger number of assertions involving those constants.
...
In philosophy, ontology is the study of being. In knowledge-based systems, an ontology is that part of the system which specifies what things exist and what is true about them. Cyc's ontology is essentially its whole knowledge base. You may hear people refer to their "ontology of devices" or their "temporal ontology". What they are talking about is those parts of their knowledge base (the constants and assertions) that concern devices or time.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb27

cycl'ontology'STRUCTURE:
The CYC® KB is the repository of Cyc's knowledge. It consists of
- a large number of FORTs#ql:cycl'fort# and
- an even larger number of assertions#ql:cycl'assertion# involving those constants.
[http://www.cyc.com/cycdoc/ref/glossary.html#justification] 2007-09-20

cycl'ontology'SOURCE:
* http://www.cycfoundation.org/concepts:
* http://www.cyc.com/cycdoc/vocab/vocab-toc.html:

cycl'MICROTHEORY

name::
* McsEngl.cycl'MICROTHEORY@cptIt,
* McsEngl.cycl'CONTEXT@cptIt,
* McsEngl.microtheory'in'cycl@cptIt517,

_DEFINITION:
A microtheory is a Cyc constant denoting a group of related assertions. Microtheories are also called contexts.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb27

* The knowledge base is divided into microtheories (Mt), collections of concepts and facts typically pertaining to one particular realm of knowledge. Unlike the knowledge base as a whole, each microtheory is required to be free from contradictions. Each microtheory has a name which is a regular constant; microtheory constants contain the string "Mt" by convention. An example is#$MathMt, the microtheory containing mathematical knowledge. The microtheories can inherit from each other and are organized in a hierarchy: one specialization of#$MathMt is#$GeometryGMt, the microtheory about geometry.
[http://en.wikipedia.org/wiki/Cyc]

cycl'microtheory.CONSISTENCY:
The third, and perhaps most important lesson we learned along the way was that it was foolhardy to try to maintain consistency in one huge flat CYC knowledge base. We eventually carved it up into hundreds of contexts or microtheories. Each one of those is consistent with itself, but there can be contradictions among them. Thus, in the context of working in an office it's socially unacceptable to jump up screaming whenever good things happen, while in the context of a football game it's socially unacceptable not to.
[Lenat, http://www.cyc.com/halslegacy.html, (2000jul24)]

cycl'microtheory.GENERAL:
One microtheory is a#$genlMt of another if all its assertions are true in the other microtheory.#$BaseKB is a#$genlMt of all microtheories.
[glossary]

cycl'microtheory'TEMPORAL:
While working on new domains it is a good practice to make sure that the newly added knowledge is located in a part of the microtheory hierarchy where it is unlikely to interfere negatively with others' work. This can be accomplished by putting the information into a temporary microtheory which is not used by anyone else. This information can be moved to the microtheory in which it belongs when it has been completed and tested (remember it is easier to merge microtheories than to split them).
[http://www.cyc.com/doc/handbook/oe/05-basic-guidelines-for-efficient-cycl.html]

cycl'UPPER'ONTOLOGY#ql:COG.NFO#

name::
* McsEngl.cycl'UPPER'ONTOLOGY@cptIt,
* McsEngl.cyc'UPPER'CYC'ONTOLOGY@cptIt,

cycl'evaluation

name::
* McsEngl.cycl'evaluation@cptIt,

CONCEPT:
One of the most fundamental partitionings of concepts is into type concepts and instance concepts.
A concept is a type concept or an instance concept, but never both at the same time[24].
[24] In this, CODE4 differs from many other knowledge representation systems, e.g. Cyc.
[Tim Lethbridge's PhD Thesis 1994nov]

cycl'resourceInfHmn#cptResource843#

name::
* McsEngl.cycl'resourceInfHmn@cptIt,

Ontological Engineer's Handbook:
* http://www.cyc.com/doc/handbook/oe/oe-handbook-toc-opencyc.html:

http.cyc.Glossary:
* http://www.cyc.com/cycdoc/ref/glossary.html
* http://www.cyc.com/glossary.html, 2000jul22

http.cyc.CycL Language:
http://www.cyc.com/cycl.html, 2000jul22

cycl'EVOLUTION#cptCore546.171#

name::
* McsEngl.cycl'EVOLUTION@cptIt,

{time.1997aug12: Cyc Ontology Guide (COG) 2.1:
This is Release 2.1. It expands on our previous COG releases. Release 1.0 (posted in May 1996) consisted of lists of CYC® concept names topically grouped into files. Only one file in Release 1.0 was even partially fleshed out with the comments and links mentioned above. In Release 2.0 (posted on July 1, 1996), we provided excerpts from the CYC® KB about every one of the released concepts. Here in Release 2.1, hundreds of the comments have been expanded (largely in response to feedback on Release 2.0) to make them clearer.
[http://www.cyc.com/cyc-2-1/footnotes.html, 1997aug12]

1996jul: COG 2.0

1996may: COG 1.0

cycl.SPECIFIC

name::
* McsEngl.cycl.SPECIFIC@cptIt,

Every representation is a trade-off between expressiveness (how easily you can say complicated things) and efficiency (how easily the machine can reason with what you've told it).
English is very expressive but not very efficient. Most computer languages, such as Basic, C, and Fortran, are efficient but not very expressive.
To get both qualities, we separated the epistemological problem (what should the system know?) from the heuristic problem (how can it effectively reason with what it knows?) and developed two separate languages, respectively EL and HL. Our knowledge enterers talk to CYC in the clean, expressive language (EL). Their input is then converted into the heuristic language (HL), which is efficient for dealing with many sorts of frequently recurring inference problems, such as reasoning about time, causality, containment, and so forth.
[Lenat, http://www.cyc.com/halslegacy.html, (2000jul24)]

cycl.EL

name::
* McsEngl.cycl.EL@cptIt,
* McsEngl.el'in'cycl-cptIt517@cptIt,
* McsEngl.cycl'Epistemological'Level@cptIt,

An acronym for Epistemological Level which is a CycL representation optimized for human authoring and understanding. The canonicalizer facility of the KB automatically translates input formulas in EL form into efficient Heuristic Level (HL) representation. Likewise an uncanonicalizer facility generates EL formula from their HL counterpart representation. For example the logical operator#$implies is used at the EL, but the KB converts implications to Conjunctive Normal Form (CNF) at the HL.
[http://www.cyc.com/cyc-api.html, v0.3 {1999-03-11}]

Epistemological level refers to the way knowledge is expressed when Cyc communicates with users or external programs.
This stands in contrast with heuristic level, which refers to the way knowledge is actually stored, and inference implemented, in Cyc.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 2000jul25

cycl.HL

name::
* McsEngl.cycl.HL@cptIt,
* McsEngl.hl'in'cycl-cptIt517@cptIt,
* McsEngl.cycl.Implementation'Level@cptIt,

HL An acronym for Heuristic Level which is the efficient internal representation of KB datastructures and the procedures for accessing them.
[http://www.cyc.com/cyc-api.html, v0.3 {1999-03-11}]

heuristic level (HL) Another name for this might be "implementation level". Heuristic level refers to the way knowledge is actually stored, and inference implemented, in Cyc. This stands in contrast to the Epistemological Level (EL), which refers to the way knowledge is expressed when Cyc communicates with users or external programs.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 2000jul25

lagCmr.knowledge.DESCRIPTION_LOGIC (dl)

name::
* McsEngl.conceptIt560,
* McsEngl.concept-language,
* McsEngl.dl,
* McsEngl.description-logic@cptIt560,
* McsEngl.frame-based-description-language,
* McsEngl.lagKnlg.DESCRIPTION-LOGICS,
* McsEngl.kl-one-like language,
* McsEngl.taxonomic-logic,
* McsEngl.term-subsumption-language,
* McsEngl.terminological-logic,

Description logic was given its current name in the 1980s. Previous to this it was called (chronologically): terminological systems, and concept languages.
[http://en.wikipedia.org/wiki/Description_logic]

dl'DEFINITION

Description logics (DL) are a family of knowledge representation languages which can be used to represent the terminological knowledge of an application domain in a structured and formally well-understood way. The name description logic refers, on the one hand, to concept descriptions used to describe a domain and, on the other hand, to the logic-based semantics which can be given by a translation into first-order predicate logic. Description logic was designed as an extension to frames and semantic networks, which were not equipped with formal logic-based semantics.
[http://en.wikipedia.org/wiki/Description_logic]

The main effort of the research in knowledge representation is providing theories and systems for expressing structured knowledge and for accessing and reasoning with it in a principled way. Description Logics are a powerful class of knowledge representation languages. Nowadays, they are considered the most important formalism unifying and giving a logical basis to the well known traditions of Frame-based systems, Semantic Networks and KL-ONE-like languages, Object-Oriented representations, Semantic data models, and Type systems. Concepts, roles and individuals are the basic building blocks. A concept is a description which gathers the relevant common properties among a collection of individuals. From the logical point of view, concepts can be considered as unary predicates which are interpreted as classes of individuals. Roles are intended to describe the properties of individuals belonging to a particular class; they are binary relations between individuals. The core of Description Logics has been proved to be in correspondence with normal modal logics. Description Logics are very expressive languages with nice computational properties - like decidability and completeness, which guarantee that reasoning algorithms always terminate with the correct answers. The main reasoning tasks are satisfiability, subsumption, and instance checking, together with classification. Subsumption represents the generalization / specialization relation among concepts; it is also known as IS-A relation. The classification task is the computation of a concept hierarchy based on subsumption. A whole family of knowledge representation systems have been built using these languages and for most of them complexity results for the main reasoning problems are known. Description Logic systems have been used for building a variety of applications including (bold face means applications we believe are relying hardly on the Description Logics representation and reasoning): software management systems, planning systems, configuration systems, conceptual modeling, I3 (Intelligent Integration of Information) applications, information access and intelligent interfaces, query optimization and view maintenance, and natural language semantics processing systems.

To sum up:
- Description logics are expressive and structured knowledge representation languages.
- Description logics have formal syntax, semantics, and definition of reasoning services, whose abstract computational properties are formally proved.
- Description logics have efficient complete reasoning procedures.
- Description logics can be extended in many interesting ways.

Data becomes information when the data is interpretable and structured with its metadata.
[Maintainer: Enrico Franconi - franconi@irst.itc.it
Last modified: Thu Jun 5 15:34:06 METDST 1997 ]

Description logics are languages tailored for expressing knowledge about concepts and concept hierarchies. They are usually given a Tarski style declarative semantics, which allows them to be seen as sub-languages of predicate logic. One starts with primitive concepts and roles, and can use the language constructs (such as intersection, union, role quantification, etc.) to define new concepts and roles. Concepts can be considered as unary predicates which are interpreted as sets of individuals whereas roles are binary predicates which are interpreted as binary relations between individuals. The main reasoning tasks are classification and subsumption checking. Subsumption represents the is-a relation. A whole family of knowledge representation systems have been built using these languages and for most of them complexity results for the subsumption algorithm are known. Description logic systems have been used for building a variety of applications including software management systems, planning systems, configuration systems, and natural language understanding.
[http://www.ida.liu.se/labs/iislab/people/patla/DL/index.html] {1998-04-16}

dl'GENERIC

_GENERIC:
* knowledge_processing_and_representation_method#cptIt525.1#
* language.computer.representation#cptItsoft501#

dl'INDIVIDUAL

name::
* McsEngl.dl'INDIVIDUAL@cptIt,
* McsEngl.individual'in'description'logic@cptIt560,
* McsEngl.nominal'in'dl@cptIt560,

EXAMPLE:
- John
- Italy

dl'CONCEPT

name::
* McsEngl.dl'CONCEPT@cptIt,
* McsEngl.concept-in-description-logic@cptIt560,
* McsEngl.formula'in'dl@cptIt560,

DEFINTION:
In general, a concept denotes the set of individuals that belongs to it, and a role denotes a relationship between concepts.
[http://en.wikipedia.org/wiki/Description_logic]

A concept is a description which gathers the relevant common properties among a collection of individuals. From the logical point of view, concepts can be considered as unary predicates which are interpreted as classes of individuals.

The intended semantics of an instance concept is that it corresponds to a particular thing, whereas a type concept corresponds to a set of things called its extension (although see section 3.6 for more clarification about representing sets). The above idea is standard in frame-based knowledge representations except that in some systems, such as KL-ONE derivatives, the word `concept' refers to types only[26].
[26] This is at odds with the normal English meaning of `concept': e.g. every intelligent Canadian has in their brain a concept of Canada, which is not a type or set.
[Tim Lethbridge, PhD Thesis, 1994nov]

CONCEPT_NAME:
concept names are regarded as atomic-concepts
[http://en.wikipedia.org/wiki/Description_logic]

dl'ROLE

name::
* McsEngl.dl'ROLE@cptIt,
* McsEngl.role'in'description'logic@cptIt560,
* McsEngl.modality'in'dl@cptIt560,

_DEFINITION:
= properties (attributes) and relationships.
===
In general, a concept denotes the set of individuals that belongs to it, and a role denotes a relationship between concepts.
[http://en.wikipedia.org/wiki/Description_logic]
===
Roles are intended to describe the properties of individuals belonging to a particular class; they are binary relations between individuals.

EXAMPLE:
- hasChild
- loves

ROLE_NAME:
role names are regarded as atomic-roles
[http://en.wikipedia.org/wiki/Description_logic]

dl'OPERATOR

name::
* McsEngl.dl'OPERATOR@cptIt,

dl'CONSTRUCTOR

name::
* McsEngl.dl'CONSTRUCTOR@cptIt,
* McsEngl.constructor'in'description'logic@cptIt560,

_DEFINITION:
The syntax of a member of the description logic family is characterized by its recursive definition, in which the constructors that can be used to form concept terms are stated. Some common constructors include
- logical constructors in first-order logic such as intersection or conjunction of concepts, union or disjunction of concepts, negation or complement of concepts, value restriction (universal restriction), existential restriction, etc.
- Other constructors may also include restrictions on roles which are usual for binary relations, for example, inverse, transitivity, functionality, etc.
[http://en.wikipedia.org/wiki/Description_logic]

dl'REASONING

name::
* McsEngl.dl'REASONING@cptIt,

dl'QUERY-LANGUAGE

name::
* McsEngl.dl'QUERY-LANGUAGE@cptIt,

DL-based QLs such as the ASK queries of DIG protocol [2] or nRQL queries of Racer-Pro system [3], on the other hand, have well-defined semantics based on the DL model theory. However, DIG queries are limited to atomic (TBox or RBox or ABox) queries whereas nRQL supports only conjunctive ABox queries.
...
DL-based QLs (DIG ask queries, nRQL) have clear semantics but are
not powerful enough in the general case.
[http://pellet.owldl.com/papers/sirin07sparqldl.pdf]

dl'SEMANTICS

name::
* McsEngl.dl'SEMANTICS@cptIt,

Semantics define the .meaning. of sentences; i.e., define truth of a sentence in a world
[http://www.inf.unibz.it/~franconi/dl/course/slides/logic/propositional/prop-logic-1.pdf]

dl'resourceInfHmn#cptResource843#

name::
* McsEngl.dl'resourceInfHmn@cptIt,

The official Description Logics home page:
http://dl.kr.org//

http://www.ida.liu.se/labs/iislab/people/patla/DL/index.html
Patrick Lambrix
Intelligent Information Systems Laboratory Department of Computer and Information Science Linkoping University, S-581 83 Linkoping, Sweden 4-Feb-98 10:52

dl'SYNTAX

name::
* McsEngl.dl'SYNTAX@cptIt,

Syntax defines the sentences in the language
[http://www.inf.unibz.it/~franconi/dl/course/slides/logic/propositional/prop-logic-1.pdf]

dl'ENVIRONMENT#cptCore756#

name::
* McsEngl.dl'ENVIRONMENT@cptIt,

dl'KMS#cptIt503#

name::
* McsEngl.dl'KMS@cptIt,

The first DL-based system was KL-ONE (by Brachman and Schmolze, 1985). Some other DL systems came later. They are LOOM (1987), BACK (1988), KRIS (1991), CLASSIC (1991), FaCT (1998) and lately RACER (2001), CEL (2005), and KAON 2 (2005).
[http://en.wikipedia.org/wiki/Description_logic]

dl'DOMAIN

name::
* McsEngl.dl'DOMAIN@cptIt,

dl'KNOWLEDGEBASE

name::
* McsEngl.dl'KNOWLEDGEBASE@cptIt,
* McsEngl.dl'kb@cptIt560,
* McsEngl.knowledgebase'in'dl@cptIt560,
* McsEngl.ontology'in'dl@cptIt560,

_DEFINITION:
= TBox ("schema" axioms (sentences)) + ABox ("data" axioms (ground fucts))

KB Knowledge Base A combination of an ABox and a TBox, i.e. a complete
OWL ontology.
[http://pellet.owldl.com/papers/sirin05pellet.pdf]

dl'ABox

name::
* McsEngl.dl'ABox@cptIt,
* McsEngl.abox'in'dl@cptIt560,
* McsEngl.Assertional'Box@cptIt560,

_DEFINITION:
Component that contains assertions about individuals, i.e. OWL facts such as type, property-value, equality or inequality assertions.
[http://pellet.owldl.com/papers/sirin05pellet.pdf]

dl'TBox

name::
* McsEngl.dl'TBox@cptIt,
* McsEngl.tbox'in'dl@cptIt560,
* McsEngl.Terminological'Box@cptIt560,

_DEFINITION:
Component that contains axioms about classes, i.e. OWL axioms such as subclass, equivalent class or disjointness axioms.
[http://pellet.owldl.com/papers/sirin05pellet.pdf]

dl'AND'OTHER'REPRESENTATIONS

name::
* McsEngl.dl'AND'OTHER'REPRESENTATIONS@cptIt,

Description Logics are considered the most important knowledge representation formalism unifying and giving a logical basis to the well known traditions of
- Frame-based systems,
- Semantic Networks and
- KL-ONE-like languages,
- Object-Oriented representations,
- Semantic data models, and
- Type systems.
[http://dl.kr.org/]

dl'EVOLUTION#cptCore546.171#

name::
* McsEngl.dl'EVOLUTION@cptIt,

1980s: name
Description logic was given its current name in the 1980s. Previous to this it was called (chronologically): terminological systems, and concept languages.
[http://en.wikipedia.org/wiki/Description_logic]

dl.SPECIFIC

name::
* McsEngl.dl.SPECIFIC@cptIt,

_SPECIFIC:#ql:_GENERIC cptIt560#

The OWL-DL and OWL-Lite sub-languages of the W3C-endorsed Web Ontology Language (OWL) are based on a description logic.
[http://en.wikipedia.org/wiki/Description_logic]

FUZZY-DESCRIPTION-LOGIC

Fuzzy description logic combines fuzzy logic with DLs. Since many concepts that are needed for intelligent systems lack well defined boundaries, or precisely defined criteria of membership, we need fuzzy logic to deal with notions of vageness and imprecision. This offers a motivation for a generalisation of description logics towards dealing with imprecise and vague concepts.
[http://en.wikipedia.org/wiki/Description_logic]

lagCmr.knowledge.ENTITY-ATTRIBUTE-VALUE

name::
* McsEngl.lagCmr.knowledge.ENTITY-ATTRIBUTE-VALUE@cptIt,
* McsEngl.EAV@cptIt525i,
* McsEngl.entity-attribute-value@cptIt525i,
* McsEngl.lagKnlg.Entity-attribute-value@cptIt,

_DESCRIPTION:
Entity-attribute-value model (EAV) is a data model to describe entities where the number of attributes (properties, parameters) that can be used to describe them is potentially vast, but the number that will actually apply to a given entity is relatively modest. In mathematics, this model is known as a sparse matrix. EAV is also known as object-attribute-value model, Vertical Database Model and open schema.
[http://en.wikipedia.org/wiki/Entity-attribute-value_model]

lagCmr.knowledge.EXPLICIT

name::
* McsEngl.lagCmr.knowledge.EXPLICIT@cptIt,

lagCmr.knowledge.EXPLICIT.NO

name::
* McsEngl.lagCmr.knowledge.EXPLICIT.NO@cptIt,
* McsEngl.lagKnlg.representation.Non-Explicit-Knowledge-Representation@cptIt,
* McsEngl.lcr.knowledge.Non-Explicit-Knowledge-Representation@cptIt,
* McsEngl.non-explicit-knowledge-representation@cptIt501i,

Usually the representation of knowledge takes some form. Examples include: first-order predicate logic, frames, networks, scripts, etc. However, knowledge does not have to be represented explicitly. In the following systems, there is no internal representation of world knowledge (or much activity based on information without explicit representation):
Subsumption Architecture
Hetereogeneous Asynchronous Architecture (ATLANTIS)
[http://krusty.eecs.umich.edu/cogarch4/toc_defs/defs_props/defs_noexpkno.html] 1998feb16

lagCmr.knowledge.Formal-Concept-Analysis

name::
* McsEngl.lagCmr.knowledge.Formal-Concept-Analysis@cptIt,
* McsEngl.FCA@cptIt525i,
* McsEngl.formal-concept-analysis@cptIt525i,
* McsEngl.lagKnlg.Formal-Concept-Analysis@cptIt,

_DESCRIPTION:
Formal concept analysis is a principled way of automatically deriving an ontology from a collection of objects and their properties. The term was introduced by Rudolf Wille in 1984, and builds on applied lattice and order theory that was developed by Birkhoff and others in the 1930s.
[http://en.wikipedia.org/wiki/Formal_concept_analysis]

fca'Resource

name::
* McsEngl.fca'Resource@cptIt,

FCA Software:
* http://www.fcahome.org.uk/fcasoftware.html

2 Conceptual Knowledge
Formal concept analysis [19 (Wi82),6] is a relatively new discipline arising out of the mathematical theory of lattices and the calculus of binary relations. It is closely related to the areas of knowledge representation in computer science and cognitive psychology. Formal concept analysis provides for the automatic classification of both knowledge and documents via representation of a user's faculty for interpretation as encoded in conceptual scales. Such conceptual scales correspond to the facets of synthetic classification schemes, such as Ranganathan's Colon classification scheme, in library science.

2.1 Formal Concepts
Formal concept analysis uses objects, attributes and conceptual classes as its basic constituents. Objects and attributes are connected through has-a incidence relationships, while conceptual classes are connected through is-a subtype relationships. Incidence is the most primitive notion in formal concept analysis. A formal context represents incidence by collecting together all of the relevant has-a relationships. It is a triple consisting of a set of objects G, a set of attributes M, and a binary incidence relation , where gHm asserts that ``object g has attribute m.'' The binary incidence relation is denoted symbolically by the notation in order to indicate polarity. In many contexts appropriate for Web resources, the objects are document-like objects and the attributes are properties of those document-like objects which are of interest to the Web user.
The idea of a formal concept (also called a conceptual class or category) is the central notion in formal concept analysis. A formal concept consists of a collection of entities or objects exhibiting one or more common characteristics, traits or attributes. Formal concepts are logically characterized by their extension and intension. The extension of a concept is the aggregate of entities or objects which it includes or denotes. The intension of a concept is the sum of its unique characteristics, traits or attributes, which, taken together, imply the formal concept. More formally, a formal concept is a pair consisting of a subset of objects and a subset of attributes , where and . The operation denoted by the prime is called derivation, and is defined in terms of the incidence relation H.
The process of subordination of concepts and collocation of objects exhibits a natural order, proceeding top-down from the more generalized concepts with larger extension and smaller intension to the more specialized concepts with smaller extension and larger intension. This is-a relationship is a partial order called generalization-specialization. Concepts with this generalization-specialization ordering form a class hierarchy called a concept lattice. Formal concept analysis uses formal concepts as its central notion and uses concept lattices as an approach to knowledge representation [19]. The use of conceptual classes as a conceptual structuring mechanism corresponds to the use of similarity clusters in information retrieval, although conceptual classes are based more on logical implication rather than a nearness notion.

2.2 Conceptual Knowledge
According to formal concept analysis, knowledge representation is extended by the two techniques of knowledge inference and knowledge acquisition. Knowledge inference is formally represented by: (1) view order closure; (2) view extent/intent relational closure; and (3) inclusion constraint between extent/intent composition and incidence. Knowledge acquisition is formally represented by: (1) any initialization construction from a tree (forest or directed acyclic graph) hierarchy; (2) interactive view definitions; and (3) the structural operations of (a) producting (apposition and subposition) and (b) summing.
A specification of conceptual knowledge is based upon the 3 fundamental notions of objects, attributes, and formal concepts. Objects can be viewed as concepts: by the basic theorem of formal concept analysis, each object generates a concept , which is the smallest concept containing that object in its extent. Dually, attributes can be viewed as concepts: by the basic theorem, each attribute generates a concept , which is the largest concept containing that attribute in its intent. Concepts are regarded as generic objects and specific attributes:
if there is a subtype relationship between two concepts , then we can regard concept to be an object having concept as an attribute.
In conceptual knowledge representation, the 3 fundamental notions of objects, attributes, and concepts are connected together with the 4 basic relationships of incidence, subtype, instantiation, and abstraction. For example, consider a particular tree on our front lawn --- let us give it the name t. Trees are green, and are special kinds of plants. Now, ``tree'' and ``plant'' are conceptual classes (formal concepts), with ``tree'' a subtype of ``plant.'' In addition, t is an object, which is an instance of the ``tree'' class, and any instance of class ``tree'' has the property ``color:green.''



2.3 Conceptual Space
Conceptual knowledge is formally represented by a concept space. A concept space names part of a conceptual knowledge universe. One important purpose for the concept space notion is to provide for the organization and customization by the user of their own information space. This customization is accomplished by the explicit specification (via conceptual views) of some of the formal concepts in the conceptual universe.
A concept space is a formal system of conceptual knowledge. Formal contexts and their lattice of conceptual classes, the basic constituents of formal concept analysis, along with an explicit specification of concepts via a conceptual naming mechnism, are the appropriate mathematical structures from which to develop the idea of concept space. A concept space names part of a conceptual knowledge universe. The formal model for a conceptual universe is a concept lattice with the associated formal context as its conceptual base. A conceptual universe forms a context or background concept space within which various user-customizable concept spaces can be created, explored, developed, extended, related, etc. Any one of these customizable spaces is a foreground concept space within the context of the conceptual knowledge universe. The representational mechanism of a concept space serves as a firm foundation for the basic paradigms of internet resource discovery and wide area information management systems: organization-navigation and search-retrieval [7]. The use of concept spaces is a natural outgrowth of the original formal concept analysis approach for structuring and organizing the networked information resources in the World Wide Web [8].
Concept spaces form their naming mechanisms via conceptual views. A conceptual view is a name for a formal concept within the conceptual universe . Conceptual views are created by any of the following methods:
initialization using a legacy hierarchy; view definitions in terms of meets and joins of other views, meets of attributes, and joins of objects; or view definitions in terms of the meet-vectors of apposition concept spaces or the join-vectors of subposition concept spaces. The notion of a concept space can be defined from two different, but equivalent, approaches: either conceptual denotation or frame of relationships. In applications, we will use the frame of relationships approach, since it does not require the construction of the conceptual universe , which is a very costly and time-consuming process. We are very much using Occam's razor here in systems design.
Conceptual Denotation We assume that a set V of names for conceptual classes have been specified. We also assume that each view symbol has been bound to, and hence denotes, a concept in the conceptual universe . A concept space within the conceptual universe is a pair , where V is a set whose elements are called view names, and is a map into the conceptual universe, which we call denotation: is the concept that the view v denotes. Any two views, which denote the same concept, are aliases. Frame of Relationships The 3 basic notions and 4 basic relationships of conceptual knowledge form the components of a conceptual frame. A conceptual frame is a sextuple consisting of three preorders and three binary relations: an object preorder , an attribute preorder , a preorder of conceptual views with a subtype relation, an instantiation or membership relation , an abstraction relation , and an incidence relation . Figure 1 is a type diagram which displays the components of a conceptual frame. Figure 1: a concept space in a conceptual universe

Residuation, denoted by the two symbols and indicating different polarities, is an operation on binary relations which is a kind of ``universal implication'' [14]. A concept space in the conceptual universe is a conceptual frame which satisfies the constraints in Table 1.
Table 1: equivalent forms of constraints for a conceptual frame



2.4 Example: A Document Conceptual Space
Table 2 represents a concept space within a conceptual universe of documents in an information system and their properties (see Figure 2 in [3]). In addition to six document-like objects G and four attributes M, it contains five conceptual views V.



Table 2: a document conceptual space



2.5 View Definitions
For any pair of formal concepts in a conceptual universe there is a meet and join formal concept defined by the formulae

In a concept space these definitions can be made specific to the components of a conceptual frame. This allows us to define the meet and join of conceptual views, the intensional restriction of views to objects, and the extensional restriction of views to attributes. All these definitions are given in Table 3. In the document concept space example of Table 2 the ``PostScript'' view could be defined as the extensional restriction of the ``Document'' view by the ``format=postscript'' attribute



Table 3: definition of local conceptual views



2.6 Virtual Views
Let and be any pair of formal concepts in two separate conceptual universes and , respectively. When the two universes have the same attributes there is a virtual join formal concept which represents a distribution of local formal concepts. Likewise, when the two universes have the same objects there is a virtual meet formal concept . These operations are defined by the formulae



If and are two concept spaces in these universes, then these definitions can be made specific to the components of their conceptual frames. This allows us to define the virtual meet and join views of a distribution of local conceptual views. These definitions are given in Table 4. Compare with the definitions of local joins and meets. Object and attribute tupling are known as subposition and apposition in formal concept analysis. The joins and meets in virtual concept space are the virtual views of the distribution of local joins and meets in the component spaces.
Virtual views have applications in (i) the interpretation by conceptual scaling, (ii) the parallel implementation of formal concept analysis, and (iii) collaboration in distributed information systems. Virtual meet views are useful in conceptual scaling when we use various facets of information in order to organize a conceptual space over an information system. For collaboration, we can merge remote public data interpretation, as represented by conceptual scaling, with local private data interpretation. This provides one approach for the private customization of the public data.

Table 4: definition of virtual conceptual views
[wave.eecs.wsu.edu/WAVE/www5.html
Web Conceptual Space
Robert E. Kent - Washington State University, Pullman, Washington rekent@eecs.wsu.edu
Christian Neuss - Technische Hochschule Darmstadt, Germany neuss@isa.informatik.th-darmstadt.de 1996]

lagCmr.knowledge.FRAME_BASED (mfb)

name::
* McsEngl.conceptIt475,
* McsEngl.frame-based-representation@cptIt475,
* McsEngl.frame-language@cptIt475, {2011-09-03}
* McsEngl.lagKnlg.FRAME-BASED,
* McsEngl.method-frame-based@cptIt475, {2011-09-03}
* McsEngl.methodKnowledgeFrame@cptIt475, {2011-09-03}
* McsEngl.mfb@cptIt475, {2011-09-03}

mfb'DEFINITION

Similar to description logics, the frame formalism has been introduced in AI in order to represent and reason about objects in the real world. The frame formalism is more restrictive than most description logics, and is, in addition, characterised by a speci?c reasoning method, called inheritance.
[http://www.cs.ru.nl/~peterl/teaching/KeR/summary.pdf]

Frame-based representations attempt to collect all the information relevant to a concept on a "frame" for that concept.
Each frame has a series of slots filled by values.
The slots can be viewed as binary relationships between the concept of the frame, and the values filling them.
[http://www.cyc.com/cyc-2-1/ref/glossary.html, 1997aug08] 1998feb27

"Frames" [7] are an approach to structured object representation which allows more systematic grouping of information. They are intended to store stereotypical representations of different situations, objects and events. Individual frames correspond to the nodes in the network, and the relationships between the frames are the arcs in the network. Each individual frame stores information about a particular object or class of objects. It can be thought of as a record data structure consisting of a number of "slots", and associated with each slot there is a "value". The slots form a description of the object, with each slot-value pair corresponding to a common attribute of the object and its value or allowable range of values. Frames are arranged into hierarchies of classes via defined relations. Type hierarchies (constructed using "IS-A" or "A-KIND-OF" links) provide mechanisms for inheritance. One of the characteristics of frame systems is that information at the top of a class hierarchy is fixed, and as such can provide expectations about specific occurrences of values at individual frames. No slot values are ever left empty within a frame; rather they are filled with "default" values which are inherited from their ancestors. These default values form the stereotypical object, and are overwritten by values that better fit the more specific case. There are four methods for extracting information from a slot in a frame. Firstly if there is a specific value in a slot for a frame then this can be returned as it is assumed to be the most reliable and up-to-date value for the slot. Failing this, the system can either look at successive ancestors of the frame in question and attempt to inherit values which have been asserted into one of these frames (which is known as "value inheritance") or the system can look at the frame itself and its ancestors for procedures (known as "daemons") which specify how to calculate the required value (which is known as "if-needed inheritance"). If none of the above succeed in obtaining a value, then the system resorts to extracting the default values stored for the prototype object in question.

mfb'GENERIC

_GENERIC:
* method-knowledge#cptItsoft525#

mfb'WHOLE

_WHOLE:
* tech-knowledge#cptItsoft458#

mfb'Frame

name::
* McsEngl.mfb'Frame@cptIt,

A frame is a method of representation in which a particular class is defined by a number of attributes (or slots) with certain values (the attributes are filled in for each instance). Thus, frames are also known as slot-and-filler structures. Frame systems are also somewhat equivalent to semantic networks although frames are usually associated with more defined structure than the networks.
Like a semantic network, one of the chief properties of frames is that they provide a natural structure for inheritance. ISA-Links connect classes to larger parent classes and properties of the subclasses may be determined at both the level of the class itself and from parent classes.
This leads into the idea of defaults. Frames may indicate specific values for some attributes or instead indicate a default. This is especially useful when values are not always known but can generally be assumed to be true for most of the class. For example, the class BIRD may have a default value of FLIES set to TRUE even though instances below it (say, for example, an OSTRICH) have FLIES values of FALSE.
In addition, the values of particular attribute need not necessarily be filled with a value but may also indicate a procedure to run to obtain a value. This is known as an attached procedure. Attached procedures are especially useful when there is a high cost associated with computing a particular value, when the value changes with time or when the expected access frequency is low. Instead of computing the value for each instance, the values are computed only when needed. However, this computation is run during execution (rather than during the establishment of the frame network) and may be costly.

mfb'Reasoning

name::
* McsEngl.mfb'Reasoning@cptIt,

mfb'Program

name::
* McsEngl.mfb'Program@cptIt,

lagCmr.knowledge.KIF

name::
* McsEngl.lagCmr.knowledge.KIF@cptIt,

kif'toc#ql:[Level CONCEPT:rl? conceptIt563]#

DEFINITION

Knowledge Interchange Format (KIF) is a computer-oriented language for the interchange of knowledge among disparate (ανόμοια) programs.
It has declarative semantics (i.e. the meaning of expressions in the representation can be understood without appeal to an interpreter for manipulating those expressions);
it is logically comprehensive (i.e. it provides for the expression of arbitrary sentences in the first-order predicate calculus);
it provides for the representation of knowledge about the representation of knowledge;
it provides for the representation of nonmonotonic reasoning rules; and
it provides for the definition of objects, functions, and relations.
[Knowledge Interchange Format, Version 3.0 Reference Manual] 1998feb04

KIF is a first-order predicate logic language with set theory, and has a linear prefix syntax.
[OKBC 2.0.3 1998] 2000jul20

kif'GENERIC

_GENERIC:
* knowledge_representation_and_processing_method#-204.8
* language.computer.representation#cptItsoft501#

kif'WHOLE

_WHOLE:
declarative representation language,
first-order predicate logic language,

kif'CHARACTERISTIC

name::
* McsEngl.kif'CHARACTERISTIC@cptIt,

_DESCRIPTION:
The purpose of KIF is roughly analogous to that of Postscript. Postscript is commonly used by text and graphics formatting programs in communicating information about documents to printers. Although it is not as efficient as a specialized representation for documents and not as perspicuous as a specialized wysiwyg display, Postscript is a programmer-readable representation that facilitates the independent development of formatting programs and printers. While KIF is not as efficient as a specialized representation for knowledge nor as perspicuous as a specialized display (when printed in its list form), it too is a programmer-readable language and thereby facilitates the independent development of knowledge-manipulation programs.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb22

CONCEPTUALLY GROUNDED

KIF is conceptually grounded in that every universe of discourse is required to include certain basic objects.
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 1998feb22

CONCEPTUALLY PROMISCUOUS

KIF is conceptually promiscuous in that it does not require every user to share the same universe of discourse.
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 1998feb22

DECLARATIVE SEMANTICS

It has declarative semantics (i.e. the meaning of expressions in the representation can be understood without appeal to an interpreter for manipulating those expressions);
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb22

LOGICALLY COMPREHENSIVE

it is logically comprehensive (i.e. it provides for the expression of arbitrary sentences in the first-order predicate calculus);
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb22

kif'SYNTAX

name::
* McsEngl.kif'SYNTAX@cptIt,

As with many computer-oriented languages, the syntax of KIF is most easily described in three layers.
a) First, there are the basic characters of the language.
b) These characters can be combined to form lexemes.
c) Finally, the lexemes of the language can be combined to form grammatically legal expressions.
Although this layering is not strictly esential to the specification of KIF, it simplifies the description of the syntax by dealing with white space at the lexeme level and eliminating that detail from the expression level.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb22

SPEC NOTATION:
In this chapter, the syntax of KIF is presented using a modified BNF notation. All nonterminals and BNF punctuation are written in boldface, while characters in KIF are expressed in plain font.
- The notation {x1,...,xn} means the set of terminals x1,...,xn.
- The notation [nonterminal] means zero or one instances of nonterminal;
- nonterminal* means zero or more occurrences;
- nonterminal+ means one or more occurrences;
- nonterminal^n means n occurrences.
- The notation nonterminal1 - nonterminal2 refers to all of the members of nonterminal1 except for those in nonterminal2.
- The notation int(n) denotes the decimal representation of integer n.
- The nonterminals space, tab, return, linefeed, and page refer to the characters corresponding to ascii codes 32, 9, 13, 10, and 12, respectively.
- The nonterminal character denotes the set of all 128 ascii characters.
- The nonterminal empty denotes the empty string.
[KIF SPEC, M.R. GENESERETH, 1995mar] 2000jul23

Like many computer-oriented languages, KIF has two varieties. In linear KIF, all expressions are strings of ASCII characters and, as such, are suitable for storage on serial devices (such as magnetic disks) and for transmission on serial media (such as phone lines). In structured KIF, the legal ``expressions'' of the language are structured objects. Structured KIF is of special use in communication between programs operating in the same address space.
Fortunately, there is a simple correspondence between the two varieties of KIF. For every character string, there is exactly one corresponding list structure; and, for every list structure, there is exactly one corresponding character string (once all unnecessary white space is eliminated).

KIF originated in a Lisp application and inherits its syntax from Lisp. The relationship between linear KIF and structured KIF is most easily specified by appeal to the Common Lisp reader [Steele, Guy., Common Lisp: The Language, 2nd Edition, Digital Press]. In particular, a string of ascii characters forms a legal expression in linear KIF if and only if (1) it is acceptable to the Common Lisp reader (as defined in Steele's book) and (2) the structure produced by the Common Lisp reader is a legal expression of structured KIF (as defined in the next section).
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 2000jul22

kif'CHARACTER

name::
* McsEngl.kif'CHARACTER@cptIt,

DEFINITION SYNTHETIC:
KIF characters are classified as
- upper case letters,
- lower case letters,
- digits,
- alpha characters (non-alphabetic characters that are used in the same way that letters are used),
- special characters,
- white space, and
- other characters (every ascii character that is not in one of the other categories).

kif'upper ::= A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z
kif'lower ::= a | b | c | d | e | f | g | h | i | j | k | l | m | n | o | p | q | r | s | t | u | v | w | x | y | z
kif'digit ::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
kif'alpha ::= ! | $ | % | & | * | + | - | . | / | < | = | > | ? | @ | _ | ~ |
kif'special ::= " |# | ' | ( | ) | , | \ | ^ | `
kif'white ::= space | tab | return | linefeed | page
kif'normal ::= upper | lower | digit | alpha
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb22

GENERAL:
basic constant.

SUBGENERAL:
KIF characters are classified as
- upper case letters,
- lower case letters,
- digits,
- alpha characters (non-alphabetic characters that are used in the same way that letters are used),
- special characters,
- white space, and
- other characters (every ascii character that is not in one of the other categories).
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb24

kif'LEXEME

name::
* McsEngl.kif'LEXEME@cptIt,

DEFINITION SYNTHETIC:
lexemes are combinations of the characters of the language.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb22

kif'LEXICAL'ANALYSIS:
The process of converting characters into lexemes in called lexical analysis. The input to this process is a stream of characters, and the output is a stream of lexemes.
The function of a lexical analyzer is cyclic. It reads characters from the input string until it encounters a character that cannot be combined with previous characters to form a legal lexeme. When this happens, it outputs the lexeme corresponding to the previously read characters. It then starts the process over again with the new character. Whitespace causes a break in the lexical analysis process but otherwise is discarded.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb22

SUBGENERAL:
There are five types of lexemes in KIF --
- special lexemes,
- words,
- character references,
- character strings, and
- character blocks.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb22

kif'LEXEME.CHARACTER'BLOCK

name::
* McsEngl.kif'LEXEME.CHARACTER'BLOCK@cptIt,
* McsEngl.kif'Character'Block@cptIt,

DEFINITION ANALYTIC:
There are five types of lexemes in KIF --
- special lexemes,
- words,
- character references,
- character strings, and
- character blocks.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb23

DEFINITION SYNTHETIC:
Sometimes it is desirable to group together a sequence of arbitrary bits or characters without imposing escape characters, e.g. to encode images, audio, or video in special formats. Character blocks permit this sort of grouping through the use of a prefix that specifies how many of the following characters are to grouped together in this way.
A character block consists of the character# followed by the decimal encoding of a positive integer n, the character q or Q, and then n arbitrary characters.
block ::=# int(n) q character^n |# int(n) Q character^n
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb24

kif'LEXEME.CHARACTER'REFERENCE

name::
* McsEngl.kif'LEXEME.CHARACTER'REFERENCE@cptIt,
* McsEngl.kif'Character'Reference@cptIt,
* McsEngl.kif'charref@cptIt,

DEFINITION SYNTHETIC:
A character reference consists of the characters#, \, and any character. Character references allow us to refer to characters as characters and differentiate them from one-character symbols, which may refer to other objects.
charref ::=#\character
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb23

DEFINITION ANALYTIC:
There are five types of lexemes in KIF --
- special lexemes,
- words,
- character references,
- character strings, and
- character blocks.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb23

kif'LEXEME.CHARACTER'STRING

name::
* McsEngl.kif'LEXEME.CHARACTER'STRING@cptIt,
* McsEngl.kif'Character'String@cptIt,
* McsEngl.kif'string@cptIt,

DEFINITION ANALYTIC:
There are five types of lexemes in KIF --
- special lexemes,
- words,
- character references,
- character strings, and
- character blocks.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb23

DEFINITION SYNTHETIC:
A character string is a series of characters enclosed in quotation marks. The escape character \ is used to permit the inclusion of quotation marks and the \ character itself within such strings.
string ::= "quotable"
kif'quotable ::= empty | quotable strchar | quotable\character
kif'strchar ::= character - {",\}
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb23

A string is a list of characters.
One way of referring to strings is through the use of the <string> syntax described in chapter 2. In this method, we refer to the string abc by enclosing it in double quotes, i.e. "abc".
A second way is through the use of character blocks, the <block> syntax described in chapter 2. In this method, we refer to the string abc by prefixing with the character#, a positive integer indicating the length, the letter q, and the characters of the string, i.e.#3qabc
A third way of referring to strings is to use the listof function. For example, we can denote the string abc by a term of the form (listof#\a#\b#\c).
The advantage of the listof representation over the preceding representations is that it allows us to quantify over characters within strings. For example, the following sentence says that all 3 character strings beginning with a and ending with a are nice.
(=> (character ?y) (nice (listof#\a ?y#\a)))
From this sentence, we can infer that various strings are nice. (nice (listof#\a#\a#\a)) (nice "aba") (nice#\Qaca)
[KIF SPEC, M.R. GENESERETH, 1995mar] 2000jul26

GENERAL:
basic constant.

... nnn missing text

kif'OPERATOR.TERM

name::
* McsEngl.kif'OPERATOR.TERM@cptIt,
* McsEngl.kif'TERM'OPERATOR@cptIt,
* McsEngl.kif'termop@cptIt,

DEFINITION SYNTHETIC:
termop ::= listof | quote | if
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb24

USE:
Term operators are used in forming complex terms.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb24

kif'WORD.VARIABLE

name::
* McsEngl.kif'WORD.VARIABLE@cptIt,
* McsEngl.kif'Variable@cptIt,

DEFINITION SYNTHETIC:
A variable is a word in which the first character is ? or @.
A variable that begins with ? is called an individual variable.
A variable that begins with an @ is called a sequence variable.

variable ::= indvar | seqvar
indvar ::= ?word
seqvar ::= @word
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb22

SIBLINGS:
For the purpose of grammatical analysis, it is useful to subdivide the class of words a little further, viz. as variables, operators, and constants.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb23

kif'VARIABLE.FREE

name::
* McsEngl.kif'VARIABLE.FREE@cptIt,
* McsEngl.kif'Free'Variable@cptIt,

free variables, i.e. variables that do not occur within the scope of any enclosing quantifiers.
[KIF SPEC, M.R. GENESERETH, 1995mar] 2000jul26

kif'VARIABLE.INDIVIDUAL

name::
* McsEngl.kif'VARIABLE.INDIVIDUAL@cptIt,
* McsEngl.kif'INDIVIDUAL'VARIABLE@cptIt,
* McsEngl.kif'indvar@cptIt,

DEFINITION ANALYTIC:
A variable that begins with ? is called an individual variable.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb24

DEFINITION ANALYTIC:
indvar ::= ?word
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb24

kif'VARIABLE.SEQUENCE

name::
* McsEngl.kif'VARIABLE.SEQUENCE@cptIt,
* McsEngl.kif'SEQUENCE'VARIABLE@cptIt,
* McsEngl.kif'seqvar@cptIt,

DEFINITION ANALYTIC:
A variable that begins with an @ is called a sequence variable.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb24

DEFINITION SYNTHTETIC:
seqvar ::= @word
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb24

kif'EXPRESSION

name::
* McsEngl.kif'EXPRESSION@cptIt,

DEFINITION SYNTHETIC:
Finally, the lexemes of the language can be combined to form grammatically legal expressions.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb22

An expression is either a word or a finite sequence of expressions.
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 1998feb25

SUBGENERAL:
There are three disjoint types of expressions in the language -- terms, sentences, and definitions.
Terms are used to denote objects in the world being described;
sentences are used to express facts about the world; and
definitions are used to define constants.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb22

There are four special types of expressions in the language - terms, sentences, rules, and definitions.
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 1998feb25

kif'EXPRESSION.ATOM

name::
* McsEngl.kif'EXPRESSION.ATOM@cptIt,
* McsEngl.kif'Atom@cptIt,

_DEFINITION:
atom ::= word | charref | string | block
[KIF SPEC, M.R. GENESERETH, 1995mar] 2000jul26

kif'EXPRESSION.COMPLEX

name::
* McsEngl.kif'EXPRESSION.COMPLEX@cptIt,
* McsEngl.kif'Complex'Expression@cptIt,

_DEFINITION:
complex expressions (i.e. non-atoms)
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 2000jul26

kif'EXPRESSION.FORM

name::
* McsEngl.kif'EXPRESSION.FORM@cptIt,
* McsEngl.kif'Form@cptIt,

DEFINITION SYNTHETIC:
Definitions and sentences are called forms.
form ::= sentence | definition
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb22

WHOLE:
A knowledge base is a finite set of forms.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb23

kif'FORM.DEFINITION

name::
* McsEngl.kif'FORM.DEFINITION@cptIt,
* McsEngl.kif'Definition@cptIt,

DEFINITION ANALYTIC:
There are three disjoint types of expressions in the language -- terms, sentences, and definitions.
Terms are used to denote objects in the world being described;
sentences are used to express facts about the world; and
definitions are used to define constants.
...
It is important to note that definitions are top level constructs. While definitions contain sentences, they are not themselves sentences and, therefore, cannot be written as constituent parts of sentences or other definitions.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb22

DEFINITION SYNTHETIC:
definition ::= unrestricted | complete | partial
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb24

kif'DEFINITION'CONTENT:
On the other hand, definitions have content - sentences that allow us to derive other sentences as conclusions. In KIF, every definition has a corresponding set of sentences, called the content of the definition. In general, there are three parts to this content.
First of all, there is information about the category of the constant in the definition. If the constant is a function constant or a relation constant, there is also information about its arity.
Second, there is the defining axiom associated with the definition (see below).
Finally, there is a sentence stating that the defining axiom associated with the definition is indeed a defining axiom for the associated concept (named by the constant used in the definition).
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 2000jul26

kif'Definition'MEANING:
Intuitively, the meaning of a definition is that its defining axiom is true and that its defining axiom is an analytic truth. Analytic truths are considered to be those sentences that are logically entailed from defining axioms.
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 2000jul26

kif'Definition'TRUTH'VALUE:
The definitional operators in KIF allow us to state sentences that are true ``by definition'' in a way that distinguishes them from sentences that express contingent properties of the world. Definitions have no truth values in the usual sense; they are so because we say that they are so.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb25

SUBGENERAL:
There are three types of definitions -- unrestricted, complete, and partial. Within each type, there are four cases, one for each category of constant. Object constants are defined using the defobject operator. Function constants are defined using the deffunction operator. Relation constants are defined using the defrelation operator. Logical constants are defined using the deflogical operator.
definition ::= unrestricted | complete | partial
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb22

kif'DEFINITION.COMPLETE

name::
* McsEngl.kif'DEFINITION.COMPLETE@cptIt,

DEFINITION ANALYTIC:
KIF definitions can be complete in that they specify an expression that is equivalent to the constant,
... If a constant has a complete definition in a knowledge base, then no other definition for that constant may occur in the knowledge base. Complete definitions are guaranteed to be conservative extensions of the language.
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 2000jul26

DEFINITION SYNTHETIC:
complete ::= (defobject constant [string] := term) |
(deffunction constant (indvar* [seqvar]) [string] := term) |
(defrelation constant (indvar* [seqvar]) [string] := sentence) |
(deflogical constant [string] := sentence)
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb24

EXAMPLE:
For example, the following definition defines the constant origin to be the list (0,0,0).
(defobject origin := (listof 0 0 0))
The defining axiom specified by this definition of origin is:
(= origin (listof 0 0 0))
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 2000jul26

kif'DEFINITION.PARTIAL

name::
* McsEngl.kif'DEFINITION.PARTIAL@cptIt,

DEFINITION ANALYTIC:
or partial in that they specify a defining axiom that restricts the possible denotations of the constant.
Partial definitions can be either unrestricted or conservative extensions to the language. Conservative definitions are restricted in that adding the defining axioms they specify to any given collection of sentences not containing the constant being defined does not logically entail any additional sentences not containing the constant being defined. [Enderton 72].
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 2000jul26

DEFINITION SYNTHETIC:
partial ::= (defobject constant [string] :-> indvar :<= sentence) |
(defobject constant [string] :-> indvar :=> sentence) |
(deffunction constant (indvar* [seqvar]) [string] :-> indvar :<= sentence) |
(deffunction constant (indvar* [seqvar]) [string] :-> indvar :=> sentence) |
(defrelation constant (indvar* [seqvar]) [string] :<= sentence) |
(defrelation constant (indvar* [seqvar]) [string] :=> sentence) |
(deflogical constant [string] :<= sentence)(deflogical constant [string] :=> sentence)
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb24

kif'DEFINITION.UNRESTRICTED

name::
* McsEngl.kif'DEFINITION.UNRESTRICTED@cptIt,

DEFINITION SYNTHETIC:
unrestricted ::= (defobject constant [string] sentence*) |
(deffunction constant [string] sentence*) |
(defrelation constant [string] sentence*) |
(deflogical constant [string] sentence*)
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb22

kif'FORM.SENTENCE

name::
* McsEngl.kif'FORM.SENTENCE@cptIt,
* McsEngl.kif'sentence@cptIt,

DEFINITION SYNTHETIC:
The following BNF defines the set of legal sentences in KIF. There are six types of sentences. We have already mentioned logical constants.
sentence ::= constant | equation | inequality | relsent | logsent | quantsent
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb24

DEFINITION ANALYTIC:
There are three disjoint types of expressions in the language -- terms, sentences, and definitions.
Terms are used to denote objects in the world being described;
sentences are used to express facts about the world; and
definitions are used to define constants.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb22

kif'SENTENCE'VALUE: (kif'SENTENCE'Truth'Value)
every sentence is either true or false. ...
we can unambiguously determine the truth or falsity of any sentence.
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 1998feb22

SUBGENERAL:
The following BNF defines the set of legal sentences in KIF. There are six types of sentences. We have already mentioned logical constants.
<sentence> ::= <logconst>|<equation>|<inequality>|
<relsent>|<logsent>|<quantsent>
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 2000jul22

There are six types of sentences. We have already mentioned logical constants.
sentence ::= constant | equation | inequality | relsent | logsent | quantsent
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb22

kif'SENTENCE.EQUATION

name::
* McsEngl.kif'SENTENCE.EQUATION@cptIt,
* McsEngl.kif'EQUATION'SENTENCE@cptIt,
* McsEngl.kif'equation@cptIt,

DEFINITION SYNTHETIC:
An equation consists of the = operator and two terms.
equation ::= (= term term)
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb24

kif'SENTENCE.INEQUALITY

name::
* McsEngl.kif'SENTENCE.INEQUALITY@cptIt,
* McsEngl.kif'INEQUALITY'SENTENCE@cptIt,
* McsEngl.kif'inequality@cptIt,

DEFINITION SYNTHETIC:
An inequality consist of the /= operator and two terms.
inequality ::= (/= term term)
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb22

kif'SENTENCE.LOGICAL

name::
* McsEngl.kif'SENTENCE.LOGICAL@cptIt,
* McsEngl.kif'LOGICAL'SENTENCE@cptIt,
* McsEngl.kif'logsent@cptIt,

DEFINITION SYNTHETIC:
The syntax of logical sentences depends on the logical operator involved.
A sentence involving the not operator is called a negation.
A sentence involving the and operator is called a conjunction, and the arguments are called conjuncts.
A sentence involving the or operator is called a disjunction, and the arguments are called disjuncts.
A sentence involving the => operator is called an implication; all of its arguments but the last are called antecedents; and the last argument is called the consequent.
A sentence involving the <= operator is called a reverse implication; its first argument is called the consequent; and the remaining arguments are called the antecedents.
A sentence involving the <=> operator is called an equivalence.
logsent ::= (not sentence) |
(and sentence*) |
(or sentence*) |
(=> sentence* sentence) |
(<= sentence sentence*) |
(<=> sentence sentence)
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb24

VALUE(truth):
A negation is true if and only if the negated sentence is false.
A conjunction is true if and only if every conjunct is true.
A disjunction is true if and only if at least one of the disjuncts is true.
If every antecedent in an implication is true, then the implication as a whole is true if and only if the the consequent is true. If any of the antecedents is false, then the implication as a whole is true, regardless of the truth value of the consequent.
A reverse implication is just an implication with the consequent and antecedents reversed.
An equivalence is equivalent to the conjunction of an implication and a reverse implication.
[KIF SPEC, M.R. GENESERETH, 1995mar] 2000jul26

kif'CONJUCTION

name::
* McsEngl.kif'CONJUCTION@cptIt,

DEFINITION ANALYTIC:
A sentence involving the and operator is called a conjunction, and the arguments are called conjuncts.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb25

VALUE:
A conjunction is true if and only if every conjunct is true.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb25

kif'DISJUNCTION

name::
* McsEngl.kif'DISJUNCTION@cptIt,

DEFINITION ANALYTIC:
A sentence involving the or operator is called a disjunction, and the arguments are called disjuncts.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb25

VALUE:
A disjunction is true if and only if at least one of the disjuncts is true.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb25

kif'EQUIVALENCE

name::
* McsEngl.kif'EQUIVALENCE@cptIt,

DEFINITION ANALYTIC:
A sentence involving the <=> operator is called an equivalence.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb25

VALUE:
An equivalence is equivalent to the conjunction of an implication and a reverse implication.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb25

kif'IMPLICATION

name::
* McsEngl.kif'IMPLICATION@cptIt,

DEFINITION ANALYTIC:
A sentence involving the => operator is called an implication; all of its arguments but the last are called antecedents; and the last argument is called the consequent.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb25

VALUE:
If every antecedent in an implication is true, then the implication as a whole is true if and only if the the consequent is true.
If any of the antecedents is false, then the implication as a whole is true, regardless of the truth value of the consequent.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb25

kif'NEGATION

name::
* McsEngl.kif'NEGATION@cptIt,
* McsEngl.kif'sentence.negation@cptIt,

DEFINITION ANALYTIC:
A sentence involving the not operator is called a negation.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb25

VALUE:
A negation is true if and only if the negated sentence is false.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb25

kif'REVERSE'IMPLICATION

name::
* McsEngl.kif'REVERSE'IMPLICATION@cptIt,

DEFINITION ANALYTIC:
A sentence involving the <= operator is called a reverse implication; its first argument is called the consequent; and the remaining arguments are called the antecedents.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb25

VALUE:
A reverse implication is just an implication with the consequent and antecedents reversed.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb25

kif'SENTENCE.LOGICAL'CONSTANT (also a constant)

name::
* McsEngl.kif'SENTENCE.LOGICAL'CONSTANT (also a constant)@cptIt,

kif'SENTENCE.QUANTIFIED

name::
* McsEngl.kif'SENTENCE.QUANTIFIED@cptIt,
* McsEngl.kif'QUANTIFIED'SENTENCE@cptIt,
* McsEngl.kif'quantsent@cptIt,

DEFINITION SYNTHETIC:
There are two types of quantified sentences -- a universally quantified sentence is signalled by the use of the forall operator, and an existentially quantified sentence is signalled by the use of the exists operator. The first argument in each case is a list of variable specifications. A variable specification is either a variable or a list consisting of a variable and a term denoting a relation that restricts the domain of the specified variable.
quantsent ::= (forall (varspec+) sentence) |
(exists (varspec+) sentence)
kif'varspec ::= variable | (variable constant)
Note that, according to these rules, it is permissible to write sentences with free variables, i.e. variables that do not occur within the scope of any enclosing quantifiers. The significance of the free variables in a sentence depends on the use of the sentence. When we assert the truth of a sentence with free variables, we are, in effect, saying that the sentence is true for all values of the free variables, i.e. the variables are universally quantified. When we ask whether a sentence with free variables is true, we are, in effect, asking whether there are any values for the free variables for which the sentence is true, i.e. the variables are existentially quantified.
[KIF SPEC, M.R. GENESERETH, 1995mar] 2000jul23

kif'SENTENCE.RELATIONAL

name::
* McsEngl.kif'SENTENCE.RELATIONAL@cptIt,
* McsEngl.kif'RELATIONAL'SENTENCE@cptIt,
* McsEngl.kif'relsent@cptIt,

_DEFINITION:
A relational sentence consists of a relation constant and an arbitrary number of argument terms, terminated by an optional sequence variable. As with functional terms, there is no syntactic restriction on the number of argument terms in a relation sentence -- the same relation constant can be applied to any finite number of arguments.
relsent ::= (constant term* [seqvar])
It is noteworthy that the syntax of relational sentences is the same as that of functional terms. On the other hand, their meanings are different. Fortunately, the context of each such expression determines its type (as an embedded term in one case or as a top-level sentence or argument to some sentential operator in the other case); and so this slight ambiguity causes no problems.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb24

VALUE:
A simple relational sentence without a terminating sequence variable is true if and only if the relation denoted by the relation constant in the sentence is true of the objects denoted by the arguments. Equivalently, viewing a relation as a set of tuples, we say that the relational sentence is true if and only if the tuple of objects formed from the values of the arguments is a member of the set of tuples denoted by the relation constant.
If a relational sentence terminates in a sequence variable, the sentence is true if and only if the relation contains the tuple consisting of the values of the terms that precede the sequence variable together with the objects in the sequence denoted by the variable.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb25

kif'EXPRESSION.RULE

name::
* McsEngl.kif'EXPRESSION.RULE@cptIt,
* McsEngl.kif'rule@cptIt,
* McsEngl.kif'CONDITIOANAL@cptIt,

_DEFINITION:
There are four special types of expressions in the language - terms, sentences, rules, and definitions. rules are used to express legal steps of inference;
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 1998feb25

DEFINITION SYNTHTETIC:
The following BNF defines the set of legal KIF rules.

<rule> ::= (=>> <premise>* <sentence>) | (<<= <sentence> <premise>*)
<premise> ::= <sentence> | (consis <sentence>)
The last argument in a forward rule is called the consequent of the rule. Analogously, the first argument in a reverse rule is called the consequent.
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 1998feb25

kif'EXPRESSION.TERM (denotes objcets)

name::
* McsEngl.kif'EXPRESSION.TERM (denotes objcets)@cptIt,
* McsEngl.kif'Term@cptIt,

DEFINITION SYNTHETIC:
term ::= indvar | constant | charref | string | block | funterm | listterm | quoterm | logterm
...Terms are used to denote objects in the world being described;
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb22

DEFINITION ANALYTIC:
There are three disjoint types of expressions in the language -- terms, sentences, and definitions.
Terms are used to denote objects in the world being described;
sentences are used to express facts about the world; and
definitions are used to define constants.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb22

kif'TERM'REFERENT:
We can unambiguously determine the referent of any term,
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 1998feb22

kif'TERM'SEMANTIC'VALUE:
Given an interpretation and a variable assignment, we can assign a semantic value to every term in the language.
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992]

kif'TERM'SUBGENERAL:
There are nine types of terms in KIF
1) individual variables,
2) constants,
3) character references,
4) character strings,
5) character blocks,
6) functional terms,
7) list terms,
8) quotations, and
9) logical terms.
Individual variables, constants, character references, strings, and blocks were discussed earlier.
term ::= indvar | constant | charref | string | block | funterm | listterm | quoterm | logterm
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb22

kif'TERM.CHARACTER'BLOCK (also a lexeme)

name::
* McsEngl.kif'TERM.CHARACTER'BLOCK (also a lexeme)@cptIt,

kif'TERM.CHARACTER'REFERENCE (also a lexeme)

name::
* McsEngl.kif'TERM.CHARACTER'REFERENCE (also a lexeme)@cptIt,

kif'TERM.CHARACTER'STRING (also a lexeme)

name::
* McsEngl.kif'TERM.CHARACTER'STRING (also a lexeme)@cptIt,

kif'TERM.CONSTANT (also a lexeme)

name::
* McsEngl.kif'TERM.CONSTANT (also a lexeme)@cptIt,

kif'TERM.FUNCTIONAL

name::
* McsEngl.kif'TERM.FUNCTIONAL@cptIt,
* McsEngl.kif'FUNCTIONAL'TERM@cptIt,
* McsEngl.kif'funterm@cptIt,

_DEFINITION:
A functional term consists of a function constant and an arbitrary number of argument terms, terminated by an optional sequence variable and surrounded by matching parentheses. Note that there is no syntactic restriction on the number of argument terms -- the same function constant can be applied to different numbers of arguments; arity restrictions in KIF are treated semantically.
funterm ::= (constant term* [seqvar])
[KIF SPEC, M.R. GENESERETH, 1995mar] 2000jul23

EXAMPLE:
(+ 2 3)

VALUE (=the objcet the term denotes):
The value of a functional term without a terminating sequence variable is obtained by applying the function denoted by the function constant in the term to the objects denoted by the arguments.
For example, the value of the term (+ 2 3) is obtained by applying the addition function (the function denoted by +) to the numbers 2 and 3 (the objects denoted by the object constants 2 and 3) to obtain the value 5, which is the value of the object constant 5.

If a functional term has a terminating sequence variable, the value is obtained by applying the function to the sequence of arguments formed from the values of the terms that precede the sequence variable and the values in the sequence denoted by the sequence variable.
Assume, for example, that the sequence variable @l has as value the sequence 2, 3, 4. Then, the value of the term (+ 1 @l) is obtained by applying the addition function to the numbers 1, 2, 3, and 4 to obtain the value 10, which is the value of the object constant 10.
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb25

kif'TERM.INDIVIDUAL'VARIABLE (also a lexeme)

name::
* McsEngl.kif'TERM.INDIVIDUAL'VARIABLE (also a lexeme)@cptIt,

kif'TERM.LIST

name::
* McsEngl.kif'TERM.LIST@cptIt,
* McsEngl.kif'LIST'TERM@cptIt,
* McsEngl.kif'listterm@cptIt,

_DEFINITION:
A list term consists of the listof operator and a finite list of terms, terminated by an optional sequence variable.
listterm ::= (listof term* [seqvar])
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 1998feb25

EXAMPLE:
(listof 0 1 2)

kif'TERM.LOGICAL

name::
* McsEngl.kif'TERM.LOGICAL@cptIt,
* McsEngl.kif'LOGICAL'TERM@cptIt,
* McsEngl.kif'logterm@cptIt,

_DEFINITION:
Logical terms involve the if and cond operators. The if form allows for the testing of a single condition or multiple conditions. An optional term at the end allows for the specification of a default value when all of the conditions are false. The cond form is similar but groups the pairs of sentences and terms within parentheses and has no optional term at the end.

logterm ::= (if logpair+ [term])
kif'logpair ::= sentence term
logterm ::= (cond logitem*)
kif'logitem ::= (sentence term)
[KIF SPEC, M.R. GENESERETH, 1995mar] 2000jul23

EXAMPLE:
(if (> 1 2) 1 (> 2 1) 2 0).

VALUE(the denoted-object):
The value of a logical term involving the if operator is the value of the term following the first true sentence in the argument list. For example, the term (if (> 1 2) 1 (> 2 1) 2 0) is equivalent to 2.
If none of the embedded sentences of a logical term involving the if operator is true and there is an isolated term at the end, the value of the conditional term is the value of that isolated term. For example, if the object constant a denotes a number, then the term (if (> a 0) a (- a)) denotes the absolute value of that number.
If none of the embedded sentences is true and there is no isolated term at the end, the value is undefined (i.e. bottom). In other words, the term (if (p a) a) is equivalent to (if (p a) a bottom).
The value of a logical term involving the cond operator is the value of the term following the first true sentence in the argument list. For example, the term (cond ((> 1 2) 1) ((> 2 1) 2)) is equivalent to 2.
If none of the embedded sentences is true, the value is undefined (i.e. bottom). In other words, the term (cond ((p a) a)) is equivalent to (cond ((p a) a) (true bottom)).
[KIF SPEC, M.R. GENESERETH, 1995mar] 2000jul26

kif'TERM.QUOTED

name::
* McsEngl.kif'TERM.QUOTED@cptIt,
* McsEngl.kif'QUOTED'TERM@cptIt,
* McsEngl.kif'Quotation@cptIt,
* McsEngl.kif'quoterm@cptIt,

Quotations involve the quote operator and an arbitrary list expression. A list expression is either an atom or a sequence of list expressions surrounded by parentheses. An atom is either a word or a character reference or a character string or a character block. Note that the list expression embedded within a quotation need not be a legal expression in KIF.
quoterm ::= (quote listexpr) | 'listexpr
kif'listexpr ::= atom | (listexpr*)
atom ::= word | charref | string | block
[KIF SPEC, M.R. GENESERETH, 1995mar] 2000jul23

EXAMPLE:
(quote )

kif'Evoluting#cptCore546.171#

name::
* McsEngl.kif'Evoluting@cptIt,

1995mar: KIF SPECIFICATION
a working draft for an American National Standard for KIF. It represents the consensus of the X3T2 Ad Hoc Group on KIF. (M.R. Genesereth)

1992jun: KIF Manual 3.0
(Genesereth, Fikes)

kif'KNOWLEDGE'BASE

name::
* McsEngl.kif'KNOWLEDGE'BASE@cptIt,

DEFINITION SYNTHETIC:
A knowledge base is a finite set of forms. [Definitions and Sentences]
[KIF SPEC, M.R. GENESERETH, 1995mar] 1998feb22

It is important to keep in mind that a knowledge base is a set of sentences#ql:kif'sentence#, not a sequence; the order of forms within the knowledge base is unimportant.
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 1998feb22

kif'SEMANTICS

name::
* McsEngl.kif'SEMANTICS@cptIt,

The basis for KIF semantics is a correlation between
- the terms and sentences of the language and
- a conceptualization of the world.
Every term denotes an object in the universe of discourse associated with the conceptualization, and every sentence is either true or false.

Given exact meanings for the constants of the language (whether they are the meanings in the definition of the language or our own concoctions), the semantics of KIF tells us the meaning of its complex expressions. We can unambiguously determine the referent of any term, and we can unambiguously determine the truth or falsity of any sentence.
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 2000jul22

kif'resourceInfHmn#cptResource843#

name::
* McsEngl.kif'resourceInfHmn@cptIt,

http://www-ksl.stanford.edu/knowledge-sharing/kif/

http://logic.stanford.edu/kif/kif.html

kif'UNIVERSE'OF'DISCOURSE

name::
* McsEngl.kif'UNIVERSE'OF'DISCOURSE@cptIt,

_DEFINITION:
A universe of discourse is the set of all objects presumed or hypothesized to exist in the world. The notion of object used here is quite broad. Objects can be concrete (e.g. a specific carbon atom, Confucius, the Sun) or abstract (e.g. the number 2, the set of all integers, the concept of justice). Objects can be primitive or composite (e.g. a circuit that consists of many subcircuits). Objects can even be fictional (e.g. a unicorn, Sherlock Holmes).
Different users of a declarative representation language, like KIF, are likely to have different universes of discourse.
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 1998feb22

PARTS:
...It must map object constants into objects in the universe of discourse. It must map function constants into functions on the universe of discourse. It must map relation constants into relations on the universe of discourse.
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 2000jul25

kif'OBJECT

name::
* McsEngl.kif'OBJECT@cptIt,

_DEFINITION:
The notion of object used here is quite broad. Objects can be concrete (e.g. a specific carbon atom, Confucius, the Sun) or abstract (e.g. the number 2, the set of all integers, the concept of justice). Objects can be primitive or composite (e.g. a circuit that consists of many subcircuits). Objects can even be fictional (e.g. a unicorn, Sherlock Holmes).
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 1998feb22

SUBGENERAL:
The following basic objects must occur in every universe of discourse.
1) Words. Yes, the words of KIF are themselves objects in the universe of discourse, along with the things they denote.
2) All complex numbers.
3) All finite lists of objects in the universe of discourse.
4) All sets of objects in the universe of discourse.
5) [T ανάποδο] (pronounced ``bottom'') - a distinguished object that occurs as the value of various functions when applied to arguments for which the functions make no sense.
Remember, however, that to these basic elements, the user can add whatever non-basic objects seem useful.
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 1998feb22

kif'OBJECT.BASIC

name::
* McsEngl.kif'OBJECT.BASIC@cptIt,

...
Remember, however, that to these basic elements, the user can add whatever non-basic objects seem useful.
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992]

kif'OBJECT.BOTTOM

name::
* McsEngl.kif'OBJECT.BOTTOM@cptIt,

Bottom In KIF, all functions are total, i.e. there is a value for every combination of arguments. In order to allow a user to express the idea that a function is not meaningful for certain arguments, KIF assumes that there is a special "undefined" object in the universe and provides the object constant bottom to refer to this object.
[KIF SPEC, M.R. GENESERETH, 1995mar] 2000jul26

a distinguished object that occurs as the value of various functions when applied to arguments for which the functions make no sense.
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992]

kif'OBJECT.BOUNDED

name::
* McsEngl.kif'OBJECT.BOUNDED@cptIt,

As mentioned earlier, the key difference between bounded and unbounded objects is that the former can be members of other sets while the latter cannot.
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 2000jul26

kif'OBJECT.EXPRESSION

name::
* McsEngl.kif'OBJECT.EXPRESSION@cptIt,

In formalizing knowledge about knowledge, we use a conceptualization in which expressions are treated as objects in the universe of discourse and in which there are functions and relations appropriate to these objects. In our conceptualization, we treat atoms as primitive objects (i.e. having no subparts). We conceptualize complex expressions (i.e. non-atoms) as lists of subexpressions (either atoms or other complex expressions). In particular, every complex expression is viewed as a list of its immediate subexpressions.
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 2000jul26

kif'OBJECT.RELATION

name::
* McsEngl.kif'OBJECT.RELATION@cptIt,
* McsEngl.kif'Relation@cptIt,

A relation is another kind of interrelationship among objects in the universe of discourse. More formally, a relation is an arbitrary set of finite lists of objects (of possibly varying lengths). Each list is a selection of objects that jointly satisfy the relation. For example, the < relation on numbers contains the list (2,3), indicating that 2 is less than 3.
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 2000jul22

In order to do this, we need to treat functions and relations as objects in our universe of discourse.

By definition, functions and relations are sets of lists of objects from our universe of discourse.
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 2000jul22

kif'FUNCTION

name::
* McsEngl.kif'FUNCTION@cptIt,

A function is one kind of interrelationship among objects. For every finite sequence of objects (called the arguments), a function associates a unique object (called the value). More formally, a function is defined as a set of finite lists of objects, one for each combination of possible arguments. In each list, the initial elements are the arguments, and the final element is the value. For example, the function 1+ contains the list (2,3), indicating that integer-successor of 2 is 3.

Note that both functions and relations are defined as sets of lists. In fact, every function is a relation.
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 2000jul22

Bottom
In KIF, all functions are total, i.e. there is a value for every combination of arguments. In order to allow a user to express the idea that a function is not meaningful for certain arguments, KIF assumes that there is a special "undefined" object in the universe and provides the object constant bottom to refer to this object.
[KIF SPEC, M.R. GENESERETH, 1995mar] 2000jul23

kif'LIST

name::
* McsEngl.kif'LIST@cptIt,

An object is a list if and only if there is a corresponding expression involving the listof operator.
(defrelation list (?x) := (exists (@l) (= ?x (listof @l))))
[KIF SPEC, M.R. GENESERETH, 1995mar] 2000jul26

EMPTY LIST:
The object constant nil denotes the empty list.
[KIF SPEC, M.R. GENESERETH, 1995mar] 2000jul26

kif'OBJECT.SET

name::
* McsEngl.kif'OBJECT.SET@cptIt,
* McsEngl.kif'Set@cptIt,

_DEFINITION:
In many applications, it is helpful to talk about sets of objects as objects in their own right, e.g. to specify their cardinality, to talk about subset relationships, and so forth.
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 2000jul26

SET CARDINALITY:
Note that the cardinality of the set denoted by (setof ... ) can be less than . By definition, an object can appear in a set only once. Consequently, if and (for different and ) denote the same object, the resulting set must contain fewer than members.
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 2000jul26

SET EXTENSTIONALITY:
An important property shared by all sets is the extensionality property. Two sets are identical if and only if they have the same members.
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 2000jul26

SET PARADOXES:
The formalization of sets of simple objects is a simple matter; but, when we begin to talk about sets of sets, the job becomes difficult due to the threat of paradoxes (like Russell's hypothesized set of all sets that do not contain themselves).
Fortunately, there is no shortage of mathematical theories for our use in KIF - various higher order logics, Zermelo-Fraenkel set theory, von Neuman-Bernays-Godel set theory, Quine's variants on the previous two approaches, the more recently elaborated proposals by Feferman and Aczel, and so forth. In KIF, we have adopted a version of the von Neumann-Bernays-Godel set theory.
[KIF MANUAL 3.0, GENESERETH-FIKES, 1992] 2000jul26

kif'OBJECT.WORD

name::
* McsEngl.kif'OBJECT.WORD@cptIt,

lagCmr.knowledge.KL_ONE {1980s}

_CREATED: {2007-12-02}

name::
* McsEngl.lagKnlg.KL-ONE,
* McsEngl.kl-one@cptIt501i,

_DESCRIPTION:
KL-ONE is a well known knowledge representation system in the tradition of semantic networks and frames; that is, it is a frame language. The system is an attempt to overcome semantic indistinctness in semantic network representations and to explicitly represent conceptual information as a structured inheritance network.

There is a whole family of KL-ONE-like systems.

Frames in KL-ONE are called concepts. These form hierarchies using subsume-relations; in the KL-ONE terminology a super class is said to subsume its subclasses. Multiple inheritance is allowed. Actually a concept is said to be well-formed only if it inherits from more than one other concept. All concepts, except the top concept Thing, must have at least one super class.

In KL-ONE descriptions are separated into two basic classes of concepts: primitive and defined. Primitives are domain concepts that are not fully defined. This means that given all the properties of a concept, this is not sufficient to classify it. They may also be viewed as incomplete definitions. Using the same view, defined concepts are complete definitions. Given the properties of a concept, these are necessary and sufficient conditions to classify the concept.

The slot-concept is called roles and the values of the roles are role-fillers. There are several different types of roles to be used in different situations. The most common and important role type is the generic RoleSet that captions the fact that the role may be filled with more than one filler.
[http://en.wikipedia.org/wiki/KL-ONE]

lagCmr.knowledge.KNOWLEDGE_GRAPH

name::
* McsEngl.knowledge-graph,

lagCmr.knowledge.LOGIC

name::
* McsEngl.conceptIt525.6,
* McsEngl.lagKnlg.LOGIC,
* McsEngl.logic-knowledge-method@cptIt525.6,
* McsEngl.logical-language@cptIt525.6,
* McsEngl.methodKnowledgeLogic@cptIt252.6,

_DESCRIPTION:
Since the inception of AI as a separate research discipline, researchers have proposed many different languages. In time, logical languages have become the most dominant, mainly because they do have a precise semantics and associated reasoning methods. Many of these languages extend or modify standard logic.
Of course, the precise nature of logical languages makes it sometimes di?cult to represent objects in the real world, also called natural kinds, as these are often incompletely understood.
However, even then logical language allow approximating what is known.
[http://www.cs.ru.nl/~peterl/teaching/KeR/summary.pdf]

_SPECIFIC:
* prolog#cptItsoft364# Prolog is a logical programming language, and has characteristics that renders it very close to knowledge representation and reasoning systems. Because of this closeness, it is relatively easy to implement knowledge systems in Prolog. This explains why Prolog has been taken as the primary implementation language in the course.

lagCmr.knowledge.F_Logic

name::
* McsEngl.f-logic,
* McsEngl.lagKnlg.f-Logic,

_DESCRIPTION:
F-logic (frame logic) is a knowledge representation and ontology language. F-logic combines the advantages of conceptual modeling with object-oriented, frame-based languages and offers a declarative, compact and simple syntax, as well as the well-defined semantics of a logic-based language. Features include, among others, object identity, complex objects, inheritance, polymorphism, query methods, encapsulation. F-logic stands in the same relationship to object-oriented programming as classical predicate calculus stands to relational database programming.

F-logic was developed by Michael Kifer at Stony Brook University and Georg Lausen at the University of Mannheim. F-logic was originally developed for deductive databases, but is now most frequently used for semantic technologies, especially the Semantic Web. F-logic is considered as one of the formalisms for ontologies, but description logic (DL) is more popular and accepted, as is the DL-based OWL.

A development environment for F-logic was developed in the NeOn project and is also used in a range of applications for information integration, question answering and semantic search. Prior to the version 4 of Protιgι ontology editor, F-Logic is supported as one of the two kinds of ontology.

The frame syntax of the Rule Interchange Format Basic Logic Dialect (RIF BLD) standardized by the World Wide Web Consortium is based on F-logic; RIF BLD however does not include non-monotonic reasoning features of F-logic.[1]
[http://en.wikipedia.org/wiki/F-logic]

lagCmr.knowledge.First_Order_Logic

name::
* McsEngl.lagKnlg.First-Order-Logic,

_DESCRIPTION:
Two-valued Logic
Many of the architectures analyzed build upon a substrate of two-valued logic. This effectively precludes the capability of discerning shades of meaning, although several authors claim that such a mechanism could be layered in or added in a case-specific way. To add the capability, one would add huge memory and computational requirements, byte-for-byte, compared to an architecture which inherently deals with continuous variables. Note that to perform operations on continuous variables, more primitive operations are needed beyond logical operators. The following architectures are built on two-valued logic:
Planning and Learning Architecture (Prodigy)
Meta-Reasoning Architecture (MAX)
--------------------------------------------------------------------------------
The following architectures explicitly utilize continuous variables:
Adaptive Intelligent Systems (AIS)
A Basic Integrated Agent (Homer)
[http://krusty.eecs.umich.edu/cogarch4/toc_defs/defs_props/defs_2vals.html] 1998feb16

lagCmr.knowledge.LOOM

name::
* McsEngl.conceptIt564,
* McsEngl.lagKnlg.LOOM,
* McsEngl.loom@cptIt564,

loom'DEFINITION

Loom is a language and environment for constructing intelligent applications. The heart of Loom is a knowledge representation system that is used to provide deductive support for the declarative portion of the Loom language. Declarative knowledge in Loom consists of definitions, rules, facts, and default rules. A deductive engine called a classifier utilizes forward-chaining, semantic unification and object-oriented truth maintainance technologies in order to compile the declarative knowledge into a network designed to efficiently support on-line deductive query processing.
[http://www.isi.edu/isd/LOOM/LOOM-HOME.html 1998feb]

LOOM [16] is a high-level programming language and environment intended for use in constructing expert systems and other intelligent application programs. It is a descendent of the KL-ONE family and it is based in description logic, achieving a tight integration between rule-based and frame-based paradigms.
LOOM supports a "description" language for modeling objects and relationships, and an “assertion” language for specifying constraints on concepts and relations, and to assert facts about individuals. Procedural programming is supported through pattern-directed methods, while production-based and classification-based inference capabilities support a powerful deductive reasoning (in the form of an inference engine: the classifier).
It is important to focus on the description logic approach to ontology modeling, which differs from the frame-based approach of the previously described languages. Definitions written using this approach try to exploit the existence of a powerful classifier in the language, specifying concepts by using a set of restrictions on them.
[http://www.cs.man.ac.uk/~ocorcho/documents/ekaw00_CorchoGomezPerez.pdf]

Loom is a research project in the Artificial Intelligence research group at
the University of Southern California's
Information Sciences Institute.

loom'Goal#cptIt215#

name::
* McsEngl.loom'Goal@cptIt,

The goal of the project is to develop and field advanced tools for knowledge representation and reasoning in Artificial Intelligence.

loom'INTEGRATED-DEVELOPMENT-ENVIRONMENT#cptIt430#

name::
* McsEngl.loom'INTEGRATED-DEVELOPMENT-ENVIRONMENT@cptIt,

Loom is a knowledge representation language implemented in Lisp. It requires a lisp system for operation. The lisp system is not provided by USC/ISI.

loom'Price#cptEconomy541.44#

name::
* McsEngl.loom'Price@cptIt,

Loom is a licensed product available from USC/ISI free of charge for non-commercial applications. All

loom'resourceInfHmn#cptResource843#

name::
* McsEngl.loom'resourceInfHmn@cptIt,

http://www.isi.edu/isd/LOOM/LOOM-HOME.html

lagCmr.knowledge.ONTOLOGY

_CREATED: {2011-08-30} {2007-12-08} {2007-12-02} {2007-08-09}

name::
* McsEngl.conceptIt511,
* McsEngl.lagKnlg.ONTOLOGY,
* McsEngl.lngOnt@cptIt511, {2011-08-29}
* McsEngl.mkOnt@cptIt511, {2011-09-04}
* McsEngl.ocl@cptIt511, {2007-12-05}
* McsEngl.ontology-language@cptIt511,
* McsEngl.lngOnt@cptIt511, {2014-02-06}
* McsEngl.ontlng@cptIt511, {2012-11-25}

lagOnt'DEFINITION

* Ontology languages are formal languages used to construct ontologies. They allow the encoding of knowledge about specific domains and often include reasoning rules that support the processing of that knowledge.
[http://en.wikipedia.org/wiki/Ontology_language_%28computer_science%29]

* In both computer science and information science, an ontology#cptIt561# is a data model that represents a set of concepts within a domain and the relationships between those concepts. It is used to reason about the objects within that domain.
...
An ontology language is a formal language used to encode the ontology. There are a number of such languages for ontologies, both proprietary and standards-based:
* OWL#cptIt562# is a language for making ontological statements, developed as a follow-on from RDF and RDFS, as well as earlier ontology language projects including OIL, DAML and DAML+OIL. OWL is intended to be used over the World Wide Web, and all its elements (classes, properties and individuals) are defined as RDF resources, and identified by URIs.
* KIF is a syntax for first-order logic that is based on S-expressions.
* The Cyc project has its own ontology language called CycL, based on first-order predicate calculus with some higher-order extensions.
* Rule Interchange Format (RIF) and F-Logic combine ontologies and rules.
[http://en.wikipedia.org/wiki/Ontology_%28computer_science%29]

lagOnt'GENERIC

_GENERIC:
* method-knowledge#cptItsoft525#

lagOnt'WHOLE

_WHOLE:
* technology-knowledge#cptIt458#

lagOnt'PART

Accordingly to Gruber [8], knowledge in ontologies can be specified using five kind of components:
- concepts,
- relations,
- functions,
- axioms and
- instances
8. Gruber, R. A translation approach to portable ontology specification. Knowledge Acquisition.#5: 199-220. 1993.
[http://www.cs.man.ac.uk/~ocorcho/documents/ekaw00_CorchoGomezPerez.pdf]

lagOnt'ENVIRONMENT#cptCore756#

name::
* McsEngl.lagOnt'ENVIRONMENT@cptIt,

Ontological Engineer

lagOnt'CollectionKnowledge (Ontology)

_CREATED: {2011-09-04} {2007-09-03}

name::
* McsEngl.lagOnt'CollectionKnowledge (Ontology)@cptIt,
* McsEngl.conceptIt511.1,
* McsEngl.conceptIt561,
* McsEngl.ont@cptIt511.1, {2011-09-04}
* McsEngl.ontology@cptIt,
* McsEngl.ontology-computer-science@cptIt561,
* McsEngl.conceptIt561,
* McsEngl.conceptIt511.1,

_GENERIC:
* collectionKnowledge#cptItsoft497.1#

DEFINITION

A knowledge base containing a representation of a problem domain by means of a description logic or frame language is usually called an ontology.
[http://www.cs.ru.nl/~peterl/teaching/KeR/summary.pdf] 2011-09-03

In both computer science and information science, an ontology is a data model that represents a set of concepts within a domain and the relationships between those concepts. It is used to reason about the objects within that domain.
[http://en.wikipedia.org/wiki/Ontology_%28computer_science%29]

An ontology is similar to a dictionary or glossary, but with greater detail and structure that enables computers to process its content. An ontology consists of a set of concepts, axioms, and relationships that describe a domain of interest.
[http://suo.ieee.org/]

Knowledge base = set of sentences in a formal language = logical theory
[http://www.inf.unibz.it/~franconi/dl/course/slides/logic/propositional/prop-logic-1.pdf]

ont.SPECIFIC

name::
* McsEngl.ont.SPECIFIC@cptIt,

If you did not define attributes for the concepts you would have either a taxonomy (if hyponym relationships exist between concepts) or a controlled vocabulary. These are useful, but are not considered true ontologies.
[http://en.wikipedia.org/wiki/Ontology_%28computer_science%29]

ont'Attribute

name::
* McsEngl.ont'Attribute@cptIt,
* McsEngl.attribute'in'ontology@cptIt561,
* McsEngl.concept'in'ontology@cptIt561,

_DEFINITION:
Attributes: properties, features, characteristics, or parameters that objects can have and share
...
Objects in the ontology can be described by assigning attributes to them. Each attribute has at least a name and a value, and is used to store information that is specific to the object it is attached to. For example the Ford Explorer object has attributes such as:
* Name: Ford Explorer
* Number-of-doors: 4
* Engine: {4.0L, 4.6L}
* Transmission: 6-speed
The value of an attribute can be a complex data type; in this example, the value of the attribute called Engine is a list of values, not just a single value.
[http://en.wikipedia.org/wiki/Ontology_%28computer_science%29]

ont'Class

name::
* McsEngl.ont'Class@cptIt,
* McsEngl.class-ontology@cptIt561,
* McsEngl.concept-ontology@cptIt561,

_DEFINITION:
Classes: sets, collections, or types of objects
...
Classes (Concepts) are abstract groups, sets, or collections of objects. They may contain individuals, other classes, or a combination of both. Some examples of classes:[2]
* Person, the class of all people
* Molecule, the class of all molecules
* Number, the class of all numbers
* Vehicle, the class of all vehicles
* Car, the class of all cars
* Individual, representing the class of all individuals
* Class, representing the class of all classes
* Thing, representing the class of all things
* Alumna, representing the class of all alumnae
* Uterus, representing the class of all uteri
Ontologies vary on whether classes can contain other classes, whether a class can belong to itself, whether there is a universal class (that is, a class containing everything), etc. Sometimes restrictions along these lines are made in order to avoid certain well-known paradoxes.
[http://en.wikipedia.org/wiki/Ontology_%28computer_science%29]

ont'class'PARTITION

name::
* McsEngl.ont'class'PARTITION@cptIt,

A partition is a set of related classes and associated rules that allow objects to be placed into the appropriate class. For example, to the right is the partial diagram of an ontology that has a partition of the Car class into the classes 2-Wheel Drive and 4-Wheel Drive. The partition rule determines if a particular car is placed in the 2-Wheel Drive or the 4-Wheel Drive class.
If the partition rule(s) guarantee that a single Car cannot be in both classes, then the partition is called a disjoint partition. If the partition rules ensure that every concrete object in the super-class is an instance of at least one of the partition classes, then the partition is called an exhaustive partition.
[http://en.wikipedia.org/wiki/Ontology_%28computer_science%29]

ont'class.EXTENSIONAL

name::
* McsEngl.ont'class.EXTENSIONAL@cptIt,

The classes of an ontology may be extensional or intensional in nature. A class is extensional if and only if it is characterized solely by its membership. More precisely, a class C is extensional if and only if for any class C', if C' has exactly the same members as C, then C and C' are identical. If a class does not satisfy this condition, then it is intensional. While extensional classes are more well-behaved and well-understood mathematically, as well as less problematic philosophically, they do not permit the fine grained distinctions that ontologies often need to make. For example, an ontology may want to distinguish between the class of all creatures with a kidney and the class of all creatures with a heart, even if these classes happen to have exactly the same members.
[http://en.wikipedia.org/wiki/Ontology_%28computer_science%29]

ont'Engineer#attEnv#

name::
* McsEngl.ont'Engineer@cptIt,
* McsEngl.people'in'ontology@cptIt561,

PEASE_ADAM:
Adam Pease is the Principal Consultant and CEO of Articulate Software. Formerly, he was Director of Knowledge Systems at Teknowledge, where he led a group conducting research and applications in ontology and knowledge based systems. His current work is on the Suggested Upper Merged Ontology, Arabic WordNet with Ontology, and Sigma ontology environment. His previous projects include Rapid Knowledge Formation, DARPA Agent Markup Language, High Performance Knowledge Bases and the Core Plan Representation.
[http://home.earthlink.net/~adampease/professional/]

ont'evaluation

name::
* McsEngl.ont'evaluation@cptIt,

_DESCRIPTION:
Werner Ceusters has noted the confusion caused by the significant differences in the meaning of word ontology when used by philosophy compared with the use of the word ontology in computer science, and advocates for greater precision in use of the word ontology so that members of the various disciplines using various definitions of the word ontology can communicate. He writes 'before one is able to answer the question 'what is an ontology?', one must provide first an answer to the question 'what does the word ontology mean?'.[56]
[http://en.wikipedia.org/wiki/Ontology_(computer_science)]

ont'Event

name::
* McsEngl.ont'Event@cptIt,
* McsEngl.event'in'ontology@cptIt561,

_DEFINITION:
Events: the changing of attributes or relations
[http://en.wikipedia.org/wiki/Ontology_%28computer_science%29]

ont'Individual

name::
* McsEngl.ont'Individual@cptIt,
* McsEngl.individual-ontology@cptIt561,
* McsEngl.instance'in'ontology@cptIt561,

_DEFINITION:
Individuals: the basic or "ground level" objects.
...
Individuals (instances) are the basic, "ground level" components of an ontology. The individuals in an ontology may include concrete objects such as people, animals, tables, automobiles, molecules, and planets, as well as abstract individuals such as numbers and words. Strictly speaking, an ontology need not include any individuals, but one of the general purposes of an ontology is to provide a means of classifying individuals, even if those individuals are not explicitly part of the ontology...
[http://en.wikipedia.org/wiki/Ontology_%28computer_science%29]

ont'Merging

name::
* McsEngl.ont'Merging@cptIt,

At present, merging ontologies is a largely manual process and therefore time-consuming and expensive. Using a foundation ontology to provide a common definition of core terms can make this process manageable. There are studies on generalized techniques for merging ontologies, but this area of research is still largely theoretical.
[http://en.wikipedia.org/wiki/Ontology_%28computer_science%29] 2007-09-04

ont'Object

name::
* McsEngl.ont'Object@cptIt,
* McsEngl.object-ontology@cptIt561,

_DEFINITION:
[http://en.wikipedia.org/wiki/Ontology_%28computer_science%29]

ont'Organization

name::
* McsEngl.ont'Organization@cptIt,

SUO-WG

name::
* McsEngl.Standard'Upper'Ontology'Working'Group@cptIt561,
* McsEngl.SUO'WG@cptIt561,

_DEFINITION:
The SUO WG is developing a Standard that will specify an upper ontology to support computer applications such as data interoperability, information search and retrieval, automated inferencing, and natural language processing.
[http://suo.ieee.org/index.html]

SOURCE:
* http://suo.ieee.org/index.html:

ont'Relation

name::
* McsEngl.ont'Relation@cptIt,
* McsEngl.relation-ontology@cptIt561,
* McsEngl.property-ontology@cptIt561i,

_DEFINITION:
Relations: ways that objects can be related to one another
...
An important use of attributes is to describe the relationships (also known as relations) between objects in the ontology. Typically a relation is an attribute whose value is another object in the ontology. For example in the ontology that contains the Ford Explorer and the Ford Bronco, the Ford Bronco object might have the following attribute:
* Successor: Ford Explorer
This tells us that the Explorer is the model that replaced the Bronco. Much of the power of ontologies comes from the ability to describe these relations. Together, the set of relations describes the semantics of the domain.
[http://en.wikipedia.org/wiki/Ontology_%28computer_science%29]

SPESIFEPTO:
As well as the standard is-a and part-of relations, ontologies often include additional types of relation that further refine the semantics they model. These relations are often domain-specific and are used to answer particular types of question.
For example in the domain of automobiles, we might define a made-in relationship which tells us where each car is built. So the Ford Explorer is made-in Louisville. The ontology may also know that Louisville is-in Kentucky and Kentucky is-a state of the USA. Software using this ontology could now answer a question like "which cars are made in America?"
[http://en.wikipedia.org/wiki/Ontology_%28computer_science%29]

ont'relation.MERONYMY

name::
* McsEngl.ont'relation.MERONYMY@cptIt,

Another common type of relations is the meronymy relation, written as part-of, that represents how objects combine together to form composite objects. For example, if we extended our example ontology to include objects like Steering Wheel, we would say that "Steering Wheel is-part-of Ford Explorer" since a steering wheel is one of the components of a Ford Explorer. If we introduce meronymy relationships to our ontology, we find that this simple and elegant tree structure quickly becomes complex and significantly more difficult to interpret manually. It is not difficult to understand why; an entity that is described as 'part of' another entity might also be 'part of' a third entity. Consequently, entities may have more than one parent. The structure that emerges is known as a directed acyclic graph (DAG).
[http://en.wikipedia.org/wiki/Ontology_%28computer_science%29]

ont'relation.SUBSUMPTION

name::
* McsEngl.ont'relation.SUBSUMPTION@cptIt,

The most important type of relation is the subsumption relation (is-superclass-of, the converse of is-a, is-subtype-of or is-subclass-of). This defines which objects are members of classes of objects. For example we have already seen that the Ford Explorer is-a 4-wheel drive, which in turn is-a Car:
The addition of the is-a relationships has created a hierarchical taxonomy; a tree-like structure (or, more generally, a partially ordered set) that clearly depicts how objects relate to one another. In such a structure, each object is the 'child' of a 'parent class' (Some languages restrict the is-a relationship to one parent for all nodes, but many do not).
[http://en.wikipedia.org/wiki/Ontology_%28computer_science%29]

ont'Relation-to-ONTOLOGY-PHILOSOPHY

name::
* McsEngl.ont'Relation-to-ONTOLOGY-PHILOSOPHY@cptIt,

The term ontology has its origin in philosophy, where it is the name of one fundamental branch of metaphysics, concerned with analyzing various types or modes of existence, often with special attention to the relations between particulars and universals, between intrinsic and extrinsic properties, and between essence and existence.
...
During the second half of the 20th century, philosophers extensively debated the possible methods or approaches to building ontologies, without actually building any very elaborate ontologies themselves. By contrast, computer scientists were building some large and robust ontologies (such as WordNet and Cyc) with comparatively little debate over how they were built.
In the early years of the 21st century, the interdisciplinary project of cognitive science has been bringing the two circles of scholars closer together. For example, there is talk of a "computational turn in philosophy" which includes philosophers analyzing the formal ontologies of computer science (sometimes even working directly with the software), while researchers in computer science have been making more references to those philosophers who work on ontology (sometimes with direct consequences for their methods). Still, many scholars in both fields are uninvolved in this trend of cognitive science, and continue to work independently of one another, pursuing separately their different concerns.
[http://en.wikipedia.org/wiki/Ontology_%28computer_science%29]

SPECIFIC

name::
* McsEngl.ontology.specific@cptIt,
* McsEngl.ont.specific@cptIt,

_SPECIFIC:
* Cyc-ontology##
* domain-specific-ontology##
* fomal-ontology##
* mixed-ontology##
* mso-ontology##
* owl_s-ontology##
* published-ontology##
* sumo-ontology##
* taxonomy-ontology##
* terminological-ontology##
* upper-ontology##
* wordnet-ontology##

ont.DOMAIN-SPECIFIC

name::
* McsEngl.ont.DOMAIN-SPECIFIC@cptIt,
* McsEngl.domain'ontology@cptIt561,

_DESCRIPTION:
A domain ontology (or domain-specific ontology) models a specific domain, or part of the world. It represents the particular meanings of terms as they apply to that domain. For example the word card has many different meanings. An ontology about the domain of poker would model the "playing card" meaning of the word, while an ontology about the domain of computer hardware would model the "punch card" and "video card" meanings.
[http://en.wikipedia.org/wiki/Ontology_%28computer_science%29]

ont.FORMAL

name::
* McsEngl.ont.FORMAL@cptIt,
* McsEngl.ontology.formal@cptIt,
* McsEngl.formal-ontology@cptIt,

_DESCRIPTION:
formal ontology.
A terminological ontology whose categories are distinguished by axioms and definitions stated in logic or in some computer-oriented language that could be automatically translated to logic. There is no restriction on the complexity of the logic that may be used to state the axioms and definitions. The distinction between terminological and formal ontologies is one of degree rather than kind. Formal ontologies tend to be smaller than terminological ontologies, but their axioms and definitions can support more complex inferences and computations. The two major contributors to the development of formal ontology are the philosophers Charles Sanders Peirce and Edmund Husserl. Examples of formal ontologies include theories in science and mathematics, the collections of rules and frames in an expert system, and specification of a database schema in SQL.
[http://www.jfsowa.com/ontology/ontoshar.htm]
===
A Formal ontology is an ontology with a structure that is guided and defined through axioms. The goal of a formal ontology is to provide an unbiased (domain- and application-independent) view on reality. Formal ontologies are founded upon a specific Formal Upper Level Ontology, which provides consistency checks for the entire ontology and, if applied properly, allows the modeler to avoid possibly erroneous ontological assumptions encountered in modeling large-scale ontologies.

By maintaining an independent view on reality the ontology gains the following properties:
* indefinite expandability:
the ontology remains consistent with increasing content.
* content and context independence:
any kind of 'concept' can find its place.
* accommodate different levels of granularity.

Theories on how to conceptualize reality date back as far as Aristotle.
[http://en.wikipedia.org/wiki/Formal_ontology]

ont.MIXED

name::
* McsEngl.ont.MIXED@cptIt,
* McsEngl.mixed-ontology@cptIt,
* McsEngl.ontology.mixed@cptIt,

_DESCRIPTION:
mixed ontology.
An ontology in which some subtypes are distinguished by axioms and definitions, but other subtypes are distinguished by prototypes. The top levels of a mixed ontology would normally be distinguished by formal definitions, but some of the lower branches might be distinguished by prototypes.
[http://www.jfsowa.com/ontology/ontoshar.htm]

ont.MSO

name::
* McsEngl.ont.MSO@cptIt,
* McsEngl.mso@cptIt561,

_DEFINITION:
The Multi-Source Ontology (MSO) of WebKB-2
WebKB-2 is a knowledge server that permits Web users to browse and update private knowledge bases on their machines, or alternatively, a large shared knowledge base on the server machine. In this last case, each object - a category (type or individual), a link between categories (e.g. subtypeOf, exclusion, locationOf, substanceOf), or a more complex statement (graph) - has an associated source (user and/or document), and a Web user can
1) query, re-use and add new categories, links or graphs,
2) remove those he/she has created,
3) "correct other graphs" (represent alternative beliefs) by using relations such as pm#corrective_specialization.
The ontology of the shared knowledge base is currently an integration of various top-level ontologies and a lexical ontology derived from an extension and correction of the noun-related part of WordNet 1.7 (for a published article, click here). The semantics of some categories from WordNet had to be modified in order to fix inconsistencies (all the modifications have been recorded and justified). The semantics of categories from other sources (e.g. Sowa, Dolce, the Lifecycle Integration Schema, the Natural Semantic Metalanguage, OWL, DAML+OIL, KIF and the Dublin Core) have been kept (no direct/indirect link or definition has been modified, and hopefully the links between categories of different sources are mostly correct). Since the categories from the various ontologies are well connected and since the creators of the categories, links and statements are recorded, 1) the categories and statements from the various ontologies complement, illustrate or precise each other, 2) lexical conflicts are avoided, 3) semantics conflicts or redundancies can be detected when new categories or statements are added, thus leading the knowledge providers to be more precise and keep the knowledge base well inter-connected (as opposed to the traditional approach where ontologies are more-or-less independently developed and must then be selected, interpreted and merged by each knowledge engineer wanting to re-use ontologies for an application), 4) the categories and statements may be filtered on their creators (according to their identifiers, types or more complex information on them), 5) the contribution of each knowledge provider is acknowledged.

The Standard Upper Ontology Working Group has voted this Multi-Source Ontology (MSO) as one of the materials to work on (click here for the main messages on the SUO mailing list about the MSO of WebKB-2 and its underlying approach, the most important messages being the one of December 2nd 2003 and the one of May 12th 2004).
WebKB-2 and its MSO may indeed be an instrument for ontology creators to interconnect their ontologies with other ones, and let people query these ontologies and re-use or complement them. Importantly, no central authority is relied on, and conflicts can be solved without discussion nor compromise (but also, the protocols are not sufficient to "force" the knowledge providers to keep the shared ontology "well connected", some minimal cooperative spirit and fairness is necessary).
[http://www.webkb.org/doc/MSO.html]

SOURCE:
* http://www.webkb.org//
* http://www.webkb.org/doc/MSO.html:

ont.OWL-S

name::
* McsEngl.ont.OWL-S@cptIt,
* McsEngl.owl-s'ontology@cptIt561i,

_DEFINITION:
OWL-S is an ontology built on top of Web Ontology Language (OWL) by the DARPA DAML program. It replaces the former DAML-S ontology. "OWL-S is an ontology, within the OWL-based framework of the Semantic Web, for describing Semantic-Web-Services#ql:semantic'web'service-*#. It will enable users and software agents to automatically discover, invoke, compose, and monitor Web resources offering services, under specified constraints." [1]
[http://en.wikipedia.org/wiki/OWL-S]

EVOLUTION:
OWL-S has been under development since early 2001, and has been used by a substantial number of research efforts since that time.
[http://www.daml.org/services/owl-s/1.1/related.html]

LANGUAGE:
OWL-S ontologies are written in OWL DL, thus are positioned well to support applications where computational guarantees are required on the reasoning components.
[http://www.daml.org/services/owl-s/1.1/related.html]

SOURCE:
http://www.daml.org/services/owl-s//
http://www.daml.org/services/owl-s/1.1/:

ont.PROTOTYPE-BASED

name::
* McsEngl.ont.PROTOTYPE-BASED@cptIt,
* McsEngl.ontology.prototype-based@cptIt,
* McsEngl.prototype-based-ontology@cptIt,

_DESCRIPTION:
prototype-based ontology.
A terminological ontology whose categories are distinguished by typical instances or prototypes rather than by axioms and definitions in logic. For every category c in a prototype-based ontology, there must be a prototype p and a measure of semantic distance d(x,y,c), which computes the dissimilarity between two entities x and y when they are considered instances of c. Then an entity x can classified by the following recursive procedure:
Suppose that x has already been classified as an instance of some category c, which has subcategories s1,...,sn.
For each subcategory si with prototype pi, measure the semantic distance d(x, pi , c).
If d(x, pi , c) has a unique minimum value for some subcategory si, then classify x as an instance of si, and call the procedure recursively to determine whether x can be further classified by some subcategory of si.
If c has no subcategories or if d(x, pi , c) has no unique minimum for any si, then the classification procedure stops with x as an instance of c, since no finer classification is possible with the given selection of prototypes.
As an example, a black cat and an orange cat would be considered very similar as instances of the category Animal, since their common catlike properties would be the most significant for distinguishing them from other kinds of animals. But in the category Cat, they would share their catlike properties with all the other kinds of cats, and the difference in color would be more significant. In the category BlackEntity, color would be the most relevant property, and the black cat would be closer to a crow or a lump of coal than to the orange cat. Since prototype-based ontologies depend on examples, it is often convenient to derive the semantic distance measure by a method that learns from examples, such as statistics, cluster analysis, or neural networks.
[http://www.jfsowa.com/ontology/ontoshar.htm]

ont.PUBLISHED

name::
* McsEngl.ont.PUBLISHED@cptIt,
* McsEngl.ontology.published@cptIt,
* McsEngl.published-ontology@cptIt,

Examples of published ontologies
* Dublin Core, a simple ontology for documents and publishing.
* Cyc for formal representation of the universe of discourse.
* Suggested Upper Merged Ontology, which is a formal upper ontology
* Generalized Upper Model, a linguistically-motivated ontology for mediating between clients systems and natural language technology
* WordNet Lexical reference system
* Gene Ontology for genomics
* Protein Ontology for proteomics
* Foundational Model of Anatomy for human anatomy
* SBO, the Systems Biology Ontology, for computational models in biology
* Plant Ontology for plant structures and growth/development stages, etc.
* CIDOC CRM (Conceptual Reference Model) - an ontology for "cultural heritage information".
* GOLD (General Ontology for Linguistic Description )
* Linkbase A formal representation of the biomedical domain, founded upon BFO - Basic formal ontology.
* Foundational, Core and Linguistic Ontologies
* ThoughtTreasure ontology
* LPL Lawson Pattern Language
* TIME-ITEM Topics for Indexing Medical Education
* POPE Purdue Ontology for Pharmaceutical Engineering
* IDEAS Group A formal ontology for enterprise architecture being developed by the Australian, Canadian, UK and US Defence Depts. The IDEAS Group Website
[http://en.wikipedia.org/wiki/Ontology_%28computer_science%29]

ont.SUMO

name::
* McsEngl.ont.SUMO@cptIt,
* McsEngl.sumo@cptIt561,
* McsEngl.Suggested'Upper'Merged'Ontology@cptIt561,

sumo'DEFINITION:
The Suggested Upper Merged Ontology (SUMO) is an upper level ontology that has been proposed as a starter document for The Standard Upper Ontology Working Group, an IEEE-sanctioned working group of collaborators from the fields of engineering, philosophy, and information science. The SUMO provides definitions for general-purpose terms and acts as a foundation for more specific domain ontologies. In this paper we outline the strategy used to create the current version of the SUMO, discuss some of the challenges that we faced in constructing the ontology, and describe in detail its most general concepts and the relations between them.
[http://projects.teknowledge.com/HPKB/Publications/FOIS.pdf]

sumo'SOURCE:
* http://reliant.teknowledge.com/DAML/SUMO.owl
* http://ontology.teknowledge.com//
* http://www.ontologyportal.org// (Pease page)

sumo'STATISTICS:
Total Number of Classes: 631 (Defined: 631, Imported: 0) Total Number of Datatype Properties: 28 (Defined: 28, Imported: 0) Total Number of Object Properties: 210 (Defined: 210, Imported: 0) Total Number of Annotation Properties: 1 (Defined: 1, Imported: 0) Total Number of Individuals: 435 (Defined: 435, Imported: 0)
Advanced Ontology Statistics:
General Statistics
Property Tree Statistics
Satisfiable Class Tree Statistics
DL Expressivity: RDFS(DL) No. of GCIs: 0 No. of Sub-classes: 842 No. of Disjoint Axioms: 0 No. of Functional Properties: 0 No. of Inverse Functional Properties: 0 No. of Transitive Properties: 0 No. of Symmetric Properties: 0 No. of Inverse Properties: 0
Properties with Multiple Inheritance: 4 Max. Depth of Property Tree: 4 Min. Depth of Property Tree: 0 Avg. Depth of Property Tree: 0.51
Classes with Multiple Inheritance: 66 Max. Depth of Class Tree: 15 Min. Depth of Class Tree: 1 Avg. Depth of Class Tree: 7.7 Max. Branching Factor of Class Tree: 15 Min. Branching Factor of Class Tree: 1 Avg. Branching Factor of Class Tree: 2.7

========================================================

sumo'Agent:
Annotations: rdfs:comment : Something or someone that can act on its own and produce changes in the world.

Subclass of: SUMO:Object
Superclass of: SUMO:SentientAgent SUMO:CommercialAgent SUMO:Group SUMO:GeopoliticalArea SUMO:Organism

Domain of: SUMO:possesses SUMO:editor SUMO:WealthFn SUMO:leader SUMO:authors SUMO:PropertyFn
Range of: SUMO:hasSkill SUMO:uses SUMO:experiencer SUMO:exploits SUMO:agent

ont.TAXONOMY

name::
* McsEngl.ont.TAXONOMY@cptIt,
* McsEngl.ontology.taxonomy@cptIt,
* McsEngl.taxonomy@cptIt561,

_DESCRIPTION:
Sometimes the notion of ontology is somewhat diluted, in the sense that taxonomies are considered to be full ontologies [19].
19.Studer, R., Benjamins, R., Fensel, D. Knowledge Engineering: Principles and Methods. DKE 25(1-2).pp:161-197. 1998
[http://www.cs.man.ac.uk/~ocorcho/documents/ekaw00_CorchoGomezPerez.pdf]

ont.TERMINOLOGICAL

name::
* McsEngl.ont.TERMINOLOGICAL@cptIt,
* McsEngl.ontology.terminological@cptIt,
* McsEngl.terminological-ontology@cptIt,

terminological ontology.
An ontology whose categories need not be fully specified by axioms and definitions. An example of a terminological ontology is WordNet, whose categories are partially specified by relations such as subtype-supertype or part-whole, which determine the relative positions of the concepts with respect to one another but do not completely define them. Most fields of science, engineering, business, and law have evolved systems of terminology or nomenclature for naming, classifying, and standardizing their concepts. Axiomatizing all the concepts in any such field is a Herculean task, but subsets of the terminology can be used as starting points for formalization. Unfortunately, the axioms developed from different starting points are often incompatible with one another.
[http://www.jfsowa.com/ontology/ontoshar.htm]

ont.UPPER

name::
* McsEngl.ont.UPPER@cptIt,
* McsEngl.upper'ontology@cptIt561,

An upper ontology (or foundation ontology) is a model of the common objects that are generally applicable across a wide range of domain ontologies. It contains a core glossary in whose terms objects in a set of domains can be described. There are several standardized upper ontologies available for use, including Dublin Core, GFO, OpenCyc/ResearchCyc, SUMO, and DOLCEl. WordNet, while considered an upper ontology by some, is not an ontology: it is a unique combination of a taxonomy and a controlled vocabulary (see above, under Attributes).
[http://en.wikipedia.org/wiki/Ontology_%28computer_science%29]

lagOnt'DomainIn

name::
* McsEngl.lagOnt'DomainIn@cptIt,
* McsEngl.domain-of-discourse@cptIt,

lagOnt'DomainOut

name::
* McsEngl.lagOnt'DomainOut@cptIt,

_SPECIFIC:
* collectionKnowledge (ontology)

lagOnt'Notation

name::
* McsEngl.lagOnt'Notation@cptIt,

lagOnt'Program

name::
* McsEngl.lagOnt'Program@cptIt,
* McsEngl.ontology-development-toolkit@cptIt561,
* McsEngl.ontology-kms@cptIt561,
* McsEngl.ontology-system@cptIt561,
* McsEngl.program.ontology@cptIt, {2012-11-25}
* McsEngl.programOntology@cptIt511i, {2011-09-06}
* McsEngl.prgOnt@cptIt, {2012-11-25}

_DEFINITION:
Most existing ontology development toolkits provide an integrated environment to build and edit ontologies, check for errors and inconsistencies (using a reasoner), browse multiple ontologies, and share and reuse existing data by establishing mappings among different ontological entities. However, their UI design (look & feel) and usage style are inspired by traditional KR-based paradigms, whose constrained and methodical framework have steep-learning curves, making it cumbersome to use for the average web user.
[http://www.mindswap.org/2004/SWOOP/]

SOURCE:
* http://en.wikipedia.org/wiki/Ontology_editor:

prgOnt'Merging

name::
* McsEngl.prgOnt'Merging@cptIt,

Ontology merging defines the act of bringing together two conceptually divergent ontologies or the instance data associated to two ontologies. This is similar to work in database merging (schema matching). This merging process can be performed in a number of ways, manually, semi automatically, or automatically. Manual ontology merging although ideal is extremely labour intensive and current research attempts to find semi or entirely automated techniques to merge ontologies. These techniques are statistically driven often taking into account similarity of concepts and raw similarity of instances through textual string metrics and semantic knowledge. These techniques are similar to those used in information integration employing string metrics from open source similarity libraries such as SimMetrics.
[http://en.wikipedia.org/wiki/Ontology_merging]

SPECIFIC

SPESIFEINO:
* SWOOP: http://code.google.com/p/swoop//
SWOOP is a tool for creating, editing, and debugging OWL ontologies. It was produced by the MIND lab at University of Maryland, College Park, but is now an open source project with contributers from all over.

* OntoMat-Annotizer: http://annotation.semanticweb.org/ontomat/index.html
OntoMat-Annotizer is a user-friendly interactive webpage annotation tool. It supports the user with the task of creating and maintaining ontology-based OWL-markups i.e. creating of OWL-instances, attributes and relationships. It include an ontology browser for the exploration of the ontology and instances and a HTML browser that will display the annotated parts of the text. It is Java-based and provide a plugin interface for extensions. The intended user is the individual annotator i.e., people that want to enrich their web pages with OWL-meta data. Instead of manually annotating the page with a text editor, say, emacs, OntoMat allows the annotator to highlight relevant parts of the web page and create new instances via drag?n?drop interactions. It supports the meta-data creation phase of the lifecycle. It is planned that a future version will contain an information extraction plugin, that offers a wizard which suggest which parts of the text are relevant for annotation. That aspect will help to ease the time-consuming annotation task.

prgOnt.EDITOR

name::
* McsEngl.prgOnt.EDITOR@cptIt,
* McsEngl.ontology'editor@cptIt561,

_DEFINITION:
Ontology editors are applications designed to assist in the creation or manipulation of ontologies. They often express ontologies in one of many ontology languages. Some provide export to other ontology languages however.
[http://en.wikipedia.org/wiki/Ontology_editor]

SPESIFEINO:
* PROTEGE is a free, open source ontology editor and knowledge-base framework.
[http://protege.stanford.edu/]

* SWOOP: http://code.google.com/p/swoop//
SWOOP is a tool for creating, editing, and debugging OWL ontologies. It was produced by the MIND lab at University of Maryland, College Park, but is now an open source project with contributers from all over.

prgOnt.BROWSER

name::
* McsEngl.prgOnt.BROWSER@cptIt,

prgOnt.VALIDATOR

name::
* McsEngl.prgOnt.VALIDATOR@cptIt,

lagOnt'Reasoning

name::
* McsEngl.lagOnt'Reasoning@cptIt,
* McsEngl.inference'in'ol@cptIt501.5,
* McsEngl.reasoning'in'ol@cptIt501.5,

_DESCRIPTION:
The trade-off between the degree of expressiveness and the inference engine of a language (the more expressive, the less inference capabilities) makes it difficult to establish a scoring of languages.
...
4.2 Reasoning
A clear distinction between KR and reasoning exists for all languages, except for OCML. For instance, Ontolingua is maybe the most expressive of all the languages chosen for this study, but there is no inference engine implemented for it. OCML allows to define some features concerning reasoning inside representational elements (for instance, rules can be defined as backward rules or forward ones, so that the chaining is explicitly defined).
Just FLogic and OIL inference engines are sound and complete, which is a
desirable feature, although it can make representation in the language more difficult.
Automatic classifications are performed by description logic-based languages (LOOM and OIL).
The exception handling mechanism is not addressed, in general, by language developers (FLogic is the only one handling exceptions). Works have been carried out in other languages, such as LOOM, to support them.
Single and multiple inheritance is also supported by most of the languages (except for XOL), but conflicts in multiple inheritance are not resolved. All languages are basically monotonic, although they usually include some non-monotonic capabilities.
For instance, the only non-monotonic capabilities present in both Ontolingua and OCML are related to default values for slots and facets. In XOL and RDF specifications there is no explicit definition of the behaviour of inherited values.
All the languages which allow to define procedures, allow to execute them.
Constraint checking is performed in all the traditional ontology languages.
Information about constraint checking in XOL is not available. In OKBC, constraint checking is guaranteed to be included in all implementations of it. However, it can be parameterised and even switched off. Constraint checking in SHOE is not performed because conflicts are thought to be frequent in the Web, and resolving them will be problematic. However, type constraint checking is performed when necessary.
Chaining used in SHOE is not defined in the language: freedom exists so that each implementation may choose between any of them. OCML allows to define the chaining of rules when defining them, although default chaining used is the backward one. LOOM performs both kinds of chaining, and FLogic’s one is in between.
[http://www.cs.man.ac.uk/~ocorcho/documents/ekaw00_CorchoGomezPerez.pdf, 9]

lagOnt'Usage

name::
* McsEngl.lagOnt'Usage@cptIt,

It is used to reason about the objects within that domain.
[http://en.wikipedia.org/wiki/Ontology_%28computer_science%29]

The use of ontologies provides a very powerful way to describe objects and their relationships to other objects.
[http://www.daml.org/about.html] 2007-12-08

SPECIFIC

lagOnt.MARKUP

name::
* McsEngl.lagOnt.MARKUP@cptIt,
* McsEngl.conceptIt501.8,
* McsEngl.markup-ontology-language@cptIt501.5,
* McsEngl.semantic-markup-language@cptIt501.5,

_GENERIC:
* markup-method#cptIt204.12#

_DEFINITION:
Markup ontology languages
These languages use a markup scheme to encode knowledge, most commonly XML.
* SHOE#ql:shoe-*#
* DAML+OIL
* OIL#ql:oil'*#
* RDF#cptIt565#
* RDF Schema
* OWL#cptIt562: attSpe#
[http://en.wikipedia.org/wiki/Ontology_language_%28computer_science%29]

_SPECIFIC: lagOnt.Alphabetically:
* CycL#cptIt517#
* FRAME_BASED_OCL
* LOGIC_BASED_OCL
* MARKUP_OCL
* OWL#cptIt562#
* RDF#cptIt565#
* TRADITIONAL_OCL

After CycL, a number of ontology languages have been developed. Most are declarative languages, and are either frame languages, or are based on first order logic.
[http://en.wikipedia.org/wiki/Knowledge_representation]

The purpose of this paper is to analyse the tradeoff between expressiveness (what can be said) and inference (what can be obtained from the information represented) in traditional and web-based ontology languages.
[http://www.cs.man.ac.uk/~ocorcho/documents/ekaw00_CorchoGomezPerez.pdf]

The Entity-Relationship conceptual data model and UML Class Diagrams can
be considered as ontology languages.
[http://www.inf.unibz.it/~franconi/dl/course/slides/modelling/modelling.pdf]

An ontology language is a formal language used to encode the ontology. There are a number of such languages for ontologies, both proprietary and standards-based:

Common logic is ISO standard 24707, a specification for a family of ontology languages that can be accurately translated into each other.
The Cyc project has its own ontology language called CycL, based on first-order predicate calculus with some higher-order extensions.
The Gellish language includes rules for its own extension and thus integrates an ontology with an ontology language.
IDEF5 is a software engineering method to develop and maintain usable, accurate, domain ontologies.
KIF is a syntax for first-order logic that is based on S-expressions.
Rule Interchange Format (RIF) and F-Logic combine ontologies and rules.
OWL is a language for making ontological statements, developed as a follow-on from RDF and RDFS, as well as earlier ontology language projects including OIL, DAML and DAML+OIL. OWL is intended to be used over the World Wide Web, and all its elements (classes, properties and individuals) are defined as RDF resources, and identified by URIs.
XBRL (Extensible Business Reporting Language) is a syntax for expressing business semantics.
[http://en.wikipedia.org/wiki/Ontology_engineering]

lagOnt.Traditional

name::
* McsEngl.lagOnt.Traditional@cptIt,
* McsEngl.traditional-ontology-langaugae@cptIt501.5i,

Traditional ontology languages
* DOGMA (Developing Ontology-Grounded Methods and Applications)
* KIF (Knowledge Interchange Format)
o Ontolingua based on KIF
* OCML (Operational Conceptual Modelling Language)
* LOOM (ontology)
* CycL
* KM programming language
* F-Logic (Frame Logic)
* OKBC (Open Knowledge Base Connectivity)
[http://en.wikipedia.org/wiki/Ontology_language_%28computer_science%29]

lagOnt.FRAME-BASED

name::
* McsEngl.lagOnt.FRAME-BASED@cptIt,
* McsEngl.frame'based'ontologylangaugae@cptIt501.5i,

_DEFINITION:
frame-based (having only concepts and properties)
[http://www.inf.unibz.it/~franconi/dl/course/slides/modelling/modelling.pdf]

Frame-based
FLogic and OKBC, as well as CycL and KM, are completely or partially frame-based languages.
[http://en.wikipedia.org/wiki/Ontology_language_%28computer_science%29]

lagOnt.LOGIC-BASED

name::
* McsEngl.lagOnt.LOGIC-BASED@cptIt,
* McsEngl.logic'based'ontologylangaugae@cptIt501.5i,

Logic-based
See also first-order logic and description logic.
[http://en.wikipedia.org/wiki/Ontology_language_%28computer_science%29]

lagOnt.DAML-OIL

name::
* McsEngl.lagOnt.DAML-OIL@cptIt,
* McsEngl.daml'oil@cptIt501.5,

_DEFINITION:
DAML+OIL is a successor language to DAML and OIL that combines features of both. In turn, it was superseded by Web Ontology Language (OWL).
[http://en.wikipedia.org/wiki/DAML%2BOIL]

EVOLEINO:
* 2001.03: DAML+OIL
* 2001.01: DAML+OIL initial
* 2000.10: DAML-ONT
* 2000.08: DAML 0.5

This directory contains the initial DAML+OIL language which was actually released by the Joint Committee on 11 January 2001. It replaces the DAML-ONT release of October 2000. It will be replaced by DAML+OIL (March 2001).
[http://www.daml.org/2000/12/daml+oil-index]

lagOnt.DAML

name::
* McsEngl.lagOnt.DAML@cptIt,

EVOLEINO:
Major Releases:
* 2001-03: DAML+OIL (March 2001)
* 2000-12: DAML+OIL (December 2000)
* 2000-10: DAML-ONT
* 2000-08: DAML 0.5
[http://www.daml.org/language/]

lagOnt.OIL

name::
* McsEngl.lagOnt.OIL@cptIt,
* McsEngl.oil'markup'language@cptIt501i,

_DEFINITION:
OIL (Ontology Inference Layer or Ontology Interchange Language) can be regarded as an Ontology infrastructure for the Semantic Web [1]. OIL is based on concepts developed in Description Logic (DL) and frame-based systems and is compatible with RDFS#cptIt565#.

OIL was developed by Dieter Fensel, Frank van Harmelen (Vrije Universiteit, Amsterdam) and Ian Horrocks (University of Manchester) as part of the IST OntoKnowledge project.

Much of the work in OIL was subsequently incorporated into DAML+OIL#ql:daml'oil_it501.5# and the Web Ontology Language (OWL).
[http://en.wikipedia.org/wiki/Ontology_Inference_Layer]

lagOnt.DLP

name::
* McsEngl.lagOnt.DLP@cptIt,
* McsEngl.dlp@cptIt501.5,
* McsEngl.description'logic'programs@cptIt501.5,

We show how to interoperate, semantically and inferentially, between the leading Semantic Web approaches to rules (RuleML Logic Programs) and ontologies (OWL/DAML+OIL Description Logic) via analyzing their expressive intersection. To do so, we define a new intermediate knowledge representation (KR) contained within this intersection: Description Logic Programs (DLP), and the closely related Description Horn Logic (DHL) which is an expressive fragment of first-order logic (FOL). DLP provides a significant degree of expressiveness, substantially greater than the RDF-Schema fragment of Description Logic.

We show how to perform DLP-fusion: the bidirectional translation of premises and inferences (including typical kinds of queries) from the DLP fragment of DL to LP, and vice versa from the DLP fragment of LP to DL. In particular, this translation enables one to ``build rules on top of ontologies'': it enables the rule KR to have access to DL ontological definitions for vocabulary primitives (e.g., predicates and individual constants) used by the rules. Conversely, the DLP-fusion technique likewise enables one to ``build ontologies on top of rules'': it enables ontological definitions to be supplemented by rules, or imported into DL from rules. It also enables available efficient LP inferencing algorithms/implementations to be exploited for reasoning over large-scale DL ontologies.
[http://www2003.org/cdrom/papers/refereed/p117/p117-grosof.html]

SOURCE:
http://www2003.org/cdrom/papers/refereed/p117/p117-grosof.html

lagOnt.FLOGIC

name::
* McsEngl.lagOnt.FLOGIC@cptIt,
* McsEngl.flogic@cptIt501.5,

FLogic [12] is an acronym for Frame Logic. FLogic integrates
- frame-based languages and
- first-order predicate calculus.
It accounts in a clean and declarative fashion for most of the structural aspects of object-oriented and frame-based languages, such as object identity, complex objects, inheritance, polymorphic types, query methods, encapsulation, and others. In a sense, FLogic stands in the same relationship to the object-oriented paradigm as classical predicate calculus stands to relational programming.
FLogic has a model-theoretic semantics and a sound and complete resolution-based proof theory.
Applications of FLogic go from object-oriented and deductive databases to
ontologies, and it can be combined with other specialized logics (HiLog, Transaction Logic), to improve the reasoning with information in the ontologies.
[http://en.wikipedia.org/wiki/Ontology_language_%28computer_science%29]

lagOnt.LOOM

name::
* McsEngl.lagOnt.LOOM@cptIt,
* McsEngl.loom'ontologylangaugae@cptIt501.5i,

lagOnt.OCML (Operational Conceptual Modelling Language)

name::
* McsEngl.lagOnt.OCML (Operational Conceptual Modelling Language)@cptIt,
* McsEngl.OCML@cptIt501.5,
* McsEngl.Operational'Conceptual'Modelling'Language@cptIt501.5,

_DESCRIPTION:
OCML [17] stands for Operational Conceptual Modeling Language, and was
originally developed in the context of the VITAL project.
OCML is a frame-based language that provides mechanisms for expressing items
such as relations, functions, rules (with backward and forward chaining), classes and
instances. In order to make the execution of the language more efficient, it also adds
some extra logical mechanisms for efficient reasoning, such as procedural
attachments. A general tell&ask interface is also implemented, as a mechanism to
assert facts and/or examine the contents of an OCML model.
Several pragmatic considerations were taken into account in the development of
OCML. One of them is the compatibility with standards, such as Ontolingua, so that
OCML can be considered as a kind of “operational Ontolingua”, providing theorem
proving and function evaluation facilities for its constructs.

...
Other components like procedures and rules are also identified in some ontology languages (i.e., OCML).
[http://www.cs.man.ac.uk/~ocorcho/documents/ekaw00_CorchoGomezPerez.pdf]

lagOnt.OWL-KIF

name::
* McsEngl.lagOnt.OWL-KIF@cptIt,
* McsEngl.owl'kif@cptIt501.5,

_DEFINITION:
Standard Upper Ontology Knowledge Interchange Format (SUO-KIF) is a language designed for use in the authoring and interchange of knowledge. SUO-KIF has declarative semantics. It is possible to understand the meaning of expressions in the language without appeal to an interpreter for manipulating those expressions. In this way, KIF differs from other languages that are based on specific interpreters, such as Emycin and Prolog. SUO-KIF is also logically comprehensive -- at its most general, it provides for the expression of arbitrary logical sentences. In this way, it differs from relational
database languages (like SQL) and logic programming languages (like Prolog). SUOKIF
is intended primarily a first-order language, which is a good compromise between
the computational demands of reasoning and richness of representation. In later sections
of this document we describe ways in which SUO-KIF is made as expressive as possible
without becoming higher-order.
SUO-KIF was derived from KIF (Genesereth, 1992) to support the definition of the
Suggested Upper Merged Ontology (Niles & Pease, 2001).
This document contains a guide to writing knowledge in SUO-KIF as well as a more
formal reference. Logicians may wish to skip the introductory section “Writing SUOKIF”
and move straight to the details of the language.
[http://sigmakee.cvs.sourceforge.net/*checkout*/sigmakee/sigma/suo-kif.pdf] 2007-09-20

lagOnt.UML-CLASS-DIAGRAM

name::
* McsEngl.lagOnt.UML-CLASS-DIAGRAM@cptIt,
* McsEngl.class-diagram@cptIt511i,
* McsEngl.UML-class-diagram@cptIt501.5,

_DEFINITION:
The Entity-Relationship conceptual data model and UML Class Diagrams can be considered as ontology languages.
[http://www.inf.unibz.it/~franconi/dl/course/slides/modelling/modelling.pdf]

In the Unified Modeling Language (UML), a class diagram is a type of static structure diagram that describes the structure of a system by showing the system's classes, their attributes, and the relationships between the classes.
[http://en.wikipedia.org/wiki/Class_diagram]

lagOnt.SKOS

_CREATED: {2007-12-08}

name::
* McsEngl.lagOnt.SKOS@cptIt,
* McsEngl.skos@cptIt511i,

_DEFINITION:
SKOS or Simple Knowledge Organisation System is a family of formal languages designed for representation of
- thesauri,
- classification schemes,
- taxonomies,
- subject-heading systems, or
- any other type of structured controlled vocabulary.
SKOS is built upon RDF and RDFS, and its main objective is to enable easy publication of controlled structured vocabularies for the Semantic Web. SKOS is currently developed within the W3C framework.
[http://en.wikipedia.org/wiki/SKOS]

SKOS and Thesaurus standards
SKOS development has involved experts from both RDF and library community, and SKOS intends to allow easy migration of thesauri defined by standards such as NISO Z39.19 - 2005 [25] or ISO 5964:1985 [26].
[http://en.wikipedia.org/wiki/SKOS]

SKOS and other Semantic Web standards
SKOS is intended to provide a way to make a legacy of concept schemes available to Semantic Web applications, simpler than the more complex ontology language, OWL. OWL is intended to express complex conceptual structures, which can be used to generate rich metadata and support inference tools. However, constructing useful web ontologies is demanding in terms of expertise, effort, and cost. In many cases, this type of effort might be superfluous or unsuited to requirements, and SKOS might be a better choice. The extensibility of RDF makes possible further incorporation or extension of SKOS vocabularies into more complex vocabularies, including OWL ontologies.
[http://en.wikipedia.org/wiki/SKOS]

skos'EVALUATION:
* Amazingly uses only
- BROADER TERMS
- NARROWER TERMS
relationships!!!
[KasNik, 2007-12-08]

lagOnt.SWRL

name::
* McsEngl.lagOnt.SWRL@cptIt,
* McsEngl.Semantic'Web'Rule'Language@cptIt501.5,
* McsEngl.SWRL@cptIt501.5,

_DEFINITION:
SWRL (Semantic Web Rule Language) is a proposal for a Semantic Web rules-language, combining sublanguages of the OWL Web Ontology Language (OWL DL and Lite) with those of the Rule Markup Language (Unary/Binary Datalog).

The specification was submitted in May 2004 to the W3C by the National Research Council of Canada, Network Inference (since acquired by webMethods), and Stanford University in association with the Joint US/EU ad hoc Agent Markup Language Committee.

Compared with DLP (Description Logic Programs), another relatively recent proposal in the Semantic Web community for integrating rules and OWL, SWRL takes a diametrically opposed integration approach. DLP is the intersection of Horn logic and OWL, where as SWRL is (roughly) the union of them. In DLP, the resultant language is a very peculiar looking description logic and rather inexpressive language overall. It’s hard to see the restrictions are either natural or satisfying. Contrariwise, SWRL retains the full power of OWL DL, but at the price of decidability and practical implementations.[1]

Rules are of the form of an implication between an antecedent (body) and consequent (head). The intended meaning can be read as: whenever the conditions specified in the antecedent hold, then the conditions specified in the consequent must also hold.
[http://en.wikipedia.org/wiki/SWRL] 2007-12-02

lagOnt.XBRL

_CREATED: {2013-03-09}

name::
* McsEngl.lagOnt.XBRL@cptIt,
* McsEngl.XBRL@cptIt,

_GENERIC
* XML-based#ql:xml@cptIt439#

_DESCRIPTION:
XBRL (eXtensible Business Reporting Language) is a freely available and global standard for exchanging business information. XBRL allows the expression of semantic meaning commonly required in business reporting. The language is XML-based and uses the XML syntax and related XML technologies such as XML Schema, XLink, XPath, and Namespaces. One use of XBRL is to define and exchange financial information, such as a financial statement. The XBRL Specification is developed and published by XBRL International, Inc. (XII).
XBRL is a standards-based way to communicate and exchange business information between business systems. These communications are defined by metadata set out in taxonomies, which capture the definition of individual reporting concepts as well as the relationships between concepts and other semantic meaning. Information being communicated or exchanged is provided within an XBRL instance.
Early users of XBRL included regulators such as the U.S. Federal Deposit Insurance Corporation[1] and the Committee of European Banking Supervisors (CEBS).[2] Common functions in many countries that make use of XBRL include regulators of stock exchanges and securities, banking regulators, business registrars, revenue reporting and tax-filing agencies, and national statistical agencies.
A wiki repository of XBRL projects is available to be freely explored and updated.[3] According to the Financial Times, "the Securities and Exchange Commission (SEC) in the US, the UK's HM Revenue & Customs (HMRC), and Companies House in Singapore have begun to require companies to use it, and other regulators are following suit.".[4] The SEC's deployment was launched in 2010 in phases, with the largest filers going first: by 2013, the large foreign companies which use International Financial Reporting Standards (IFRS) will also be submitting their financial returns to the SEC using XBRL. In the UK, both HMRC and Companies House accept XBRL in the iXBRL format (see below).
[http://en.wikipedia.org/wiki/XBRL]

xbrl'concept-of-business

name::
* McsEngl.xbrl'concept-of-business@cptIt,
* McsEngl.business-concept-xbrl@cptIt,
* McsEngl.xbrl'concept@cptIt,

_DESCRIPTION:
In XBRL terminology, a Concept is a definition of a reporting term. Concepts manifest as XML Schema [XML Schema Structures] element definitions. In the Taxonomy Schema a concept is given a concrete name and a type. The type defines the kind of data types allowed for facts measured according to the concept definition. For example, a "cash" concept would typically have a monetary type. This declares that when cash is reported, its value will be monetary. In contrast, a "accountingPoliciesNote" concept would typically have a string type so that, when the "accountingPoliciesNote" is reported in an XBRL Instance, its value would be interpreted as a string of characters. Additional constraints on how concepts can be used are documented by additional XBRL attributes on the XML Schema [XML Schema Structures] element definitions that correspond to the concepts. See Section 5.1.1 for details.
The linkbases in a taxonomy further document the meaning of the Concepts by expressing relationships between concepts (inter-concept relationships) and by relating concepts to their documentation. See Section 5.2 for details.
[http://xbrl.org/Specification/XBRL-2.1/REC-2003-12-31/XBRL-2.1-REC-2003-12-31+corrected-errata-2013-02-20.html]
===
concepts are defined in two equivalent ways:
in a syntactic sense, a concept is an XML Schema element definition, defining the element to be in the item element substitution group or in the tuple element substitution group;
at a semantic level, a concept is a definition of a kind of fact that can be reported about the activities or nature of a business activity;
source: XBRL Spec: Terminology;
[http://www.ifrs.org/XBRL/Resources/Pages/Glossary.aspx#concept]

xbrl'concept.DIMENSION

name::
* McsEngl.xbrl'concept.DIMENSION@cptIt,
* McsEngl.xbrl'dimension@cptIt,

_DESCRIPTION:
dimensions (axes) – the term dimensions in XBRL relates to the ability to express multidimensional information; for example, profit from sales could be presented by products, regions, segments, etc; to express such relations XBRL International developed the Dimension 1.0 Specification, which enriches the general XBRL Specification with rules and procedures on how to construct dimensional taxonomies and instance documents.
more: XBRL Dimensions 1.0.
[http://www.ifrs.org/XBRL/Resources/Documents/ITGGuide2012final.pdf]
===
Dimension
a tool in the XBRL standard that allows preparers to leverage XBRL tags to create simple tables and more complex pivot-style tables within financial statements, e.g., to define segment data.
[http://www.tryxbrl.com/Learn/Glossary/tabid/58/Default.aspx]

xbrl'concept.FACT

name::
* McsEngl.xbrl'concept.FACT@cptIt,

a fact is a concept placed in a context and has an assigned value; facts appear in instance documents; they can be simple, in which case their values must be expressed as simple content (except in the case of simple facts whose values are expressed as a ratio), and facts can be compound, in which case their value is made up from other simple and/or compound facts; on the schema level, simple facts are expressed using items and compound facts are expressed using tuples; the comparison between a concept and a fact is presented in the table below:
Concept
Fact
Intangible Assets
Intangible Assets as of December 31, 2003 amounted to 300,000 GBP
more: XBRL Spec: 4; FRTA 2.2.2;
[http://www.ifrs.org/XBRL/Resources/Pages/Glossary.aspx#fact]

xbrl'concept.ITEM

name::
* McsEngl.xbrl'concept.ITEM@cptIt,
* McsEngl.xbrl'item@cptIt,

_DESCRIPTION:
c. There are two types of concept:
• Item
An item describes a single concept that can be reported on as an independently understood fact, e.g. “cash”, “number of employees”, …
• Tuple
A tuple is a ‘collection’ of other concepts (either item or tuple), grouping together related information that does'nt have enough meaning by itself, e.g. a “manager’ tuple could contain a “name” and a “title” item.
[http://www.batavia-xbrl.com/downloads/XBRLinPlainEnglishv1.1.pdf]

_DATA_TYPE:
All item concepts must specify their data type. The types available are provided by the XML Schema language and the XBRL specification.
The types provided by XML Schema include boolean, text, decimal, date (-parts), etc. (see the XBRL specification section 5.1.1.3 for a full listing). Note: each type from XML Schema has a corresponding XBRL type definition.
The XBRL specification adds four additional types:
• monetary
This type must be used for concepts that represent monetary values.
• shares
Share-based concepts must use this type.
• pure
Concepts that represent measures where an implicit numerator and denominator is expressed in the same unit, such as growth rates, percentages, …
• fractions
When the value of a fact cannot be represented exactly using any of the other types, e.g. 1/3 doesn’t have an exact decimal representation, it can be reported as a fraction type. Fractions are given as separate numerator and denominator elements.
[http://www.batavia-xbrl.com/downloads/XBRLinPlainEnglishv1.1.pdf]

xbrl'concept.TUPLE

name::
* McsEngl.xbrl'concept.TUPLE@cptIt,
* McsEngl.xbrl'tuple@cptIt,

_DESCRIPTION:
c. There are two types of concept:
• Item
An item describes a single concept that can be reported on as an independently understood fact, e.g. “cash”, “number of employees”, …
• Tuple
A tuple is a ‘collection’ of other concepts (either item or tuple), grouping together related information that does'nt have enough meaning by itself, e.g. a “manager’ tuple could contain a “name” and a “title” item.
[http://www.batavia-xbrl.com/downloads/XBRLinPlainEnglishv1.1.pdf]

xbrl'Data-Type-Registry

name::
* McsEngl.xbrl'Data-Type-Registry@cptIt,
* McsEngl.xbrl'DTR@cptIt,

_DESCRIPTION:
Data Type Registry
The XBRL Specification provides a set of data types that may appear in XBRL instances. Broadening use of XBRL is leading to the proposal of new, non-standard data types which have common and useful semantics. The XBRL Data Type Registry(DTR) is a public, online listing of these non-standard data types. It provides structured information about their purpose, usage, and any intended impact on XBRL instance validation.

The Specification document listed below describes the DTR and the process by which it is is updated. This process is intended to maximise the utility and longevity of the new types and the taxonomies that use them.

The latest version of the DTR will always be on the URL http://www.xbrl.org/dtr/dtr.xml
[http://www.xbrl.org/dtr/]

xbrl'DTS

name::
* McsEngl.xbrl'DTS@cptIt,
* McsEngl.xbrl'discoverable-taxonomy-set@cptIt,

_DESCRIPTION:
DTS stands for Discoverable Taxonomy Set. It contains one or more taxonomies i.e. a number of schemas together with linkbases related to them. This term was developed as taxonomies became more complicated and more closely related to each other.
A complete set of the IFRS Taxonomy (which graphical presentation can be viewed on the diagram placed on the summary page) consists of 47 files (including three schemas). Moreover, this taxonomy is usually approached using another entry schema generated by the ITMM (IFRS Taxonomy Modules Manager).
This so-called ‘shell’ schema imports IFRS main schema that defines all elements and refers to selected linkbases containing presentation and calculation relationships as well as labels in different languages.
[http://www.ifrs.org/XBRL/Resources/Pages/Fundamentals.aspx]
===
The set of Taxonomy Schemas and linkbases supporting an XBRL Instance has been formally defined (as a Discoverable Taxonomy Set (DTS)). XBRL instances now identify their supporting DTS using a new <schemaRef> element, which points to supporting taxonomy schemas and using the existing <linkbaseRef> element, which points to supporting linkbases. The XML Schema Instance @schemaLocation attribute is no longer required in the DTS discovery process.
...
An XBRL Instance can be supported by more than one taxonomy. Also, taxonomies can be interconnected, extending and modifying each other in various ways. Generally, it is necessary to consider multiple related taxonomies together when interpreting an XBRL instance. The set of related taxonomies is called a Discoverable Taxonomy Set (DTS). A DTS is a collection of Taxonomy Schemas and Linkbases. The bounds of a DTS are determined by starting from some set of documents (instance, taxonomy schema, or linkbase) and following DTS discovery rules. Although an XBRL instance can be the starting point for DTS discovery, the XBRL instance itself is not part of the DTS. Taxonomy schemas and linkbases that are used as starting points for DTS discovery are part of the DTS that they discover.
[http://xbrl.org/Specification/XBRL-2.1/REC-2003-12-31/XBRL-2.1-REC-2003-12-31+corrected-errata-2013-02-20.html]

_PART:
* xbrl-taxonomy#ql:xbrl'taxonomy#

xbrl'EVOLUTION#cptCore546.171#

name::
* McsEngl.xbrl'EVOLUTION@cptIt,

{time.2013}:
=== errata to spec 2.1
[http://xbrl.org/Specification/XBRL-2.1/REC-2003-12-31/XBRL-2.1-REC-2003-12-31+corrected-errata-2013-02-20.html]

{time.2011}:
=== USA-SEC:
An estimated 8,700 companies fall into the last wave of the SEC’s XBRL filing mandate
which becomes effective on June 11, 2011.
[http://rivetsoftware.com/wp-content/uploads/2013/02/Rivet_Software_White_Paper_How_To_Choose_An_XBRL_Solution.pdf]

{time.2010}:
=== UK iXBRL:
Legislation, which came into force on 1 January 2010, means that it is compulsory for
companies to send their Company Tax Returns online using iXBRL for accounts and
computations. It will no longer be acceptable for most companies to send either the accounts
or computations on paper or as a PDF attachment to an online return.
[http://www.hmrc.gov.uk/ct/ct-online/file-return/xbrl-guide.pdf]

{time.2003}:
=== spec 2.1
[http://xbrl.org/Specification/XBRL-2.1/REC-2003-12-31/XBRL-2.1-REC-2003-12-31+corrected-errata-2013-02-20.html]

{time.2002.11}
=== spec 2.0a
[http://xbrl.org/Specification/XBRL-2.1/REC-2003-12-31/XBRL-2.1-REC-2003-12-31+corrected-errata-2013-02-20.html]

{time.2001.12}
=== spec 2.0
[http://xbrl.org/Specification/XBRL-2.1/REC-2003-12-31/XBRL-2.1-REC-2003-12-31+corrected-errata-2013-02-20.html]

xbrl'IFRS-Taxonomy

name::
* McsEngl.xbrl'IFRS-Taxonomy@cptIt,
* McsEngl.ifrs-taxonomy@cptIt,
* McsEngl.ifrst@cptIt,
* McsEngl.XBRL-IFRS-taxonomy@cptIt,
* McsEngl.xbrlt.ifrs@cptIt,

_GENERIC:
* xbrl-taxonomy#ql:xbrl'taxonomy#

_DESCRIPTION:
1.1 The IFRS Taxonomy 2012
The IFRS (International Financial Reporting Standards) Taxonomy 2012 was published by the IFRS Foundation on 29 March 2012*.
The IFRS Taxonomy is the XBRL representation of the IFRSs, including International Accounting Standards (IASs), Interpretations and the IFRS for SMEs (Small and Medium-sized Entities), as issued by the IASB (International Accounting Standards Board). Like the IFRS Bound Volume†, the IFRS Taxonomy is released once a year to incorporate new IFRSs, improvements to existing IFRSs, additional common-practice concepts and changes in XBRL technology.
[http://www.ifrs.org/XBRL/Resources/Documents/ITGGuide2012final.pdf]
===
IFRS Taxonomy
The IFRS Foundation also develops and maintains the IFRS Taxonomy, which is the representation of the IFRSs in eXtensible Business Reporting Language (XBRL), via its XBRL team. The team is supported by the XBRL Advisory Council and the XBRL Quality Review Team, which respectively provide strategic advice and reviews developed taxonomies.[8] Additionally, in 2012 the foundation issued a call for industry participants in a project to develop "common industry practice concepts" for the taxonomy.[9]
XBRL provides a "common, electronic format for business and financial reporting",[10] which will contribute to the global convergence of accounting standards towards IFRS;[11] the director of XBRL activities at the IFRS Foundation, Olivier Servais, hopes that "everybody will be using it" in future.[12] As of March 2012, the IFRS Taxonomies have "considerably fewer" tags than GAAP taxonomies, and the Security and Exchange Commission has not approved the IFRS Taxonomy for use in XBRL filings in the United States.[13]
[http://en.wikipedia.org/wiki/IFRS_Foundation#IFRS_Taxonomy] 2013-03-12

ifrst'concept

name::
* McsEngl.ifrst'concept@cptIt,

2.3.5 Core, role and entry-point schemas
The IFRS Taxonomy uses a single schema to define of all reporting concepts (ifrs-cor_YYYY-MM-DD.xsd). The IFRS Taxonomy does not
use tuples or typed axes.* Items and explicit axes are used instead.†
There are a total of 3,769 concepts in the IFRS Taxonomy
2012. The IFRS Taxonomy uses three substitution groups defined by XBRL Specifications - item, hypercubeItem and
dimensionItem.
[http://www.ifrs.org/XBRL/Resources/Documents/ITGGuide2012final.pdf]

_SPECIFIC:
ifrs_AbnormallyLargeChangesInAssetPricesOrForeignExchangeRatesMember
ifrs_AccountingEstimatesAxis
ifrs_AccountingEstimatesMember
ifrs_AccountingProfit
ifrs_Accruals
ifrs_AccrualsClassifiedAsCurrent
ifrs_AccrualsClassifiedAsNoncurrent
ifrs_AccumulatedAllowanceForUncollectibleMinimumLeasePaymentsReceivable
ifrs_AccumulatedChangesInFairValueOfFinancialAssetsAttributableToChangesInCreditRiskOfFinancialAssets
ifrs_AccumulatedChangesInFairValueOfFinancialAssetsRelatedCreditDerivativesOrSimilarInstruments
ifrs_AccumulatedChangesInFairValueOfFinancialLiabilityAttributableToChangesInCreditRiskOfLiability
ifrs_AccumulatedChangesInFairValueOfLoanOrReceivableAttributableToChangesInCreditRiskOfFinancialAssets
ifrs_AccumulatedChangesInFairValueOfLoansOrReceivablesRelatedCreditDerivativesOrSimilarInstruments
ifrs_AccumulatedDepreciationAmortisationAndImpairmentMember
ifrs_AccumulatedOtherComprehensiveIncome
ifrs_AccumulatedOtherComprehensiveIncomeMember
ifrs_AcquisitionAndAdministrationExpenseRelatedToInsuranceContracts
ifrs_AcquisitiondateFairValueOfEquityInterestInAcquireeHeldByAcquirerImmediatelyBeforeAcquisitionDate
ifrs_AcquisitiondateFairValueOfTotalConsiderationTransferred
ifrs_AcquisitiondateFairValueOfTotalConsiderationTransferredAbstract
ifrs_AcquisitionrelatedCostsForTransactionRecognisedSeparatelyFromAcquisitionOfAssetsAndAssumptionOfLiabilitiesInBusinessCombination
ifrs_AcquisitionrelatedCostsRecognisedAsExpenseForTransactionRecognisedSeparatelyFromAcquisitionOfAssetsAndAssumptionOfLiabilitiesInBusinessCombination
ifrs_AcquisitionsThroughBusinessCombinationsBiologicalAssets
ifrs_AcquisitionsThroughBusinessCombinationsDeferredAcquisitionCostsArisingFromInsuranceContracts
ifrs_AcquisitionsThroughBusinessCombinationsDefinedBenefitObligationAtPresentValue
ifrs_AcquisitionsThroughBusinessCombinationsIntangibleAssetsAndGoodwill
ifrs_AcquisitionsThroughBusinessCombinationsIntangibleAssetsOtherThanGoodwill
ifrs_AcquisitionsThroughBusinessCombinationsInvestmentProperty
ifrs_AcquisitionsThroughBusinessCombinationsLiabilitiesUnderInsuranceContractsAndReinsuranceContractsIssued
ifrs_AcquisitionsThroughBusinessCombinationsOtherProvisions
ifrs_AcquisitionsThroughBusinessCombinationsPropertyPlantAndEquipment
ifrs_AcquisitionsThroughBusinessCombinationsReinsuranceAssets
ifrs_ActuarialAssumptionOfDiscountRates
ifrs_ActuarialAssumptionOfDiscountRatesMember
ifrs_ActuarialAssumptionOfExpectedRatesOfInflation
ifrs_ActuarialAssumptionOfExpectedRatesOfInflationMember
ifrs_ActuarialAssumptionOfExpectedRatesOfPensionIncreases
ifrs_ActuarialAssumptionOfExpectedRatesOfPensionIncreasesMember
ifrs_ActuarialAssumptionOfExpectedRatesOfReturnOnPlanAssets
ifrs_ActuarialAssumptionOfExpectedRatesOfReturnOnReimbursementRightRecognisedAsAsset
ifrs_ActuarialAssumptionOfExpectedRatesOfSalaryIncreases
ifrs_ActuarialAssumptionOfExpectedRatesOfSalaryIncreasesMember
ifrs_ActuarialAssumptionOfMedicalCostTrendRates
ifrs_ActuarialAssumptionOfMedicalCostTrendRatesMember
ifrs_ActuarialAssumptionsAxis
ifrs_ActuarialAssumptionsMember
ifrs_ActuarialGainsLossesArisingFromChangesInDemographicAssumptionsNetDefinedBenefitLiabilityAsset
ifrs_ActuarialGainsLossesArisingFromChangesInFinancialAssumptionsNetDefinedBenefitLiabilityAsset
ifrs_ActuarialGainsLossesRecognisedInOtherComprehensiveIncome
ifrs_ActuarialGainsLossesRecognisedInProfitOrLossDefinedBenefitPlan
ifrs_ActuarialPresentValueOfPromisedRetirementBenefits
ifrs_AdditionalAllowanceRecognisedInProfitOrLossAllowanceAccountForCreditLossesOfFinancialAssets
ifrs_AdditionalDisclosuresForAmountsRecognisedAsOfAcquisitionDateForEachMajorClassOfAssetsAcquiredAndLiabilitiesAssumedAbstract
ifrs_AdditionalInformationAboutEntityExposureToRisk
ifrs_AdditionalInformationAboutNatureAndFinancialEffectOfBusinessCombination
ifrs_AdditionalInformationAboutNatureOfAndChangesInRisksAssociatedWithInterestsInStructuredEntitiesExplanatory
ifrs_AdditionalInformationAboutSharebasedPaymentArrangements
ifrs_AdditionalInformationAbstract
ifrs_AdditionalLiabilitiesContingentLiabilitiesRecognisedInBusinessCombination
ifrs_AdditionalLiabilitiesContingentLiabilitiesRecognisedInBusinessCombinationAbstract
ifrs_AdditionalPaidinCapital
ifrs_AdditionalPaidinCapitalMember
ifrs_AdditionalProvisionsOtherProvisions
ifrs_AdditionalProvisionsOtherProvisionsAbstract
ifrs_AdditionalRecognitionGoodwill
ifrs_AdditionsFromAcquisitionsInvestmentProperty
ifrs_AdditionsFromSubsequentExpenditureRecognisedAsAssetInvestmentProperty
ifrs_AdditionsInvestmentPropertyAbstract
ifrs_AdditionsLiabilitiesUnderInsuranceContractsAndReinsuranceContractsIssued
ifrs_AdditionsOtherThanThroughBusinessCombinationsBiologicalAssets
ifrs_AdditionsOtherThanThroughBusinessCombinationsIntangibleAssetsOtherThanGoodwill
ifrs_AdditionsOtherThanThroughBusinessCombinationsInvestmentProperty
ifrs_AdditionsOtherThanThroughBusinessCombinationsPropertyPlantAndEquipment
ifrs_AdditionsOtherThanThroughBusinessCombinationsReinsuranceAssets
ifrs_AdditionsToNoncurrentAssets
ifrs_AddressOfRegisteredOfficeOfEntity
ifrs_AddressWhereConsolidatedFinancialStatementsAreObtainable
ifrs_AdjustedWeightedAverageShares
ifrs_AdjustmentToCarryingAmountsReportedUnderPreviousGAAP
ifrs_AdjustmentToMidmarketConsensusPriceSignificantUnobservableInputsAssets
ifrs_AdjustmentToMidmarketConsensusPriceSignificantUnobservableInputsEntitysOwnEquityInstruments
ifrs_AdjustmentToMidmarketConsensusPriceSignificantUnobservableInputsLiabilities
ifrs_AdjustmentsForAccruedIncomeExpensesNotYetReceivedPaid
ifrs_AdjustmentsForAmortisationExpense
ifrs_AdjustmentsForAmountsTransferredToInitialCarryingAmountOfHedgedItems
ifrs_AdjustmentsForCurrentTaxOfPriorPeriod
ifrs_AdjustmentsForDecreaseIncreaseInInventories
ifrs_AdjustmentsForDecreaseIncreaseInOtherAssets
ifrs_AdjustmentsForDecreaseIncreaseInOtherCurrentAssets
ifrs_AdjustmentsForDecreaseIncreaseInOtherOperatingReceivables
ifrs_AdjustmentsForDecreaseIncreaseInTradeAccountReceivable
ifrs_AdjustmentsForDecreaseIncreaseInTradeAndOtherReceivables
ifrs_AdjustmentsForDeferredTaxExpense
ifrs_AdjustmentsForDeferredTaxOfPriorPeriods
ifrs_AdjustmentsForDepreciationAndAmortisationExpense
ifrs_AdjustmentsForDepreciationAndAmortisationExpenseAndImpairmentLossReversalOfImpairmentLossRecognisedInProfitOrLoss
ifrs_AdjustmentsForDepreciationExpense
ifrs_AdjustmentsForDividendIncome
ifrs_AdjustmentsForFairValueGainsLosses
ifrs_AdjustmentsForFinanceCosts
ifrs_AdjustmentsForFinanceIncome
ifrs_AdjustmentsForFinanceIncomeCost
ifrs_AdjustmentsForGainLossOnDisposalOfInvestmentsInSubsidiariesJointVenturesAndAssociates
ifrs_AdjustmentsForGainLossOnDisposalsPropertyPlantAndEquipment
ifrs_AdjustmentsForGainsLossesOnFairValueAdjustmentInvestmentProperty
ifrs_AdjustmentsForImpairmentLossRecognisedInProfitOrLossGoodwill
ifrs_AdjustmentsForImpairmentLossReversalOfImpairmentLossRecognisedInProfitOrLoss
ifrs_AdjustmentsForImpairmentLossReversalOfImpairmentLossRecognisedInProfitOrLossInventories
ifrs_AdjustmentsForImpairmentLossReversalOfImpairmentLossRecognisedInProfitOrLossTradeAndOtherReceivables
ifrs_AdjustmentsForIncomeTaxExpense
ifrs_AdjustmentsForIncreaseDecreaseInDeferredIncome
ifrs_AdjustmentsForIncreaseDecreaseInEmployeeBenefitLiabilities
ifrs_AdjustmentsForIncreaseDecreaseInOtherCurrentLiabilities
ifrs_AdjustmentsForIncreaseDecreaseInOtherLiabilities
ifrs_AdjustmentsForIncreaseDecreaseInOtherOperatingPayables
ifrs_AdjustmentsForIncreaseDecreaseInTradeAccountPayable
ifrs_AdjustmentsForIncreaseDecreaseInTradeAndOtherPayables
ifrs_AdjustmentsForInterestExpense
ifrs_AdjustmentsForInterestIncome
ifrs_AdjustmentsForLossesGainsOnDisposalOfNoncurrentAssets
ifrs_AdjustmentsForNoncashFinanceCosts
ifrs_AdjustmentsForNoncashIncomeTaxExpense
ifrs_AdjustmentsForNoncontrollingInterests
ifrs_AdjustmentsForProvisions
ifrs_AdjustmentsForReconcileProfitLoss
ifrs_AdjustmentsForReconcileProfitLossAbstract
ifrs_AdjustmentsForSharebasedPayments
ifrs_AdjustmentsForUndistributedProfitsOfAssociates
ifrs_AdjustmentsForUndistributedProfitsOfInvestmentsAccountedForUsingEquityMethod
ifrs_AdjustmentsForUnrealisedForeignExchangeLossesGains
ifrs_AdjustmentsToDeferredTaxExpenseArisingFromChangeInTaxStatusOfEntityOrShareholders
ifrs_AdjustmentsToReconcileProfitLossOtherThanChangesInWorkingCapital
ifrs_AdministrativeExpense
ifrs_Advances
ifrs_AdvancesReceivedForContractsInProgress
ifrs_AggregateAdjustmentToCarryingValueReportedUnderPreviousGAAPMember
ifrs_AggregateContinuingAndDiscontinuedOperationsMember
ifrs_AggregateDifferenceBetweenFairValueAtInitialRecognitionAndAmountDeterminedUsingValuationTechniqueYetToBeRecognised
ifrs_AggregateNotSignificantIndividualAssetsOrCashgeneratingUnitsMember
ifrs_AggregateOfFairValuesMember
ifrs_AggregatedIndividuallyImmaterialAssociatesMember
ifrs_AggregatedIndividuallyImmaterialBusinessCombinationsMember
ifrs_AggregatedIndividuallyImmaterialJointVenturesMember
ifrs_AggregatedMeasurementMember
ifrs_AggregatedTimeBandsMember
ifrs_Aircraft
ifrs_AircraftMember
ifrs_AllLevelsOfFairValueHierarchyMember
ifrs_AllOtherSegmentsMember
ifrs_AllowanceAccountForCreditLossesOfFinancialAssets
ifrs_AllowanceForCreditLossesMember
ifrs_AmortisationDeferredAcquisitionCostsArisingFromInsuranceContracts
ifrs_AmortisationExpense
ifrs_AmortisationGoodwill
ifrs_AmortisationIntangibleAssetsOtherThanGoodwill
ifrs_AmortisationMethodIntangibleAssetsOtherThanGoodwill
ifrs_AmortisationOfGainsAndLossesArisingOnBuyingReinsurance
ifrs_AmountByWhichFinancialAssetsRelatedCreditDerivativesOrSimilarInstrumentsMitigateMaximumExposureToCreditRisk
ifrs_AmountByWhichLoansOrReceivablesRelatedCreditDerivativesOrSimilarInstrumentsMitigateMaximumExposureToCreditRisk
ifrs_AmountByWhichUnitsRecoverableAmountExceedsItsCarryingAmount
ifrs_AmountByWhichValueAssignedToKeyAssumptionMustChangeInOrderForUnitsRecoverableAmountToBeEqualToCarryingAmount
ifrs_AmountOfReclassificationsOrChangesInPresentation
ifrs_AmountPresentedInOtherComprehensiveIncomeRealisedAtDerecognition
ifrs_AmountRecognisedAsIncomeFromArrangementInvolvingLegalFormOfLease
ifrs_AmountRecognisedInOtherComprehensiveIncomeAndAccumulatedInEquityRelatingToNoncurrentAssetsOrDisposalGroupsHeldForSale
ifrs_AmountRecognisedInOtherComprehensiveIncomeAndAccumulatedInEquityRelatingToNoncurrentAssetsOrDisposalGroupsHeldForSaleMember
ifrs_AmountsArisingFromInsuranceContractsAxis
ifrs_AmountsIncurredDeferredAcquisitionCostsArisingFromInsuranceContracts
ifrs_AmountsPayableRelatedPartyTransactions
ifrs_AmountsPayableToTransfereeInRespectOfTransferredAssets
ifrs_AmountsReceivableRelatedPartyTransactions
ifrs_AmountsRecognisedAsOfAcquisitionDateForEachMajorClassOfAssetsAcquiredAndLiabilitiesAssumedAbstract
ifrs_AmountsRecognisedForTransactionRecognisedSeparatelyFromAcquisitionOfAssetsAndAssumptionOfLiabilitiesInBusinessCombination
ifrs_AmountsRemovedFromEquityAndIncludedInCarryingAmountOfNonfinancialAssetLiabilityWhoseAcquisitionOrIncurrenceWasHedgedHighlyProbableForecastTransactionBeforeTax
ifrs_AmountsSubjectToEnforceableMasterNettingArrangementOrSimilarAgreementNotSetOffAgainstFinancialAssets
ifrs_AmountsSubjectToEnforceableMasterNettingArrangementOrSimilarAgreementNotSetOffAgainstFinancialAssetsAbstract
ifrs_AmountsSubjectToEnforceableMasterNettingArrangementOrSimilarAgreementNotSetOffAgainstFinancialLiabilities
ifrs_AmountsSubjectToEnforceableMasterNettingArrangementOrSimilarAgreementNotSetOffAgainstFinancialLiabilitiesAbstract
ifrs_AnalysisOfAgeOfFinancialAssetsThatArePastDueButNotImpaired
ifrs_AnalysisOfChangeInDeferredTaxAssetsExplanatory
ifrs_AnalysisOfChangeInDeferredTaxLiabilitiesExplanatory
ifrs_AnalysisOfChangeInValuationAllowancesExplanatory
ifrs_AnalysisOfCreditExposuresUsingExternalCreditGradingSystemExplanatory
ifrs_AnalysisOfCreditExposuresUsingInternalCreditGradingSystemExplanatory
ifrs_AnalysisOfFinancialAssetsThatAreIndividuallyDeterminedToBeImpaired
ifrs_AnalysisOfIncomeAndExpenseAbstract
ifrs_AnnouncementOfPlanToDiscontinueOperationMember
ifrs_AnnouncingOrCommencingImplementationOfMajorRestructuringMember
ifrs_ApplicableTaxRate
ifrs_ArrangementsInvolvingLegalFormOfLeaseAxis
ifrs_ArrangementsInvolvingLegalFormOfLeaseMember
ifrs_AssetRecognisedForExpectedReimbursementContingentLiabilitiesInBusinessCombination
ifrs_AssetRecognisedForExpectedReimbursementOtherProvisions
ifrs_AssetbackedDebtInstrumentsHeld
ifrs_AssetbackedFinancingsMember
ifrs_AssetbackedSecuritiesAmountContributedToFairValueOfPlanAssets
ifrs_Assets
ifrs_AssetsAbstract
ifrs_AssetsAndLiabilitiesAxis
ifrs_AssetsAndLiabilitiesClassifiedAsHeldForSaleAxis
ifrs_AssetsAndLiabilitiesClassifiedAsHeldForSaleMember
ifrs_AssetsAndLiabilitiesMember
ifrs_AssetsAndLiabilitiesNotClassifiedAsHeldForSaleMember
ifrs_AssetsArisingFromExplorationForAndEvaluationOfMineralResources
ifrs_AssetsArisingFromInsuranceContracts
ifrs_AssetsForWhichEntityHasBindingSaleAgreement
ifrs_AssetsHeldAsCollateralPermittedToBeSoldOrRepledgedAtFairValue
ifrs_AssetsLiabilitiesOfBenefitPlan
ifrs_AssetsObtained
ifrs_AssetsOfBenefitPlan
ifrs_AssetsOtherThanCashOrCashEquivalentsInSubsidiaryOrBusinessesAcquiredOrDisposed
ifrs_AssetsRecognisedInEntitysFinancialStatementsInRelationToStructuredEntities
ifrs_AssetsSoldOrRepledgedAsCollateralAtFairValue
ifrs_AssetsThatEntityContinuesToRecognise
ifrs_AssetsThatEntityContinuesToRecogniseToExtentOfContinuingInvolvement
ifrs_AssetsToWhichSignificantRestrictionsApply
ifrs_AssetsTransferredToStructuredEntitiesAtTimeOfTransfer
ifrs_AssetsUnderInsuranceContractsAndReinsuranceContractsIssued
ifrs_AssetsUnderReinsuranceCeded
ifrs_AssetsWithSignificantRiskOfMaterialAdjustmentsWithinNextFinancialYear
ifrs_AssociatedLiabilitiesThatEntityContinuesToRecognise
ifrs_AssociatedLiabilitiesThatEntityContinuesToRecogniseToExtentOfContinuingInvolvement
ifrs_AssociatesMember
ifrs_AssociatesNotAccountedForUsingEquityMethodMember
ifrs_AtCostMember
ifrs_AtCostWithinFairValueModelMember
ifrs_AtFairValueMember
ifrs_AuditorsRemuneration
ifrs_AuditorsRemunerationAbstract
ifrs_AuditorsRemunerationForAuditServices
ifrs_AuditorsRemunerationForOtherServices
ifrs_AuditorsRemunerationForTaxServices
ifrs_AuthorisedCapitalCommitmentsButNotContractedFor
ifrs_AvailableforsaleFinancialAssetsAbstract
ifrs_AverageEffectiveTaxRate
ifrs_AverageForeignExchangeRate
ifrs_AverageNumberOfEmployees
ifrs_BalancesOnCurrentAccountsFromCustomers
ifrs_BalancesOnDemandDepositsFromCustomers
ifrs_BalancesOnOtherDepositsFromCustomers
ifrs_BalancesOnTermDepositsFromCustomers
ifrs_BalancesWithBanks
ifrs_BankBalancesAtCentralBanksOtherThanMandatoryReserveDeposits
ifrs_BankDebtInstrumentsHeld
ifrs_BankOverdraftsClassifiedAsCashEquivalents
ifrs_BankingArrangementsClassifiedAsCashEquivalents
ifrs_BasicAndDilutedEarningsLossPerShare
ifrs_BasicAndDilutedEarningsLossPerShareFromContinuingOperations
ifrs_BasicAndDilutedEarningsLossPerShareFromDiscontinuedOperations
ifrs_BasicAndDilutedEarningsPerShareAbstract
ifrs_BasicEarningsLossPerShare
ifrs_BasicEarningsLossPerShareFromContinuingOperations
ifrs_BasicEarningsLossPerShareFromDiscontinuedOperations
ifrs_BasicEarningsPerShareAbstract
ifrs_BasisForAttributingRevenuesFromExternalCustomersToIndividualCountries
ifrs_BasisForDeterminingWhichEntitiesAreIncludedInCombinedFinancialStatements
ifrs_BasisOfPreparationOfCombinedFinancialStatements
ifrs_BenefitsPaidOrPayable
ifrs_BestEstimateAtAcquisitionDateOfContractualCashFlowsNotExpectedToBeCollectedForAcquiredReceivables
ifrs_BiologicalAssets
ifrs_BiologicalAssetsAtCost
ifrs_BiologicalAssetsAtFairValue
ifrs_BiologicalAssetsMember
ifrs_BiologicalAssetsPledgedAsSecurityForLiabilities
ifrs_BiologicalAssetsWhoseTitleIsRestricted
ifrs_BondsIssued
ifrs_BorrowingCostsCapitalised
ifrs_Borrowings
ifrs_BorrowingsAbstract
ifrs_BorrowingsByTypeAbstract
ifrs_BorrowingsRecognisedAsOfAcquisitionDate
ifrs_BottomOfRangeMember
ifrs_BrandNames
ifrs_BrandNamesMember
ifrs_BrokerageFeeExpense
ifrs_BrokerageFeeIncome
ifrs_Buildings
ifrs_BuildingsMember
ifrs_BusinessCombinationsAxis
ifrs_BusinessCombinationsMember
ifrs_CancellationOfTreasuryShares
ifrs_CapitalCommitments
ifrs_CapitalCommitmentsAbstract
ifrs_CapitalCommitmentsOfVenturerInRelationToInterestsInJointVentures
ifrs_CapitalRedemptionReserve
ifrs_CapitalRedemptionReserveMember
ifrs_CapitalRequirementsAxis
ifrs_CapitalRequirementsMember
ifrs_CapitalReserve
ifrs_CapitalReserveMember
ifrs_CapitalisationRateOfBorrowingCostsEligibleForCapitalisation
ifrs_CapitalisedDevelopmentExpenditureMember
ifrs_CarryingAmountAccumulatedDepreciationAmortisationAndImpairmentAndGrossCarryingAmountAxis
ifrs_CarryingAmountAtTimeOfSaleOfInvestmentPropertyCarriedAtCostWithinFairValueModel
ifrs_CarryingAmountMember
ifrs_Cash
ifrs_CashAbstract
ifrs_CashAdvancesAndLoansMadeToOtherPartiesClassifiedAsInvestingActivities
ifrs_CashAdvancesAndLoansMadeToRelatedParties
ifrs_CashAndBankBalancesAtCentralBanks
ifrs_CashAndCashEquivalents
ifrs_CashAndCashEquivalentsAbstract
ifrs_CashAndCashEquivalentsAmountContributedToFairValueOfPlanAssets
ifrs_CashAndCashEquivalentsClassifiedAsPartOfDisposalGroupHeldForSale
ifrs_CashAndCashEquivalentsHeldByEntityUnavailableForUseByGroup
ifrs_CashAndCashEquivalentsIfDifferentFromStatementOfFinancialPosition
ifrs_CashAndCashEquivalentsIfDifferentFromStatementOfFinancialPositionAbstract
ifrs_CashAndCashEquivalentsInSubsidiaryOrBusinessesAcquiredOrDisposed
ifrs_CashCollateralPledgedSubjectToEnforceableMasterNettingArrangementOrSimilarAgreementNotSetOffAgainstFinancialLiabilities
ifrs_CashCollateralReceivedSubjectToEnforceableMasterNettingArrangementOrSimilarAgreementNotSetOffAgainstFinancialAssets
ifrs_CashEquivalents
ifrs_CashEquivalentsAbstract
ifrs_CashFlowHedgesAbstract
ifrs_CashFlowHedgesMember
ifrs_CashFlowsFromContinuingAndDiscontinuedOperationsAbstract
ifrs_CashFlowsFromLosingControlOfSubsidiariesOrOtherBusinessesClassifiedAsInvestingActivities
ifrs_CashFlowsFromUsedInActivitiesRelatedToJointVenturesProportionateConsolidationClassifiedAsFinancingActivities
ifrs_CashFlowsFromUsedInActivitiesRelatedToJointVenturesProportionateConsolidationClassifiedAsInvestingActivities
ifrs_CashFlowsFromUsedInActivitiesRelatedToJointVenturesProportionateConsolidationClassifiedAsOperatingActivities
ifrs_CashFlowsFromUsedInDecreaseIncreaseInRestrictedCashAndCashEquivalents
ifrs_CashFlowsFromUsedInDecreaseIncreaseInShorttermDepositsAndInvestments
ifrs_CashFlowsFromUsedInExplorationForAndEvaluationOfMineralResourcesClassifiedAsInvestingActivities
ifrs_CashFlowsFromUsedInExplorationForAndEvaluationOfMineralResourcesClassifiedAsOperatingActivities
ifrs_CashFlowsFromUsedInFinancingActivities
ifrs_CashFlowsFromUsedInFinancingActivitiesAbstract
ifrs_CashFlowsFromUsedInFinancingActivitiesContinuingOperations
ifrs_CashFlowsFromUsedInFinancingActivitiesDiscontinuedOperations
ifrs_CashFlowsFromUsedInIncreaseDecreaseInCurrentBorrowings
ifrs_CashFlowsFromUsedInIncreasesInOperatingCapacity
ifrs_CashFlowsFromUsedInInsuranceContracts
ifrs_CashFlowsFromUsedInInvestingActivities
ifrs_CashFlowsFromUsedInInvestingActivitiesAbstract
ifrs_CashFlowsFromUsedInInvestingActivitiesContinuingOperations
ifrs_CashFlowsFromUsedInInvestingActivitiesDiscontinuedOperations
ifrs_CashFlowsFromUsedInMaintainingOperatingCapacity
ifrs_CashFlowsFromUsedInOperatingActivities
ifrs_CashFlowsFromUsedInOperatingActivitiesAbstract
ifrs_CashFlowsFromUsedInOperatingActivitiesContinuingOperations
ifrs_CashFlowsFromUsedInOperatingActivitiesDiscontinuedOperations
ifrs_CashFlowsFromUsedInOperations
ifrs_CashFlowsFromUsedInOperationsBeforeChangesInWorkingCapital
ifrs_CashFlowsUsedInExplorationAndDevelopmentActivities
ifrs_CashFlowsUsedInObtainingControlOfSubsidiariesOrOtherBusinessesClassifiedAsInvestingActivities
ifrs_CashOnHand
ifrs_CashPaidLiabilitiesUnderInsuranceContractsAndReinsuranceContractsIssued
ifrs_CashPaymentsForFutureContractsForwardContractsOptionContractsAndSwapContractsClassifiedAsInvestingActivities
ifrs_CashReceiptsFromFutureContractsForwardContractsOptionContractsAndSwapContractsClassifiedAsInvestingActivities
ifrs_CashReceiptsFromRepaymentOfAdvancesAndLoansMadeToOtherPartiesClassifiedAsInvestingActivities
ifrs_CashReceiptsFromRepaymentOfAdvancesAndLoansMadeToRelatedParties
ifrs_CashTransferred
ifrs_CategoriesOfCurrentFinancialAssetsAbstract
ifrs_CategoriesOfCurrentFinancialAssetsAndCurrentFinancialLiabilitiesAbstract
ifrs_CategoriesOfCurrentFinancialLiabilitiesAbstract
ifrs_CategoriesOfFinancialAssetsAbstract
ifrs_CategoriesOfFinancialAssetsAndFinancialLiabilitiesAbstract
ifrs_CategoriesOfFinancialAssetsAxis
ifrs_CategoriesOfFinancialLiabilitiesAbstract
ifrs_CategoriesOfFinancialLiabilitiesAxis
ifrs_CategoriesOfNoncurrentFinancialAssetsAbstract
ifrs_CategoriesOfNoncurrentFinancialAssetsAndNoncurrentFinancialLiabilitiesAbstract
ifrs_CategoriesOfNoncurrentFinancialLiabilitiesAbstract
ifrs_CategoriesOfOtherLongtermBenefitsAxis
ifrs_CategoriesOfRelatedPartiesAxis
ifrs_CategoriesOfTerminationBenefitsAxis
ifrs_ChangeInAmountRecognisedForPreacquisitionDeferredTaxAsset
ifrs_ChangesInAggregateDifferenceBetweenFairValueAtInitialRecognitionAndAmountDeterminedUsingValuationTechniqueYetToBeRecognisedAbstract
ifrs_ChangesInAllowanceAccountForCreditLossesOfFinancialAssetsAbstract
ifrs_ChangesInBiologicalAssets
ifrs_ChangesInBiologicalAssetsAbstract
ifrs_ChangesInContingentLiabilitiesRecognisedInBusinessCombinationAbstract
ifrs_ChangesInDeferredAcquisitionCostsArisingFromInsuranceContractsAbstract
ifrs_ChangesInDeferredTaxLiabilityAssetAbstract
ifrs_ChangesInDefinedBenefitObligationAtPresentValue
ifrs_ChangesInDefinedBenefitObligationAtPresentValueAbstract
ifrs_ChangesInEquity
ifrs_ChangesInEquityAbstract
ifrs_ChangesInExposureToRisk
ifrs_ChangesInFairValueMeasurementAssetsAbstract
ifrs_ChangesInFairValueMeasurementEntitysOwnEquityInstrumentsAbstract
ifrs_ChangesInFairValueMeasurementLiabilitiesAbstract
ifrs_ChangesInFairValueOfFinancialAssetsAttributableToChangesInCreditRiskOfFinancialAssets
ifrs_ChangesInFairValueOfFinancialAssetsRelatedCreditDerivativesOrSimilarInstruments
ifrs_ChangesInFairValueOfFinancialLiabilityAttributableToChangesInCreditRiskOfLiability
ifrs_ChangesInFairValueOfLoansOrReceivablesAttributableToChangesInCreditRiskOfFinancialAssets
ifrs_ChangesInFairValueOfLoansOrReceivablesRelatedCreditDerivativesOrSimilarInstruments
ifrs_ChangesInGoodwill
ifrs_ChangesInGoodwillAbstract
ifrs_ChangesInIntangibleAssetsAndGoodwillAbstract
ifrs_ChangesInIntangibleAssetsOtherThanGoodwill
ifrs_ChangesInIntangibleAssetsOtherThanGoodwillAbstract
ifrs_ChangesInInventoriesOfFinishedGoodsAndWorkInProgress
ifrs_ChangesInInvestmentProperty
ifrs_ChangesInInvestmentPropertyAbstract
ifrs_ChangesInLiabilitiesUnderInsuranceContractsAndReinsuranceContractsIssuedAbstract
ifrs_ChangesInMethodsAndAssumptionsUsedInPreparingSensitivityAnalysis
ifrs_ChangesInMethodsUsedToMeasureRisk
ifrs_ChangesInNetAssetsAvailableForBenefitsAbstract
ifrs_ChangesInNetDefinedBenefitLiabilityAssetAbstract
ifrs_ChangesInNumberOfSharesOutstandingAbstract
ifrs_ChangesInObjectivesPoliciesAndProcessesForManagingRisk
ifrs_ChangesInOtherProvisions
ifrs_ChangesInOtherProvisionsAbstract
ifrs_ChangesInPlanAssetsAtFairValue
ifrs_ChangesInPlanAssetsAtFairValueAbstract
ifrs_ChangesInPropertyPlantAndEquipment
ifrs_ChangesInPropertyPlantAndEquipmentAbstract
ifrs_ChangesInReimbursementRightsAbstract
ifrs_ChangesInReimbursementRightsAtFairValue
ifrs_ChangesInReimbursementRightsAtFairValueAbstract
ifrs_ChangesInReinsuranceAssetsAbstract
ifrs_ChangesInTaxRatesOrTaxLawsEnactedOrAnnouncedMember
ifrs_CircumstancesLeadingToReversalsOfInventoryWritedown
ifrs_ClaimsAndBenefitsPaidNetOfReinsuranceRecoveries
ifrs_ClaimsIncurredButNotReported
ifrs_ClaimsReportedByPolicyholders
ifrs_ClassesOfAcquiredReceivablesAxis
ifrs_ClassesOfAcquiredReceivablesMember
ifrs_ClassesOfAssetsAxis
ifrs_ClassesOfAssetsMember
ifrs_ClassesOfCashPaymentsAbstract
ifrs_ClassesOfCashReceiptsFromOperatingActivitiesAbstract
ifrs_ClassesOfContingentLiabilitiesAxis
ifrs_ClassesOfEmployeeBenefitsExpenseAbstract
ifrs_ClassesOfEntitysOwnEquityInstrumentsAxis
ifrs_ClassesOfFinancialAssetsAxis
ifrs_ClassesOfFinancialInstrumentsAxis
ifrs_ClassesOfFinancialInstrumentsMember
ifrs_ClassesOfFinancialLiabilitiesAxis
ifrs_ClassesOfIntangibleAssetsAndGoodwillAxis
ifrs_ClassesOfIntangibleAssetsOtherThanGoodwillAxis
ifrs_ClassesOfInventoriesAbstract
ifrs_ClassesOfLiabilitiesAxis
ifrs_ClassesOfOrdinarySharesAxis
ifrs_ClassesOfOtherProvisionsAbstract
ifrs_ClassesOfPropertyPlantAndEquipmentAxis
ifrs_ClassesOfProvisionsAxis
ifrs_ClassesOfShareCapitalAxis
ifrs_ClassesOfShareCapitalMember
ifrs_ClassificationOfAssetsAsHeldForSaleMember
ifrs_ClosingForeignExchangeRate
ifrs_CombinedMember
ifrs_CommencementOfMajorLitigationMember
ifrs_CommentaryByManagementOnSignificantCashAndCashEquivalentBalancesHeldByEntityThatAreNotAvailableForUseByGroup
ifrs_CommercialPapersIssued
ifrs_CommitmentsForDevelopmentOrAcquisitionOfBiologicalAssets
ifrs_CommitmentsInRelationToJointVentures
ifrs_CommitmentsMadeByEntityRelatedPartyTransactions
ifrs_CommitmentsMadeOnBehalfOfEntityRelatedPartyTransactions
ifrs_CommodityPriceRiskMember
ifrs_CommunicationAndNetworkEquipmentMember
ifrs_CompensationFromThirdPartiesForItemsOfPropertyPlantAndEquipment
ifrs_ComponentsOfEquityAxis
ifrs_ComponentsOfOtherComprehensiveIncomeBeforeTaxAbstract
ifrs_ComponentsOfOtherComprehensiveIncomeNetOfTaxAbstract
ifrs_ComponentsOfOtherComprehensiveIncomeThatWillBeReclassifiedToProfitOrLossBeforeTaxAbstract
ifrs_ComponentsOfOtherComprehensiveIncomeThatWillBeReclassifiedToProfitOrLossNetOfTaxAbstract
ifrs_ComponentsOfOtherComprehensiveIncomeThatWillNotBeReclassifiedToProfitOrLossBeforeTaxAbstract
ifrs_ComponentsOfOtherComprehensiveIncomeThatWillNotBeReclassifiedToProfitOrLossNetOfTaxAbstract
ifrs_ComprehensiveIncome
ifrs_ComprehensiveIncomeAbstract
ifrs_ComprehensiveIncomeAttributableToAbstract
ifrs_ComprehensiveIncomeAttributableToNoncontrollingInterests
ifrs_ComprehensiveIncomeAttributableToOwnersOfParent
ifrs_ComputerEquipmentMember
ifrs_ComputerSoftware
ifrs_ComputerSoftwareInternallyGeneratedMember
ifrs_ComputerSoftwareMember
ifrs_ComputerSoftwareNotInternallyGeneratedMember
ifrs_ConcentrationsOfRisk
ifrs_ConsensusPricingMember
ifrs_ConsiderationPaidReceived
ifrs_ConsolidatedAndSeparateFinancialStatementsAxis
ifrs_ConsolidatedMember
ifrs_ConsolidatedStructuredEntitiesAxis
ifrs_ConsolidatedStructuredEntitiesMember
ifrs_ConstantPrepaymentRateSignificantUnobservableInputsAssets
ifrs_ConstantPrepaymentRateSignificantUnobservableInputsEntitysOwnEquityInstruments
ifrs_ConstantPrepaymentRateSignificantUnobservableInputsLiabilities
ifrs_ConstructionInProgress
ifrs_ConstructionInProgressMember
ifrs_ConsumerLoans
ifrs_ConsumerLoansMember
ifrs_ContingentConsiderationArrangementsAndIndemnificationAssetsRecognisedAsOfAcquisitionDate
ifrs_ContingentLiabilitiesForWhichVenturerIsContingentlyLiableForLiabilitiesOfOtherVenturers
ifrs_ContingentLiabilitiesIncurredByVenturerInRelationToInterestsInJointVentures
ifrs_ContingentLiabilitiesIncurredInRelationToInterestsInAssociates
ifrs_ContingentLiabilitiesMember
ifrs_ContingentLiabilitiesOfAssociatesForWhichEntityIsSeverallyLiable
ifrs_ContingentLiabilitiesOfJointVentureMember
ifrs_ContingentLiabilitiesRecognisedAsOfAcquisitionDate
ifrs_ContingentLiabilitiesRecognisedInBusinessCombination
ifrs_ContingentLiabilitiesRelatedToJointVentures
ifrs_ContingentLiabilitiesRelatedToJointVenturesAbstract
ifrs_ContingentLiabilityForDecommissioningRestorationAndRehabilitationCostsMember
ifrs_ContingentLiabilityForGuaranteesMember
ifrs_ContingentRentsRecognisedAsExpense
ifrs_ContingentRentsRecognisedAsExpenseClassifiedAsFinanceLease
ifrs_ContingentRentsRecognisedAsExpenseClassifiedAsOperatingLease
ifrs_ContingentRentsRecognisedAsIncome
ifrs_ContingentRentsRecognisedAsIncomeAbstract
ifrs_ContingentRentsRecognisedAsIncomeClassifiedAsFinanceLease
ifrs_ContingentRentsRecognisedAsIncomeClassifiedAsOperatingLease
ifrs_ContinuingAndDiscontinuedOperationsAxis
ifrs_ContinuingInvolvementInDerecognisedFinancialAssetsByTypeOfInstrumentAxis
ifrs_ContinuingInvolvementInDerecognisedFinancialAssetsByTypeOfTransferAxis
ifrs_ContinuingOperationsMember
ifrs_ContractualAmountsToBeExchangedInDerivativeFinancialInstrumentForWhichGrossCashFlowsAreExchanged
ifrs_ContractualCapitalCommitments
ifrs_ContractualCommitmentsForAcquisitionOfIntangibleAssets
ifrs_ContractualCommitmentsForAcquisitionOfPropertyPlantAndEquipment
ifrs_ContributionsByPlanParticipantsDefinedBenefitObligationAtPresentValue
ifrs_ContributionsToPlanByEmployerNetDefinedBenefitLiabilityAsset
ifrs_ContributionsToPlanByPlanParticipantsNetDefinedBenefitLiabilityAsset
ifrs_ContributionsToPlanNetDefinedBenefitLiabilityAsset
ifrs_ContributionsToPlanNetDefinedBenefitLiabilityAssetAbstract
ifrs_CopyrightsPatentsAndOtherIndustrialPropertyRightsServiceAndOperatingRights
ifrs_CopyrightsPatentsAndOtherIndustrialPropertyRightsServiceAndOperatingRightsInternallyGeneratedMember
ifrs_CopyrightsPatentsAndOtherIndustrialPropertyRightsServiceAndOperatingRightsMember
ifrs_CopyrightsPatentsAndOtherIndustrialPropertyRightsServiceAndOperatingRightsNotInternallyGeneratedMember
ifrs_CorporateDebtInstrumentsHeld
ifrs_CorporateLoans
ifrs_CorporateLoansMember
ifrs_CostApproachMember
ifrs_CostOfBusinessCombination
ifrs_CostOfInventoriesRecognisedAsExpenseDuringPeriod
ifrs_CostOfSales
ifrs_CostRelatingToDefinedBenefitPlans
ifrs_CostRelatingToDefinedBenefitPlansForPeriodIncludedInCostOfAssets
ifrs_CostsIncurredAndRecognisedProfitsLessRecognisedLosses
ifrs_CounterpartiesAxis
ifrs_CounterpartiesMember
ifrs_CountryOfDomicileMember
ifrs_CountryOfIncorporation
ifrs_CountryOfIncorporationOfEntityWhoseConsolidatedFinancialStatementsHaveBeenProducedForPublicUse
ifrs_CountryOfIncorporationOfJointOperation
ifrs_CountryOfIncorporationOfJointVenture
ifrs_CountryOfIncorporationOrResidenceOfAssociate
ifrs_CountryOfIncorporationOrResidenceOfJointlyControlledEntity
ifrs_CountryOfIncorporationOrResidenceOfSubsidiary
ifrs_CreationDateAxis
ifrs_CreditExposure
ifrs_CreditRiskMember
ifrs_CreditrelatedFeeAndCommissionIncome
ifrs_CumulativeChangeInFairValueRecognisedInProfitOrLossOnSalesOfInvestmentPropertyBetweenPoolsOfAssetsMeasuredUsingDifferentModels
ifrs_CumulativeGainLossOnDisposalOfInvestmentsInEquityInstrumentsDesignatedAsMeasuredAtFairValueThroughOtherComprehensiveIncome
ifrs_CumulativePreferenceDividendsNotRecognised
ifrs_CumulativeUnrecognisedShareOfLossesOfAssociates
ifrs_CumulativeUnrecognisedShareOfLossesOfJointVentures
ifrs_CumulativeUnrecognisedShareOfLossesOfJointVenturesTransitionFromProportionateConsolidationToEquityMethod
ifrs_CurrencyRiskMember
ifrs_CurrentAccruedExpensesAndOtherCurrentLiabilities
ifrs_CurrentAdvances
ifrs_CurrentAdvancesToSuppliers
ifrs_CurrentAndDeferredTaxRelatingToItemsChargedOrCreditedDirectlyToEquity
ifrs_CurrentAndDeferredTaxRelatingToItemsChargedOrCreditedDirectlyToEquityAbstract
ifrs_CurrentAssets
ifrs_CurrentAssetsAbstract
ifrs_CurrentAssetsOtherThanAssetsOrDisposalGroupsClassifiedAsHeldForSaleOrAsHeldForDistributionToOwners
ifrs_CurrentAssetsRecognisedAsOfAcquisitionDate
ifrs_CurrentBiologicalAssets
ifrs_CurrentBiologicalAssetsAtCost
ifrs_CurrentBiologicalAssetsAtFairValue
ifrs_CurrentBondsIssuedAndCurrentPortionOfNoncurrentBondsIssued
ifrs_CurrentBorrowingsAndCurrentPortionOfNoncurrentBorrowings
ifrs_CurrentBorrowingsAndCurrentPortionOfNoncurrentBorrowingsAbstract
ifrs_CurrentBorrowingsAndCurrentPortionOfNoncurrentBorrowingsByTypeAbstract
ifrs_CurrentCommercialPapersIssuedAndCurrentPortionOfNoncurrentCommercialPapersIssued
ifrs_CurrentDerivativeFinancialAssets
ifrs_CurrentDerivativeFinancialLiabilities
ifrs_CurrentDividendPayables
ifrs_CurrentEstimateOfFutureCashOutflowsToBePaidToFulfilObligationSignificantUnobservableInputsAssets
ifrs_CurrentEstimateOfFutureCashOutflowsToBePaidToFulfilObligationSignificantUnobservableInputsEntitysOwnEquityInstruments
ifrs_CurrentEstimateOfFutureCashOutflowsToBePaidToFulfilObligationSignificantUnobservableInputsLiabilities
ifrs_CurrentFinanceLeaseLiabilities
ifrs_CurrentFinancialAssets
ifrs_CurrentFinancialAssetsAtAmortisedCost
ifrs_CurrentFinancialAssetsAtFairValueThroughOtherComprehensiveIncome
ifrs_CurrentFinancialAssetsAtFairValueThroughProfitOrLoss
ifrs_CurrentFinancialAssetsAtFairValueThroughProfitOrLossAbstract
ifrs_CurrentFinancialAssetsAtFairValueThroughProfitOrLossClassifiedAsHeldForTrading
ifrs_CurrentFinancialAssetsAtFairValueThroughProfitOrLossDesignatedUponInitialRecognition
ifrs_CurrentFinancialAssetsAtFairValueThroughProfitOrLossMandatorilyMeasuredAtFairValue
ifrs_CurrentFinancialAssetsAvailableforsale
ifrs_CurrentFinancialAssetsThatAreDebtInstrumentsAtCost
ifrs_CurrentFinancialAssetsThatAreEquityInstrumentsAtCost
ifrs_CurrentFinancialLiabilities
ifrs_CurrentFinancialLiabilitiesAtAmortisedCost
ifrs_CurrentFinancialLiabilitiesAtFairValueThroughProfitOrLoss
ifrs_CurrentFinancialLiabilitiesAtFairValueThroughProfitOrLossAbstract
ifrs_CurrentFinancialLiabilitiesAtFairValueThroughProfitOrLossClassifiedAsHeldForTrading
ifrs_CurrentFinancialLiabilitiesAtFairValueThroughProfitOrLossDesignatedUponInitialRecognition
ifrs_CurrentGovernmentGrants
ifrs_CurrentHeldtomaturityInvestments
ifrs_CurrentInterestPayable
ifrs_CurrentInterestReceivable
ifrs_CurrentInvestments
ifrs_CurrentLiabilities
ifrs_CurrentLiabilitiesAbstract
ifrs_CurrentLiabilitiesOtherThanLiabilitiesIncludedInDisposalGroupsClassifiedAsHeldForSale
ifrs_CurrentLiabilitiesRecognisedAsOfAcquisitionDate
ifrs_CurrentLoanCommitmentsAtCost
ifrs_CurrentLoansAndReceivables
ifrs_CurrentLoansReceivedAndCurrentPortionOfNoncurrentLoansReceived
ifrs_CurrentNoncashAssetsPledgedAsCollateralForWhichTransfereeHasRightByContractOrCustomToSellOrRepledgeCollateral
ifrs_CurrentNotesAndDebenturesIssuedAndCurrentPortionOfNoncurrentNotesAndDebenturesIssued
ifrs_CurrentPayablesOnSocialSecurityAndTaxesOtherThanIncomeTax
ifrs_CurrentPortionOfLongtermBorrowings
ifrs_CurrentPrepaidExpenses
ifrs_CurrentPrepayments
ifrs_CurrentPrepaymentsAbstract
ifrs_CurrentPrepaymentsAndOtherCurrentAssets
ifrs_CurrentProvisions
ifrs_CurrentProvisionsAbstract
ifrs_CurrentProvisionsForEmployeeBenefits
ifrs_CurrentReceivablesFromTaxesOtherThanIncomeTax
ifrs_CurrentRecognisedAssetsDefinedBenefitPlan
ifrs_CurrentRecognisedLiabilitiesDefinedBenefitPlan
ifrs_CurrentRefundsProvision
ifrs_CurrentRestrictedCashAndCashEquivalents
ifrs_CurrentSecuredBankLoansReceivedAndCurrentPortionOfNoncurrentSecuredBankLoansReceived
ifrs_CurrentServiceCostDefinedBenefitPlan
ifrs_CurrentServiceCostNetDefinedBenefitLiabilityAsset
ifrs_CurrentTaxAssets
ifrs_CurrentTaxAssetsCurrent
ifrs_CurrentTaxAssetsNoncurrent
ifrs_CurrentTaxExpenseIncome
ifrs_CurrentTaxExpenseIncomeAndAdjustmentsForCurrentTaxOfPriorPeriods
ifrs_CurrentTaxExpenseIncomeAndAdjustmentsForCurrentTaxOfPriorPeriodsAbstract
ifrs_CurrentTaxLiabilities
ifrs_CurrentTaxLiabilitiesCurrent
ifrs_CurrentTaxLiabilitiesNoncurrent
ifrs_CurrentTaxRelatingToItemsChargedOrCreditedDirectlyToEquity
ifrs_CurrentTradeReceivables
ifrs_CurrentUnsecuredBankLoansReceivedAndCurrentPortionOfNoncurrentUnsecuredBankLoansReceived
ifrs_CurrentValueAddedTaxPayables
ifrs_CurrentValueAddedTaxReceivables
ifrs_CustomerrelatedIntangibleAssetsMember
ifrs_DateAsAtWhichEntityPlansToApplyIFRSInitially
ifrs_DateByWhichApplicationOfIFRSIsRequired
ifrs_DateOfAcquisition
ifrs_DateOfAuthorisationForIssueOfFinancialStatements
ifrs_DateOfEndOfReportingPeriod
ifrs_DateOfEndOfReportingPeriodOfFinancialStatementsOfJointVenture
ifrs_DateOfGrantOfSharebasedPaymentArrangement
ifrs_DateOfMostRecentComprehensiveActuarialValuation
ifrs_DatedSubordinatedLiabilities
ifrs_DebtInstrumentsAmountContributedToFairValueOfPlanAssets
ifrs_DebtInstrumentsHeld
ifrs_DebtInstrumentsHeldAbstract
ifrs_DebtInstrumentsPercentageContributedToFairValueOfPlanAssets
ifrs_DebtSecurities
ifrs_DebtSecuritiesMember
ifrs_DecreaseDueToHarvestBiologicalAssets
ifrs_DecreaseIncreaseThroughActuarialGainsLossesDefinedBenefitObligationAtPresentValue
ifrs_DecreaseIncreaseThroughCurtailmentsDefinedBenefitObligationAtPresentValue
ifrs_DecreaseIncreaseThroughSettlementsDefinedBenefitObligationAtPresentValue
ifrs_DecreaseIncreaseThroughSettlementsPlanAssetsAtFairValue
ifrs_DecreaseIncreaseThroughSettlementsReimbursementRightsAtFairValue
ifrs_DecreaseIncreaseThroughTaxOnSharebasedPaymentTransactions
ifrs_DecreaseThroughBenefitsPaidDefinedBenefitObligationAtPresentValue
ifrs_DecreaseThroughBenefitsPaidPlanAssetsAtFairValue
ifrs_DecreaseThroughBenefitsPaidReimbursementRightsAtFairValue
ifrs_DecreaseThroughClassifiedAsHeldForSaleBiologicalAssets
ifrs_DecreaseThroughClassifiedAsHeldForSaleGoodwill
ifrs_DecreaseThroughClassifiedAsHeldForSaleIntangibleAssetsAndGoodwill
ifrs_DecreaseThroughClassifiedAsHeldForSaleIntangibleAssetsOtherThanGoodwill
ifrs_DecreaseThroughClassifiedAsHeldForSaleInvestmentProperty
ifrs_DecreaseThroughClassifiedAsHeldForSalePropertyPlantAndEquipment
ifrs_DecreaseThroughDisposalOfPreviouslyAcquiredBusinessesGoodwill
ifrs_DecreaseThroughLossOfControlOfSubsidiaryIntangibleAssetsAndGoodwill
ifrs_DecreaseThroughLossOfControlOfSubsidiaryIntangibleAssetsOtherThanGoodwill
ifrs_DecreaseThroughLossOfControlOfSubsidiaryOtherProvisions
ifrs_DecreaseThroughLossOfControlOfSubsidiaryPropertyPlantAndEquipment
ifrs_DecreaseThroughTransferToLiabilitiesIncludedInDisposalGroupsClassifiedAsHeldForSaleOtherProvisions
ifrs_DeductibleTemporaryDifferencesForWhichNoDeferredTaxAssetIsRecognised
ifrs_DeemedCostOfInvestmentsForWhichDeemedCostIsFairValue
ifrs_DeemedCostOfInvestmentsForWhichDeemedCostIsPreviousGAAPCarryingAmount
ifrs_DefaultFinancialStatementsDateMember
ifrs_DeferredAcquisitionCostsArisingFromInsuranceContracts
ifrs_DeferredIncome
ifrs_DeferredIncomeClassifiedAsCurrent
ifrs_DeferredIncomeClassifiedAsNoncurrent
ifrs_DeferredTaxAssetWhenUtilisationIsDependentOnFutureTaxableProfitsInExcessOfProfitsFromReversalOfTaxableTemporaryDifferencesAndEntityHasSufferedLossInJurisdictionToWhichDeferredTaxAssetRelates
ifrs_DeferredTaxAssets
ifrs_DeferredTaxAssetsAndLiabilitiesAbstract
ifrs_DeferredTaxAssetsRecognisedAsOfAcquisitionDate
ifrs_DeferredTaxExpenseArisingFromWritedownOrReversalOfWritedownOfDeferredTaxAsset
ifrs_DeferredTaxExpenseIncome
ifrs_DeferredTaxExpenseIncomeAbstract
ifrs_DeferredTaxExpenseIncomeRecognisedInProfitOrLoss
ifrs_DeferredTaxExpenseIncomeRelatingToOriginationAndReversalOfTemporaryDifferences
ifrs_DeferredTaxExpenseIncomeRelatingToTaxRateChangesOrImpositionOfNewTaxes
ifrs_DeferredTaxLiabilities
ifrs_DeferredTaxLiabilitiesRecognisedAsOfAcquisitionDate
ifrs_DeferredTaxLiabilityAsset
ifrs_DeferredTaxRelatingToItemsChargedOrCreditedDirectlyToEquity
ifrs_DefinedBenefitObligationArisingFromWhollyOrPartlyFundedPlans
ifrs_DefinedBenefitObligationArisingFromWhollyUnfundedPlans
ifrs_DefinedBenefitObligationAtPresentValue
ifrs_DefinedBenefitPlansAxis
ifrs_DefinedBenefitPlansMember
ifrs_DefinedBenefitPlansThatShareRisksBetweenEntitiesUnderCommonControlMember
ifrs_DepartureFromRequirementOfIFRSAxis
ifrs_DepositsFromBanks
ifrs_DepositsFromCustomers
ifrs_DepositsFromCustomersAbstract
ifrs_DepreciationAndAmortisationExpense
ifrs_DepreciationAndAmortisationExpenseAbstract
ifrs_DepreciationBiologicalAssets
ifrs_DepreciationExpense
ifrs_DepreciationInvestmentProperty
ifrs_DepreciationMethodBiologicalAssetsAtCost
ifrs_DepreciationMethodInvestmentPropertyCostModel
ifrs_DepreciationMethodPropertyPlantAndEquipment
ifrs_DepreciationPropertyPlantAndEquipment
ifrs_DerivativeFinancialAssets
ifrs_DerivativeFinancialLiabilities
ifrs_DerivativeFinancialLiabilitiesUndiscountedCashFlows
ifrs_DerivativesAmountContributedToFairValueOfPlanAssets
ifrs_DerivativesMember
ifrs_DescriptionAndCarryingAmountOfIntangibleAssetsMaterialToEntity
ifrs_DescriptionAndCarryingAmountOfIntangibleAssetsWithIndefiniteUsefulLife
ifrs_DescriptionOfAccountingForTransactionRecognisedSeparatelyFromAcquisitionOfAssetsAndAssumptionOfLiabilitiesInBusinessCombination
ifrs_DescriptionOfAccountingPolicyDecisionToUseExceptionInIFRS1348Assets
ifrs_DescriptionOfAccountingPolicyDecisionToUseExceptionInIFRS1348Liabilities
ifrs_DescriptionOfAccountingPolicyForBiologicalAssetsExplanatory
ifrs_DescriptionOfAccountingPolicyForBorrowingCostsExplanatory
ifrs_DescriptionOfAccountingPolicyForBorrowingsExplanatory
ifrs_DescriptionOfAccountingPolicyForBusinessCombinationsAndGoodwillExplanatory
ifrs_DescriptionOfAccountingPolicyForBusinessCombinationsExplanatory
ifrs_DescriptionOfAccountingPolicyForCashFlowsExplanatory
ifrs_DescriptionOfAccountingPolicyForCollateralExplanatory
ifrs_DescriptionOfAccountingPolicyForConstructionInProgressExplanatory
ifrs_DescriptionOfAccountingPolicyForDeferredAcquisitionCostsArisingFromInsuranceContractsExplanatory
ifrs_DescriptionOfAccountingPolicyForDefinedBenefitPlans
ifrs_DescriptionOfAccountingPolicyForDepreciationExpenseExplanatory
ifrs_DescriptionOfAccountingPolicyForDerecognitionOfFinancialInstrumentsExplanatory
ifrs_DescriptionOfAccountingPolicyForDerivativeFinancialInstrumentsAndHedgingExplanatory
ifrs_DescriptionOfAccountingPolicyForDerivativeFinancialInstrumentsExplanatory
ifrs_DescriptionOfAccountingPolicyForDiscontinuedOperationsExplanatory
ifrs_DescriptionOfAccountingPolicyForDividendsExplanatory
ifrs_DescriptionOfAccountingPolicyForEarningsPerShareExplanatory
ifrs_DescriptionOfAccountingPolicyForEmployeeBenefitsExplanatory
ifrs_DescriptionOfAccountingPolicyForEnvironmentRelatedExpenseExplanatory
ifrs_DescriptionOfAccountingPolicyForExpensesExplanatory
ifrs_DescriptionOfAccountingPolicyForExplorationAndEvaluationExpenditures
ifrs_DescriptionOfAccountingPolicyForFairValueMeasurementExplanatory
ifrs_DescriptionOfAccountingPolicyForFeeAndCommissionIncomeAndExpenseExplanatory
ifrs_DescriptionOfAccountingPolicyForFinanceCostsExplanatory
ifrs_DescriptionOfAccountingPolicyForFinanceIncomeAndCostsExplanatory
ifrs_DescriptionOfAccountingPolicyForFinancialAssetsExplanatory
ifrs_DescriptionOfAccountingPolicyForFinancialGuaranteesExplanatory
ifrs_DescriptionOfAccountingPolicyForFinancialInstrumentsAtFairValueThroughProfitOrLossExplanatory
ifrs_DescriptionOfAccountingPolicyForFinancialInstrumentsExplanatory
ifrs_DescriptionOfAccountingPolicyForFinancialLiabilitiesExplanatory
ifrs_DescriptionOfAccountingPolicyForForeignCurrencyTranslationExplanatory
ifrs_DescriptionOfAccountingPolicyForFunctionalCurrencyExplanatory
ifrs_DescriptionOfAccountingPolicyForGoodwillExplanatory
ifrs_DescriptionOfAccountingPolicyForGovernmentGrants
ifrs_DescriptionOfAccountingPolicyForHedgingExplanatory
ifrs_DescriptionOfAccountingPolicyForImpairmentOfAssetsExplanatory
ifrs_DescriptionOfAccountingPolicyForImpairmentOfFinancialAssetsExplanatory
ifrs_DescriptionOfAccountingPolicyForImpairmentOfNonfinancialAssetsExplanatory
ifrs_DescriptionOfAccountingPolicyForIncomeTaxExplanatory
ifrs_DescriptionOfAccountingPolicyForInsuranceContracts
ifrs_DescriptionOfAccountingPolicyForIntangibleAssetsAndGoodwillExplanatory
ifrs_DescriptionOfAccountingPolicyForIntangibleAssetsOtherThanGoodwillExplanatory
ifrs_DescriptionOfAccountingPolicyForInterestIncomeAndExpenseExplanatory
ifrs_DescriptionOfAccountingPolicyForInvestmentInAssociates
ifrs_DescriptionOfAccountingPolicyForInvestmentInAssociatesAndJointVenturesExplanatory
ifrs_DescriptionOfAccountingPolicyForInvestmentPropertyExplanatory
ifrs_DescriptionOfAccountingPolicyForInvestmentsInJointVentures
ifrs_DescriptionOfAccountingPolicyForInvestmentsOtherThanInvestmentsAccountedForUsingEquityMethodExplanatory
ifrs_DescriptionOfAccountingPolicyForIssuedCapitalExplanatory
ifrs_DescriptionOfAccountingPolicyForLeasesExplanatory
ifrs_DescriptionOfAccountingPolicyForMeasuringInventories
ifrs_DescriptionOfAccountingPolicyForNoncurrentAssetsOrDisposalGroupsClassifiedAsHeldForSaleAndDiscontinuedOperationsExplanatory
ifrs_DescriptionOfAccountingPolicyForNoncurrentAssetsOrDisposalGroupsClassifiedAsHeldForSaleExplanatory
ifrs_DescriptionOfAccountingPolicyForOffsettingOfFinancialInstrumentsExplanatory
ifrs_DescriptionOfAccountingPolicyForPropertyPlantAndEquipmentExplanatory
ifrs_DescriptionOfAccountingPolicyForProvisionsExplanatory
ifrs_DescriptionOfAccountingPolicyForReclassificationOfFinancialInstrumentsExplanatory
ifrs_DescriptionOfAccountingPolicyForRecognisingDifferenceBetweenFairValueAtInitialRecognitionAndAmountDeterminedUsingValuationTechniqueExplanatory
ifrs_DescriptionOfAccountingPolicyForRecognitionOfRevenue
ifrs_DescriptionOfAccountingPolicyForReinsuranceExplanatory
ifrs_DescriptionOfAccountingPolicyForRepurchaseAndReverseRepurchaseAgreementsExplanatory
ifrs_DescriptionOfAccountingPolicyForResearchAndDevelopmentExpenseExplanatory
ifrs_DescriptionOfAccountingPolicyForRestrictedCashAndCashEquivalentsExplanatory
ifrs_DescriptionOfAccountingPolicyForSegmentReportingExplanatory
ifrs_DescriptionOfAccountingPolicyForSharebasedPaymentTransactionsExplanatory
ifrs_DescriptionOfAccountingPolicyForSubsidiariesExplanatory
ifrs_DescriptionOfAccountingPolicyForTerminationBenefits
ifrs_DescriptionOfAccountingPolicyForTradeAndOtherPayablesExplanatory
ifrs_DescriptionOfAccountingPolicyForTradeAndOtherReceivablesExplanatory
ifrs_DescriptionOfAccountingPolicyForTradingIncomeAndExpenseExplanatory
ifrs_DescriptionOfAccountingPolicyForTransactionsWithNoncontrollingInterestsExplanatory
ifrs_DescriptionOfAccountingPolicyForTransactionsWithRelatedPartiesExplanatory
ifrs_DescriptionOfAccountingPolicyForTreasurySharesExplanatory
ifrs_DescriptionOfAccountingPolicyToDetermineComponentsOfCashAndCashEquivalents
ifrs_DescriptionOfAcquiree
ifrs_DescriptionOfAcquisitionOfAssetsByAssumingDirectlyRelatedLiabilitiesOrMeansOfFinanceLease
ifrs_DescriptionOfAcquisitionOfEntityByMeansOfEquityIssue
ifrs_DescriptionOfActualReturnOnPlanAssetsAndReimbursementRightRecognisedAsAsset
ifrs_DescriptionOfAdjustmentsMadeToMeasureDefinedBenefitObligation
ifrs_DescriptionOfAgreedAllocationOfDeficitOrSurplusOfMultiemployerOrStatePlanOnEntitysWithdrawalFromPlan
ifrs_DescriptionOfAgreedAllocationOfDeficitOrSurplusOfMultiemployerOrStatePlanOnWindupOfPlan
ifrs_DescriptionOfAmountsOfAssetsLiabilitiesEquityInterestsOrItemsOfConsiderationForWhichInitialAccountingIsIncomplete
ifrs_DescriptionOfAmountsOfEntitysOwnFinancialInstrumentsIncludedInFairValueOfPlanAssets
ifrs_DescriptionOfAmountsOfOtherAssetsUsedByEntityIncludedInFairValueOfPlanAssets
ifrs_DescriptionOfAmountsOfPropertyOccupiedByEntityIncludedInFairValueOfPlanAssets
ifrs_DescriptionOfAnyOtherEntitysResponsibilitiesForGovernanceOfPlan
ifrs_DescriptionOfAnyRetirementBenefitPlanTerminationTerms
ifrs_DescriptionOfArrangementForContingentConsiderationArrangementsAndIndemnificationAssets
ifrs_DescriptionOfArrangementInvolvingLegalFormOfLease
ifrs_DescriptionOfAssetUnderlyingArrangementInvolvingLegalFormOfLeaseAndAnyRestrictionsOnItsUse
ifrs_DescriptionOfAssetliabilityMatchingStrategiesUsedByPlanOrEntityToManageRisk
ifrs_DescriptionOfAssetsOrGroupOfAssetsAndLiabilitiesIfEntityHasBindingSaleAgreement
ifrs_DescriptionOfBasesOfFinancialStatementsThatHaveBeenRestatedForChangesInGeneralPurchasingPowerOfFunctionalCurrency
ifrs_DescriptionOfBasisForDeterminingAmountOfPaymentForContingentConsiderationArrangementsAndIndemnificationAssets
ifrs_DescriptionOfBasisForPreparingAndPresentingInformationNotRequiredByIFRSForSMEs
ifrs_DescriptionOfBasisOfAccountingForTransactionsBetweenReportableSegments
ifrs_DescriptionOfBasisOfPreparationOfSummarisedFinancialInformationOfAssociate
ifrs_DescriptionOfBasisOfPreparationOfSummarisedFinancialInformationOfJointVenture
ifrs_DescriptionOfBasisOfValuationOfAssetsAvailableForBenefits
ifrs_DescriptionOfBasisOnWhichUnitsRecoverableAmountHasBeenDetermined
ifrs_DescriptionOfBasisUsedToDetermineExpectedRateOfReturnOnAssets
ifrs_DescriptionOfBasisUsedToDetermineFairValueLessCostsToSell
ifrs_DescriptionOfBasisUsedToDetermineSurplusOrDeficitOfMultiemployerPlan
ifrs_DescriptionOfBiologicalAssets
ifrs_DescriptionOfBiologicalAssetsPreviouslyMeasuredAtCost
ifrs_DescriptionOfBiologicalAssetsWhereFairValueInformationIsUnreliable
ifrs_DescriptionOfCashgeneratingUnit
ifrs_DescriptionOfChangeInValuationTechniqueAndReasonsForChange
ifrs_DescriptionOfChangeInValuationTechniqueUsedInFairValueMeasurementAssets
ifrs_DescriptionOfChangeInValuationTechniqueUsedInFairValueMeasurementEntitysOwnEquityInstruments
ifrs_DescriptionOfChangeInValuationTechniqueUsedInFairValueMeasurementLiabilities
ifrs_DescriptionOfChangesInEntitysObjectivesPoliciesAndProcessesForManagingCapitalAndWhatEntityManagesAsCapital
ifrs_DescriptionOfChangesInMethodsAndAssumptionsUsedInPreparingSensitivityAnalysisForActuarialAssumptions
ifrs_DescriptionOfChangesInPlanToSellNoncurrentAssetOrDisposalGroupHeldForSale
ifrs_DescriptionOfChangesInServiceConcessionArrangement
ifrs_DescriptionOfCollateralHeldAndOtherCreditEnhancementsFinancialAssetsThatAreIndividuallyDeterminedToBeImpaired
ifrs_DescriptionOfCollateralHeldAsSecurityAndOtherCreditEnhancements
ifrs_DescriptionOfCollateralPermittedToSellOrRepledgeInAbsenceOfDefaultByOwnerOfCollateral
ifrs_DescriptionOfComparisonBetweenAssetsAndLiabilitiesRecognisedInRelationToStructuredEntitiesAndMaximumExposureToLossFromInterestsInStructuredEntities
ifrs_DescriptionOfComplianceWithIFRSsIfAppliedForInterimFinancialReport
ifrs_DescriptionOfComponentsOfCostOfBusinessCombination
ifrs_DescriptionOfConcentrationsOfInsuranceRisk
ifrs_DescriptionOfConclusionWhyTransactionPriceWasNotBestEvidenceOfFairValue
ifrs_DescriptionOfContractualAgreementOrStatedPolicyForChargingNetDefinedBenefitCost
ifrs_DescriptionOfConversionOfDebtToEquity
ifrs_DescriptionOfCriteriaUsedToDistinguishInvestmentPropertyFromOwneroccupiedPropertyAndFromPropertyHeldSaleInOrdinaryCourseOfBusiness
ifrs_DescriptionOfCrossreferenceToDisclosuresAboutPlansThatShareRisksBetweenEntitiesUnderCommonControlInAnotherGroupEntitysFinancialStatements
ifrs_DescriptionOfCurrencyInWhichSupplementaryInformationIsDisplayed
ifrs_DescriptionOfCurrentAndFormerWayOfAggregatingAssets
ifrs_DescriptionOfDateOfReclassificationOfFinancialAssetsDueToChangeInBusinessModel
ifrs_DescriptionOfDetailsOfBreachesWhichPermittedLenderToDemandAcceleratedRepaymentDuringPeriodOfPrincipalInterestSinkingFundOrRedemptionTermsOfLoansPayable
ifrs_DescriptionOfDetailsOfDefaultsDuringPeriodOfPrincipalInterestSinkingFundOrRedemptionTermsOfLoansPayable
ifrs_DescriptionOfDifficultiesStructuredEntityExperiencedInFinancingItsActivities
ifrs_DescriptionOfDiscountRatesAppliedToCashFlowProjections
ifrs_DescriptionOfDiscountRatesUsedInCurrentEstimateOfValueInUse
ifrs_DescriptionOfDiscountRatesUsedInPreviousEstimateOfValueInUse
ifrs_DescriptionOfEffectOfChangingBusinessModelForManagingFinancialAssetsOnFinancialStatements
ifrs_DescriptionOfEffectOfRegulatoryFrameworkOnPlan
ifrs_DescriptionOfEffectiveInterestRateDeterminedOnDateOfReclassification
ifrs_DescriptionOfEndOfReportingPeriodOfFinancialStatementsOfAssociates
ifrs_DescriptionOfEstimateOfRangeOfOutcomesFromContingentConsiderationArrangementsAndIndemnificationAssets
ifrs_DescriptionOfEventOrChangeInCircumstancesThatCausedRecognitionOfDeferredTaxBenefitsAcquiredInBusinessCombinationAfterAcquisitionDate
ifrs_DescriptionOfExistenceOfRestrictionsOnTitlePropertyPlantAndEquipment
ifrs_DescriptionOfExistenceOfThirdpartyCreditEnhancement
ifrs_DescriptionOfExpectedImpactOfInitialApplicationOfNewStandardsOrInterpretations
ifrs_DescriptionOfExpectedImpactOfInitialApplicationOfNewStandardsOrInterpretationsAbstract
ifrs_DescriptionOfExpectedImpactOfInitialApplicationOfNewStandardsOrInterpretationsLineItems
ifrs_DescriptionOfExpectedImpactOfInitialApplicationOfNewStandardsOrInterpretationsTable
ifrs_DescriptionOfExpectedTimingOfOutflowsContingentLiabilitiesInBusinessCombination
ifrs_DescriptionOfExpectedTimingOfOutflowsOtherProvisions
ifrs_DescriptionOfExpectedVolatilityShareOptionsGranted
ifrs_DescriptionOfExpiryDateOfTemporaryDifferencesUnusedTaxLossesAndUnusedTaxCredits
ifrs_DescriptionOfExplanationOfFactAndReasonsWhyRangeOfOutcomesFromContingentConsiderationArrangementsAndIndemnificationAssetsCannotBeEstimated
ifrs_DescriptionOfExposureToRisk
ifrs_DescriptionOfExtentToWhichEntityCanBeLiableToMultiemployerOrStatePlanForOtherEntitiesObligations
ifrs_DescriptionOfExtentToWhichFairValueOfInvestmentPropertyIsBasedOnValuationByIndependentValuer
ifrs_DescriptionOfFactAndBasisOnWhichCarryingAmountsDeterminedUnderPreviousGAAPWereAllocatedIfEntityUsesExemptionInIFRS1D8Ab
ifrs_DescriptionOfFactAndBasisOnWhichCarryingAmountsWereDeterminedIfEntityUsesExemptionInIFRS1D8B
ifrs_DescriptionOfFactAndReasonWhySensitivityAnalysisAreUnrepresentative
ifrs_DescriptionOfFactAndReasonsWhyMaximumExposureToLossFromInterestsInStructuredEntitiesCannotBeQuantified
ifrs_DescriptionOfFactThatAmountOfChangeInAccountingEstimateIsImpracticable
ifrs_DescriptionOfFactThatAssociateIsNotAccountedForUsingEquityMethod
ifrs_DescriptionOfFactThatChangingOneOrMoreUnobservableInputsToReflectReasonablyPossibleAlternativeAssumptionsWouldChangeFairValueSignificantlyAssets
ifrs_DescriptionOfFactThatChangingOneOrMoreUnobservableInputsToReflectReasonablyPossibleAlternativeAssumptionsWouldChangeFairValueSignificantlyEntitysOwnEquityInstruments
ifrs_DescriptionOfFactThatChangingOneOrMoreUnobservableInputsToReflectReasonablyPossibleAlternativeAssumptionsWouldChangeFairValueSignificantlyLiabilities
ifrs_DescriptionOfFactThatEntityDoesNotHaveLegalOrConstructiveObligationToNegativeNetAssetsTransitionFromProportionateConsolidationToEquityMethod
ifrs_DescriptionOfFactThatHighestAndBestUseOfNonfinancialAssetDiffersFromCurrentUse
ifrs_DescriptionOfFactThatImpactIsNotKnownOrReasonablyEstimable
ifrs_DescriptionOfFactThatMultiemployerPlanIsDefinedBenefitPlan
ifrs_DescriptionOfFactorsThatMakeUpGoodwillRecognised
ifrs_DescriptionOfFactsAndCircumstancesOfSaleOrPlan
ifrs_DescriptionOfFinancialInstrumentsDesignatedAsHedgingInstrument
ifrs_DescriptionOfFinancialInstrumentsTheirCarryingAmountAndExplanationOfWhyFairValueCannotBeMeasuredReliably
ifrs_DescriptionOfFinancialRiskManagementRelatedToAgriculturalActivity
ifrs_DescriptionOfForecastTransactionHedgeAccountingPreviouslyUsedButNoLongerExpectedToOccur
ifrs_DescriptionOfFrequencyAndMethodsForTestingProceduresOfPricingModelsAssets
ifrs_DescriptionOfFrequencyAndMethodsForTestingProceduresOfPricingModelsEntitysOwnEquityInstruments
ifrs_DescriptionOfFrequencyAndMethodsForTestingProceduresOfPricingModelsLiabilities
ifrs_DescriptionOfFullyAmortisedIntangibleAssets
ifrs_DescriptionOfFunctionalCurrency
ifrs_DescriptionOfFundingArrangementsAndFundingPolicyThatAffectFutureContributions
ifrs_DescriptionOfFundingOfObligationsOfOtherLongtermBenefitsAtReportingDate
ifrs_DescriptionOfFundingOfObligationsOfTerminationBenefits
ifrs_DescriptionOfFundingPolicy
ifrs_DescriptionOfGroupWithinEntityThatDecidesEntitysValuationPoliciesAndProceduresAssets
ifrs_DescriptionOfGroupWithinEntityThatDecidesEntitysValuationPoliciesAndProceduresEntitysOwnEquityInstruments
ifrs_DescriptionOfGroupWithinEntityThatDecidesEntitysValuationPoliciesAndProceduresLiabilities
ifrs_DescriptionOfGrowthRateUsedToExtrapolateCashFlowProjections
ifrs_DescriptionOfHistoricalInformationAboutCounterpartyDefaultRates
ifrs_DescriptionOfHowAcquirerObtainedControlOfAcquiree
ifrs_DescriptionOfHowEffectOnFairValueMeasurementDueToChangeInOneOrMoreUnobservableInputsToReflectReasonablyPossibleAlternativeAssumptionsWasCalculatedAssets
ifrs_DescriptionOfHowEffectOnFairValueMeasurementDueToChangeInOneOrMoreUnobservableInputsToReflectReasonablyPossibleAlternativeAssumptionsWasCalculatedEntitysOwnEquityInstruments
ifrs_DescriptionOfHowEffectOnFairValueMeasurementDueToChangeInOneOrMoreUnobservableInputsToReflectReasonablyPossibleAlternativeAssumptionsWasCalculatedLiabilities
ifrs_DescriptionOfHowEntityDeterminedMaximumEconomicBenefitAvailable
ifrs_DescriptionOfHowEntityDeterminedThatThirdpartyInformationUsedInFairValueMeasurementWasDevelopedInAccordanceWithIFRS13Assets
ifrs_DescriptionOfHowEntityDeterminedThatThirdpartyInformationUsedInFairValueMeasurementWasDevelopedInAccordanceWithIFRS13EntitysOwnEquityInstruments
ifrs_DescriptionOfHowEntityDeterminedThatThirdpartyInformationUsedInFairValueMeasurementWasDevelopedInAccordanceWithIFRS13Liabilities
ifrs_DescriptionOfHowEntityDeterminedWhichStructuredEntitiesItSponsored
ifrs_DescriptionOfHowIssueCostsNotRecognisedAsExpenseWereRecognisedForTransactionRecognisedSeparatelyFromAcquisitionOfAssetsAndAssumptionOfLiabilitiesInBusinessCombination
ifrs_DescriptionOfHowManagementDeterminesConcentrations
ifrs_DescriptionOfHowThirdpartyInformationWasTakenIntoAccountWhenMeasuringFairValueAssets
ifrs_DescriptionOfHowThirdpartyInformationWasTakenIntoAccountWhenMeasuringFairValueEntitysOwnEquityInstruments
ifrs_DescriptionOfHowThirdpartyInformationWasTakenIntoAccountWhenMeasuringFairValueLiabilities
ifrs_DescriptionOfIdentificationOfFinancialStatementsToWhichSeparateFinancialStatementsRelate
ifrs_DescriptionOfInformationAboutSurplusOrDeficitOfMultiemployerPlan
ifrs_DescriptionOfInformationAboutTerminationBenefitsForKeyManagementPersonnel
ifrs_DescriptionOfInformationOfAssociatesAbstract
ifrs_DescriptionOfInformationOfAssociatesLineItems
ifrs_DescriptionOfInformationOfAssociatesTable
ifrs_DescriptionOfInformationWhereFairValueDisclosuresNotRequired
ifrs_DescriptionOfInitialApplicationOfStandardsOrInterpretations
ifrs_DescriptionOfInputsToOptionPricingModelShareOptionsGranted
ifrs_DescriptionOfInputsUsedInFairValueMeasurementAssets
ifrs_DescriptionOfInputsUsedInFairValueMeasurementEntitysOwnEquityInstruments
ifrs_DescriptionOfInputsUsedInFairValueMeasurementLiabilities
ifrs_DescriptionOfIntentionsToProvideSupportToStructuredEntity
ifrs_DescriptionOfInterestInSignificantJointVenture
ifrs_DescriptionOfInternalCreditRatingsProcess
ifrs_DescriptionOfInternalReportingProceduresForDiscussingAndAssessingFairValueMeasurementsAssets
ifrs_DescriptionOfInternalReportingProceduresForDiscussingAndAssessingFairValueMeasurementsEntitysOwnEquityInstruments
ifrs_DescriptionOfInternalReportingProceduresForDiscussingAndAssessingFairValueMeasurementsLiabilities
ifrs_DescriptionOfInterrelationshipsBetweenUnobservableInputsAndOfHowTheyMightMagnifyOrMitigateEffectOfChangesInUnobservableInputsOnFairValueMeasurementAssets
ifrs_DescriptionOfInterrelationshipsBetweenUnobservableInputsAndOfHowTheyMightMagnifyOrMitigateEffectOfChangesInUnobservableInputsOnFairValueMeasurementEntitysOwnEquityInstruments
ifrs_DescriptionOfInterrelationshipsBetweenUnobservableInputsAndOfHowTheyMightMagnifyOrMitigateEffectOfChangesInUnobservableInputsOnFairValueMeasurementLiabilities
ifrs_DescriptionOfInvestmentPropertyAtCostWithinFairValueModel
ifrs_DescriptionOfInvestmentPropertyWhereFairValueInformationIsUnreliableCostModel
ifrs_DescriptionOfInvestmentsInEquityDesignatedAsMeasuredAtFairThroughOtherComprehensiveIncome
ifrs_DescriptionOfJustificationForUsingGrowthRateThatExceedsLongtermAverageGrowthRate
ifrs_DescriptionOfKeyAssumptionsOnWhichManagementHasBasedCashFlowProjections
ifrs_DescriptionOfKeyAssumptionsOnWhichManagementHasBasedDeterminationOfFairValueLessCostsOfDisposal
ifrs_DescriptionOfLevelOfFairValueHierarchyWithinWhichFairValueMeasurementIsCategorised
ifrs_DescriptionOfLiabilityMeasurementForCashsettledSharebasedPaymentArrangements
ifrs_DescriptionOfLifeAndOtherSignificantTermsOfArrangementInvolvingLegalFormOfLease
ifrs_DescriptionOfLimitationsOfMethodsUsedInPreparingSensitivityAnalysisForActuarialAssumptions
ifrs_DescriptionOfLineItemInStatementOfComprehensiveIncomeInWhichGainOrLossAsResultOfRemeasuringToFairValueEquityInterestIsRecognised
ifrs_DescriptionOfLineItemOfStatementOfComprehensiveIncomeInWhichAmountRecognisedAsIncomeFromArrangementInvolvingLegalFormOfLeaseIsIncluded
ifrs_DescriptionOfLineItemsForAcquisitionRelatedCostsRecognisedAsExpenseForTransactionRecognisedSeparatelyFromAcquisitionOfAssetsAndAssumptionOfLiabilitiesInBusinessCombination
ifrs_DescriptionOfLineItemsInFinancialStatementsForAmountsRecognisedForTransactionRecognisedSeparatelyFromAcquisitionOfAssetsAndAssumptionOfLiabilitiesInBusinessCombination
ifrs_DescriptionOfLineItemsInOtherComprehensiveIncomeWhereGainsLossesAreRecognisedFairValueMeasurementAssets
ifrs_DescriptionOfLineItemsInOtherComprehensiveIncomeWhereGainsLossesAreRecognisedFairValueMeasurementEntitysOwnEquityInstruments
ifrs_DescriptionOfLineItemsInOtherComprehensiveIncomeWhereGainsLossesAreRecognisedFairValueMeasurementLiabilities
ifrs_DescriptionOfLineItemsInProfitOrLossWhereGainsLossesAreRecognisedFairValueMeasurementAssets
ifrs_DescriptionOfLineItemsInProfitOrLossWhereGainsLossesAreRecognisedFairValueMeasurementEntitysOwnEquityInstruments
ifrs_DescriptionOfLineItemsInProfitOrLossWhereGainsLossesAreRecognisedFairValueMeasurementLiabilities
ifrs_DescriptionOfLineItemsInProfitOrLossWhereGainsLossesAttributableToChangeInUnrealisedGainsOrLossesForAssetsHeldAtEndOfPeriodAreRecognisedFairValueMeasurement
ifrs_DescriptionOfLineItemsInProfitOrLossWhereGainsLossesAttributableToChangeInUnrealisedGainsOrLossesForEntitysOwnEquityInstrumentsHeldAtEndOfPeriodAreRecognisedFairValueMeasurement
ifrs_DescriptionOfLineItemsInProfitOrLossWhereGainsLossesAttributableToChangeInUnrealisedGainsOrLossesForLiabilitiesHeldAtEndOfPeriodAreRecognisedFairValueMeasurement
ifrs_DescriptionOfLineItemsInStatementOfComprehensiveIncomeInWhichImpairmentLossesRecognisedInProfitOrLossAreIncluded
ifrs_DescriptionOfLineItemsInStatementOfComprehensiveIncomeInWhichImpairmentLossesRecognisedInProfitOrLossAreReversed
ifrs_DescriptionOfLineItemsInStatementOfFinancialPositionInWhichAssetsAndLiabilitiesRecognisedInRelationToStructuredEntitiesAreRecognised
ifrs_DescriptionOfLinkBetweenReimbursementRightAndRelatedObligation
ifrs_DescriptionOfMajorAssumptionsMadeConcerningFutureEventsContingentLiabilitiesInBusinessCombination
ifrs_DescriptionOfMajorAssumptionsMadeConcerningFutureEventsOtherProvisions
ifrs_DescriptionOfManagementsApproachToDeterminingValuesAssignedToKeyAssumptions
ifrs_DescriptionOfManagingLiquidityRisk
ifrs_DescriptionOfMaterialLeasingArrangementsByLesseeClassifiedAsFinanceLease
ifrs_DescriptionOfMaterialLeasingArrangementsByLesseeClassifiedAsOperatingLease
ifrs_DescriptionOfMaterialLeasingArrangementsByLessorClassifiedAsFinanceLease
ifrs_DescriptionOfMaterialLeasingArrangementsByLessorClassifiedAsOperatingLease
ifrs_DescriptionOfMaterialReconcilingItems
ifrs_DescriptionOfMaximumTermOfOptionsGrantedForSharebasedPaymentArrangement
ifrs_DescriptionOfMeasurementBasisForNoncontrollingInterestInAcquireeRecognisedAtAcquisitionDate
ifrs_DescriptionOfMeasurementDifferencesForFinancialAssetsSubjectToOffsettingEnforceableMasterNettingArrangementsOrSimilarAgreements
ifrs_DescriptionOfMeasurementDifferencesForFinancialLiabilitiesSubjectToOffsettingEnforceableMasterNettingArrangementsOrSimilarAgreements
ifrs_DescriptionOfMethodOfSettlementForSharebasedPaymentArrangement
ifrs_DescriptionOfMethodUsedAndAssumptionsMadeToIncorporateEffectsOfExpectedEarlyExerciseShareOptionsGranted
ifrs_DescriptionOfMethodologyUsedToDetermineWhetherPresentingEffectsOfChangesInLiabilitysCreditRiskInOtherComprehensiveIncomeWouldCreateOrEnlargeAccountingMismatchInProfitOrLoss
ifrs_DescriptionOfMethodsAndAssumptionsUsedInPreparingSensitivityAnalysisForActuarialAssumptions
ifrs_DescriptionOfMethodsAndSignificantAssumptionsAppliedInDeterminingFairValueOfInvestmentProperty
ifrs_DescriptionOfMethodsUsedToDevelopAndSubstantiateUnobservableInputsUsedInFairValueMeasurementAssets
ifrs_DescriptionOfMethodsUsedToDevelopAndSubstantiateUnobservableInputsUsedInFairValueMeasurementEntitysOwnEquityInstruments
ifrs_DescriptionOfMethodsUsedToDevelopAndSubstantiateUnobservableInputsUsedInFairValueMeasurementLiabilities
ifrs_DescriptionOfMethodsUsedToMeasureFairValueOfNoncashAssetsDeclaredForDistributionToOwnersBeforeFinancialStatementsAuthorisedForIssue
ifrs_DescriptionOfNatureAmountAndCorrectionOfAccountingErrorsInPriorPeriodsEstimate
ifrs_DescriptionOfNatureAndAmountOfAnyMeasurementPeriodAdjustmentsRecognisedForParticularAssetsLiabilitiesNoncontrollingInterestsOrItemsOfConsideration
ifrs_DescriptionOfNatureAndAmountOfChangeInAccountingEstimate
ifrs_DescriptionOfNatureAndAmountOfChangeInEstimateDuringFinalInterimPeriod
ifrs_DescriptionOfNatureAndCarryingAmountOfAssetsObtained
ifrs_DescriptionOfNatureAndEffectOfAnyAsymmetricalAllocationsToReportableSegments
ifrs_DescriptionOfNatureAndExtentOfGovernmentGrantsForAgriculturalActivityRecognisedInFinancialStatements
ifrs_DescriptionOfNatureAndExtentOfGovernmentGrantsRecognisedInFinancialStatements
ifrs_DescriptionOfNatureAndExtentOfSignificantRestrictionsOnTransferOfFundsToParent
ifrs_DescriptionOfNatureAndExtentSignificantRestrictionsOnAbilityOfAssociateToTransferFunds
ifrs_DescriptionOfNatureAndExtentToWhichProtectiveRightsOfNoncontrollingInterestsCanSignificantlyRestrictEntitysAbilityToAccessOrUseAssetsAndSettleLiabilitiesOfGroup
ifrs_DescriptionOfNatureAndFinancialEffectOfBusinessCombinationsAfterReportingPeriodBeforeStatementsAuthorisedForIssue
ifrs_DescriptionOfNatureAndFinancialEffectOfBusinessCombinationsDuringPeriod
ifrs_DescriptionOfNatureAndPurposeOfReservesWithinEquity
ifrs_DescriptionOfNatureOfActivitiesOfBiologicalAssets
ifrs_DescriptionOfNatureOfAssetsWithSignificantRiskOfMaterialAdjustmentsWithinNextFinancialYear
ifrs_DescriptionOfNatureOfBenefitsProvidedByPlan
ifrs_DescriptionOfNatureOfChangeInAccountingPolicy
ifrs_DescriptionOfNatureOfChangesFromPriorPeriodsInMeasurementMethodsUsedToDetermineReportedSegmentProfitOrLossAndEffectOfThoseChangesOnMeasureOfSegmentProfitOrLoss
ifrs_DescriptionOfNatureOfClassOfAssetsMeasuredAtFairValue
ifrs_DescriptionOfNatureOfClassOfEntitysOwnEquityInstrumentsMeasuredAtFairValue
ifrs_DescriptionOfNatureOfClassOfLiabilitiesMeasuredAtFairValue
ifrs_DescriptionOfNatureOfContingentAssets
ifrs_DescriptionOfNatureOfCounterparty
ifrs_DescriptionOfNatureOfDifferencesBetweenMeasurementsOfReportableSegmentsAssetsAndEntitysAssets
ifrs_DescriptionOfNatureOfDifferencesBetweenMeasurementsOfReportableSegmentsLiabilitiesAndEntitysLiabilities
ifrs_DescriptionOfNatureOfDifferencesBetweenMeasurementsOfReportableSegmentsProfitsOrLossesAndEntitysProfitOrLossBeforeIncomeTaxExpenseOrIncomeAndDiscontinuedOperations
ifrs_DescriptionOfNatureOfEntitysOperationsAndPrincipalActivities
ifrs_DescriptionOfNatureOfEntitysRelationshipWithAssociate
ifrs_DescriptionOfNatureOfEntitysRelationshipWithJointOperation
ifrs_DescriptionOfNatureOfEntitysRelationshipWithJointVenture
ifrs_DescriptionOfNatureOfFinancialStatements
ifrs_DescriptionOfNatureOfImpendingChangeInAccountingPolicy
ifrs_DescriptionOfNatureOfIndividualAsset
ifrs_DescriptionOfNatureOfInterestInFunds
ifrs_DescriptionOfNatureOfLiabilitiesWithSignificantRiskOfMaterialAdjustmentsWithinNextFinancialYear
ifrs_DescriptionOfNatureOfNecessaryAdjustmentToProvideComparativeInformation
ifrs_DescriptionOfNatureOfNonadjustingEventAfterReportingPeriod
ifrs_DescriptionOfNatureOfNoncashAssetsHeldForDistributionToOwnersDeclaredBeforeFinancialStatementsAuthorisedForIssue
ifrs_DescriptionOfNatureOfObligationContingentLiabilities
ifrs_DescriptionOfNatureOfObligationContingentLiabilitiesInBusinessCombination
ifrs_DescriptionOfNatureOfObligationOtherProvisions
ifrs_DescriptionOfNatureOfObligationTerminationBenefitsContingentLiability
ifrs_DescriptionOfNatureOfOtherLongtermBenefits
ifrs_DescriptionOfNatureOfReclassificationOrChangesInPresentation
ifrs_DescriptionOfNatureOfRelatedPartyRelationship
ifrs_DescriptionOfNatureOfRelationshipBetweenTransferredFinancialAssetsThatAreNotDerecognisedInTheirEntiretyAndAssociatedLiabilities
ifrs_DescriptionOfNatureOfRelationshipWithSubsidiaryWhereParentHasDirectlyOrIndirectlyLessThanHalfOfVotingPower
ifrs_DescriptionOfNatureOfRisksBeingHedged
ifrs_DescriptionOfNatureOfTerminationBenefits
ifrs_DescriptionOfNatureOfTerminationBenefitsExpense
ifrs_DescriptionOfNatureOfVoluntaryChangeInAccountingPolicy
ifrs_DescriptionOfNoncurrentAssetOrDisposalGroupHeldForSaleWhichWereSoldOrReclassified
ifrs_DescriptionOfNonfinancialMeasuresOrEstimatesOfBiologicalAssets
ifrs_DescriptionOfObjectivesPoliciesAndProcessesForManagingRisk
ifrs_DescriptionOfObjectivesPoliciesAndProcessesForManagingRisksArisingFromInsuranceContractsAndMethodsUsedToManageThoseRisks
ifrs_DescriptionOfOptionLifeShareOptionsGranted
ifrs_DescriptionOfOptionPricingModelShareOptionsGranted
ifrs_DescriptionOfOtherAccountingPoliciesRelevantToUnderstandingOfFinancialStatements
ifrs_DescriptionOfOtherEquityInterest
ifrs_DescriptionOfOtherInformationUsedToAssessCreditQuality
ifrs_DescriptionOfOtherInputsToOptionsPricingModelShareOptionsGranted
ifrs_DescriptionOfOtherTransactionsThatAreCollectivelySignificant
ifrs_DescriptionOfPercentageOrAmountWhichEachMajorCategoryContributesToFairValueOfTotalPlanAssets
ifrs_DescriptionOfPeriodsWhenCashFlowsAffectProfitOrLoss
ifrs_DescriptionOfPeriodsWhenCashFlowsExpectedToOccur
ifrs_DescriptionOfPlanAmendmentsCurtailmentsAndSettlements
ifrs_DescriptionOfPoliciesForDisposingOfAssetsNotReadilyConvertibleIntoCashOrForUsingThemInItsOperations
ifrs_DescriptionOfPolicyForDeterminingContributionOfDefinedBenefitPlansThatShareRisksBetweenVariousEntities
ifrs_DescriptionOfPolicyForDeterminingWhenTransfersBetweenLevelsAreDeemedToHaveOccurredAssets
ifrs_DescriptionOfPolicyForDeterminingWhenTransfersBetweenLevelsAreDeemedToHaveOccurredEntitysOwnEquityInstruments
ifrs_DescriptionOfPolicyForDeterminingWhenTransfersBetweenLevelsAreDeemedToHaveOccurredLiabilities
ifrs_DescriptionOfPresentationCurrency
ifrs_DescriptionOfPrimaryReasonsForBusinessCombination
ifrs_DescriptionOfProcessForAnalysingChangesInFairValueMeasurementsAssets
ifrs_DescriptionOfProcessForAnalysingChangesInFairValueMeasurementsEntitysOwnEquityInstruments
ifrs_DescriptionOfProcessForAnalysingChangesInFairValueMeasurementsLiabilities
ifrs_DescriptionOfRatingAgenciesUsed
ifrs_DescriptionOfReasonForChangeInFunctionalCurrency
ifrs_DescriptionOfReasonForChangeInMethodsAndAssumptionsUsedInPreparingSensitivityAnalysis
ifrs_DescriptionOfReasonForDisposingOfInvestmentsInEquityInstrumentsMeasuredAtFairValueThroughOtherComprehensiveIncome
ifrs_DescriptionOfReasonForReclassificationOrChangesInPresentation
ifrs_DescriptionOfReasonForUsingLongerOrShorterReportingPeriod
ifrs_DescriptionOfReasonForUsingPresentationAlternative
ifrs_DescriptionOfReasonOfDerecognitionOfFinancialAssetsMeasuredAtAmortisedCost
ifrs_DescriptionOfReasonWhyConsolidatedFinancialStatementsHaveNotBeenPrepared
ifrs_DescriptionOfReasonWhyEntityWithMoreThanHalfOfVotingPowerDirectlyOrIndirectlyOwnedWhichIsNotSubsidiaryDueToAbsenceOfControl
ifrs_DescriptionOfReasonWhyFairValueOfGoodsOrServicesReceivedCannotEstimateReliable
ifrs_DescriptionOfReasonWhyFinancialStatementsAreNotEntirelyComparable
ifrs_DescriptionOfReasonWhyNonfinancialAssetIsBeingUsedInMannerDifferentFromHighestAndBestUse
ifrs_DescriptionOfReasonWhyPresentationCurrencyIsDifferentFromFunctionalCurrency
ifrs_DescriptionOfReasonWhyReclassificationOfComparativeAmountsIsImpracticable
ifrs_DescriptionOfReasonWhyReliableMeasureOfFairValueForEquityInstrumentMeasuredAtFairValueThroughProfitOrLossIsNoLongerAvailable
ifrs_DescriptionOfReasonWhySufficientInformationIsNotAvailableToAccountForMultiemployerPlanAsDefinedBenefitPlan
ifrs_DescriptionOfReasonWhyUsingDifferentReportingDateOrPeriodForAssociate
ifrs_DescriptionOfReasonWhyUsingDifferentReportingDateOrPeriodForJointVenture
ifrs_DescriptionOfReasonWhyUsingDifferentReportingDateOrPeriodForSubsidiary
ifrs_DescriptionOfReasonsAndFactorsWhyAmountOfChangesInFairValueOfFinancialAssetsAndFinancialLiabilitiesAttributableToChangesInCreditRiskNotFaithfullyRepresent
ifrs_DescriptionOfReasonsForChangeInValuationTechniqueUsedInFairValueMeasurementAssets
ifrs_DescriptionOfReasonsForChangeInValuationTechniqueUsedInFairValueMeasurementEntitysOwnEquityInstruments
ifrs_DescriptionOfReasonsForChangeInValuationTechniqueUsedInFairValueMeasurementLiabilities
ifrs_DescriptionOfReasonsForChangesInMethodsAndAssumptionsUsedInPreparingSensitivityAnalysisForActuarialAssumptions
ifrs_DescriptionOfReasonsForChangingWayCashgeneratingUnitIsIdentified
ifrs_DescriptionOfReasonsForFairValueMeasurementAssets
ifrs_DescriptionOfReasonsForFairValueMeasurementEntitysOwnEquityInstruments
ifrs_DescriptionOfReasonsForFairValueMeasurementLiabilities
ifrs_DescriptionOfReasonsForProvidingSupportToStructuredEntityWithoutHavingContractualObligationToDoSo
ifrs_DescriptionOfReasonsForSignificantTransfersOfFinancialInstrumentsOutOfLevel1IntoLevel2OfFairValueHierarchy
ifrs_DescriptionOfReasonsForSignificantTransfersOfFinancialInstrumentsOutOfLevel2IntoLevel1OfFairValueHierarchy
ifrs_DescriptionOfReasonsForTransfersIntoLevel3OfFairValueHierarchyAssets
ifrs_DescriptionOfReasonsForTransfersIntoLevel3OfFairValueHierarchyEntitysOwnEquityInstruments
ifrs_DescriptionOfReasonsForTransfersIntoLevel3OfFairValueHierarchyLiabilities
ifrs_DescriptionOfReasonsForTransfersOfCumulativeGainLossWithinEquity
ifrs_DescriptionOfReasonsForTransfersOutOfLevel1IntoLevel2OfFairValueHierarchyAssets
ifrs_DescriptionOfReasonsForTransfersOutOfLevel1IntoLevel2OfFairValueHierarchyEntitysOwnEquityInstruments
ifrs_DescriptionOfReasonsForTransfersOutOfLevel1IntoLevel2OfFairValueHierarchyLiabilities
ifrs_DescriptionOfReasonsForTransfersOutOfLevel2IntoLevel1OfFairValueHierarchyAssets
ifrs_DescriptionOfReasonsForTransfersOutOfLevel2IntoLevel1OfFairValueHierarchyEntitysOwnEquityInstruments
ifrs_DescriptionOfReasonsForTransfersOutOfLevel2IntoLevel1OfFairValueHierarchyLiabilities
ifrs_DescriptionOfReasonsForTransfersOutOfLevel3OfFairValueHierarchyAssets
ifrs_DescriptionOfReasonsForTransfersOutOfLevel3OfFairValueHierarchyEntitysOwnEquityInstruments
ifrs_DescriptionOfReasonsForTransfersOutOfLevel3OfFairValueHierarchyLiabilities
ifrs_DescriptionOfReasonsWhyApplyingNewAccountingPolicyProvidesReliableAndMoreRelevantInformation
ifrs_DescriptionOfReasonsWhyInitialAccountingForBusinessCombinationIsIncomplete
ifrs_DescriptionOfReasonsWhyLiabilityCannotBeMeasuredReliably
ifrs_DescriptionOfReasonsWhyPresumptionThatInterestOfLessThanTwentyPerCentInAssociateIsOvercome
ifrs_DescriptionOfReasonsWhyPresumptionThatInterestOfMoreThanTwentyPerCentInAssociateIsOvercome
ifrs_DescriptionOfReasonsWhySeparateFinancialStatementsArePreparedIfNotRequiredByLaw
ifrs_DescriptionOfReasonsWhyTransactionResultedInGainInBargainPurchase
ifrs_DescriptionOfRedesignatedFinancialAssets
ifrs_DescriptionOfRedesignatedFinancialLiabilities
ifrs_DescriptionOfRegulatoryFrameworkInWhichPlanOperates
ifrs_DescriptionOfRelationshipBetweenInternalAndExternalRatings
ifrs_DescriptionOfReportableSegmentToWhichIndividualAssetBelongs
ifrs_DescriptionOfRestrictionsOnDistributionOfRevaluationSurplusToShareholdersPropertyPlantAndEquipment
ifrs_DescriptionOfRetirementBenefitPlan
ifrs_DescriptionOfRetirementBenefitsPromisedToParticipants
ifrs_DescriptionOfRightsOfSetoffAssociatedWithFinancialAssetsSubjectToEnforceableMasterNettingArrangementOrSimilarAgreement
ifrs_DescriptionOfRightsOfSetoffAssociatedWithFinancialLiabilitiesSubjectToEnforceableMasterNettingArrangementOrSimilarAgreement
ifrs_DescriptionOfRiskFreeInterestRateShareOptionsGranted
ifrs_DescriptionOfRisksToWhichPlanExposesEntity
ifrs_DescriptionOfSensitivityOfFairValueMeasurementToChangesInUnobservableInputsAssets
ifrs_DescriptionOfSensitivityOfFairValueMeasurementToChangesInUnobservableInputsEntitysOwnEquityInstruments
ifrs_DescriptionOfSensitivityOfFairValueMeasurementToChangesInUnobservableInputsLiabilities
ifrs_DescriptionOfServiceConcessionArrangement
ifrs_DescriptionOfSharedCharacteristicForConcentration
ifrs_DescriptionOfSignificantActuarialAssumptionsMadeAndMethodUsedToCalculateActuarialPresentValueOfPromisedRetirementBenefits
ifrs_DescriptionOfSignificantConcentrationsOfRiskRelatedToPlan
ifrs_DescriptionOfSignificantEventsAndTransactions
ifrs_DescriptionOfSignificantIntangibleAssetsControlledByEntityButNotRecognised
ifrs_DescriptionOfSignificantJudgementsAndAssumptionsMadeInDeterminingThatEntityIsAgentOrPrincipal
ifrs_DescriptionOfSignificantRestrictionsOnEntitysAbilityToAccessOrUseAssetsAndSettleLiabilitiesOfGroup
ifrs_DescriptionOfSignificantTransferOfFinancialInstrumentsIntoLevel3OfFairValueHierarchy
ifrs_DescriptionOfSignificantTransferOfFinancialInstrumentsOutOfLevel3OfFairValueHierarchy
ifrs_DescriptionOfSourcesOfRevenueForAllOtherSegments
ifrs_DescriptionOfSummarisedFinancialInformationOfAssociates
ifrs_DescriptionOfTermAndConditionsOfFinancialAssetsPledgedAsCollateralForLiabilitiesOrContingentLiabilities
ifrs_DescriptionOfTermsOfContractualArrangementsThatCouldRequireParentOrSubsidiariesToProvideFinancialSupportToStructuredEntity
ifrs_DescriptionOfTermsOfSharesReservedForIssueUnderOptionsAndContractsForSaleOfShares
ifrs_DescriptionOfTimingAndReasonOfReclassificationBetweenFinancialLiabilitiesAndEquity
ifrs_DescriptionOfToWhomGroupWithinEntityThatDecidesEntitysValuationPoliciesAndProceduresReportsAssets
ifrs_DescriptionOfToWhomGroupWithinEntityThatDecidesEntitysValuationPoliciesAndProceduresReportsEntitysOwnEquityInstruments
ifrs_DescriptionOfToWhomGroupWithinEntityThatDecidesEntitysValuationPoliciesAndProceduresReportsLiabilities
ifrs_DescriptionOfTransactionsAfterReportingPeriodWithSignificantChangeInNumberOfOrdinarySharesOutstanding
ifrs_DescriptionOfTransactionsAfterReportingPeriodWithSignificantChangeInNumberOfPotentialOrdinarySharesOutstanding
ifrs_DescriptionOfTransactionsWithRelatedParty
ifrs_DescriptionOfTransitionalProvisionsOfInitiallyAppliedIFRS
ifrs_DescriptionOfTransitionalProvisionsOfInitiallyAppliedIFRSThatMightHaveEffectOnFuturePeriods
ifrs_DescriptionOfTypeOfHedge
ifrs_DescriptionOfTypeOfPlan
ifrs_DescriptionOfTypeOfRetirementBenefitPlan
ifrs_DescriptionOfTypeOfSupportProvidedToStructuredEntityWithoutHavingContractualObligationToDoSo
ifrs_DescriptionOfTypesOfIncomeFromStructuredEntities
ifrs_DescriptionOfTypesOfProductsAndServicesFromWhichEachReportableSegmentDerivesItsRevenues
ifrs_DescriptionOfUncertaintiesOfEntitysAbilityToContinueAsGoingConcern
ifrs_DescriptionOfUnfulfilledConditionsAndOtherContingenciesAttachedToGovernmentGrantForAgriculturalActivity
ifrs_DescriptionOfValuationProcessesUsedInFairValueMeasurementAssets
ifrs_DescriptionOfValuationProcessesUsedInFairValueMeasurementEntitysOwnEquityInstruments
ifrs_DescriptionOfValuationProcessesUsedInFairValueMeasurementLiabilities
ifrs_DescriptionOfValuationTechniquesAndKeyModelInputsUsedForDeterminingNoncontrollingInterestInAnAcquireeMeasuredAtFairValue
ifrs_DescriptionOfValuationTechniquesAndKeyModelInputsUsedToMeasureContingentConsideration
ifrs_DescriptionOfValuationTechniquesUsedInFairValueMeasurementAssets
ifrs_DescriptionOfValuationTechniquesUsedInFairValueMeasurementEntitysOwnEquityInstruments
ifrs_DescriptionOfValuationTechniquesUsedInFairValueMeasurementLiabilities
ifrs_DescriptionOfValuationTechniquesUsedToMeasureFairValueLessCostsOfDisposal
ifrs_DescriptionOfVestingRequirementsForSharebasedPaymentArrangement
ifrs_DescriptionOfVoluntaryChangeInAccountingPolicy
ifrs_DescriptionOfWhereGainsLossesForAssetsOrLiabilitiesHeldAtEndOfReportingPeriodOnFairValueMeasurementArePresentedInStatementOfComprehensiveIncomeOrIncomeStatement
ifrs_DescriptionOfWhetherEntityIsRequiredToAbsorbLossesOfStructuredEntitiesBeforeOtherParties
ifrs_DescriptionOfWhetherInvestmentInAssociateIsMeasuredUsingEquityMethodOrAtFairValue
ifrs_DescriptionOfWhetherInvestmentInJointVentureIsMeasuredUsingEquityMethodOrAtFairValue
ifrs_DescriptionOfWhetherThirdpartyCreditEnhancementIsReflectedInFairValueMeasurement
ifrs_DescriptionWhereGainsLossesOfFinancialInstrumentsMeasuredInLevel3OfFairValueHierarchyPresentedInStatementOfComprehensiveIncomeOrIncomeStatement
ifrs_DescriptionWhetherChangeInAccountingPolicyIsMadeInAccordanceWithTransitionalProvisionsOfInitiallyAppliedIFRS
ifrs_DesignatedFinancialLiabilitiesAtFairValueThroughProfitOrLossAbstract
ifrs_DesignatedLoansOrReceivablesAtFairValueThroughProfitOrLossAbstract
ifrs_DestructionOfMajorProductionPlantMember
ifrs_DeterminationOfFairValueOfGoodsOrServicesReceivedOrFairValueOfEquityInstrumentsGrantedOnSharebasedPayments
ifrs_DifferenceBetweenCarryingAmountOfDividendsPayableAndCarryingAmountOfNoncashAssetsDistributed
ifrs_DifferenceBetweenCarryingAmountOfFinancialLiabilityAndAmountContractuallyRequiredToPayAtMaturityToHolderOfObligation
ifrs_DilutedEarningsLossPerShare
ifrs_DilutedEarningsLossPerShareFromContinuingOperations
ifrs_DilutedEarningsLossPerShareFromDiscontinuedOperations
ifrs_DilutedEarningsPerShareAbstract
ifrs_DilutiveEffectOfConvertibleInstrumentsOnNumberOfOrdinaryShares
ifrs_DilutiveEffectOfShareOptionsOnNumberOfOrdinaryShares
ifrs_DirectFinanceLeasesAcquiredInBusinessCombinationMember
ifrs_DirectOperatingExpenseFromInvestmentPropertyGeneratingRentalIncome
ifrs_DirectOperatingExpenseFromInvestmentPropertyNotGeneratingRentalIncome
ifrs_DisclosureOfAccountingJudgementsAndEstimatesExplanatory
ifrs_DisclosureOfAccruedExpensesAndOtherLiabilitiesExplanatory
ifrs_DisclosureOfAcquiredReceivablesAbstract
ifrs_DisclosureOfAcquiredReceivablesLineItems
ifrs_DisclosureOfAcquiredReceivablesTable
ifrs_DisclosureOfActualClaimsComparedWithPreviousEstimatesExplanatory
ifrs_DisclosureOfAdditionalInformationAboutDefinedBenefitPlansExplanatory
ifrs_DisclosureOfAdditionalInformationAboutUnderstandingFinancialPositionsAndLiquidityOfEntityExplanatory
ifrs_DisclosureOfAdditionalInformationExplanatory
ifrs_DisclosureOfAllowanceForCreditLossesExplanatory
ifrs_DisclosureOfAmountsArisingFromInsuranceContractsExplanatory
ifrs_DisclosureOfAmountsOfPotentialIncomeTaxConsequencesPracticablyDeterminableExplanatory
ifrs_DisclosureOfAmountsToBeRecoveredOrSettledAfterTwelveMonthsForClassesOfAssetsAndLiabilitiesThatContainAmountsToBeRecoveredOrSettledBothNoMoreAndMoreThanTwelveMonthsAfterReportingDateAbstract
ifrs_DisclosureOfAmountsToBeRecoveredOrSettledAfterTwelveMonthsForClassesOfAssetsAndLiabilitiesThatContainAmountsToBeRecoveredOrSettledBothNoMoreAndMoreThanTwelveMonthsAfterReportingDateExplanatory
ifrs_DisclosureOfAmountsToBeRecoveredOrSettledAfterTwelveMonthsForClassesOfAssetsAndLiabilitiesThatContainAmountsToBeRecoveredOrSettledBothNoMoreAndMoreThanTwelveMonthsAfterReportingDateLineItems
ifrs_DisclosureOfAmountsToBeRecoveredOrSettledAfterTwelveMonthsForClassesOfAssetsAndLiabilitiesThatContainAmountsToBeRecoveredOrSettledBothNoMoreAndMoreThanTwelveMonthsAfterReportingDateTable
ifrs_DisclosureOfAnalysisOfOtherComprehensiveIncomeByItemAbstract
ifrs_DisclosureOfAnalysisOfOtherComprehensiveIncomeByItemExplanatory
ifrs_DisclosureOfAnalysisOfOtherComprehensiveIncomeByItemLineItems
ifrs_DisclosureOfAnalysisOfOtherComprehensiveIncomeByItemTable
ifrs_DisclosureOfAnalysisOfPresentValueOfDefinedBenefitObligationThatDistinguishesNatureCharacteristicsAndRisksExplanatory
ifrs_DisclosureOfArrangementsInvolvingLegalFormOfLeaseAbstract
ifrs_DisclosureOfArrangementsInvolvingLegalFormOfLeaseExplanatory
ifrs_DisclosureOfArrangementsInvolvingLegalFormOfLeaseLineItems
ifrs_DisclosureOfArrangementsInvolvingLegalFormOfLeaseTable
ifrs_DisclosureOfAssetsAndLiabilitiesWithSignificantRiskOfMaterialAdjustmentAbstract
ifrs_DisclosureOfAssetsAndLiabilitiesWithSignificantRiskOfMaterialAdjustmentExplanatory
ifrs_DisclosureOfAssetsAndLiabilitiesWithSignificantRiskOfMaterialAdjustmentLineItems
ifrs_DisclosureOfAssetsAndLiabilitiesWithSignificantRiskOfMaterialAdjustmentTable
ifrs_DisclosureOfAuditorsRemunerationExplanatory
ifrs_DisclosureOfAuthorisationOfFinancialStatementsExplanatory
ifrs_DisclosureOfAvailableforsaleAssetsExplanatory
ifrs_DisclosureOfBasisOfConsolidationExplanatory
ifrs_DisclosureOfBasisOfPreparationOfFinancialStatementsExplanatory
ifrs_DisclosureOfBiologicalAssetsAndGovernmentGrantsForAgriculturalActivityExplanatory
ifrs_DisclosureOfBiologicalAssetsExplanatory
ifrs_DisclosureOfBorrowingCostsExplanatory
ifrs_DisclosureOfBorrowingsExplanatory
ifrs_DisclosureOfBreakdownOfAssetsAndLiabilitiesAggregatedIntoSingleLineInvestmentBalanceTransitionFromProportionateConsolidationToEquityMethodExplanatory
ifrs_DisclosureOfBusinessCombinationsAbstract
ifrs_DisclosureOfBusinessCombinationsExplanatory
ifrs_DisclosureOfBusinessCombinationsLineItems
ifrs_DisclosureOfBusinessCombinationsTable
ifrs_DisclosureOfCashAndBankBalancesAtCentralBanksExplanatory
ifrs_DisclosureOfCashAndCashEquivalentsExplanatory
ifrs_DisclosureOfCashFlowStatementExplanatory
ifrs_DisclosureOfChangesInAccountingEstimatesAbstract
ifrs_DisclosureOfChangesInAccountingEstimatesExplanatory
ifrs_DisclosureOfChangesInAccountingEstimatesLineItems
ifrs_DisclosureOfChangesInAccountingEstimatesTable
ifrs_DisclosureOfChangesInAccountingPoliciesAccountingEstimatesAndErrorsExplanatory
ifrs_DisclosureOfChangesInAccountingPoliciesExplanatory
ifrs_DisclosureOfClaimsAndBenefitsPaidExplanatory
ifrs_DisclosureOfClassesOfShareCapitalAbstract
ifrs_DisclosureOfClassesOfShareCapitalExplanatory
ifrs_DisclosureOfClassesOfShareCapitalLineItems
ifrs_DisclosureOfClassesOfShareCapitalTable
ifrs_DisclosureOfCollateralExplanatory
ifrs_DisclosureOfCommitmentsAndContingentLiabilitiesExplanatory
ifrs_DisclosureOfCommitmentsExplanatory
ifrs_DisclosureOfComparativeInformationPreparedUnderPreviousGAAPAbstract
ifrs_DisclosureOfComparativeInformationPreparedUnderPreviousGAAPExplanatory
ifrs_DisclosureOfComparativeInformationPreparedUnderPreviousGAAPLineItems
ifrs_DisclosureOfComparativeInformationPreparedUnderPreviousGAAPTable
ifrs_DisclosureOfCompositionOfGroupExplanatory
ifrs_DisclosureOfCompoundFinancialInstrumentsWithMultipleEmbeddedDerivativesExplanatory
ifrs_DisclosureOfConsolidatedAndSeparateFinancialStatementsExplanatory
ifrs_DisclosureOfConsolidatedSeparateAndCombinedFinancialStatementsExplanatory
ifrs_DisclosureOfContingentLiabilitiesAbstract
ifrs_DisclosureOfContingentLiabilitiesExplanatory
ifrs_DisclosureOfContingentLiabilitiesInBusinessCombinationAbstract
ifrs_DisclosureOfContingentLiabilitiesInBusinessCombinationLineItems
ifrs_DisclosureOfContingentLiabilitiesInBusinessCombinationTable
ifrs_DisclosureOfContingentLiabilitiesLineItems
ifrs_DisclosureOfContingentLiabilitiesTable
ifrs_DisclosureOfContinuingInvolvementInDerecognisedFinancialAssetsAbstract
ifrs_DisclosureOfContinuingInvolvementInDerecognisedFinancialAssetsExplanatory
ifrs_DisclosureOfContinuingInvolvementInDerecognisedFinancialAssetsLineItems
ifrs_DisclosureOfContinuingInvolvementInDerecognisedFinancialAssetsTable
ifrs_DisclosureOfCostOfSalesExplanatory
ifrs_DisclosureOfCreditRiskExplanatory
ifrs_DisclosureOfCreditRiskOfInsuranceContractsExplanatory
ifrs_DisclosureOfCriticalPerformanceMeasuresAndIndicatorsThatManagementUsesToEvaluateEntitysPerformanceAgainstStatedObjectivesExplanatory
ifrs_DisclosureOfDebtSecuritiesExplanatory
ifrs_DisclosureOfDeferredAcquisitionCostsArisingFromInsuranceContractsExplanatory
ifrs_DisclosureOfDeferredIncomeExplanatory
ifrs_DisclosureOfDeferredTaxesExplanatory
ifrs_DisclosureOfDefinedBenefitPlansAbstract
ifrs_DisclosureOfDefinedBenefitPlansExplanatory
ifrs_DisclosureOfDefinedBenefitPlansLineItems
ifrs_DisclosureOfDefinedBenefitPlansTable
ifrs_DisclosureOfDepositsFromBanksExplanatory
ifrs_DisclosureOfDepositsFromCustomersExplanatory
ifrs_DisclosureOfDepreciationAndAmortisationExpenseExplanatory
ifrs_DisclosureOfDerivativeFinancialInstrumentsExplanatory
ifrs_DisclosureOfDetailedInformationAboutArrangementsInvolvingLegalFormOfLeaseExplanatory
ifrs_DisclosureOfDetailedInformationAboutBusinessCombinationsExplanatory
ifrs_DisclosureOfDetailedInformationAboutFinancialInstrumentsExplanatory
ifrs_DisclosureOfDetailedInformationAboutHedgesExplanatory
ifrs_DisclosureOfDetailedInformationAboutIntangibleAssetsExplanatory
ifrs_DisclosureOfDetailedInformationAboutInvestmentPropertyExplanatory
ifrs_DisclosureOfDetailedInformationAboutPropertyPlantAndEquipmentExplanatory
ifrs_DisclosureOfDetailedInformationAboutServiceConcessionArrangementsExplanatory
ifrs_DisclosureOfDeterminationOfFairValueOfGoodsOrServicesReceivedOrFairValueOfEquityInstrumentsGrantedOnSharebasedPaymentsExplanatory
ifrs_DisclosureOfDiscontinuedOperationsExplanatory
ifrs_DisclosureOfDividendsExplanatory
ifrs_DisclosureOfEarningsPerShareExplanatory
ifrs_DisclosureOfEffectOfChangesInForeignExchangeRatesExplanatory
ifrs_DisclosureOfEffectsOfChangesInParentsOwnershipInterestInSubsidiaryThatDoNotResultInLossOfControlOnEquityAttributableToOwnersOfParentExplanatory
ifrs_DisclosureOfEmployeeBenefitsExplanatory
ifrs_DisclosureOfEntitysMostSignificantResourcesRisksAndRelationshipsExplanatory
ifrs_DisclosureOfEntitysReportableSegmentsExplanatory
ifrs_DisclosureOfEventsAfterReportingPeriodExplanatory
ifrs_DisclosureOfEvidenceSupportingRecognitionOfDeferredTaxAssetsDependentOnFutureTaxableProfitsAndEntityHasSufferedALossInCurrentOrPrecedingPeriodExplanatory
ifrs_DisclosureOfExpensesByNatureExplanatory
ifrs_DisclosureOfExpensesExplanatory
ifrs_DisclosureOfExplorationAndEvaluationAssetsExplanatory
ifrs_DisclosureOfExternalCreditExposuresAbstract
ifrs_DisclosureOfExternalCreditExposuresExplanatory
ifrs_DisclosureOfExternalCreditExposuresLineItems
ifrs_DisclosureOfExternalCreditExposuresTable
ifrs_DisclosureOfFactAndEffectOfChangeToReasonablyPossibleAlternativeAssumptionWhichWouldChangeFairValueSignificantlyExplanatory
ifrs_DisclosureOfFactAndExplanationWhyDisclosureOfInformationForEachBusinessCombinationIsImpracticable
ifrs_DisclosureOfFairValueMeasurementExplanatory
ifrs_DisclosureOfFairValueMeasurementOfAssetsAbstract
ifrs_DisclosureOfFairValueMeasurementOfAssetsExplanatory
ifrs_DisclosureOfFairValueMeasurementOfAssetsLineItems
ifrs_DisclosureOfFairValueMeasurementOfAssetsTable
ifrs_DisclosureOfFairValueMeasurementOfEquityAbstract
ifrs_DisclosureOfFairValueMeasurementOfEquityExplanatory
ifrs_DisclosureOfFairValueMeasurementOfEquityLineItems
ifrs_DisclosureOfFairValueMeasurementOfEquityTable
ifrs_DisclosureOfFairValueMeasurementOfLiabilitiesAbstract
ifrs_DisclosureOfFairValueMeasurementOfLiabilitiesExplanatory
ifrs_DisclosureOfFairValueMeasurementOfLiabilitiesLineItems
ifrs_DisclosureOfFairValueMeasurementOfLiabilitiesTable
ifrs_DisclosureOfFairValueOfEachInvestmentInEquityInstrumentsDesignatedAsMeasuredAtFairValueThroughOtherComprehensiveIncomeExplanatory
ifrs_DisclosureOfFairValueOfFinancialAssetsAndFinancialLiabilitiesAndReclassificationExplanatory
ifrs_DisclosureOfFairValueOfFinancialInstrumentsExplanatory
ifrs_DisclosureOfFairValueOfInvestmentsInEquityInstrumentsDesignatedAsMeasuredAtFairValueThroughOtherComprehensiveIncomeAbstract
ifrs_DisclosureOfFairValueOfInvestmentsInEquityInstrumentsDesignatedAsMeasuredAtFairValueThroughOtherComprehensiveIncomeLineItems
ifrs_DisclosureOfFairValueOfInvestmentsInEquityInstrumentsDesignatedAsMeasuredAtFairValueThroughOtherComprehensiveIncomeTable
ifrs_DisclosureOfFairValueOfPlanAssetsAbstract
ifrs_DisclosureOfFairValueOfPlanAssetsExplanatory
ifrs_DisclosureOfFairValueOfPlanAssetsLineItems
ifrs_DisclosureOfFairValueOfPlanAssetsTable
ifrs_DisclosureOfFairValuesOfItemsUsedAsDeemedCostAbstract
ifrs_DisclosureOfFairValuesOfItemsUsedAsDeemedCostExplanatory
ifrs_DisclosureOfFairValuesOfItemsUsedAsDeemedCostLineItems
ifrs_DisclosureOfFairValuesOfItemsUsedAsDeemedCostTable
ifrs_DisclosureOfFeeAndCommissionIncomeExpenseExplanatory
ifrs_DisclosureOfFinanceCostExplanatory
ifrs_DisclosureOfFinanceIncomeExpenseExplanatory
ifrs_DisclosureOfFinanceIncomeExplanatory
ifrs_DisclosureOfFinanceLeaseAndOperatingLeaseByLesseeAbstract
ifrs_DisclosureOfFinanceLeaseAndOperatingLeaseByLesseeExplanatory
ifrs_DisclosureOfFinanceLeaseAndOperatingLeaseByLesseeLineItems
ifrs_DisclosureOfFinanceLeaseAndOperatingLeaseByLesseeTable
ifrs_DisclosureOfFinanceLeaseAndOperatingLeaseByLessorAbstract
ifrs_DisclosureOfFinanceLeaseAndOperatingLeaseByLessorExplanatory
ifrs_DisclosureOfFinanceLeaseAndOperatingLeaseByLessorLineItems
ifrs_DisclosureOfFinanceLeaseAndOperatingLeaseByLessorTable
ifrs_DisclosureOfFinancialAssetsAbstract
ifrs_DisclosureOfFinancialAssetsExplanatory
ifrs_DisclosureOfFinancialAssetsHeldForTradingExplanatory
ifrs_DisclosureOfFinancialAssetsLineItems
ifrs_DisclosureOfFinancialAssetsTable
ifrs_DisclosureOfFinancialAssetsThatAreEitherPastDueOrImpairedAbstract
ifrs_DisclosureOfFinancialAssetsThatAreEitherPastDueOrImpairedExplanatory
ifrs_DisclosureOfFinancialAssetsThatAreEitherPastDueOrImpairedLineItems
ifrs_DisclosureOfFinancialAssetsThatAreEitherPastDueOrImpairedTable
ifrs_DisclosureOfFinancialAssetsTransferredDuringPeriodWhichDoNotQualifyForDerecognitionAbstract
ifrs_DisclosureOfFinancialAssetsTransferredDuringPeriodWhichDoNotQualifyForDerecognitionExplanatory
ifrs_DisclosureOfFinancialAssetsTransferredDuringPeriodWhichDoNotQualifyForDerecognitionLineItems
ifrs_DisclosureOfFinancialAssetsTransferredDuringPeriodWhichDoNotQualifyForDerecognitionTable
ifrs_DisclosureOfFinancialInstrumentsAbstract
ifrs_DisclosureOfFinancialInstrumentsAtFairValueThroughProfitOrLossExplanatory
ifrs_DisclosureOfFinancialInstrumentsDesignatedAtFairValueThroughProfitOrLossExplanatory
ifrs_DisclosureOfFinancialInstrumentsExplanatory
ifrs_DisclosureOfFinancialInstrumentsHeldForTradingExplanatory
ifrs_DisclosureOfFinancialInstrumentsLineItems
ifrs_DisclosureOfFinancialInstrumentsTable
ifrs_DisclosureOfFinancialLiabilitiesAbstract
ifrs_DisclosureOfFinancialLiabilitiesExplanatory
ifrs_DisclosureOfFinancialLiabilitiesHeldForTradingExplanatory
ifrs_DisclosureOfFinancialLiabilitiesLineItems
ifrs_DisclosureOfFinancialLiabilitiesTable
ifrs_DisclosureOfFinancialRiskManagementExplanatory
ifrs_DisclosureOfFirstTimeAdoptionExplanatory
ifrs_DisclosureOfFormsOfFundingOfStructuredEntityAndTheirWeightedaverageLifeExplanatory
ifrs_DisclosureOfGeneralAndAdministrativeExpenseExplanatory
ifrs_DisclosureOfGeneralInformationAboutFinancialStatementsExplanatory
ifrs_DisclosureOfGeographicalAreasAbstract
ifrs_DisclosureOfGeographicalAreasExplanatory
ifrs_DisclosureOfGeographicalAreasLineItems
ifrs_DisclosureOfGeographicalAreasTable
ifrs_DisclosureOfGoingConcernExplanatory
ifrs_DisclosureOfGoodwillExplanatory
ifrs_DisclosureOfGoodwillNotAllocatedToCashgeneratingUnitExplanatory
ifrs_DisclosureOfGovernmentGrantsExplanatory
ifrs_DisclosureOfHedgeAccountingAbstract
ifrs_DisclosureOfHedgeAccountingExplanatory
ifrs_DisclosureOfHedgeAccountingLineItems
ifrs_DisclosureOfHedgeAccountingTable
ifrs_DisclosureOfHowEntityAggregatedInterestsInSimilarEntitiesExplanatory
ifrs_DisclosureOfHyperinflationaryReportingExplanatory
ifrs_DisclosureOfImpairmentLossAndReversalOfImpairmentLossAbstract
ifrs_DisclosureOfImpairmentLossAndReversalOfImpairmentLossExplanatory
ifrs_DisclosureOfImpairmentLossAndReversalOfImpairmentLossLineItems
ifrs_DisclosureOfImpairmentLossAndReversalOfImpairmentLossTable
ifrs_DisclosureOfImpairmentLossRecognisedOrReversedAbstract
ifrs_DisclosureOfImpairmentLossRecognisedOrReversedLineItems
ifrs_DisclosureOfImpairmentLossRecognisedOrReversedTable
ifrs_DisclosureOfImpairmentOfAssetsExplanatory
ifrs_DisclosureOfIncomeTaxExplanatory
ifrs_DisclosureOfIndirectMeasurementOfFairValueOfGoodsOrServicesReceivedOtherEquityInstrumentsGrantedDuringPeriodExplanatory
ifrs_DisclosureOfIndirectMeasurementOfFairValueOfGoodsOrServicesReceivedShareOptionsGrantedDuringPeriodExplanatory
ifrs_DisclosureOfIndirectMeasurementOfFairValueOfGoodsOrServicesReceivedSharebasedPaymentArrangementsModifiedDuringPeriodExplanatory
ifrs_DisclosureOfInformationAboutConsolidatedStructuredEntitiesAbstract
ifrs_DisclosureOfInformationAboutConsolidatedStructuredEntitiesExplanatory
ifrs_DisclosureOfInformationAboutConsolidatedStructuredEntitiesLineItems
ifrs_DisclosureOfInformationAboutConsolidatedStructuredEntitiesTable
ifrs_DisclosureOfInformationAboutEmployeesExplanatory
ifrs_DisclosureOfInformationAboutInterestsInStructuredEntityExplanatory
ifrs_DisclosureOfInformationAboutKeyManagementPersonnelExplanatory
ifrs_DisclosureOfInformationAboutLiquidityArrangementsGuaranteesOrOtherCommitmentsWithThirdPartiesThatMayAffectFairValueOrRiskOfInterestsInStructuredEntitiesExplanatory
ifrs_DisclosureOfInformationAboutMaturityProfileOfDefinedBenefitObligationExplanatory
ifrs_DisclosureOfInformationForEachMaterialImpairmentLossRecognisedOrReversedForIndividualAssetOrCashgeneratingUnitAbstract
ifrs_DisclosureOfInformationForEachMaterialImpairmentLossRecognisedOrReversedForIndividualAssetOrCashgeneratingUnitExplanatory
ifrs_DisclosureOfInformationForEachMaterialImpairmentLossRecognisedOrReversedForIndividualAssetOrCashgeneratingUnitLineItems
ifrs_DisclosureOfInformationForEachMaterialImpairmentLossRecognisedOrReversedForIndividualAssetOrCashgeneratingUnitTable
ifrs_DisclosureOfInformationForIndividualAssetOrCashgeneratingUnitWithSignificantAmountOfGoodwillOrIntangibleAssetsWithIndefiniteUsefulLivesAbstract
ifrs_DisclosureOfInformationForIndividualAssetOrCashgeneratingUnitWithSignificantAmountOfGoodwillOrIntangibleAssetsWithIndefiniteUsefulLivesExplanatory
ifrs_DisclosureOfInformationForIndividualAssetOrCashgeneratingUnitWithSignificantAmountOfGoodwillOrIntangibleAssetsWithIndefiniteUsefulLivesLineItems
ifrs_DisclosureOfInformationForIndividualAssetOrCashgeneratingUnitWithSignificantAmountOfGoodwillOrIntangibleAssetsWithIndefiniteUsefulLivesTable
ifrs_DisclosureOfInformationSufficientToPermitReconciliationOfClassesDeterminedForFairValueMeasurementToLineItemsInStatementOfFinancialPositionAssetsExplanatory
ifrs_DisclosureOfInformationSufficientToPermitReconciliationOfClassesDeterminedForFairValueMeasurementToLineItemsInStatementOfFinancialPositionEntitysOwnEquityInstrumentsExplanatory
ifrs_DisclosureOfInformationSufficientToPermitReconciliationOfClassesDeterminedForFairValueMeasurementToLineItemsInStatementOfFinancialPositionLiabilitiesExplanatory
ifrs_DisclosureOfInitialApplicationOfStandardsOrInterpretationsAbstract
ifrs_DisclosureOfInitialApplicationOfStandardsOrInterpretationsLineItems
ifrs_DisclosureOfInitialApplicationOfStandardsOrInterpretationsTable
ifrs_DisclosureOfInstrumentsWithPotentialFutureDilutiveEffectNotIncludedInCalculationOfDilutedEarningsPerShareExplanatory
ifrs_DisclosureOfInsuranceContractsExplanatory
ifrs_DisclosureOfInsurancePremiumRevenueExplanatory
ifrs_DisclosureOfInsuranceRiskExplanatory
ifrs_DisclosureOfIntangibleAssetsAbstract
ifrs_DisclosureOfIntangibleAssetsAndGoodwillExplanatory
ifrs_DisclosureOfIntangibleAssetsExplanatory
ifrs_DisclosureOfIntangibleAssetsLineItems
ifrs_DisclosureOfIntangibleAssetsTable
ifrs_DisclosureOfInterestExpenseExplanatory
ifrs_DisclosureOfInterestInFundsExplanatory
ifrs_DisclosureOfInterestIncomeExpenseExplanatory
ifrs_DisclosureOfInterestIncomeExplanatory
ifrs_DisclosureOfInterestsInAssociatesExplanatory
ifrs_DisclosureOfInterestsInJointArrangementsExplanatory
ifrs_DisclosureOfInterestsInJointVenturesExplanatory
ifrs_DisclosureOfInterestsInOtherEntitiesExplanatory
ifrs_DisclosureOfInterestsInSignificantJointVenturesAbstract
ifrs_DisclosureOfInterestsInSignificantJointVenturesExplanatory
ifrs_DisclosureOfInterestsInSignificantJointVenturesLineItems
ifrs_DisclosureOfInterestsInSignificantJointVenturesTable
ifrs_DisclosureOfInterestsInSubsidiariesExplanatory
ifrs_DisclosureOfInterestsInUnconsolidatedStructuredEntitiesExplanatory
ifrs_DisclosureOfInterimFinancialReportingExplanatory
ifrs_DisclosureOfInternalCreditExposuresAbstract
ifrs_DisclosureOfInternalCreditExposuresExplanatory
ifrs_DisclosureOfInternalCreditExposuresLineItems
ifrs_DisclosureOfInternalCreditExposuresTable
ifrs_DisclosureOfInventoriesExplanatory
ifrs_DisclosureOfInvestmentContractsLiabilitiesExplanatory
ifrs_DisclosureOfInvestmentInAssociatesExplanatory
ifrs_DisclosureOfInvestmentPropertyAbstract
ifrs_DisclosureOfInvestmentPropertyExplanatory
ifrs_DisclosureOfInvestmentPropertyLineItems
ifrs_DisclosureOfInvestmentPropertyTable
ifrs_DisclosureOfInvestmentsAccountedForUsingEquityMethodExplanatory
ifrs_DisclosureOfInvestmentsOtherThanInvestmentsAccountedForUsingEquityMethodExplanatory
ifrs_DisclosureOfIssuedCapitalExplanatory
ifrs_DisclosureOfJointOperationsAbstract
ifrs_DisclosureOfJointOperationsExplanatory
ifrs_DisclosureOfJointOperationsLineItems
ifrs_DisclosureOfJointOperationsTable
ifrs_DisclosureOfJointVenturesAbstract
ifrs_DisclosureOfJointVenturesExplanatory
ifrs_DisclosureOfJointVenturesLineItems
ifrs_DisclosureOfJointVenturesTable
ifrs_DisclosureOfLeasePrepaymentsExplanatory
ifrs_DisclosureOfLeasesExplanatory
ifrs_DisclosureOfLiabilitiesMeasuredAtFairValueAndIssuedWithInseparableThirdpartyCreditEnhancementAbstract
ifrs_DisclosureOfLiabilitiesMeasuredAtFairValueAndIssuedWithInseparableThirdpartyCreditEnhancementExplanatory
ifrs_DisclosureOfLiabilitiesMeasuredAtFairValueAndIssuedWithInseparableThirdpartyCreditEnhancementLineItems
ifrs_DisclosureOfLiabilitiesMeasuredAtFairValueAndIssuedWithInseparableThirdpartyCreditEnhancementTable
ifrs_DisclosureOfLiquidityRiskExplanatory
ifrs_DisclosureOfLiquidityRiskOfInsuranceContractsExplanatory
ifrs_DisclosureOfLoansAndAdvancesToBanksExplanatory
ifrs_DisclosureOfLoansAndAdvancesToCustomersExplanatory
ifrs_DisclosureOfMajorCustomersAbstract
ifrs_DisclosureOfMajorCustomersLineItems
ifrs_DisclosureOfMajorCustomersTable
ifrs_DisclosureOfManagementsObjectivesAndItsStrategiesForMeetingThoseObjectivesExplanatory
ifrs_DisclosureOfMarketRiskExplanatory
ifrs_DisclosureOfMarketRiskOfInsuranceContractsExplanatory
ifrs_DisclosureOfMaturityAnalysisForDerivativeFinancialLiabilitiesAbstract
ifrs_DisclosureOfMaturityAnalysisForDerivativeFinancialLiabilitiesLineItems
ifrs_DisclosureOfMaturityAnalysisForDerivativeFinancialLiabilitiesTable
ifrs_DisclosureOfMaturityAnalysisForFinancialAssetsHeldForManagingLiquidityRiskAbstract
ifrs_DisclosureOfMaturityAnalysisForFinancialAssetsHeldForManagingLiquidityRiskLineItems
ifrs_DisclosureOfMaturityAnalysisForFinancialAssetsHeldForManagingLiquidityRiskTable
ifrs_DisclosureOfMaturityAnalysisForNonderivativeFinancialLiabilitiesAbstract
ifrs_DisclosureOfMaturityAnalysisForNonderivativeFinancialLiabilitiesLineItems
ifrs_DisclosureOfMaturityAnalysisForNonderivativeFinancialLiabilitiesTable
ifrs_DisclosureOfMaturityAnalysisOfUndiscountedCashOutflowsToRepurchaseDerecognisedFinancialAssetsExplanatory
ifrs_DisclosureOfMaturityAnalysisOfUndiscountedCashOutflowsToRepurchaseDerecognisedFinancialAssetsOrAmountsPayableToTransfereeInRespectOfTransferredAssetsAbstract
ifrs_DisclosureOfMaturityAnalysisOfUndiscountedCashOutflowsToRepurchaseDerecognisedFinancialAssetsOrAmountsPayableToTransfereeInRespectOfTransferredAssetsLineItems
ifrs_DisclosureOfMaturityAnalysisOfUndiscountedCashOutflowsToRepurchaseDerecognisedFinancialAssetsOrAmountsPayableToTransfereeInRespectOfTransferredAssetsTable
ifrs_DisclosureOfNatureAndExtentOfRisksArisingFromFinancialInstrumentsAbstract
ifrs_DisclosureOfNatureAndExtentOfRisksArisingFromFinancialInstrumentsExplanatory
ifrs_DisclosureOfNatureAndExtentOfRisksArisingFromFinancialInstrumentsLineItems
ifrs_DisclosureOfNatureAndExtentOfRisksArisingFromFinancialInstrumentsTable
ifrs_DisclosureOfNatureAndExtentOfRisksArisingFromInsuranceContractsExplanatory
ifrs_DisclosureOfNatureOfBusinessExplanatory
ifrs_DisclosureOfNatureOfPotentialIncomeTaxConsequencesThatWouldResultFromPaymentOfDividendExplanatory
ifrs_DisclosureOfNetAssetValueAttributableToUnitholdersExplanatory
ifrs_DisclosureOfNetDefinedBenefitLiabilityAssetAbstract
ifrs_DisclosureOfNetDefinedBenefitLiabilityAssetExplanatory
ifrs_DisclosureOfNetDefinedBenefitLiabilityAssetLineItems
ifrs_DisclosureOfNetDefinedBenefitLiabilityAssetTable
ifrs_DisclosureOfNetGrossAndReinsurersShareForAmountsArisingFromInsuranceContractsAbstract
ifrs_DisclosureOfNetGrossAndReinsurersShareForAmountsArisingFromInsuranceContractsExplanatory
ifrs_DisclosureOfNetGrossAndReinsurersShareForAmountsArisingFromInsuranceContractsLineItems
ifrs_DisclosureOfNetGrossAndReinsurersShareForAmountsArisingFromInsuranceContractsTable
ifrs_DisclosureOfNonadjustingEventsAfterReportingPeriodAbstract
ifrs_DisclosureOfNonadjustingEventsAfterReportingPeriodExplanatory
ifrs_DisclosureOfNonadjustingEventsAfterReportingPeriodLineItems
ifrs_DisclosureOfNonadjustingEventsAfterReportingPeriodTable
ifrs_DisclosureOfNoncontrollingInterestsExplanatory
ifrs_DisclosureOfNoncurrentAssetsHeldForSaleAndDiscontinuedOperationsExplanatory
ifrs_DisclosureOfNoncurrentAssetsOrDisposalGroupsClassifiedAsHeldForSaleExplanatory
ifrs_DisclosureOfNotesAndOtherExplanatoryInformationExplanatory
ifrs_DisclosureOfNumberAndWeightedAverageExercisePricesOfOtherEquityInstrumentsExplanatory
ifrs_DisclosureOfNumberAndWeightedAverageExercisePricesOfShareOptionsExplanatory
ifrs_DisclosureOfNumberAndWeightedAverageRemainingContractualLifeOfOutstandingShareOptionsAbstract
ifrs_DisclosureOfNumberAndWeightedAverageRemainingContractualLifeOfOutstandingShareOptionsExplanatory
ifrs_DisclosureOfNumberAndWeightedAverageRemainingContractualLifeOfOutstandingShareOptionsLineItems
ifrs_DisclosureOfNumberAndWeightedAverageRemainingContractualLifeOfOutstandingShareOptionsTable
ifrs_DisclosureOfObjectivesPoliciesAndProcessesForManagingCapitalAbstract
ifrs_DisclosureOfObjectivesPoliciesAndProcessesForManagingCapitalExplanatory
ifrs_DisclosureOfObjectivesPoliciesAndProcessesForManagingCapitalLineItems
ifrs_DisclosureOfObjectivesPoliciesAndProcessesForManagingCapitalTable
ifrs_DisclosureOfOffsettingOfFinancialAssetsAbstract
ifrs_DisclosureOfOffsettingOfFinancialAssetsAndFinancialLiabilitiesExplanatory
ifrs_DisclosureOfOffsettingOfFinancialAssetsExplanatory
ifrs_DisclosureOfOffsettingOfFinancialAssetsLineItems
ifrs_DisclosureOfOffsettingOfFinancialAssetsTable
ifrs_DisclosureOfOffsettingOfFinancialLiabilitiesAbstract
ifrs_DisclosureOfOffsettingOfFinancialLiabilitiesExplanatory
ifrs_DisclosureOfOffsettingOfFinancialLiabilitiesLineItems
ifrs_DisclosureOfOffsettingOfFinancialLiabilitiesTable
ifrs_DisclosureOfOperatingSegmentsAbstract
ifrs_DisclosureOfOperatingSegmentsExplanatory
ifrs_DisclosureOfOperatingSegmentsLineItems
ifrs_DisclosureOfOperatingSegmentsTable
ifrs_DisclosureOfOtherAssetsExplanatory
ifrs_DisclosureOfOtherCurrentAssetsExplanatory
ifrs_DisclosureOfOtherCurrentLiabilitiesExplanatory
ifrs_DisclosureOfOtherLiabilitiesExplanatory
ifrs_DisclosureOfOtherLongtermBenefitsAbstract
ifrs_DisclosureOfOtherLongtermBenefitsExplanatory
ifrs_DisclosureOfOtherLongtermBenefitsLineItems
ifrs_DisclosureOfOtherLongtermBenefitsTable
ifrs_DisclosureOfOtherNoncurrentAssetsExplanatory
ifrs_DisclosureOfOtherNoncurrentLiabilitiesExplanatory
ifrs_DisclosureOfOtherOperatingExpenseExplanatory
ifrs_DisclosureOfOtherOperatingIncomeExpenseExplanatory
ifrs_DisclosureOfOtherOperatingIncomeExplanatory
ifrs_DisclosureOfOtherProvisionsAbstract
ifrs_DisclosureOfOtherProvisionsContingentLiabilitiesAndContingentAssetsExplanatory
ifrs_DisclosureOfOtherProvisionsExplanatory
ifrs_DisclosureOfOtherProvisionsLineItems
ifrs_DisclosureOfOtherProvisionsTable
ifrs_DisclosureOfPlanToSellNoncurrentAssetOrDisposalGroupExplanatory
ifrs_DisclosureOfPrepaymentsAndOtherAssetsExplanatory
ifrs_DisclosureOfProductsAndServicesAbstract
ifrs_DisclosureOfProductsAndServicesExplanatory
ifrs_DisclosureOfProductsAndServicesLineItems
ifrs_DisclosureOfProductsAndServicesTable
ifrs_DisclosureOfProfitLossFromOperatingActivitiesExplanatory
ifrs_DisclosureOfPropertyPlantAndEquipmentAbstract
ifrs_DisclosureOfPropertyPlantAndEquipmentExplanatory
ifrs_DisclosureOfPropertyPlantAndEquipmentLineItems
ifrs_DisclosureOfPropertyPlantAndEquipmentTable
ifrs_DisclosureOfProvisionsExplanatory
ifrs_DisclosureOfRangeOfExercisePricesOfOutstandingShareOptionsAbstract
ifrs_DisclosureOfRangeOfExercisePricesOfOutstandingShareOptionsExplanatory
ifrs_DisclosureOfRangeOfExercisePricesOfOutstandingShareOptionsLineItems
ifrs_DisclosureOfRangeOfExercisePricesOfOutstandingShareOptionsTable
ifrs_DisclosureOfRankingAndAmountsOfPotentialLossesInStructuredEntitiesBorneByPartiesWhoseInterestsRankLowerThanEntitysInterestsExplanatory
ifrs_DisclosureOfReclassificationOfFinancialInstrumentsExplanatory
ifrs_DisclosureOfReclassificationsOrChangesInPresentationAbstract
ifrs_DisclosureOfReclassificationsOrChangesInPresentationExplanatory
ifrs_DisclosureOfReclassificationsOrChangesInPresentationLineItems
ifrs_DisclosureOfReclassificationsOrChangesInPresentationTable
ifrs_DisclosureOfRecognisedFinanceLeaseAsAssetsByLesseeAbstract
ifrs_DisclosureOfRecognisedFinanceLeaseAsAssetsByLesseeExplanatory
ifrs_DisclosureOfRecognisedFinanceLeaseAsAssetsByLesseeLineItems
ifrs_DisclosureOfRecognisedFinanceLeaseAsAssetsByLesseeTable
ifrs_DisclosureOfRecognisedRevenueFromConstructionContractsExplanatory
ifrs_DisclosureOfReconciliationBetweenInvestmentDerecognisedAndAssetsAndLiabilitiesRecognisedTransitionFromAccountingForInvestmentAtCostOrInAccordanceWithIFRS9ToAccountingForAssetsAndLiabilitiesExplanatory
ifrs_DisclosureOfReconciliationBetweenInvestmentDerecognisedAndAssetsAndLiabilitiesRecognisedTransitionFromEquityMethodToAccountingForAssetsAndLiabilitiesExplanatory
ifrs_DisclosureOfReconciliationOfChangesInBiologicalAssetsAbstract
ifrs_DisclosureOfReconciliationOfChangesInBiologicalAssetsExplanatory
ifrs_DisclosureOfReconciliationOfChangesInBiologicalAssetsLineItems
ifrs_DisclosureOfReconciliationOfChangesInBiologicalAssetsTable
ifrs_DisclosureOfReconciliationOfChangesInGoodwillAbstract
ifrs_DisclosureOfReconciliationOfChangesInGoodwillLineItems
ifrs_DisclosureOfReconciliationOfChangesInGoodwillTable
ifrs_DisclosureOfReconciliationOfChangesInIntangibleAssetsAndGoodwillAbstract
ifrs_DisclosureOfReconciliationOfChangesInIntangibleAssetsAndGoodwillExplanatory
ifrs_DisclosureOfReconciliationOfChangesInIntangibleAssetsAndGoodwillLineItems
ifrs_DisclosureOfReconciliationOfChangesInIntangibleAssetsAndGoodwillTable
ifrs_DisclosureOfReconciliationOfFinancialAssetsSubjectToOffsettingEnforceableMasterNettingArrangementsOrSimilarAgreementsToIndividualLineItemsInStatementOfFinancialPositionExplanatory
ifrs_DisclosureOfReconciliationOfFinancialLiabilitiesSubjectToOffsettingEnforceableMasterNettingArrangementsOrSimilarAgreementsToIndividualLineItemsInStatementOfFinancialPositionExplanatory
ifrs_DisclosureOfReconciliationOfSummarisedFinancialInformationOfAssociateAccountedForUsingEquityMethodToCarryingAmountOfInterestInAssociateExplanatory
ifrs_DisclosureOfReconciliationOfSummarisedFinancialInformationOfJointVentureAccountedForUsingEquityMethodToCarryingAmountOfInterestInJointVentureExplanatory
ifrs_DisclosureOfRedemptionProhibitionTransferBetweenFinancialLiabilitiesAndEquityExplanatory
ifrs_DisclosureOfRedesignatedFinancialAssetsAndLiabilitiesAbstract
ifrs_DisclosureOfRedesignatedFinancialAssetsAndLiabilitiesExplanatory
ifrs_DisclosureOfRedesignatedFinancialAssetsAndLiabilitiesLineItems
ifrs_DisclosureOfRedesignatedFinancialAssetsAndLiabilitiesTable
ifrs_DisclosureOfReimbursementRightsAbstract
ifrs_DisclosureOfReimbursementRightsExplanatory
ifrs_DisclosureOfReimbursementRightsLineItems
ifrs_DisclosureOfReimbursementRightsTable
ifrs_DisclosureOfReinsuranceExplanatory
ifrs_DisclosureOfRelatedPartyExplanatory
ifrs_DisclosureOfRepurchaseAndReverseRepurchaseAgreementsExplanatory
ifrs_DisclosureOfResearchAndDevelopmentExpenseExplanatory
ifrs_DisclosureOfReservesAndOtherEquityInterestExplanatory
ifrs_DisclosureOfReservesWithinEquityAbstract
ifrs_DisclosureOfReservesWithinEquityLineItems
ifrs_DisclosureOfReservesWithinEquityTable
ifrs_DisclosureOfRestrictedCashAndCashEquivalentsExplanatory
ifrs_DisclosureOfResultsOfOperationsAndProspectsExplanatory
ifrs_DisclosureOfRevenueExplanatory
ifrs_DisclosureOfSegmentsMajorCustomersExplanatory
ifrs_DisclosureOfSensitivityAnalysisForActuarialAssumptionsAbstract
ifrs_DisclosureOfSensitivityAnalysisForActuarialAssumptionsExplanatory
ifrs_DisclosureOfSensitivityAnalysisForActuarialAssumptionsLineItems
ifrs_DisclosureOfSensitivityAnalysisForActuarialAssumptionsTable
ifrs_DisclosureOfSensitivityToInsuranceRiskExplanatory
ifrs_DisclosureOfServiceConcessionArrangementsAbstract
ifrs_DisclosureOfServiceConcessionArrangementsExplanatory
ifrs_DisclosureOfServiceConcessionArrangementsLineItems
ifrs_DisclosureOfServiceConcessionArrangementsTable
ifrs_DisclosureOfShareCapitalReservesAndOtherEquityInterestExplanatory
ifrs_DisclosureOfSharebasedPaymentArrangementsExplanatory
ifrs_DisclosureOfSignificantAdjustmentsToValuationObtainedExplanatory
ifrs_DisclosureOfSignificantInvestmentsInAssociatesAbstract
ifrs_DisclosureOfSignificantInvestmentsInAssociatesExplanatory
ifrs_DisclosureOfSignificantInvestmentsInAssociatesLineItems
ifrs_DisclosureOfSignificantInvestmentsInAssociatesTable
ifrs_DisclosureOfSignificantInvestmentsInJointlyControlledEntitiesAbstract
ifrs_DisclosureOfSignificantInvestmentsInJointlyControlledEntitiesExplanatory
ifrs_DisclosureOfSignificantInvestmentsInJointlyControlledEntitiesLineItems
ifrs_DisclosureOfSignificantInvestmentsInJointlyControlledEntitiesTable
ifrs_DisclosureOfSignificantInvestmentsInSubsidiariesAbstract
ifrs_DisclosureOfSignificantInvestmentsInSubsidiariesExplanatory
ifrs_DisclosureOfSignificantInvestmentsInSubsidiariesLineItems
ifrs_DisclosureOfSignificantInvestmentsInSubsidiariesTable
ifrs_DisclosureOfSignificantJudgementsAndAssumptionsMadeInRelationToInterestsInOtherEntitiesExplanatory
ifrs_DisclosureOfSignificantUnobservableInputsUsedInFairValueMeasurementOfAssetsAbstract
ifrs_DisclosureOfSignificantUnobservableInputsUsedInFairValueMeasurementOfAssetsExplanatory
ifrs_DisclosureOfSignificantUnobservableInputsUsedInFairValueMeasurementOfAssetsLineItems
ifrs_DisclosureOfSignificantUnobservableInputsUsedInFairValueMeasurementOfAssetsTable
ifrs_DisclosureOfSignificantUnobservableInputsUsedInFairValueMeasurementOfEquityAbstract
ifrs_DisclosureOfSignificantUnobservableInputsUsedInFairValueMeasurementOfEquityExplanatory
ifrs_DisclosureOfSignificantUnobservableInputsUsedInFairValueMeasurementOfEquityLineItems
ifrs_DisclosureOfSignificantUnobservableInputsUsedInFairValueMeasurementOfEquityTable
ifrs_DisclosureOfSignificantUnobservableInputsUsedInFairValueMeasurementOfLiabilitiesAbstract
ifrs_DisclosureOfSignificantUnobservableInputsUsedInFairValueMeasurementOfLiabilitiesExplanatory
ifrs_DisclosureOfSignificantUnobservableInputsUsedInFairValueMeasurementOfLiabilitiesLineItems
ifrs_DisclosureOfSignificantUnobservableInputsUsedInFairValueMeasurementOfLiabilitiesTable
ifrs_DisclosureOfSubordinatedLiabilitiesExplanatory
ifrs_DisclosureOfSummaryOfSignificantAccountingPoliciesExplanatory
ifrs_DisclosureOfTaxReceivablesAndPayablesExplanatory
ifrs_DisclosureOfTemporaryDifferenceUnusedTaxLossesAndUnusedTaxCreditsAbstract
ifrs_DisclosureOfTemporaryDifferenceUnusedTaxLossesAndUnusedTaxCreditsExplanatory
ifrs_DisclosureOfTemporaryDifferenceUnusedTaxLossesAndUnusedTaxCreditsLineItems
ifrs_DisclosureOfTemporaryDifferenceUnusedTaxLossesAndUnusedTaxCreditsTable
ifrs_DisclosureOfTerminationBenefitsAbstract
ifrs_DisclosureOfTerminationBenefitsExplanatory
ifrs_DisclosureOfTerminationBenefitsLineItems
ifrs_DisclosureOfTerminationBenefitsTable
ifrs_DisclosureOfTermsAndConditionsOfSharebasedPaymentArrangementAbstract
ifrs_DisclosureOfTermsAndConditionsOfSharebasedPaymentArrangementExplanatory
ifrs_DisclosureOfTermsAndConditionsOfSharebasedPaymentArrangementLineItems
ifrs_DisclosureOfTermsAndConditionsOfSharebasedPaymentArrangementTable
ifrs_DisclosureOfTradeAndOtherPayablesExplanatory
ifrs_DisclosureOfTradeAndOtherReceivablesExplanatory
ifrs_DisclosureOfTradingIncomeExpenseExplanatory
ifrs_DisclosureOfTransactionsBetweenRelatedPartiesAbstract
ifrs_DisclosureOfTransactionsBetweenRelatedPartiesExplanatory
ifrs_DisclosureOfTransactionsBetweenRelatedPartiesLineItems
ifrs_DisclosureOfTransactionsBetweenRelatedPartiesTable
ifrs_DisclosureOfTransactionsRecognisedSeparatelyFromAcquisitionOfAssetsAndAssumptionOfLiabilitiesInBusinessCombinationAbstract
ifrs_DisclosureOfTransactionsRecognisedSeparatelyFromAcquisitionOfAssetsAndAssumptionOfLiabilitiesInBusinessCombinationLineItems
ifrs_DisclosureOfTransactionsRecognisedSeparatelyFromAcquisitionOfAssetsAndAssumptionOfLiabilitiesInBusinessCombinationTable
ifrs_DisclosureOfTransfersOfFinancialAssetsExplanatory
ifrs_DisclosureOfTreasurySharesExplanatory
ifrs_DisclosureOfTypesOfInsuranceContractsAbstract
ifrs_DisclosureOfTypesOfInsuranceContractsExplanatory
ifrs_DisclosureOfTypesOfInsuranceContractsLineItems
ifrs_DisclosureOfTypesOfInsuranceContractsTable
ifrs_DisclosureOfUnconsolidatedStructuredEntitiesAbstract
ifrs_DisclosureOfUnconsolidatedStructuredEntitiesExplanatory
ifrs_DisclosureOfUnconsolidatedStructuredEntitiesLineItems
ifrs_DisclosureOfUnconsolidatedStructuredEntitiesTable
ifrs_DisclosureOfVoluntaryChangeInAccountingPolicyAbstract
ifrs_DisclosureOfVoluntaryChangeInAccountingPolicyLineItems
ifrs_DisclosureOfVoluntaryChangeInAccountingPolicyTable
ifrs_DisclosureThatRelatedPartyTransactionsWereMadeOnTermsEquivalentToThoseThatPrevailInArmsLengthTransactions
ifrs_DisclosureWhetherLoansPayableInDefaultRemediedOrTermsOfLoansPayableRenegotiatedBeforeAuthorisationForIssueOfFinancialStatements
ifrs_DiscontinuedOperationsMember
ifrs_DiscountedCashFlowMember
ifrs_DiscussionOfImpactThatInitialApplicationOfIFRSIsExpectedToHaveOnFinancialStatements
ifrs_DisposalGroupsClassifiedAsHeldForSaleMember
ifrs_DisposalOfMajorSubsidiaryMember
ifrs_DisposalsBiologicalAssets
ifrs_DisposalsIntangibleAssetsAndGoodwill
ifrs_DisposalsIntangibleAssetsOtherThanGoodwill
ifrs_DisposalsInvestmentProperty
ifrs_DisposalsPropertyPlantAndEquipment
ifrs_DistributionAndAdministrativeExpense
ifrs_DistributionCosts
ifrs_DividendPayables
ifrs_DividendsAndOtherDistributionsRecognisedAsIncome
ifrs_DividendsClassifiedAsExpense
ifrs_DividendsDeclaredAndPaidOrPayable
ifrs_DividendsPaid
ifrs_DividendsPaidClassifiedAsFinancingActivities
ifrs_DividendsPaidClassifiedAsOperatingActivities
ifrs_DividendsPaidOrdinaryShares
ifrs_DividendsPaidOrdinarySharesPerShare
ifrs_DividendsPaidOtherShares
ifrs_DividendsPaidOtherSharesPerShare
ifrs_DividendsPaidToEquityHoldersOfParentClassifiedAsFinancingActivities
ifrs_DividendsPaidToNoncontrollingInterests
ifrs_DividendsPaidToNoncontrollingInterestsClassifiedAsFinancingActivities
ifrs_DividendsPayable
ifrs_DividendsProposedOrDeclaredBeforeFinancialStatementsAuthorisedForIssueButNotRecognisedAsDistributionToOwners
ifrs_DividendsProposedOrDeclaredBeforeFinancialStatementsAuthorisedForIssueButNotRecognisedAsDistributionToOwnersPerShare
ifrs_DividendsReceived
ifrs_DividendsReceivedClassifiedAsFinancingActivities
ifrs_DividendsReceivedClassifiedAsInvestingActivities
ifrs_DividendsReceivedClassifiedAsOperatingActivities
ifrs_DividendsReceivedFromAssociatesClassifiedAsInvestingActivities
ifrs_DividendsReceivedFromInvestmentsAccountedForUsingEquityMethodClassifiedAsInvestingActivities
ifrs_DividendsReceivedFromJointVenturesClassifiedAsInvestingActivities
ifrs_DividendsRecognisedAsDistributionsToNoncontrollingInterests
ifrs_DividendsRecognisedAsDistributionsToOwnersPerShare
ifrs_DividendsRecognisedAsDistributionsToOwnersRelatingToCurrentYear
ifrs_DividendsRecognisedAsDistributionsToOwnersRelatingToPriorYears
ifrs_DividendsRecognisedForInvestmentsInEquityInstrumentsDesignatedAsMeasuredAtFairValueThroughOtherComprehensiveIncomeDerecognisedDuringPeriod
ifrs_DividendsRecognisedForInvestmentsInEquityInstrumentsDesignatedAsMeasuredAtFairValueThroughOtherComprehensiveIncomeHeldAtEndOfReportingPeriod
ifrs_DomesticDefinedBenefitPlansMember
ifrs_DomicileOfEntity
ifrs_EarningsPerShareAbstract
ifrs_EarningsPerShareLineItems
ifrs_EarningsPerShareTable
ifrs_EffectOfAssetCeilingMember
ifrs_EffectOfCurtailmentAndSettlementRecognisedInProfitOrLossDefinedBenefitPlan
ifrs_EffectOfExchangeRateChangesOnCashAndCashEquivalents
ifrs_EffectOfExchangeRateChangesOnCashAndCashEquivalentsAbstract
ifrs_EffectOfTransitionToIFRSsMember
ifrs_EffectOnDeferredTaxExpenseArisingFromReviewByTaxAuthorities
ifrs_EffectiveDatesOfRevaluationIntangibleAssetsOtherThanGoodwill
ifrs_EffectiveDatesOfRevaluationPropertyPlantAndEquipment
ifrs_EffectiveInterestRateDeterminedOnDateOfReclassificationOfFinancialAssetsFirstApplicationOfIFRS9
ifrs_EffectiveInterestRateDeterminedOnDateOfReclassificationOfFinancialLiabilitiesFirstApplicationOfIFRS9
ifrs_EffectiveInterestRateOfFinancialAssetsReclassifiedOutOfAvailableforsaleFinancialAssets
ifrs_EffectiveInterestRateOfFinancialAssetsReclassifiedOutOfFinancialAssetsAtFairValueThroughProfitOrLoss
ifrs_EffectsOfLimitInIAS19Paragraph58b
ifrs_EliminationOfIntersegmentAmountsMember
ifrs_EmployeeBenefitsExpense
ifrs_EmployeeContributions
ifrs_EmployerContributions
ifrs_EnteringIntoSignificantCommitmentsOrContingentLiabilitiesMember
ifrs_EntitiesOverWhichEntityHasControlJointControlOrSignificantInfluenceMember
ifrs_EntitiesWithControlJointControlOrSignificantInfluenceOverEntityMember
ifrs_EntitysOwnEquityInstrumentsMember
ifrs_EntitysTotalForAssociatesMember
ifrs_EntitysTotalForBusinessCombinationsMember
ifrs_EntitysTotalForCashgeneratingUnitsMember
ifrs_EntitysTotalForConsolidatedStructuredEntitiesMember
ifrs_EntitysTotalForExternalCreditGradesMember
ifrs_EntitysTotalForImpairmentOfFinancialAssetsMember
ifrs_EntitysTotalForIndividualAssetsOrCashgeneratingUnitsMember
ifrs_EntitysTotalForInternalCreditGradesMember
ifrs_EntitysTotalForInvestmentsInAssociatesMember
ifrs_EntitysTotalForJointOperationsMember
ifrs_EntitysTotalForJointVenturesMember
ifrs_EntitysTotalForJointlyControlledEntitiesMember
ifrs_EntitysTotalForRelatedPartiesMember
ifrs_EntitysTotalForSubsidiariesMember
ifrs_EntitysTotalForUnconsolidatedStructuredEntitiesMember
ifrs_EntitysTotalMember
ifrs_Equity
ifrs_EquityAbstract
ifrs_EquityAndLiabilities
ifrs_EquityAndLiabilitiesAbstract
ifrs_EquityAttributableToOwnersOfParent
ifrs_EquityAttributableToOwnersOfParentMember
ifrs_EquityInstrumentsAmountContributedToFairValueOfPlanAssets
ifrs_EquityInstrumentsHeld
ifrs_EquityInstrumentsPercentageContributedToFairValueOfPlanAssets
ifrs_EquityInterestsOfAcquirer
ifrs_EquityInvestmentsMember
ifrs_EquityMember
ifrs_EquityPriceRiskMember
ifrs_EquityReclassifiedIntoFinancialLiabilities
ifrs_EstimateOfContributionsExpectedToBePaidToPlan
ifrs_EstimatedCashFlowsOfFinancialAssetsReclassifiedOutOfAvailableforsaleFinancialAssets
ifrs_EstimatedCashFlowsOfFinancialAssetsReclassifiedOutOfFinancialAssetsAtFairValueThroughProfitOrLoss
ifrs_EstimatedFinancialEffectContingentLiabilitiesInBusinessCombination
ifrs_EstimatedFinancialEffectOfContingentAssets
ifrs_EstimatedFinancialEffectOfContingentLiabilities
ifrs_ExchangeDifferencesOnTranslationAbstract
ifrs_ExercisePriceOfOutstandingShareOptions
ifrs_ExercisePriceShareOptionsGranted
ifrs_ExpectedCashOutflowOnRedemptionOrRepurchaseOfPuttableFinancialInstruments
ifrs_ExpectedDividendAsPercentageShareOptionsGranted
ifrs_ExpectedDividendShareOptionsGranted
ifrs_ExpectedFutureMinimumSubleasePaymentsReceivableUnderNoncancellableSubleasesClassifiedAsOperatingLease
ifrs_ExpectedFutureMinimumSubleasePaymentsReceivableUnderNoncancellableSubleasesClassifiedFinanceLease
ifrs_ExpectedReimbursementContingentLiabilitiesInBusinessCombination
ifrs_ExpectedReimbursementOtherProvisions
ifrs_ExpectedReturnOnPlanAssetsDefinedBenefitPlan
ifrs_ExpectedReturnOnRecognisedAssetsForReimbursementRightDefinedBenefitPlan
ifrs_ExpenseArisingFromExplorationForAndEvaluationOfMineralResources
ifrs_ExpenseArisingFromInsuranceContracts
ifrs_ExpenseByNature
ifrs_ExpenseByNatureAbstract
ifrs_ExpenseDueToUnwindingOfDiscountOnProvisions
ifrs_ExpenseForPolicyholderClaimsAndBenefitsWithoutReductionForReinsuranceHeld
ifrs_ExpenseFromCashsettledSharebasedPaymentTransactionsInWhichGoodsOrServicesReceivedDidNotQualifyForRecognitionAsAssets
ifrs_ExpenseFromContinuingInvolvementInDerecognisedFinancialAssets
ifrs_ExpenseFromContinuingInvolvementInDerecognisedFinancialAssetsCumulativelyRecognised
ifrs_ExpenseFromEquitysettledSharebasedPaymentTransactionsInWhichGoodsOrServicesReceivedDidNotQualifyForRecognitionAsAssets
ifrs_ExpenseFromSharebasedPaymentTransactionsInWhichGoodsOrServicesReceivedDidNotQualifyForRecognitionAsAssets
ifrs_ExpenseFromSharebasedPaymentTransactionsInWhichGoodsOrServicesReceivedDidNotQualifyForRecognitionAsAssetsAbstract
ifrs_ExpenseFromSharebasedPaymentTransactionsWithEmployees
ifrs_ExpenseIncomeIncludedInProfitOrLossLiabilitiesUnderInsuranceContractsAndReinsuranceContractsIssued
ifrs_ExpenseIncomeOnDiscontinuedOperations
ifrs_ExpenseOfRestructuringActivities
ifrs_ExpenseRecognisedDuringPeriodForBadAndDoubtfulDebtsForRelatedPartyTransaction
ifrs_ExpensesArisingFromReinsuranceHeld
ifrs_ExpensesDiscontinuedOperations
ifrs_ExpensesOnFinancialAssetsReclassifiedOutOfAvailableforsaleFinancialAssetsRecognisedInOtherComprehensiveIncome
ifrs_ExpensesOnFinancialAssetsReclassifiedOutOfFinancialAssetsAtFairValueThroughProfitOrLossRecognisedInProfitOrLoss
ifrs_ExpensesRecognisedOnTransitionalLiabilities
ifrs_ExpensesRelatedToInterestsInJointVentures
ifrs_ExperienceAdjustmentsOnPlanAssets
ifrs_ExperienceAdjustmentsOnPlanAssetsAndPlanLiabilitiesAbstract
ifrs_ExperienceAdjustmentsOnPlanLiabilities
ifrs_ExplanationHowServiceConcessionArrangementHasBeenClassified
ifrs_ExplanationOfAccountingPoliciesAndMethodsOfComputationFollowedInInterimFinancialStatements
ifrs_ExplanationOfAccountingTreatmentAppliedToAnyFeeReceived
ifrs_ExplanationOfAdjustmentsBetweenDenominatorsUsedToCalculateBasicAndDilutedEarningsPerShare
ifrs_ExplanationOfAdjustmentsOfNumeratorToCalculateBasicEarningsPerShare
ifrs_ExplanationOfAdjustmentsOfNumeratorToCalculateDilutedEarningsPerShare
ifrs_ExplanationOfAdjustmentsThatWouldBeNecessaryToAchieveFairPresentation
ifrs_ExplanationOfAmountOfAnyGainRecognisedAndLineItemInStatementOfComprehensiveIncomeInWhichGainIsRecognisedInBargainPurchase
ifrs_ExplanationOfAnyChangesInRangeOfOutcomesUndiscountedAndReasonsForThoseChangesForContingentConsideration
ifrs_ExplanationOfAnyChangesInRecognisedAmountsOfContingentConsideration
ifrs_ExplanationOfAssetsAcquiredByWayOfGovernmentGrantAndInitiallyRecognisedAtFairValue
ifrs_ExplanationOfAssumptionAboutFutureWithSignificantRiskOfResultingInMaterialAdjustments
ifrs_ExplanationOfAssumptionsToMeasureInsuranceAssetsAndLiabilities
ifrs_ExplanationOfBodyOfAuthorisation
ifrs_ExplanationOfChangeInBusinessModelForManagingFinancialAssets
ifrs_ExplanationOfChangeInNameOfReportingEntityOrOtherMeansOfIdentificationFromEndOfPrecedingReportingPeriod
ifrs_ExplanationOfChangesInApplicableTaxRatesToPreviousAccountingPeriod
ifrs_ExplanationOfChangesInDescriptionOfRetirementBenefitPlan
ifrs_ExplanationOfCircumstancesUnderWhichOperatingLeasesClassifiedAsInvestmentProperty
ifrs_ExplanationOfContractualObligationsToPurchaseConstructOrDevelopInvestmentPropertyOrForRepairsMaintenanceOrEnhancements
ifrs_ExplanationOfDepartureFromIFRS
ifrs_ExplanationOfDetailsOfAnyInvestmentInEmployer
ifrs_ExplanationOfDetailsOfGuaranteesGivenOrReceivedOfOutstandingBalancesForRelatedPartyTransaction
ifrs_ExplanationOfDetailsOfInvestmentExceedingEitherFivePerCentOfNetAssetsAvailableForBenefitsOrFivePerCentOfAnyClassOrTypeOfSecurity
ifrs_ExplanationOfDirectMeasurementOfFairValueOfGoodsOrServicesReceived
ifrs_ExplanationOfDisposalOfInvestmentPropertyCarriedAtCostWithinFairValueModel
ifrs_ExplanationOfEffectOfChangeForBiologicalAssetForWhichFairValueBecomesReliablyMeasurable
ifrs_ExplanationOfEffectOfChangesInAssumptionsToMeasureInsuranceAssetsAndInsuranceLiabilities
ifrs_ExplanationOfEffectOfChangesInCompositionOfEntityDuringInterimPeriod
ifrs_ExplanationOfEffectOfChangesInPlanToSellNoncurrentAssetOrDisposalGroupHeldForSaleOnResultsOfOperationsForCurrentPeriod
ifrs_ExplanationOfEffectOfChangesInPlanToSellNoncurrentAssetOrDisposalGroupHeldForSaleOnResultsOfOperationsForPriorPeriod
ifrs_ExplanationOfEffectOfDecreaseOfOnePercentagePointAccumulatedPostemploymentBenefitObligationForMedicalCosts
ifrs_ExplanationOfEffectOfDecreaseOfOnePercentagePointAggregateCurrentServiceCostAndInterestCost
ifrs_ExplanationOfEffectOfIncreaseOfOnePercentagePointAccumulatedPostemploymentBenefitObligationForMedicalCosts
ifrs_ExplanationOfEffectOfIncreaseOfOnePercentagePointAggregateCurrentServiceCostAndInterestCost
ifrs_ExplanationOfEffectOfSharebasedPaymentsOnFinancialPositions
ifrs_ExplanationOfEffectOfSharebasedPaymentsOnProfitOrLoss
ifrs_ExplanationOfEffectOfTransitionOnReportedCashFlows
ifrs_ExplanationOfEffectOfTransitionOnReportedFinancialPerformance
ifrs_ExplanationOfEffectOfTransitionOnReportedFinancialPosition
ifrs_ExplanationOfEndOfReportingPeriodOfFinancialStatementsOfSubsidiaryWhenDifferentFromParent
ifrs_ExplanationOfEstimatedFinancialEffectContingentLiabilitiesInBusinessCombination
ifrs_ExplanationOfEstimatedFinancialEffectOfContingentAssets
ifrs_ExplanationOfFactAndBasisForPreparationOfFinancialStatementsWhenNotGoingConcernBasis
ifrs_ExplanationOfFactThatAggregateCarryingAmountOfGoodwillOrIntangibleAssetsWithIndefiniteUsefulLivesAllocatedToRecoverableAmountsIsSignificant
ifrs_ExplanationOfFactThatCarryingAmountOfGoodwillOrIntangibleAssetsWithIndefiniteUsefulLivesIsNotSignificant
ifrs_ExplanationOfFactThatEntitysOwnersOrOthersHavePowerToAmendFinancialStatementsAfterIssue
ifrs_ExplanationOfFactThatFinancialInstrumentsWhoseFairValuePreviouslyCouldNotBeReliablyMeasuredAreDerecognised
ifrs_ExplanationOfFactThatFinancialStatementsAndCorrespondingFiguresForPreviousPeriodsHaveBeenRestatedForChangesInGeneralPurchasingPowerOfFunctionalCurrency
ifrs_ExplanationOfFactThatFinancialStatementsForPreviousPeriodsNotPresented
ifrs_ExplanationOfFactThatMaximumAmountOfPaymentForContingentConsiderationArrangementsAndIndemnificationAssetsIsUnlimited
ifrs_ExplanationOfFactThatSharesHaveNoParValue
ifrs_ExplanationOfFactorsInReachingDecisionThatProvisionOfSupportToPreviouslyUnconsolidatedStructuredEntityResultedInObtainingControl
ifrs_ExplanationOfFactsAndCircumstancesIndicatingRareSituationForReclassificationOutOfFinancialAssetsAtFairValueThroughProfitOrLoss
ifrs_ExplanationOfFactsAndCircumstancesOfSaleOrReclassificationAndExpectedDisposalMannerAndTiming
ifrs_ExplanationOfFinancialEffectOfAdjustmentsRelatedToBusinessCombinations
ifrs_ExplanationOfFinancialEffectOfContingentLiabilities
ifrs_ExplanationOfFinancialEffectOfDepartureFromIFRS
ifrs_ExplanationOfFinancialEffectOfNonadjustingEventAfterReportingPeriod
ifrs_ExplanationOfFirsttimeAdoptionOfIFRS9
ifrs_ExplanationOfGainOrLossThatRelatesToIdentifiableAssetsAcquiredOrLiabilitiesAssumedInBusinessCombination
ifrs_ExplanationOfGainsLossesRecognisedWhenControlInSubsidiaryIsLost
ifrs_ExplanationOfHowAndWhyEntityHadAndCeasedToHaveFunctionalCurrencyForWhichReliableGeneralPriceIndexIsNotAvailableAndNoExchangeabilityWithStableForeignCurrencyExists
ifrs_ExplanationOfImpairmentLossRecognisedOrReversedByClassOfAssetsAndByReportableSegment
ifrs_ExplanationOfIndependentValuerUsedForRevaluationPropertyPlantAndEquipment
ifrs_ExplanationOfInterestRevenueReportedNetOfInterestExpense
ifrs_ExplanationOfInvestingAndFinancingTransactionsNotRequireUseOfCashOrCashEquivalents
ifrs_ExplanationOfIssuancesRepurchasesAndRepaymentsOfDebtAndEquitySecurities
ifrs_ExplanationOfMainClassesOfAssetsAffectedByImpairmentLossesOrReversalsOfImpairmentLosses
ifrs_ExplanationOfMainEventsAndCircumstancesThatLedToRecognitionOfImpairmentLossesAndReversalsOfImpairmentLosses
ifrs_ExplanationOfManagementJudgementsInApplyingEntitysAccountingPoliciesWithSignificantEffectOnRecognisedAmounts
ifrs_ExplanationOfMaterialEventsSubsequentToEndOfInterimPeriodThatHaveNotBeenReflected
ifrs_ExplanationOfMeasurementBasesUsedInPreparingFinancialStatements
ifrs_ExplanationOfModificationsModifiedSharebasedPaymentArrangements
ifrs_ExplanationOfNatureAndAdjustmentsToAmountsPreviouslyPresentedInDiscontinuedOperations
ifrs_ExplanationOfNatureAndAmountOfChangesInEstimatesOfAmountsReportedInPriorInterimPeriodsOrPriorFinancialYears
ifrs_ExplanationOfNatureAndAmountOfItemsAffectingAssetsLiabilitiesEquityNetIncomeOrCashFlowsThatAreUnusualBecauseOfTheirNatureSizeOrIncidence
ifrs_ExplanationOfNatureAndAmountOfSignificantTransactions
ifrs_ExplanationOfNatureAndExtentOfObligationsToAcquireOrBuildItemsOfPropertyPlantAndEquipment
ifrs_ExplanationOfNatureAndExtentOfObligationsToDeliverOrRightsToReceiveSpecifiedAssetsAtEndOfConcessionPeriod
ifrs_ExplanationOfNatureAndExtentOfObligationsToProvideOrRightsToExpectProvisionOfServices
ifrs_ExplanationOfNatureAndExtentOfOtherRightsAndObligations
ifrs_ExplanationOfNatureAndExtentOfRenewalAndTerminationOptions
ifrs_ExplanationOfNatureAndExtentOfRightsToUseSpecifiedAssets
ifrs_ExplanationOfNatureOfRequirementInIFRSAndConclusionWhyRequirementIsInConflictWithFairPresentation
ifrs_ExplanationOfNecessaryInformationNotAvailableAndDevelopmentCostExcessive
ifrs_ExplanationOfNotAppliedNewStandardsOrInterpretations
ifrs_ExplanationOfPeriodOverWhichManagementHasProjectedCashFlows
ifrs_ExplanationOfPossibilityOfReimbursementContingentLiabilities
ifrs_ExplanationOfPossibilityOfReimbursementContingentLiabilitiesInBusinessCombination
ifrs_ExplanationOfReasonForNondisclosureOfInformationRegardingContingentAsset
ifrs_ExplanationOfReasonForNondisclosureOfInformationRegardingContingentLiability
ifrs_ExplanationOfReasonForNondisclosureOfInformationRegardingProvision
ifrs_ExplanationOfReasonWhyItIsImpracticableToDetermineAmountsForCorrectionRelatedToPriorPeriodErrors
ifrs_ExplanationOfReasonWhyItIsImpracticableToDetermineAmountsOfAdjustmentsRelatedToChangeInAccountingPolicy
ifrs_ExplanationOfReasonsWhyCombinedFinancialStatementsArePrepared
ifrs_ExplanationOfRecognitionAndMeasurementOfSharebasedPaymentExpenseOnBasisOfReasonableAllocationOfExpensesRecognisedForGroup
ifrs_ExplanationOfRelationshipsBetweenParentsAndEntity
ifrs_ExplanationOfRestrictionsOnDistributionOfRevaluationSurplusForIntangibleAssets
ifrs_ExplanationOfRestrictionsOnRemittanceOfIncomeAndDisposalProceedsOfInvestmentProperty
ifrs_ExplanationOfRevaluationMethodsAndAssumptionsPropertyPlantAndEquipment
ifrs_ExplanationOfSeasonalityOrCyclicalityOfInterimOperations
ifrs_ExplanationOfShareOptionsInSharebasedPaymentArrangement
ifrs_ExplanationOfSignificantDecreaseInLevelOfGovernmentGrantsForAgriculturalActivity
ifrs_ExplanationOfSignificantDifferencesInAmountPresentedInStatementOfComprehensiveIncomeAndAmountsReportedToTaxAuthorities
ifrs_ExplanationOfSignificantTermsOfServiceConcessionArrangementThatMayAffectAmountTimingAndCertaintyOfFutureCashFlows
ifrs_ExplanationOfTermsAndConditionsOfOutstandingBalancesForRelatedPartyTransaction
ifrs_ExplanationOfTransactionsLinkedTogether
ifrs_ExplanationOfTransactionsRecognisedSeparatelyFromAcquisitionOfAssetsAndAssumptionOfLiabilitiesInBusinessCombination
ifrs_ExplanationOfTransfersOfCumulativeGainOrLossWithinEquityOfInvestmentsInEquityDesignatedAsMeasuredAtFairValueThroughOtherComprehensiveIncome
ifrs_ExplanationOfUnfulfilledConditionsAndOtherContingenciesAttachingToGovernmentAssistance
ifrs_ExplanationOfUnguaranteedResidualValuesAccruingToBenefitOfLessor
ifrs_ExplanationOfUsesOfAnySimplificationsInMeasuringDefinedBenefitObligation
ifrs_ExplanationOfValueAssignedToKeyAssumption
ifrs_ExplanationOfWhetherBreachesWhichPermittedLenderToDemandAcceleratedRepaymentWereRemediedOrTermsOfLoansPayableWereRenegotiatedBeforeFinancialStatementsWereAuthorisedForIssue
ifrs_ExplanationOfWhetherEntityAppliesExemptionInIAS2425
ifrs_ExplanationOfWhetherEntityHasObligationToReturnCollateralSoldOrRepledged
ifrs_ExplanationOfWhetherParticipantsContributeToRetirementBenefitPlan
ifrs_ExplanationOrCrossReferencesToInterimFinancialStatementDisclosuresForFirsttimeAdopter
ifrs_ExplanationWhenGreatestTransferActivityTookPlace
ifrs_ExplanationWhichDisclosuresCouldNotBeMadeAndReasonsWhyTheyCannotBeMadeIfInitialAccountingForBusinessCombinationIsIncomplete
ifrs_ExplanationWhyFairValueBecomesReliableForBiologicalAssetsPreviouslyMeasuredAtCost
ifrs_ExplanationWhyFairValueCannotBeReliablyMeasuredForBiologicalAssetsAtCost
ifrs_ExplanationWhyFairValueCannotBeReliablyMeasuredForInvestmentPropertyAtCostWithinFairValueModel
ifrs_ExplanationWhyFairValueCannotBeReliablyMeasuredForInvestmentPropertyCostModel
ifrs_ExplanationWhyFinancialStatementsNotPreparedOnGoingConcernBasis
ifrs_ExpropriationOfMajorAssetsByGovernmentMember
ifrs_ExternalCreditGradesAxis
ifrs_ExternalCreditGradesMember
ifrs_FactoringOfReceivablesMember
ifrs_FactorsUsedToIdentifyEntitysReportableSegments
ifrs_FairValueAsDeemedCostAxis
ifrs_FairValueGainLossThatWouldHaveBeenRecognisedInProfitOrLossOrOtherComprehensiveIncomeIfFinancialAssetsHadNotBeenReclassifiedFirstApplicationOfIFRS9
ifrs_FairValueGainLossThatWouldHaveBeenRecognisedInProfitOrLossOrOtherComprehensiveIncomeIfFinancialLiabilitiesHadNotBeenReclassifiedFirstApplicationOfIFRS9
ifrs_FairValueGainsLossesOnFinancialAssetsReclassifiedOutOfAvailableforsaleFinancialAssetsNotRecognisedInOtherComprehensiveIncome
ifrs_FairValueGainsLossesOnFinancialAssetsReclassifiedOutOfAvailableforsaleFinancialAssetsRecognisedInOtherComprehensiveIncome
ifrs_FairValueGainsLossesOnFinancialAssetsReclassifiedOutOfFinancialAssetsAtFairValueThroughProfitOrLossNotRecognisedInProfitOrLoss
ifrs_FairValueGainsLossesOnFinancialAssetsReclassifiedOutOfFinancialAssetsAtFairValueThroughProfitOrLossRecognisedInProfitOrLoss
ifrs_FairValueGainsOrLossThatWouldHaveBeenRecognisedInProfitOrLossIfFinancialAssetsHadNotBeenReclassified
ifrs_FairValueHedgesMember
ifrs_FairValueLessCostsToSellOfAgriculturalProduceHarvestedDuringPeriod
ifrs_FairValueModelMember
ifrs_FairValueOfAcquiredReceivables
ifrs_FairValueOfAssetsRepresentingContinuingInvolvementInDerecognisedFinancialAssets
ifrs_FairValueOfAssociatedFinancialLiabilities
ifrs_FairValueOfFinancialAssetsReclassifiedAsMeasuredAtAmortisedCost
ifrs_FairValueOfFinancialAssetsReclassifiedAsMeasuredAtAmortisedCostFirstApplicationOfIFRS9
ifrs_FairValueOfFinancialLiabilitiesReclassifiedAsMeasuredAtAmortisedCostFirstApplicationOfIFRS9
ifrs_FairValueOfInvestmentInJointVenturesWherePriceQuotationsPublished
ifrs_FairValueOfInvestmentsInAssociatesWherePriceQuotationsPublished
ifrs_FairValueOfInvestmentsInEquityInstrumentsDesignatedAsMeasuredAtFairValueThroughOtherComprehensiveIncome
ifrs_FairValueOfInvestmentsInEquityInstrumentsMeasuredAtFairValueThroughOtherComprehensiveIncomeAtDateOfDerecognition
ifrs_FairValueOfLiabilitiesRepresentingContinuingInvolvementInDerecognisedFinancialAssets
ifrs_FairValueOfPropertyPlantAndEquipmentMateriallyDifferentFromCarryingAmount
ifrs_FairValueOfTransferredFinancialAssetsAssociatedFinancialLiabilitiesThatAreNotDerecognisedInTheirEntirety
ifrs_FairValueOfTransferredFinancialAssetsAssociatedFinancialLiabilitiesThatAreNotDerecognisedInTheirEntiretyAbstract
ifrs_FairValueOfTransferredFinancialAssetsThatAreNotDerecognisedInTheirEntirety
ifrs_FeeAndCommissionExpense
ifrs_FeeAndCommissionExpenseAbstract
ifrs_FeeAndCommissionIncome
ifrs_FeeAndCommissionIncomeAbstract
ifrs_FeeAndCommissionIncomeExpense
ifrs_FeeAndCommissionIncomeExpenseAbstract
ifrs_FeeExpenseArisingFromFinancialLiabilitiesNotAtFairValueThroughProfitOrLoss
ifrs_FeeIncomeAndExpenseAbstract
ifrs_FeeIncomeArisingFromFinancialAssetsMeasuredAtAmortisedCost
ifrs_FeeIncomeExpenseArisingFromFinancialAssetsOrFinancialLiabilitiesNotAtFairValueThroughProfitOrLoss
ifrs_FeeIncomeExpenseArisingFromTrustAndFiduciaryActivities
ifrs_FinanceCosts
ifrs_FinanceCostsPaidClassifiedAsOperatingActivities
ifrs_FinanceIncome
ifrs_FinanceIncomeCost
ifrs_FinanceIncomeReceivedClassifiedAsOperatingActivities
ifrs_FinanceLeaseLiabilities
ifrs_FinancialAssets
ifrs_FinancialAssetsAtAmortisedCost
ifrs_FinancialAssetsAtAmortisedCostCategoryMember
ifrs_FinancialAssetsAtAmortisedCostMember
ifrs_FinancialAssetsAtFairValue
ifrs_FinancialAssetsAtFairValueMember
ifrs_FinancialAssetsAtFairValueThroughOtherComprehensiveIncome
ifrs_FinancialAssetsAtFairValueThroughOtherComprehensiveIncomeCategoryMember
ifrs_FinancialAssetsAtFairValueThroughProfitOrLoss
ifrs_FinancialAssetsAtFairValueThroughProfitOrLossAbstract
ifrs_FinancialAssetsAtFairValueThroughProfitOrLossCategoryMember
ifrs_FinancialAssetsAtFairValueThroughProfitOrLossClassifiedAsHeldForTrading
ifrs_FinancialAssetsAtFairValueThroughProfitOrLossClassifiedAsHeldForTradingCategoryMember
ifrs_FinancialAssetsAtFairValueThroughProfitOrLossDesignatedAsUponInitialRecognition
ifrs_FinancialAssetsAtFairValueThroughProfitOrLossDesignatedUponInitialRecognitionCategoryMember
ifrs_FinancialAssetsAtFairValueThroughProfitOrLossMandatorilyMeasuredAtFairValue
ifrs_FinancialAssetsAtFairValueThroughProfitOrLossMandatorilyMeasuredAtFairValueCategoryMember
ifrs_FinancialAssetsAvailableforsale
ifrs_FinancialAssetsAvailableforsaleCategoryMember
ifrs_FinancialAssetsCategoryMember
ifrs_FinancialAssetsCollectivelyAssessedForCreditLossesMember
ifrs_FinancialAssetsDesignatedAsMeasuredAtFairValueAbstract
ifrs_FinancialAssetsHeldForManagingLiquidityRisk
ifrs_FinancialAssetsImpairedMember
ifrs_FinancialAssetsIndividuallyAssessedForCreditLossesMember
ifrs_FinancialAssetsMember
ifrs_FinancialAssetsNeitherPastDueNorImpairedMember
ifrs_FinancialAssetsOutsideScopeOfIFRS7Member
ifrs_FinancialAssetsPastDueButNotImpairedMember
ifrs_FinancialAssetsPledgedAsCollateralForLiabilitiesOrContingentLiabilities
ifrs_FinancialAssetsPreviouslyDesignatedAtFairValueThroughProfitOrLossButNoLongerSoDesignatedFirstApplicationOfIFRS9
ifrs_FinancialAssetsPreviouslyDesignatedAtFairValueThroughProfitOrLossReclassifiedDueToRequirementsOfIFRS9FirstApplicationOfIFRS9
ifrs_FinancialAssetsPreviouslyDesignatedAtFairValueThroughProfitOrLossReclassifiedVoluntarilyFirstApplicationOfIFRS9
ifrs_FinancialAssetsReclassifiedOutOfAvailableforsaleFinancialAssetsAtFairValue
ifrs_FinancialAssetsReclassifiedOutOfAvailableforsaleFinancialAssetsCarryingAmount
ifrs_FinancialAssetsReclassifiedOutOfFinancialAssetsAtFairValueThroughProfitOrLossAtFairValue
ifrs_FinancialAssetsReclassifiedOutOfFinancialAssetsAtFairValueThroughProfitOrLossCarryingAmount
ifrs_FinancialAssetsRecognisedAsOfAcquisitionDate
ifrs_FinancialAssetsThatAreDebtInstrumentsAtCost
ifrs_FinancialAssetsThatAreEquityInstrumentsAtCost
ifrs_FinancialAssetsThatAreIndividuallyDeterminedToBeImpairedFairValueOfCollateralHeldAndOtherCreditEnhancements
ifrs_FinancialAssetsTypeMember
ifrs_FinancialAssetsWhichDoNotQualifyForDerecognitionAxis
ifrs_FinancialAssetsWhichDoNotQualifyForDerecognitionMember
ifrs_FinancialEffectOfChangesInAccountingPolicyMember
ifrs_FinancialEffectOfCorrectionsOfAccountingErrorsMember
ifrs_FinancialEffectOfTransitionFromPreviousGAAPToIFRSsAxis
ifrs_FinancialForecastOfCashFlowsForCashgeneratingUnitSignificantUnobservableInputsAssets
ifrs_FinancialForecastOfCashFlowsForCashgeneratingUnitSignificantUnobservableInputsEntitysOwnEquityInstruments
ifrs_FinancialForecastOfCashFlowsForCashgeneratingUnitSignificantUnobservableInputsLiabilities
ifrs_FinancialForecastOfProfitOrLossForCashgeneratingUnitSignificantUnobservableInputsAssets
ifrs_FinancialForecastOfProfitOrLossForCashgeneratingUnitSignificantUnobservableInputsEntitysOwnEquityInstruments
ifrs_FinancialForecastOfProfitOrLossForCashgeneratingUnitSignificantUnobservableInputsLiabilities
ifrs_FinancialInstrumentsAtAmortisedCostMember
ifrs_FinancialInstrumentsAtFairValueMember
ifrs_FinancialInstrumentsDesignatedAsHedgingInstrumentsAtFairValue
ifrs_FinancialInstrumentsMeasuredInLevel1OfFairValueHierarchy
ifrs_FinancialInstrumentsMeasuredInLevel2OfFairValueHierarchy
ifrs_FinancialInstrumentsMeasuredInLevel3OfFairValueHierarchy
ifrs_FinancialInstrumentsOutsideScopeOfIFRS7Member
ifrs_FinancialInstrumentsSubjectToEnforceableMasterNettingArrangementOrSimilarAgreementNotSetOffAgainstFinancialAssets
ifrs_FinancialInstrumentsSubjectToEnforceableMasterNettingArrangementOrSimilarAgreementNotSetOffAgainstFinancialLiabilities
ifrs_FinancialInstrumentsWhoseFairValuePreviouslyCouldNotBeReliablyMeasuredAtTimeOfDerecognition
ifrs_FinancialLiabilities
ifrs_FinancialLiabilitiesAtAmortisedCost
ifrs_FinancialLiabilitiesAtAmortisedCostCategoryMember
ifrs_FinancialLiabilitiesAtAmortisedCostMember
ifrs_FinancialLiabilitiesAtFairValue
ifrs_FinancialLiabilitiesAtFairValueMember
ifrs_FinancialLiabilitiesAtFairValueThroughProfitOrLoss
ifrs_FinancialLiabilitiesAtFairValueThroughProfitOrLossAbstract
ifrs_FinancialLiabilitiesAtFairValueThroughProfitOrLossCategoryMember
ifrs_FinancialLiabilitiesAtFairValueThroughProfitOrLossClassifiedAsHeldForTrading
ifrs_FinancialLiabilitiesAtFairValueThroughProfitOrLossDesignatedAsUponInitialRecognition
ifrs_FinancialLiabilitiesAtFairValueThroughProfitOrLossDesignatedUponInitialRecognitionCategoryMember
ifrs_FinancialLiabilitiesAtFairValueThroughProfitOrLossThatMeetDefinitionOfHeldForTradingCategoryMember
ifrs_FinancialLiabilitiesCategoryMember
ifrs_FinancialLiabilitiesMember
ifrs_FinancialLiabilitiesOutsideScopeOfIFRS7Member
ifrs_FinancialLiabilitiesPreviouslyDesignatedAtFairValueThroughProfitOrLossButNoLongerSoDesignatedFirstApplicationOfIFRS9
ifrs_FinancialLiabilitiesPreviouslyDesignatedAtFairValueThroughProfitOrLossReclassifiedDueToRequirementsOfIFRS9FirstApplicationOfIFRS9
ifrs_FinancialLiabilitiesPreviouslyDesignatedAtFairValueThroughProfitOrLossReclassifiedVoluntarilyFirstApplicationOfIFRS9
ifrs_FinancialLiabilitiesReclassifiedIntoEquity
ifrs_FinancialLiabilitiesRecognisedAsOfAcquisitionDate
ifrs_FinancialLiabilitiesTypeMember
ifrs_FinishedGoods
ifrs_FixturesAndFittings
ifrs_FixturesAndFittingsMember
ifrs_ForeignCountriesMember
ifrs_ForeignDefinedBenefitPlansMember
ifrs_ForeignExchangeOrInterestRateRisksInFirmCommitmentOrHighlyProbableForecastTransactionsMember
ifrs_ForeignExchangeRatesAbstract
ifrs_ForeignExchangeRisksInNetInvestmentInForeignOperationsMember
ifrs_ForwardContractMember
ifrs_FutureFinanceChargeOnFinanceLease
ifrs_FuturesContractMember
ifrs_GainLossArisingFromDerecognitionOfFinancialAssetsMeasuredAtAmortisedCost
ifrs_GainLossArisingFromDerecognitionOfFinancialAssetsMeasuredAtAmortisedCostAbstract
ifrs_GainLossArisingFromDifferenceBetweenCarryingAmountOfFinancialLiabilityExtinguishedAndConsiderationPaid
ifrs_GainLossOfDerecognisedFinancialAssetsAtDateOfTransfer
ifrs_GainLossOfDerecognisedFinancialAssetsRepresentingGreatestTransferActivity
ifrs_GainLossOnChangesInEffectOfLimitingNetDefinedBenefitAssetToAssetCeiling
ifrs_GainLossOnChangesInEffectOfLimitingReimbursementRightsToAssetCeiling
ifrs_GainLossOnRemeasurementOfNetDefinedBenefitLiabilityAsset
ifrs_GainLossOnRemeasurementOfNetDefinedBenefitLiabilityAssetAbstract
ifrs_GainLossOnRemeasurementOfReimbursementRights
ifrs_GainLossOnRemeasurementOfReimbursementRightsAbstract
ifrs_GainLossRecognisedAsResultOfRemeasuringToFairValueEquityInterestInAcquireeHeldByAcquirerBeforeBusinessCombination
ifrs_GainLossRecognisedOnFinancialInstrumentsWhoseFairValuePreviouslyCouldNotBeReliablyMeasured
ifrs_GainLossRecognisedOnMeasurementToFairValueLessCostsToSellOrOnDisposalOfAssetsOrDisposalGroupsConstitutingDiscontinuedOperation
ifrs_GainLossThatRelatesToIdentifiableAssetsAcquiredOrLiabilitiesAssumedInBusinessCombination
ifrs_GainRecognisedInBargainPurchaseTransaction
ifrs_GainsArisingFromDerecognitionOfFinancialAssetsMeasuredAtAmortisedCost
ifrs_GainsLossesArisingFromDifferenceBetweenPreviousCarryingAmountAndFairValueOfFinancialAssetsReclassifiedAsMeasuredAtFairValue
ifrs_GainsLossesArisingFromSettlementsNetDefinedBenefitLiabilityAsset
ifrs_GainsLossesForPeriodIncludedInProfitOrLossForAssetsHeldAtEndOfReportingPeriod
ifrs_GainsLossesOnAvailableforsaleFinancialAssets
ifrs_GainsLossesOnCashFlowHedgesBeforeTax
ifrs_GainsLossesOnCashFlowHedgesNetOfTax
ifrs_GainsLossesOnChangeInFairValueEstimatesOfBiologicalAssetsForCurrentPeriod
ifrs_GainsLossesOnChangeInFairValueOfDerivatives
ifrs_GainsLossesOnDisposalsOfInvestmentPropertyCarriedAtCostWithinFairValueModel
ifrs_GainsLossesOnDisposalsOfInvestments
ifrs_GainsLossesOnDisposalsOfInvestmentsAbstract
ifrs_GainsLossesOnDisposalsOfNoncurrentAssets
ifrs_GainsLossesOnDisposalsOfNoncurrentAssetsAbstract
ifrs_GainsLossesOnDisposalsOfOtherNoncurrentAssets
ifrs_GainsLossesOnDisposalsOfPropertyPlantAndEquipment
ifrs_GainsLossesOnDisposalsOfPropertyPlantAndEquipmentAbstract
ifrs_GainsLossesOnExchangeDifferencesOnTranslationBeforeTax
ifrs_GainsLossesOnExchangeDifferencesOnTranslationNetOfTax
ifrs_GainsLossesOnExchangeDifferencesOnTranslationRecognisedInProfitOrLoss
ifrs_GainsLossesOnFairValueAdjustmentAttributableToPhysicalChangesBiologicalAssets
ifrs_GainsLossesOnFairValueAdjustmentAttributableToPriceChangesBiologicalAssets
ifrs_GainsLossesOnFairValueAdjustmentBiologicalAssets
ifrs_GainsLossesOnFairValueAdjustmentBiologicalAssetsAbstract
ifrs_GainsLossesOnFairValueAdjustmentInvestmentProperty
ifrs_GainsLossesOnFinancialAssetsAtAmortisedCost
ifrs_GainsLossesOnFinancialAssetsAtFairValueThroughOtherComprehensiveIncome
ifrs_GainsLossesOnFinancialAssetsAtFairValueThroughProfitOrLoss
ifrs_GainsLossesOnFinancialAssetsAtFairValueThroughProfitOrLossClassifiedAsHeldForTrading
ifrs_GainsLossesOnFinancialAssetsAtFairValueThroughProfitOrLossDesignatedAsUponInitialRecognition
ifrs_GainsLossesOnFinancialAssetsAtFairValueThroughProfitOrLossMandatorilyMeasuredAtFairValue
ifrs_GainsLossesOnFinancialAssetsReclassifiedOutOfAvailableforsaleFinancialAssetsRecognisedInOtherComprehensiveIncome
ifrs_GainsLossesOnFinancialAssetsReclassifiedOutOfFinancialAssetsAtFairValueThroughProfitOrLossRecognisedInProfitOrLoss
ifrs_GainsLossesOnFinancialInstrumentsAbstract
ifrs_GainsLossesOnFinancialLiabilitiesAtAmortisedCost
ifrs_GainsLossesOnFinancialLiabilitiesAtFairValueThroughProfitOrLoss
ifrs_GainsLossesOnFinancialLiabilitiesAtFairValueThroughProfitOrLossClassifiedAsHeldForTrading
ifrs_GainsLossesOnFinancialLiabilitiesAtFairValueThroughProfitOrLossDesignatedAsUponInitialRecognition
ifrs_GainsLossesOnHedgedItemAttributableToHedgedRisk
ifrs_GainsLossesOnHedgesOfNetInvestmentsInForeignOperationsBeforeTax
ifrs_GainsLossesOnHedgesOfNetInvestmentsInForeignOperationsNetOfTax
ifrs_GainsLossesOnHedgingInstrument
ifrs_GainsLossesOnHeldtomaturityInvestments
ifrs_GainsLossesOnIneffectivenessOfCashFlowHedgesRecognisedInProfitOrLoss
ifrs_GainsLossesOnIneffectivenessOfHedgesOfNetInvestmentsInForeignOperations
ifrs_GainsLossesOnInitialRecognitionOfBiologicalAssetsForCurrentPeriod
ifrs_GainsLossesOnLitigationSettlements
ifrs_GainsLossesOnLitigationSettlementsAbstract
ifrs_GainsLossesOnLoansAndReceivables
ifrs_GainsLossesOnNetMonetaryPosition
ifrs_GainsLossesOnRemeasuringAvailableforsaleFinancialAssetsBeforeTax
ifrs_GainsLossesOnRemeasuringAvailableforsaleFinancialAssetsNetOfTax
ifrs_GainsLossesOnSubsequentIncreaseInFairValueLessCostsToSellNotInExcessOfRecognisedCumulativeImpairmentLoss
ifrs_GainsLossesRecognisedInOtherComprehensiveIncomeFairValueMeasurementAssets
ifrs_GainsLossesRecognisedInOtherComprehensiveIncomeFairValueMeasurementEntitysOwnEquityInstruments
ifrs_GainsLossesRecognisedInOtherComprehensiveIncomeFairValueMeasurementLiabilities
ifrs_GainsLossesRecognisedInOtherComprehensiveIncomeForFinancialInstrumentsMeasuredInLevel3OfFairValueHierarchy
ifrs_GainsLossesRecognisedInProfitOrLossAttributableToChangeInUnrealisedGainsOrLossesForAssetsHeldAtEndOfPeriodFairValueMeasurement
ifrs_GainsLossesRecognisedInProfitOrLossAttributableToChangeInUnrealisedGainsOrLossesForEntitysOwnEquityInstrumentsHeldAtEndOfPeriodFairValueMeasurement
ifrs_GainsLossesRecognisedInProfitOrLossAttributableToChangeInUnrealisedGainsOrLossesForLiabilitiesHeldAtEndOfPeriodFairValueMeasurement
ifrs_GainsLossesRecognisedInProfitOrLossFairValueMeasurementAssets
ifrs_GainsLossesRecognisedInProfitOrLossFairValueMeasurementEntitysOwnEquityInstruments
ifrs_GainsLossesRecognisedInProfitOrLossFairValueMeasurementLiabilities
ifrs_GainsLossesRecognisedInProfitOrLossForFinancialInstrumentsMeasuredInLevel3OfFairValueHierarchy
ifrs_GainsLossesRecognisedInProfitOrLossOnBuyingReinsurance
ifrs_GainsLossesRecognisedWhenControlInSubsidiaryIsLost
ifrs_GainsOnDisposalsOfInvestments
ifrs_GainsOnDisposalsOfNoncurrentAssets
ifrs_GainsOnDisposalsOfPropertyPlantAndEquipment
ifrs_GainsOnLitigationSettlements
ifrs_GeographicalAreasAxis
ifrs_GeographicalAreasMember
ifrs_Goodwill
ifrs_GoodwillDerecognisedWithoutHavingPreviouslyBeenIncludedInDisposalGroupClassifiedAsHeldForSale
ifrs_GoodwillExpectedDeductibleForTaxPurposes
ifrs_GoodwillMember
ifrs_GovernmentDebtInstrumentsHeld
ifrs_GovernmentGrants
ifrs_GovernmentMember
ifrs_GrossAmountArisingFromInsuranceContractsMember
ifrs_GrossAmountDueFromCustomersForContractWorkAsAsset
ifrs_GrossAmountDueToCustomersForContractWorkAsLiability
ifrs_GrossCarryingAmountMember
ifrs_GrossContractualAmountsReceivableForAcquiredReceivables
ifrs_GrossFinanceLeaseObligations
ifrs_GrossFinancialAssetsSetOffAgainstFinancialLiabilitiesSubjectToOffsettingEnforceableMasterNettingArrangementsOrSimilarAgreements
ifrs_GrossFinancialAssetsSubjectToOffsettingEnforceableMasterNettingArrangementsOrSimilarAgreements
ifrs_GrossFinancialLiabilitiesSetOffAgainstFinancialAssetsSubjectToOffsettingEnforceableMasterNettingArrangementsOrSimilarAgreements
ifrs_GrossFinancialLiabilitiesSubjectToOffsettingEnforceableMasterNettingArrangementsOrSimilarAgreements
ifrs_GrossInvestmentInFinanceLease
ifrs_GrossLoanCommitments
ifrs_GrossProfit
ifrs_GuaranteesMember
ifrs_HedgeFundInvestmentsMember
ifrs_HedgesOfNetInvestmentInForeignOperationsMember
ifrs_HedgesOfNetInvestmentsInForeignOperationsAbstract
ifrs_HeldtomaturityInvestments
ifrs_HeldtomaturityInvestmentsCategoryMember
ifrs_HistoricalVolatilityForSharesSignificantUnobservableInputsAssets
ifrs_HistoricalVolatilityForSharesSignificantUnobservableInputsEntitysOwnEquityInstruments
ifrs_HistoricalVolatilityForSharesSignificantUnobservableInputsLiabilities
ifrs_IFRSsMember
ifrs_IdentifiableAssetsAcquiredLiabilitiesAssumed
ifrs_IdentifiableIntangibleAssetsRecognisedAsOfAcquisitionDate
ifrs_IdentityOfPriceIndex
ifrs_ImpairmentLoss
ifrs_ImpairmentLossOnFinancialAssets
ifrs_ImpairmentLossRecognisedInOtherComprehensiveIncome
ifrs_ImpairmentLossRecognisedInOtherComprehensiveIncomeIntangibleAssetsOtherThanGoodwill
ifrs_ImpairmentLossRecognisedInOtherComprehensiveIncomePropertyPlantAndEquipment
ifrs_ImpairmentLossRecognisedInProfitOrLoss
ifrs_ImpairmentLossRecognisedInProfitOrLossBiologicalAssets
ifrs_ImpairmentLossRecognisedInProfitOrLossDeferredAcquisitionCostsArisingFromInsuranceContracts
ifrs_ImpairmentLossRecognisedInProfitOrLossGoodwill
ifrs_ImpairmentLossRecognisedInProfitOrLossIntangibleAssetsAndGoodwill
ifrs_ImpairmentLossRecognisedInProfitOrLossIntangibleAssetsOtherThanGoodwill
ifrs_ImpairmentLossRecognisedInProfitOrLossInvestmentProperty
ifrs_ImpairmentLossRecognisedInProfitOrLossPropertyPlantAndEquipment
ifrs_ImpairmentLossReversalOfImpairmentLossRecognisedInProfitOrLoss
ifrs_ImpairmentOfFinancialAssetsAxis
ifrs_ImplicationsOfSurplusOrDeficitOnMultiemployerPlanForEntity
ifrs_IncomeApproachMember
ifrs_IncomeArisingFromExplorationForAndEvaluationOfMineralResources
ifrs_IncomeArisingFromInsuranceContracts
ifrs_IncomeExpenseGainsOrLossesOfFinancialInstrumentsAbstract
ifrs_IncomeFromContinuingInvolvementInDerecognisedFinancialAssets
ifrs_IncomeFromContinuingInvolvementInDerecognisedFinancialAssetsCumulativelyRecognised
ifrs_IncomeFromContinuingOperationsAttributableToOwnersOfParent
ifrs_IncomeFromContractsWithReinsurers
ifrs_IncomeFromDiscontinuedOperationsAttributableToOwnersOfParent
ifrs_IncomeFromReimbursementsUnderInsurancePolicies
ifrs_IncomeFromStructuredEntities
ifrs_IncomeOnFinancialAssetsReclassifiedOutOfAvailableforsaleFinancialAssetsRecognisedInOtherComprehensiveIncome
ifrs_IncomeOnFinancialAssetsReclassifiedOutOfFinancialAssetsAtFairValueThroughProfitOrLossRecognisedInProfitOrLoss
ifrs_IncomeStatementAbstract
ifrs_IncomeTaxConsequencesOfDividendsProposedOrDeclaredBeforeFinancialStatementsAuthorisedForIssueNotRecognisedAsLiability
ifrs_IncomeTaxExpenseContinuingOperations
ifrs_IncomeTaxRelatingToAvailableforsaleFinancialAssetsOfOtherComprehensiveIncome
ifrs_IncomeTaxRelatingToCashFlowHedgesOfOtherComprehensiveIncome
ifrs_IncomeTaxRelatingToChangesInFairValueOfFinancialLiabilityAttributableToChangeInCreditRiskOfLiabilityOfOtherComprehensiveIncome
ifrs_IncomeTaxRelatingToChangesInRevaluationSurplusOfOtherComprehensiveIncome
ifrs_IncomeTaxRelatingToComponentsOfOtherComprehensiveIncome
ifrs_IncomeTaxRelatingToComponentsOfOtherComprehensiveIncomeAbstract
ifrs_IncomeTaxRelatingToComponentsOfOtherComprehensiveIncomeThatWillBeReclassifiedToProfitOrLoss
ifrs_IncomeTaxRelatingToComponentsOfOtherComprehensiveIncomeThatWillBeReclassifiedToProfitOrLossAbstract
ifrs_IncomeTaxRelatingToComponentsOfOtherComprehensiveIncomeThatWillNotBeReclassifiedToProfitOrLoss
ifrs_IncomeTaxRelatingToComponentsOfOtherComprehensiveIncomeThatWillNotBeReclassifiedToProfitOrLossAbstract
ifrs_IncomeTaxRelatingToDefinedBenefitPlansOfOtherComprehensiveIncome
ifrs_IncomeTaxRelatingToExchangeDifferencesOnTranslationOfOtherComprehensiveIncome
ifrs_IncomeTaxRelatingToHedgesOfNetInvestmentsInForeignOperationsOfOtherComprehensiveIncome
ifrs_IncomeTaxRelatingToInvestmentsInEquityInstrumentsOfOtherComprehensiveIncome
ifrs_IncomeTaxRelatingToLimitInIAS19Paragraph58BOfOtherComprehensiveIncome
ifrs_IncomeTaxRelatingToOtherIndividuallyImmaterialComponentsOfOtherComprehensiveIncome
ifrs_IncomeTaxRelatingToRemeasurementsOfDefinedBenefitPlansOfOtherComprehensiveIncome
ifrs_IncomeTaxRelatingToShareOfOtherComprehensiveIncomeOfAssociatesAndJointVenturesAccountedForUsingEquityMethod
ifrs_IncomeTaxRelatingToShareOfOtherComprehensiveIncomeOfAssociatesAndJointVenturesAccountedForUsingEquityMethodAbstract
ifrs_IncomeTaxRelatingToShareOfOtherComprehensiveIncomeOfAssociatesAndJointVenturesAccountedForUsingEquityMethodThatWillBeReclassifiedToProfitOrLoss
ifrs_IncomeTaxRelatingToShareOfOtherComprehensiveIncomeOfAssociatesAndJointVenturesAccountedForUsingEquityMethodThatWillNotBeReclassifiedToProfitOrLoss
ifrs_IncomeTaxesPaidClassifiedAsOperatingActivities
ifrs_IncomeTaxesPaidRefund
ifrs_IncomeTaxesPaidRefundAbstract
ifrs_IncomeTaxesPaidRefundClassifiedAsFinancingActivities
ifrs_IncomeTaxesPaidRefundClassifiedAsInvestingActivities
ifrs_IncomeTaxesPaidRefundClassifiedAsOperatingActivities
ifrs_IncomeTaxesRefundClassifiedAsOperatingActivities
ifrs_IncreaseDecreaseDueToChangesInAccountingPolicyAndCorrectionsOfPriorPeriodErrorsMember
ifrs_IncreaseDecreaseDueToChangesInAccountingPolicyRequiredByIFRSsMember
ifrs_IncreaseDecreaseDueToDepartureFromRequirementOfIFRSMember
ifrs_IncreaseDecreaseDueToVoluntaryChangesInAccountingPolicyMember
ifrs_IncreaseDecreaseInAccountingEstimate
ifrs_IncreaseDecreaseInAccumulatedDeferredTaxRecognisedInOtherComprehensiveIncomeDueToChangeInTaxRate
ifrs_IncreaseDecreaseInAggregateDifferenceBetweenFairValueAtInitialRecognitionAndAmountDeterminedUsingValuationTechniqueYetToBeRecognised
ifrs_IncreaseDecreaseInAllowanceAccountForCreditLossesOfFinancialAssets
ifrs_IncreaseDecreaseInCashAndCashEquivalents
ifrs_IncreaseDecreaseInCashAndCashEquivalentsBeforeEffectOfExchangeRateChanges
ifrs_IncreaseDecreaseInCashAndCashEquivalentsDiscontinuedOperations
ifrs_IncreaseDecreaseInContingentLiabilitiesRecognisedInBusinessCombination
ifrs_IncreaseDecreaseInDeferredAcquisitionCostsArisingFromInsuranceContracts
ifrs_IncreaseDecreaseInDeferredTaxLiabilityAsset
ifrs_IncreaseDecreaseInDefinedBenefitObligationDueToReasonablyPossibleDecreaseInActuarialAssumption
ifrs_IncreaseDecreaseInDefinedBenefitObligationDueToReasonablyPossibleIncreaseInActuarialAssumption
ifrs_IncreaseDecreaseInDividendsPayableThroughChangeInFairValueOfNoncashAssetsHeldForDistributionToOwners
ifrs_IncreaseDecreaseInExistingLiabilitiesContingentLiabilitiesRecognisedInBusinessCombination
ifrs_IncreaseDecreaseInExistingProvisionsOtherProvisions
ifrs_IncreaseDecreaseInFairValueMeasurementAssets
ifrs_IncreaseDecreaseInFairValueMeasurementDueToChangeInOneOrMoreUnobservableInputsToReflectReasonablyPossibleAlternativeAssumptionsAssets
ifrs_IncreaseDecreaseInFairValueMeasurementDueToChangeInOneOrMoreUnobservableInputsToReflectReasonablyPossibleAlternativeAssumptionsEntitysOwnEquityInstruments
ifrs_IncreaseDecreaseInFairValueMeasurementDueToChangeInOneOrMoreUnobservableInputsToReflectReasonablyPossibleAlternativeAssumptionsLiabilities
ifrs_IncreaseDecreaseInFairValueMeasurementEntitysOwnEquityInstruments
ifrs_IncreaseDecreaseInFairValueMeasurementLiabilities
ifrs_IncreaseDecreaseInFinancialAssetsArisingFromChangeInMeasurementAttributeFirstApplicationOfIFRS9
ifrs_IncreaseDecreaseInFinancialAssetsOnBasisOfMeasurementCategoryFirstApplicationOfIFRS9
ifrs_IncreaseDecreaseInFinancialLiabilitiesArisingFromChangeInMeasurementAttributeFirstApplicationOfIFRS9
ifrs_IncreaseDecreaseInFinancialLiabilitiesOnBasisOfMeasurementCategoryFirstApplicationOfIFRS9
ifrs_IncreaseDecreaseInInsuranceLiabilitiesNetOfReinsurance
ifrs_IncreaseDecreaseInIntangibleAssetsAndGoodwill
ifrs_IncreaseDecreaseInLiabilitiesUnderInsuranceContractsAndReinsuranceContractsIssued
ifrs_IncreaseDecreaseInNetAssetsAvailableForBenefits
ifrs_IncreaseDecreaseInNetDefinedBenefitLiabilityAsset
ifrs_IncreaseDecreaseInNumberOfOrdinarySharesIssued
ifrs_IncreaseDecreaseInNumberOfSharesOutstanding
ifrs_IncreaseDecreaseInProvisionForUnearnedPremium
ifrs_IncreaseDecreaseInReinsuranceAssets
ifrs_IncreaseDecreaseInWorkingCapital
ifrs_IncreaseDecreaseThroughAcquisitionOfSubsidiary
ifrs_IncreaseDecreaseThroughActuarialGainsLossesPlanAssetsAtFairValue
ifrs_IncreaseDecreaseThroughActuarialGainsLossesReimbursementRightsAtFairValue
ifrs_IncreaseDecreaseThroughAdjustmentsArisingFromPassageOfTimeAllowanceAccountForCreditLossesOfFinancialAssets
ifrs_IncreaseDecreaseThroughAdjustmentsArisingFromPassageOfTimeLiabilitiesUnderInsuranceContractsAndReinsuranceContractsIssued
ifrs_IncreaseDecreaseThroughAdjustmentsArisingFromPassageOfTimeReinsuranceAssets
ifrs_IncreaseDecreaseThroughAmountsRecognisedInProfitOrLossAggregateDifferenceBetweenFairValueAtInitialRecognitionAndAmountDeterminedUsingValuationTechniqueYetToBeRecognised
ifrs_IncreaseDecreaseThroughAppropriationOfRetainedEarnings
ifrs_IncreaseDecreaseThroughBusinessCombinationsAndDisposalsNetDefinedBenefitLiabilityAsset
ifrs_IncreaseDecreaseThroughBusinessCombinationsAndDisposalsReimbursementRights
ifrs_IncreaseDecreaseThroughBusinessCombinationsDeferredTaxLiabilityAsset
ifrs_IncreaseDecreaseThroughBusinessCombinationsPlanAssetsAtFairValue
ifrs_IncreaseDecreaseThroughBusinessCombinationsReimbursementRightsAtFairValue
ifrs_IncreaseDecreaseThroughChangeInDiscountRateContingentLiabilitiesRecognisedInBusinessCombination
ifrs_IncreaseDecreaseThroughChangeInDiscountRateOtherProvisions
ifrs_IncreaseDecreaseThroughChangeInEquityOfSubsidiaries
ifrs_IncreaseDecreaseThroughChangesInAccountingPoliciesRetainedEarnings
ifrs_IncreaseDecreaseThroughChangesInForeignExchangeRatesNetDefinedBenefitLiabilityAsset
ifrs_IncreaseDecreaseThroughChangesInOwnershipInterestsInSubsidiariesThatDoNotResultInLossOfControl
ifrs_IncreaseDecreaseThroughChangesInOwnershipInterestsInSubsidiariesThatDoNotResultInLossOfControlEquityAttributableToOwnersOfParent
ifrs_IncreaseDecreaseThroughContributionsByEmployerPlanAssetsAtFairValue
ifrs_IncreaseDecreaseThroughContributionsByEmployerReimbursementRightsAtFairValue
ifrs_IncreaseDecreaseThroughContributionsByPlanParticipantsPlanAssetsAtFairValue
ifrs_IncreaseDecreaseThroughContributionsByPlanParticipantsReimbursementRightsAtFairValue
ifrs_IncreaseDecreaseThroughConversionOfConvertibleInstruments
ifrs_IncreaseDecreaseThroughCorrectionsOfErrorsRetainedEarnings
ifrs_IncreaseDecreaseThroughCurrentServiceCostDefinedBenefitObligationAtPresentValue
ifrs_IncreaseDecreaseThroughDisposalOfSubsidiary
ifrs_IncreaseDecreaseThroughExerciseOfOptions
ifrs_IncreaseDecreaseThroughExpectedReturnPlanAssetsAtFairValue
ifrs_IncreaseDecreaseThroughExpectedReturnReimbursementRightsAtFairValue
ifrs_IncreaseDecreaseThroughInterestCostDefinedBenefitObligationAtPresentValue
ifrs_IncreaseDecreaseThroughLossOfControlOfSubsidiaryDeferredTaxLiabilityAsset
ifrs_IncreaseDecreaseThroughNetExchangeDifferencesAllowanceAccountForCreditLossesOfFinancialAssets
ifrs_IncreaseDecreaseThroughNetExchangeDifferencesBiologicalAssets
ifrs_IncreaseDecreaseThroughNetExchangeDifferencesDeferredAcquisitionCostsArisingFromInsuranceContracts
ifrs_IncreaseDecreaseThroughNetExchangeDifferencesDeferredTaxLiabilityAsset
ifrs_IncreaseDecreaseThroughNetExchangeDifferencesDefinedBenefitObligationAtPresentValue
ifrs_IncreaseDecreaseThroughNetExchangeDifferencesGoodwill
ifrs_IncreaseDecreaseThroughNetExchangeDifferencesIntangibleAssetsAndGoodwill
ifrs_IncreaseDecreaseThroughNetExchangeDifferencesIntangibleAssetsOtherThanGoodwill
ifrs_IncreaseDecreaseThroughNetExchangeDifferencesInvestmentProperty
ifrs_IncreaseDecreaseThroughNetExchangeDifferencesLiabilitiesUnderInsuranceContractsAndReinsuranceContractsIssued
ifrs_IncreaseDecreaseThroughNetExchangeDifferencesOtherProvisions
ifrs_IncreaseDecreaseThroughNetExchangeDifferencesPlanAssetsAtFairValue
ifrs_IncreaseDecreaseThroughNetExchangeDifferencesPropertyPlantAndEquipment
ifrs_IncreaseDecreaseThroughNetExchangeDifferencesReimbursementRightsAtFairValue
ifrs_IncreaseDecreaseThroughNetExchangeDifferencesReinsuranceAssets
ifrs_IncreaseDecreaseThroughNewTransactionsAggregateDifferenceBetweenFairValueAtInitialRecognitionAndAmountDeterminedUsingValuationTechniqueYetToBeRecognised
ifrs_IncreaseDecreaseThroughOtherChangesAllowanceAccountForCreditLossesOfFinancialAssets
ifrs_IncreaseDecreaseThroughOtherChangesDeferredAcquisitionCostsArisingFromInsuranceContracts
ifrs_IncreaseDecreaseThroughOtherChangesDefinedBenefitObligationAtPresentValue
ifrs_IncreaseDecreaseThroughOtherChangesIntangibleAssetsAndGoodwill
ifrs_IncreaseDecreaseThroughOtherChangesIntangibleAssetsOtherThanGoodwill
ifrs_IncreaseDecreaseThroughOtherChangesInvestmentProperty
ifrs_IncreaseDecreaseThroughOtherChangesLiabilitiesUnderInsuranceContractsAndReinsuranceContractsIssued
ifrs_IncreaseDecreaseThroughOtherChangesNetDefinedBenefitLiabilityAsset
ifrs_IncreaseDecreaseThroughOtherChangesPlanAssetsAtFairValue
ifrs_IncreaseDecreaseThroughOtherChangesPropertyPlantAndEquipment
ifrs_IncreaseDecreaseThroughOtherChangesReinsuranceAssets
ifrs_IncreaseDecreaseThroughOtherContributionsByOwners
ifrs_IncreaseDecreaseThroughOtherDistributionsToOwners
ifrs_IncreaseDecreaseThroughPastServiceCostDefinedBenefitObligationAtPresentValue
ifrs_IncreaseDecreaseThroughShadowAccountingDeferredAcquisitionCostsArisingFromInsuranceContracts
ifrs_IncreaseDecreaseThroughSharebasedPaymentTransactions
ifrs_IncreaseDecreaseThroughTimeValueOfMoneyAdjustmentOtherProvisions
ifrs_IncreaseDecreaseThroughTransactionsWithOwners
ifrs_IncreaseDecreaseThroughTransferBetweenRevaluationReserveAndRetainedEarnings
ifrs_IncreaseDecreaseThroughTransferToStatutoryReserve
ifrs_IncreaseDecreaseThroughTransfersAndOtherChangesBiologicalAssets
ifrs_IncreaseDecreaseThroughTransfersAndOtherChangesEquity
ifrs_IncreaseDecreaseThroughTransfersAndOtherChangesGoodwill
ifrs_IncreaseDecreaseThroughTransfersAndOtherChangesIntangibleAssetsAndGoodwill
ifrs_IncreaseDecreaseThroughTransfersAndOtherChangesIntangibleAssetsAndGoodwillAbstract
ifrs_IncreaseDecreaseThroughTransfersAndOtherChangesIntangibleAssetsOtherThanGoodwill
ifrs_IncreaseDecreaseThroughTransfersAndOtherChangesIntangibleAssetsOtherThanGoodwillAbstract
ifrs_IncreaseDecreaseThroughTransfersAndOtherChangesOtherProvisions
ifrs_IncreaseDecreaseThroughTransfersAndOtherChangesPropertyPlantAndEquipment
ifrs_IncreaseDecreaseThroughTransfersAndOtherChangesPropertyPlantAndEquipmentAbstract
ifrs_IncreaseDecreaseThroughTransfersFromConstructionInProgressPropertyPlantAndEquipment
ifrs_IncreaseDecreaseThroughTransfersFromToInvestmentPropertyPropertyPlantAndEquipment
ifrs_IncreaseDecreaseThroughTransfersIntangibleAssetsAndGoodwill
ifrs_IncreaseDecreaseThroughTransfersIntangibleAssetsOtherThanGoodwill
ifrs_IncreaseDecreaseThroughTransfersLiabilitiesUnderInsuranceContractsAndReinsuranceContractsIssued
ifrs_IncreaseDecreaseThroughTransfersPropertyPlantAndEquipment
ifrs_IncreaseDecreaseThroughTreasuryShareTransactions
ifrs_IncreaseThroughAdjustmentsArisingFromPassageOfTimeContingentLiabilitiesRecognisedInBusinessCombination
ifrs_IncrementalFairValueGrantedModifiedSharebasedPaymentArrangements
ifrs_IndicationOfOtherFormsOfGovernmentAssistanceWithDirectBenefitsForEntity
ifrs_IndicationOfUncertaintiesOfAmountOrTimingOfOutflowsContingentLiabilities
ifrs_IndicationOfUncertaintiesOfAmountOrTimingOfOutflowsContingentLiabilitiesInBusinessCombination
ifrs_IndicationOfUncertaintiesOfAmountOrTimingOfOutflowsOtherProvisions
ifrs_IndividualAssetsOrCashgeneratingUnitsAxis
ifrs_IndividualAssetsOrCashgeneratingUnitsMember
ifrs_IndividualAssetsOrCashgeneratingUnitsWithSignificantAmountOfGoodwillOrIntangibleAssetsWithIndefiniteUsefulLivesAxis
ifrs_IndividualAssetsOrCashgeneratingUnitsWithSignificantAmountOfGoodwillOrIntangibleAssetsWithIndefiniteUsefulLivesMember
ifrs_IndividuallyInsignificantCounterpartiesMember
ifrs_InflowsOfCashFromInvestingActivities
ifrs_InformationAboutConsequencesOfNoncomplianceWithExternallyImposedCapitalRequirements
ifrs_InformationAboutContingentAssetsThatDisclosureIsNotPracticable
ifrs_InformationAboutContingentLiabilitiesThatDisclosureIsNotPracticable
ifrs_InformationAboutCreditQualityOfNeitherPastDueNorImpairedFinancialAssets
ifrs_InformationAboutExposuresToMarketRiskArisingFromEmbeddedDerivativesContainedInHostInsuranceContract
ifrs_InformationAboutHowExpectedCashOutflowOnRedemptionOrRepurchaseWasDetermined
ifrs_InformationAboutHowExpectedVolatilityWasDeterminedShareOptionsGranted
ifrs_InformationAboutHowFairValueWasMeasuredShareOptionsGranted
ifrs_InformationAboutHowFairWasDeterminedIfNotOnBasisOfObservableMarketOtherEquityInstrumentsGranted
ifrs_InformationAboutHowMaximumExposureToLossFromInterestsInStructuredEntitiesIsDetermined
ifrs_InformationAboutHowMaximumExposureToLossIsDetermined
ifrs_InformationAboutMajorCustomers
ifrs_InformationAboutMarketForFinancialInstruments
ifrs_InformationAboutObjectivesPoliciesAndProcessesForManagingEntitysObligationToRepurchaseOrRedeemPuttableFinancialInstruments
ifrs_InformationAboutWhetherAndHowEntityIntendsToDisposeOfFinancialInstruments
ifrs_InformationHowFairValueWasMeasuredOtherEquityInstrumentsGranted
ifrs_InformationOnHowIncrementalFairValueGrantedWasMeasuredModifiedSharebasedPaymentArrangements
ifrs_InformationWhetherAndHowExpectedDividendsWereIncorporatedIntoMeasurementOfFairValueOtherEquityInstrumentsGranted
ifrs_InformationWhetherAndHowOtherFeaturesWereIncorporatedIntoMeasurementOfFairValueOtherEquityInstrumentsGranted
ifrs_InformationWhetherAndHowOtherFeaturesWereIncorporatedIntoMeasurementOfFairValueShareOptionsGranted
ifrs_InformationWhetherEntityCompliedWithAnyExternallyImposedCapitalRequirements
ifrs_InformationWhetherRecoverableAmountOfAssetIsFairValueLessCostsToSellOrValueInUse
ifrs_InitiallyAppliedIFRSsAxis
ifrs_InitiallyAppliedIFRSsMember
ifrs_InsuranceContractsMember
ifrs_IntangibleAssetFairValueUsedAsDeemedCost
ifrs_IntangibleAssetsAcquiredByWayOfGovernmentGrant
ifrs_IntangibleAssetsAcquiredByWayOfGovernmentGrantAtFairValue
ifrs_IntangibleAssetsAndGoodwill
ifrs_IntangibleAssetsAndGoodwillAbstract
ifrs_IntangibleAssetsAndGoodwillMember
ifrs_IntangibleAssetsMaterialToEntity
ifrs_IntangibleAssetsOtherThanGoodwill
ifrs_IntangibleAssetsOtherThanGoodwillAbstract
ifrs_IntangibleAssetsOtherThanGoodwillCarryingAmountAtCostOfRevaluedAssets
ifrs_IntangibleAssetsOtherThanGoodwillCarryingAmountOfRevaluedAssets
ifrs_IntangibleAssetsOtherThanGoodwillMember
ifrs_IntangibleAssetsOtherThanGoodwillRevaluationSurplus
ifrs_IntangibleAssetsPledgedAsSecurityForLiabilities
ifrs_IntangibleAssetsRelatingToInsuranceContractsAcquiredInBusinessCombinationsOrPortfolioTransfers
ifrs_IntangibleAssetsUnderDevelopment
ifrs_IntangibleAssetsUnderDevelopmentMember
ifrs_IntangibleAssetsWhoseTitleIsRestricted
ifrs_IntangibleAssetsWithIndefiniteUsefulLife
ifrs_IntangibleExplorationAndEvaluationAssets
ifrs_IntangibleExplorationAndEvaluationAssetsInternallyGeneratedMember
ifrs_IntangibleExplorationAndEvaluationAssetsMember
ifrs_IntangibleExplorationAndEvaluationAssetsNotInternallyGeneratedMember
ifrs_InterestCostDefinedBenefitPlan
ifrs_InterestExpense
ifrs_InterestExpenseForFinancialLiabilitiesNotAtFairValueThroughProfitOrLoss
ifrs_InterestExpenseIncomeNetDefinedBenefitLiabilityAsset
ifrs_InterestExpenseOnBankLoansAndOverdrafts
ifrs_InterestExpenseOnBonds
ifrs_InterestExpenseOnBorrowings
ifrs_InterestExpenseOnDebtInstrumentsIssued
ifrs_InterestExpenseOnDepositsFromBanks
ifrs_InterestExpenseOnDepositsFromCustomers
ifrs_InterestExpenseOnFinanceLeases
ifrs_InterestExpenseOnFinancialLiabilitiesDesignatedAtFairValueThroughProfitOrLoss
ifrs_InterestExpenseOnFinancialLiabilitiesHeldForTrading
ifrs_InterestExpenseOnOtherFinancialLiabilities
ifrs_InterestExpenseOnRepurchaseAgreementsAndCashCollateralOnSecuritiesLent
ifrs_InterestIncomeAndInterestExpenseForFinancialAssetsOrFinancialLiabilitiesNotAtFairValueThroughProfitOrLossAbstract
ifrs_InterestIncomeExpenseRecognisedForAssetsReclassifiedIntoMeasuredAtAmortisedCost
ifrs_InterestIncomeExpenseRecognisedForFinancialAssetsReclassifiedIntoMeasuredAtAmortisedCostFirstApplicationOfIFRS9
ifrs_InterestIncomeExpenseRecognisedForFinancialLiabilitiesReclassifiedIntoMeasuredAtAmortisedCostFirstApplicationOfIFRS9
ifrs_InterestIncomeForFinancialAssetsMeasuredAtAmortisedCost
ifrs_InterestIncomeForFinancialAssetsNotAtFairValueThroughProfitOrLoss
ifrs_InterestIncomeOnAvailableforsaleFinancialAssets
ifrs_InterestIncomeOnCashAndBankBalancesAtCentralBanks
ifrs_InterestIncomeOnCashAndCashEquivalents
ifrs_InterestIncomeOnDebtInstrumentsHeld
ifrs_InterestIncomeOnFinancialAssetsDesignatedAtFairValueThroughProfitOrLoss
ifrs_InterestIncomeOnFinancialAssetsHeldForTrading
ifrs_InterestIncomeOnHeldtomaturityInvestments
ifrs_InterestIncomeOnImpairedFinancialAssetsAccrued
ifrs_InterestIncomeOnImpairedFinancialAssetsAccruedAbstract
ifrs_InterestIncomeOnLoansAndAdvancesToBanks
ifrs_InterestIncomeOnLoansAndAdvancesToCustomers
ifrs_InterestIncomeOnLoansAndReceivables
ifrs_InterestIncomeOnOtherFinancialAssets
ifrs_InterestIncomeOnReverseRepurchaseAgreementsAndCashCollateralOnSecuritiesBorrowed
ifrs_InterestIncomeReimbursementRights
ifrs_InterestPaidClassifiedAsFinancingActivities
ifrs_InterestPaidClassifiedAsInvestingActivities
ifrs_InterestPaidClassifiedAsOperatingActivities
ifrs_InterestPayable
ifrs_InterestRateRiskMember
ifrs_InterestRateRisksOfDebtInstrumentsMeasuredAtAmortisedCostMember
ifrs_InterestRateSignificantUnobservableInputsAssets
ifrs_InterestRateSignificantUnobservableInputsEntitysOwnEquityInstruments
ifrs_InterestRateSignificantUnobservableInputsLiabilities
ifrs_InterestReceivable
ifrs_InterestReceivedClassifiedAsFinancingActivities
ifrs_InterestReceivedClassifiedAsInvestingActivities
ifrs_InterestReceivedClassifiedAsOperatingActivities
ifrs_InterestRevenueExpense
ifrs_InterestsInSignificantJointVenturesAxis
ifrs_InternalCreditGradesAxis
ifrs_InternalCreditGradesMember
ifrs_IntrinsicValueOfLiabilitiesFromSharebasedPaymentTransactionsForWhichCounterpartysRightToCashOrOtherAssetsVested2011
ifrs_Inventories
ifrs_InventoriesAtFairValueLessCostsToSell
ifrs_InventoriesHeldForSale
ifrs_InventoriesMember
ifrs_InventoriesPledgedAsSecurityForLiabilities
ifrs_InventoriesTotal
ifrs_InventoryCostFormulas
ifrs_InventoryRecognisedAsOfAcquisitionDate
ifrs_InventoryWritedown2011
ifrs_InvestmentAccountedForUsingEquityMethod
ifrs_InvestmentContractsLiabilities
ifrs_InvestmentFundsAmountContributedToFairValueOfPlanAssets
ifrs_InvestmentFundsMember
ifrs_InvestmentIncome
ifrs_InvestmentProperty
ifrs_InvestmentPropertyFairValueUsedAsDeemedCost
ifrs_InvestmentPropertyMember
ifrs_InvestmentPropertyWhoseFairValueCannotBeMeasuredReliablyWithoutUndueCostOrEffortOnOngoingBasis
ifrs_InvestmentPropertyWhoseFairValueCannotBeMeasuredReliablyWithoutUndueCostOrEffortOnOngoingBasisMember
ifrs_InvestmentsAccountedForUsingEquityMethodMember
ifrs_InvestmentsForRiskOfPolicyholders
ifrs_InvestmentsInAssociates
ifrs_InvestmentsInAssociatesAccountedForUsingEquityMethod
ifrs_InvestmentsInAssociatesAxis
ifrs_InvestmentsInAssociatesMember
ifrs_InvestmentsInEquityInstrumentsMeasuredAtFairValueThroughOtherComprehensiveIncomeAxis
ifrs_InvestmentsInEquityInstrumentsMeasuredAtFairValueThroughOtherComprehensiveIncomeMember
ifrs_InvestmentsInJointVentures
ifrs_InvestmentsInJointVenturesAccountedForUsingEquityMethod
ifrs_InvestmentsInJointVenturesMember
ifrs_InvestmentsInSubsidiaries
ifrs_InvestmentsInSubsidiariesJointVenturesAndAssociates
ifrs_InvestmentsInSubsidiariesJointVenturesAndAssociatesAbstract
ifrs_InvestmentsOtherThanInvestmentsAccountedForUsingEquityMethod
ifrs_IssueCostsNotRecognisedAsExpenseForTransactionRecognisedSeparatelyFromAcquisitionOfAssetsAndAssumptionOfLiabilitiesInBusinessCombination
ifrs_IssueOfConvertibleInstruments
ifrs_IssueOfEquity
ifrs_IssuedCapital
ifrs_IssuedCapitalMember
ifrs_IssuesFairValueMeasurementAssets
ifrs_IssuesFairValueMeasurementEntitysOwnEquityInstruments
ifrs_IssuesFairValueMeasurementLiabilities
ifrs_IssuesOfFinancialInstrumentsMeasuredInLevel3OfFairValueHierarchy
ifrs_IssuesOrRepurchasesOfEntitysDebtOrEquityInstrumentsMember
ifrs_ItemsInCourseOfCollectionFromOtherBanks
ifrs_ItemsInCourseOfTransmissionToOtherBanks
ifrs_ItemsOfContingentLiabilitiesAxis
ifrs_ItemsOfContingentLiabilitiesMember
ifrs_JointControlOrSignificantInfluenceMember
ifrs_JointOperationsAxis
ifrs_JointOperationsMember
ifrs_JointVenturesAxis
ifrs_JointVenturesMember
ifrs_JointVenturesWhereEntityIsVenturerMember
ifrs_JointlyControlledEntitiesMember
ifrs_KeyManagementPersonnelCompensation
ifrs_KeyManagementPersonnelCompensationOtherLongtermBenefits
ifrs_KeyManagementPersonnelCompensationPostemploymentBenefits
ifrs_KeyManagementPersonnelCompensationSharebasedPayment
ifrs_KeyManagementPersonnelCompensationShorttermEmployeeBenefits
ifrs_KeyManagementPersonnelCompensationTerminationBenefits
ifrs_KeyManagementPersonnelOfEntityOrParentMember
ifrs_Land
ifrs_LandAndBuildings
ifrs_LandAndBuildingsAbstract
ifrs_LandAndBuildingsMember
ifrs_LandMember
ifrs_LaterThanFiveYearsMember
ifrs_LaterThanFourYearsAndNotLaterThanFiveYearsMember
ifrs_LaterThanOneMonthAndNotLaterThanThreeMonthsMember
ifrs_LaterThanOneMonthAndNotLaterThanTwoMonthsMember
ifrs_LaterThanOneYearAndNotLaterThanFiveYearsMember
ifrs_LaterThanOneYearAndNotLaterThanThreeYearsMember
ifrs_LaterThanOneYearAndNotLaterThanTwoYearsMember
ifrs_LaterThanOneYearMember
ifrs_LaterThanSixMonthsAndNotLaterThanOneYearMember
ifrs_LaterThanSixMonthsMember
ifrs_LaterThanThreeMonthsAndNotLaterThanOneYearMember
ifrs_LaterThanThreeMonthsAndNotLaterThanSixMonthsMember
ifrs_LaterThanThreeYearsAndNotLaterThanFiveYearsMember
ifrs_LaterThanThreeYearsAndNotLaterThanFourYearsMember
ifrs_LaterThanTwoMonthsAndNotLaterThanThreeMonthsMember
ifrs_LaterThanTwoYearsAndNotLaterThanFiveYearsMember
ifrs_LaterThanTwoYearsAndNotLaterThanThreeYearsMember
ifrs_LeaseAndSubleasePaymentsRecognisedAsExpense
ifrs_LeaseAndSubleasePaymentsRecognisedAsExpenseAbstract
ifrs_LeaseholdImprovementsMember
ifrs_LeasesAsLesseeRelatedPartyTransactions
ifrs_LeasesAsLessorRelatedPartyTransactions
ifrs_LegalFormOfEntity
ifrs_LegalProceedingsContingentLiabilityMember
ifrs_LegalProceedingsProvision
ifrs_LegalProceedingsProvisionAbstract
ifrs_LegalProceedingsProvisionMember
ifrs_LengthOfLifeOfLimitedLifeEntity
ifrs_Level1OfFairValueHierarchyMember
ifrs_Level2And3OfFairValueHierarchyMember
ifrs_Level2OfFairValueHierarchyMember
ifrs_Level3OfFairValueHierarchyMember
ifrs_LevelOfParticipationOfEntityComparedWithOtherParticipatingEntities
ifrs_LevelOfPriceIndex
ifrs_LevelOfRoundingUsedInFinancialStatements
ifrs_LevelsOfFairValueHierarchyAxis
ifrs_Liabilities
ifrs_LiabilitiesAbstract
ifrs_LiabilitiesArisingFromExplorationForAndEvaluationOfMineralResources
ifrs_LiabilitiesArisingFromInsuranceContracts
ifrs_LiabilitiesForWhichEntityHasBindingSaleAgreement
ifrs_LiabilitiesFromSharebasedPaymentTransactions2011
ifrs_LiabilitiesInSubsidiaryOrBusinessesAcquiredOrDisposed
ifrs_LiabilitiesIncludedInDisposalGroupsClassifiedAsHeldForSale
ifrs_LiabilitiesIncurred
ifrs_LiabilitiesMeasuredAtFairValueAndIssuedWithInseparableThirdpartyCreditEnhancementAxis
ifrs_LiabilitiesMeasuredAtFairValueAndIssuedWithInseparableThirdpartyCreditEnhancementMember
ifrs_LiabilitiesMember
ifrs_LiabilitiesOrComponentsOfEquityRelatingToDiscretionaryParticipationFeatures
ifrs_LiabilitiesOtherThanActuarialPresentValueOfPromisedRetirementBenefits
ifrs_LiabilitiesRecognisedInEntitysFinancialStatementsInRelationToStructuredEntities
ifrs_LiabilitiesToWhichSignificantRestrictionsApply
ifrs_LiabilitiesUnderInsuranceContractsAndReinsuranceContractsIssuedAbstract
ifrs_LiabilitiesWithSignificantRiskOfMaterialAdjustmentsWithinNextFinancialYear
ifrs_LiabilityAssetOfDefinedBenefitPlans
ifrs_LicencesAndFranchises
ifrs_LicencesAndFranchisesInternallyGeneratedMember
ifrs_LicencesAndFranchisesMember
ifrs_LicencesAndFranchisesNotInternallyGeneratedMember
ifrs_LifeInsuranceContractsMember
ifrs_LimitationsThatMayResultInInformationNotFullyReflectingFairValueOfAssetsAndLiabilitiesInvolved
ifrs_LineItemsIncludingAmortisationOfIntangibleAssetsIntangibleAssetsOtherThanGoodwill
ifrs_LineItemsOfRecognisedAssetsAndLiabilitiesRepresentingContinuingInvolvementInDerecognisedFinancialAssets
ifrs_LiquidityRiskMember
ifrs_LoanCommitmentsAtCost
ifrs_LoansAcquiredInBusinessCombinationMember
ifrs_LoansAndAdvancesToBanks
ifrs_LoansAndAdvancesToCustomers
ifrs_LoansAndReceivables
ifrs_LoansAndReceivablesCategoryMember
ifrs_LoansPayableInBreachWhichPermittedLenderToDemandAcceleratedRepayment
ifrs_LoansPayableInDefault
ifrs_LoansReceived
ifrs_LongtermBorrowings
ifrs_LongtermDeposits
ifrs_LongtermLegalProceedingsProvision
ifrs_LongtermMiscellaneousOtherProvisions
ifrs_LongtermOnerousContractsProvision
ifrs_LongtermProvisionForDecommissioningRestorationAndRehabilitationCosts
ifrs_LongtermRestructuringProvision
ifrs_LongtermWarrantyProvision
ifrs_LossesArisingFromDerecognitionOfFinancialAssetsMeasuredAtAmortisedCost
ifrs_LossesIncurredInRelationToInterestsInStructuredEntities
ifrs_LossesOnDisposalsOfInvestments
ifrs_LossesOnDisposalsOfNoncurrentAssets
ifrs_LossesOnDisposalsOfPropertyPlantAndEquipment
ifrs_LossesOnLitigationSettlements
ifrs_Machinery
ifrs_MachineryMember
ifrs_MajorBusinessCombinationMember
ifrs_MajorComponentsOfTaxExpenseIncomeAbstract
ifrs_MajorCustomersAxis
ifrs_MajorCustomersMember
ifrs_MajorOrdinaryShareTransactionsMember
ifrs_MajorPurchasesOfAssetsMember
ifrs_ManagementCommentaryExplanatory
ifrs_ManagementConclusionOnFairPresentationAsConsequenceOfDeparture
ifrs_MandatoryReserveDepositsAtCentralBanks
ifrs_MarketApproachMember
ifrs_MarketComparableCompaniesMember
ifrs_MarketComparablePricesMember
ifrs_MarketRiskMember
ifrs_MastheadsAndPublishingTitles
ifrs_MastheadsAndPublishingTitlesMember
ifrs_MaterialIncomeAndExpenseAbstract
ifrs_MaterialReconcilingItemsMember
ifrs_MaterialsAndSuppliesToBeConsumedInProductionProcessOrRenderingServices
ifrs_MatrixPricingMember
ifrs_MaturityAnalysisForDerivativeFinancialLiabilities
ifrs_MaturityAnalysisForNonderivativeFinancialLiabilities
ifrs_MaturityAxis
ifrs_MaximumExposureToCreditRisk
ifrs_MaximumExposureToCreditRiskOfFinancialAssets
ifrs_MaximumExposureToCreditRiskOfLoansOrReceivables
ifrs_MaximumExposureToLossFromContinuingInvolvement
ifrs_MaximumExposureToLossFromInterestsInStructuredEntities
ifrs_MaximumLimitOfLossesOfStructuredEntitiesWhichEntityIsRequiredToAbsorbBeforeOtherParties
ifrs_MeasurementAxis
ifrs_MeasurementBasesPropertyPlantAndEquipment
ifrs_MeasurementPeriodAdjustmentsRecognisedForParticularAssetsLiabilitiesNoncontrollingInterestsOrItemsOfConsideration
ifrs_Merchandise
ifrs_MergerReserve
ifrs_MergerReserveMember
ifrs_MethodOfDeterminingFairValueOfInstrumentsOrInterests
ifrs_MethodUsedToAccountForInvestmentsInAssociates
ifrs_MethodUsedToAccountForInvestmentsInJointVentures
ifrs_MethodUsedToAccountForInvestmentsInJointlyControlledEntities
ifrs_MethodUsedToAccountForInvestmentsInSubsidiaries
ifrs_MethodUsedToDetermineSettlementAmountForPreexistingRelationshipForTransactionRecognisedSeparatelyFromAcquisitionOfAssetsAndAssumptionOfLiabilitiesInBusinessCombination
ifrs_MethodsAndAssumptionsAppliedForEstimatingFairValueOfRevaluedIntangibleAssets
ifrs_MethodsAndAssumptionsAppliedInDeterminingFairValueOfBiologicalAssets
ifrs_MethodsAndAssumptionsToDetermineFairValueOfFinancialAssetsAndFinancialLiabilities
ifrs_MethodsAndAssumptionsUsedInPreparingSensitivityAnalysis
ifrs_MethodsOfTranslationUsedToDetermineSupplementaryInformation
ifrs_MethodsToDetermineAmountOfChangesInFairValueOfFinancialAssetsAndFinancialLiabilitiesAttributableToChangesInCreditRisk
ifrs_MethodsUsedInPreparingSensitivityAnalysisReflectingInterdependenciesBetweenRiskVariables
ifrs_MethodsUsedToDetermineConstructionContractRevenueRecognised
ifrs_MethodsUsedToDetermineStageOfCompletionOfConstructionInProgress
ifrs_MethodsUsedToMeasureRisk
ifrs_MethodsUsedToRecogniseInterestInJointlyControlledEntities
ifrs_MinimumFinanceLeasePaymentsPayable
ifrs_MinimumFinanceLeasePaymentsPayableAtPresentValue
ifrs_MinimumFinanceLeasePaymentsReceivableAtPresentValue
ifrs_MinimumLeasePaymentsOfOtherArrangementsThatDoNotIncludePaymentsForNonleaseElements
ifrs_MinimumLeasePaymentsPayableUnderNoncancellableOperatingLease
ifrs_MinimumLeasePaymentsReceivableUnderNoncancellableOperatingLease
ifrs_MinimumOperatingLeasePayments
ifrs_MiscellaneousAssetsAbstract
ifrs_MiscellaneousComponentsOfEquityAbstract
ifrs_MiscellaneousCurrentAssetsAbstract
ifrs_MiscellaneousCurrentLiabilitiesAbstract
ifrs_MiscellaneousEquityAbstract
ifrs_MiscellaneousLiabilitiesAbstract
ifrs_MiscellaneousNoncurrentAssetsAbstract
ifrs_MiscellaneousNoncurrentLiabilitiesAbstract
ifrs_MiscellaneousOtherComprehensiveIncomeAbstract
ifrs_MiscellaneousOtherOperatingExpense
ifrs_MiscellaneousOtherOperatingIncome
ifrs_MiscellaneousOtherProvisions
ifrs_MiscellaneousOtherProvisionsAbstract
ifrs_MiscellaneousOtherProvisionsMember
ifrs_MiscellaneousOtherReservesMember
ifrs_MiscellaneousTimeBandsAbstract
ifrs_ModelUsedToMeasureInvestmentProperty
ifrs_MortgagesMember
ifrs_MotorVehicles
ifrs_MotorVehiclesMember
ifrs_MultiemployerDefinedBenefitPlansMember
ifrs_MultiperiodExcessEarningsMethodMember
ifrs_NameOfAcquiree
ifrs_NameOfAssociate
ifrs_NameOfEntityWhoseConsolidatedFinancialStatementsHaveBeenProducedForPublicUse
ifrs_NameOfGovernmentAndNatureOfRelationshipWithGovernment
ifrs_NameOfJointOperation
ifrs_NameOfJointVenture
ifrs_NameOfJointlyControlledEntity
ifrs_NameOfMostSeniorParentEntityProducingPubliclyAvailableFinancialStatements
ifrs_NameOfParentEntity
ifrs_NameOfReportingEntityOrOtherMeansOfIdentification
ifrs_NameOfSubsidiary
ifrs_NameOfUltimateParentOfGroup
ifrs_NamesOfEmployersAndEmployeeGroupsCovered
ifrs_NatureOfFinancialAssetsTransferredDuringPeriodWhichDoNotQualifyForDerecognition
ifrs_NatureOfRisksAndRewardsOfOwnershipToWhichEntityRemainsExposed
ifrs_NetAmountArisingFromInsuranceContractsMember
ifrs_NetAmountsForPayfloatingReceivefixedInterestRateSwapsForWhichNetCashFlowsAreExchanged
ifrs_NetAssetsLiabilities
ifrs_NetAssetsLiabilitiesAbstract
ifrs_NetDeferredTaxAssets
ifrs_NetDeferredTaxAssetsAndLiabilitiesAbstract
ifrs_NetDeferredTaxLiabilities
ifrs_NetDefinedBenefitLiabilityAssetAxis
ifrs_NetDefinedBenefitLiabilityAssetMember
ifrs_NetEarnedPremium
ifrs_NetFinancialAssetsSubjectToOffsettingEnforceableMasterNettingArrangementsOrSimilarAgreements
ifrs_NetFinancialAssetsSubjectToOffsettingEnforceableMasterNettingArrangementsOrSimilarAgreementsAbstract
ifrs_NetFinancialAssetsSubjectToOffsettingEnforceableMasterNettingArrangementsOrSimilarAgreementsInStatementOfFinancialPosition
ifrs_NetFinancialAssetsSubjectToOffsettingEnforceableMasterNettingArrangementsOrSimilarAgreementsInStatementOfFinancialPositionAbstract
ifrs_NetFinancialLiabilitiesSubjectToOffsettingEnforceableMasterNettingArrangementsOrSimilarAgreements
ifrs_NetFinancialLiabilitiesSubjectToOffsettingEnforceableMasterNettingArrangementsOrSimilarAgreementsAbstract
ifrs_NetFinancialLiabilitiesSubjectToOffsettingEnforceableMasterNettingArrangementsOrSimilarAgreementsInStatementOfFinancialPosition
ifrs_NetFinancialLiabilitiesSubjectToOffsettingEnforceableMasterNettingArrangementsOrSimilarAgreementsInStatementOfFinancialPositionAbstract
ifrs_NewIFRSsAxis
ifrs_NewIFRSsMember
ifrs_NewLiabilitiesContingentLiabilitiesRecognisedInBusinessCombination
ifrs_NewProvisionsOtherProvisions
ifrs_NonadjustingEventsAfterReportingPeriodAxis
ifrs_NonadjustingEventsMember
ifrs_NoncashAssetsDeclaredForDistributionToOwnersBeforeFinancialStatementsAuthorisedForIssue
ifrs_NoncashAssetsDeclaredForDistributionToOwnersBeforeFinancialStatementsAuthorisedForIssueAtFairValue
ifrs_NoncashAssetsPledgedAsCollateralForWhichTransfereeHasRightByContractOrCustomToSellOrRepledgeCollateral
ifrs_NoncontrollingInterestInAcquireeRecognisedAtAcquisitionDate
ifrs_NoncontrollingInterests
ifrs_NoncontrollingInterestsMember
ifrs_NoncurrentAdvances
ifrs_NoncurrentAssets
ifrs_NoncurrentAssetsAbstract
ifrs_NoncurrentAssetsHeldForSaleMember
ifrs_NoncurrentAssetsOrDisposalGroupsClassifiedAsHeldForDistributionToOwners
ifrs_NoncurrentAssetsOrDisposalGroupsClassifiedAsHeldForSale
ifrs_NoncurrentAssetsOrDisposalGroupsClassifiedAsHeldForSaleMember
ifrs_NoncurrentAssetsOrDisposalGroupsClassifiedAsHeldForSaleOrAsHeldForDistributionToOwners
ifrs_NoncurrentAssetsOrDisposalGroupsClassifiedAsHeldForSaleOrAsHeldForDistributionToOwnersAbstract
ifrs_NoncurrentAssetsOtherThanFinancialInstrumentsDeferredTaxAssetsPostemploymentBenefitAssetsAndRightsArisingUnderInsuranceContracts
ifrs_NoncurrentAssetsRecognisedAsOfAcquisitionDate
ifrs_NoncurrentBiologicalAssets
ifrs_NoncurrentBiologicalAssetsAtCost
ifrs_NoncurrentBiologicalAssetsAtFairValue
ifrs_NoncurrentDerivativeFinancialAssets
ifrs_NoncurrentDerivativeFinancialLiabilities
ifrs_NoncurrentDividendPayables
ifrs_NoncurrentFinanceLeaseLiabilities
ifrs_NoncurrentFinancialAssets
ifrs_NoncurrentFinancialAssetsAtAmortisedCost
ifrs_NoncurrentFinancialAssetsAtFairValueThroughOtherComprehensiveIncome
ifrs_NoncurrentFinancialAssetsAtFairValueThroughProfitOrLoss
ifrs_NoncurrentFinancialAssetsAtFairValueThroughProfitOrLossAbstract
ifrs_NoncurrentFinancialAssetsAtFairValueThroughProfitOrLossClassifiedAsHeldForTrading
ifrs_NoncurrentFinancialAssetsAtFairValueThroughProfitOrLossDesignatedUponInitialRecognition
ifrs_NoncurrentFinancialAssetsAtFairValueThroughProfitOrLossMandatorilyMeasuredAtFairValue
ifrs_NoncurrentFinancialAssetsAvailableforsale
ifrs_NoncurrentFinancialAssetsThatAreDebtInstrumentsAtCost
ifrs_NoncurrentFinancialAssetsThatAreEquityInstrumentsAtCost
ifrs_NoncurrentFinancialLiabilities
ifrs_NoncurrentFinancialLiabilitiesAtAmortisedCost
ifrs_NoncurrentFinancialLiabilitiesAtFairValueThroughProfitOrLoss
ifrs_NoncurrentFinancialLiabilitiesAtFairValueThroughProfitOrLossAbstract
ifrs_NoncurrentFinancialLiabilitiesAtFairValueThroughProfitOrLossClassifiedAsHeldForTrading
ifrs_NoncurrentFinancialLiabilitiesAtFairValueThroughProfitOrLossDesignatedUponInitialRecognition
ifrs_NoncurrentGovernmentGrants
ifrs_NoncurrentHeldtomaturityInvestments
ifrs_NoncurrentInterestPayable
ifrs_NoncurrentInterestReceivable
ifrs_NoncurrentInventories
ifrs_NoncurrentInvestmentsOtherThanInvestmentsAccountedForUsingEquityMethod
ifrs_NoncurrentLeasePrepayments
ifrs_NoncurrentLiabilities
ifrs_NoncurrentLiabilitiesAbstract
ifrs_NoncurrentLiabilitiesRecognisedAsOfAcquisitionDate
ifrs_NoncurrentLoanCommitmentsAtCost
ifrs_NoncurrentLoansAndReceivables
ifrs_NoncurrentNoncashAssetsPledgedAsCollateralForWhichTransfereeHasRightByContractOrCustomToSellOrRepledgeCollateral
ifrs_NoncurrentPayables
ifrs_NoncurrentPayablesAbstract
ifrs_NoncurrentPayablesOnSocialSecurityAndTaxesOtherThanIncomeTax
ifrs_NoncurrentPayablesToRelatedParties
ifrs_NoncurrentPayablesToTradeSuppliers
ifrs_NoncurrentPortionOfNoncurrentBondsIssued
ifrs_NoncurrentPortionOfNoncurrentBorrowingsByTypeAbstract
ifrs_NoncurrentPortionOfNoncurrentCommercialPapersIssued
ifrs_NoncurrentPortionOfNoncurrentLoansReceived
ifrs_NoncurrentPortionOfNoncurrentNotesAndDebenturesIssued
ifrs_NoncurrentPortionOfNoncurrentSecuredBankLoansReceived
ifrs_NoncurrentPortionOfNoncurrentUnsecuredBankLoansReceived
ifrs_NoncurrentPortionOfOtherNoncurrentBorrowings
ifrs_NoncurrentPrepayments
ifrs_NoncurrentProvisions
ifrs_NoncurrentProvisionsAbstract
ifrs_NoncurrentProvisionsForEmployeeBenefits
ifrs_NoncurrentReceivables
ifrs_NoncurrentReceivablesAbstract
ifrs_NoncurrentReceivablesArisingFromAccruedIncomeNotYetBilled
ifrs_NoncurrentReceivablesDueFromOtherParties
ifrs_NoncurrentReceivablesDueFromRelatedParties
ifrs_NoncurrentReceivablesFromTaxesOtherThanIncomeTax
ifrs_NoncurrentRecognisedAssetsDefinedBenefitPlan
ifrs_NoncurrentRecognisedLiabilitiesDefinedBenefitPlan
ifrs_NoncurrentRefundsProvision
ifrs_NoncurrentRestrictedCashAndCashEquivalents
ifrs_NoncurrentTradeReceivables
ifrs_NoncurrentValueAddedTaxPayables
ifrs_NoncurrentValueAddedTaxReceivables
ifrs_NonderivativeFinancialLiabilitiesUndiscountedCashFlows
ifrs_NoninsuranceAssetsAcquiredByExercisingRightsToRecoveries
ifrs_NonlifeInsuranceContractsMember
ifrs_NonrecurringFairValueMeasurementMember
ifrs_NotLaterThanOneMonthMember
ifrs_NotLaterThanOneYearMember
ifrs_NotLaterThanThreeMonthsMember
ifrs_NotMeasuredAtFairValueInStatementOfFinancialPositionButForWhichFairValueIsDisclosedMember
ifrs_NotesAndDebenturesIssued
ifrs_NotionalAmount
ifrs_NumberAndAverageNumberOfEmployeesAbstract
ifrs_NumberOfEmployees
ifrs_NumberOfInstrumentsGrantedInSharebasedPaymentArrangement
ifrs_NumberOfInstrumentsOrInterestsIssuedOrIssuable
ifrs_NumberOfInstrumentsOtherEquityInstrumentsGranted
ifrs_NumberOfOtherEquityInstrumentsExercisableInSharebasedPaymentArrangement
ifrs_NumberOfOtherEquityInstrumentsExercisedOrVestedInSharebasedPaymentArrangement
ifrs_NumberOfOtherEquityInstrumentsExpiredInSharebasedPaymentArrangement
ifrs_NumberOfOtherEquityInstrumentsForfeitedInSharebasedPaymentArrangement
ifrs_NumberOfOtherEquityInstrumentsOutstandingInSharebasedPaymentArrangement
ifrs_NumberOfOtherParticipantsOfRetirementBenefitPlan
ifrs_NumberOfOutstandingShareOptions
ifrs_NumberOfParticipantsOfRetirementBenefitPlanReceivingBenefits
ifrs_NumberOfShareOptionsExercisableInSharebasedPaymentArrangement
ifrs_NumberOfShareOptionsExercisedInSharebasedPaymentArrangement
ifrs_NumberOfShareOptionsExpiredInSharebasedPaymentArrangement
ifrs_NumberOfShareOptionsForfeitedInSharebasedPaymentArrangement
ifrs_NumberOfShareOptionsGrantedInSharebasedPaymentArrangement
ifrs_NumberOfSharesAuthorised
ifrs_NumberOfSharesIssued
ifrs_NumberOfSharesIssuedAbstract
ifrs_NumberOfSharesIssuedAndFullyPaid
ifrs_NumberOfSharesIssuedButNotFullyPaid
ifrs_NumberOfSharesOutstanding
ifrs_OfficeEquipment
ifrs_OfficeEquipmentMember
ifrs_OnDemandMember
ifrs_OnerousContractsContingentLiabilityMember
ifrs_OnerousContractsProvision
ifrs_OnerousContractsProvisionAbstract
ifrs_OnerousContractsProvisionMember
ifrs_OperatingExpenseExcludingCostOfSales
ifrs_OperatingSegmentsAxis
ifrs_OperatingSegmentsMember
ifrs_OptionContractMember
ifrs_OptionPricingModelMember
ifrs_OrdinarySharesMember
ifrs_OriginalAssetsBeforeTransfer
ifrs_OtherAdjustmentsForNoncashItems
ifrs_OtherAdjustmentsForWhichCashEffectsAreInvestingOrFinancingCashFlow
ifrs_OtherAdjustmentsToReconcileProfitLoss
ifrs_OtherAmountsRecognisedForDefinedBenefitPlans
ifrs_OtherAssets
ifrs_OtherAssetsAmountContributedToFairValueOfPlanAssets
ifrs_OtherAssetsMember
ifrs_OtherAssetsPercentageContributedToFairValueOfPlanAssets
ifrs_OtherBorrowings
ifrs_OtherCashAndCashEquivalents
ifrs_OtherCashPaymentsFromOperatingActivities
ifrs_OtherCashPaymentsToAcquireEquityOrDebtInstrumentsOfOtherEntitiesClassifiedAsInvestingActivities
ifrs_OtherCashPaymentsToAcquireInterestsInJointVenturesClassifiedAsInvestingActivities
ifrs_OtherCashReceiptsFromOperatingActivities
ifrs_OtherCashReceiptsFromSalesOfEquityOrDebtInstrumentsOfOtherEntitiesClassifiedAsInvestingActivities
ifrs_OtherCashReceiptsFromSalesOfInterestsInJointVenturesClassifiedAsInvestingActivities
ifrs_OtherComponentsOfDeferredTaxExpenseIncome
ifrs_OtherComprehensiveIncome
ifrs_OtherComprehensiveIncomeAbstract
ifrs_OtherComprehensiveIncomeAttributableToNoncontrollingInterests
ifrs_OtherComprehensiveIncomeAttributableToOwnersOfParent
ifrs_OtherComprehensiveIncomeBeforeTax
ifrs_OtherComprehensiveIncomeBeforeTaxActuarialGainsLossesOnDefinedBenefitPlans
ifrs_OtherComprehensiveIncomeBeforeTaxAvailableforsaleFinancialAssets
ifrs_OtherComprehensiveIncomeBeforeTaxCashFlowHedges
ifrs_OtherComprehensiveIncomeBeforeTaxChangeInFairValueOfFinancialLiabilityAttributableToChangeInCreditRiskOfLiability
ifrs_OtherComprehensiveIncomeBeforeTaxEffectsOfLimitInIAS19Paragraph58B
ifrs_OtherComprehensiveIncomeBeforeTaxExchangeDifferencesOnTranslation
ifrs_OtherComprehensiveIncomeBeforeTaxGainsLossesFromInvestmentsInEquityInstruments
ifrs_OtherComprehensiveIncomeBeforeTaxGainsLossesOnRemeasurementsOfDefinedBenefitPlans
ifrs_OtherComprehensiveIncomeBeforeTaxGainsLossesOnRevaluation
ifrs_OtherComprehensiveIncomeBeforeTaxHedgesOfNetInvestmentsInForeignOperations
ifrs_OtherComprehensiveIncomeNetOfTaxActuarialGainsLossesOnDefinedBenefitPlans
ifrs_OtherComprehensiveIncomeNetOfTaxAvailableforsaleFinancialAssets
ifrs_OtherComprehensiveIncomeNetOfTaxCashFlowHedges
ifrs_OtherComprehensiveIncomeNetOfTaxChangeInFairValueOfFinancialLiabilityAttributableToChangeInCreditRiskOfLiability
ifrs_OtherComprehensiveIncomeNetOfTaxEffectsOfLimitInIAS19Paragraph58B
ifrs_OtherComprehensiveIncomeNetOfTaxExchangeDifferencesOnTranslation
ifrs_OtherComprehensiveIncomeNetOfTaxGainsLossesFromInvestmentsInEquityInstruments
ifrs_OtherComprehensiveIncomeNetOfTaxGainsLossesOnRemeasurementsOfDefinedBenefitPlans
ifrs_OtherComprehensiveIncomeNetOfTaxGainsLossesOnRevaluation
ifrs_OtherComprehensiveIncomeNetOfTaxHedgesOfNetInvestmentsInForeignOperations
ifrs_OtherComprehensiveIncomeThatWillBeReclassifiedToProfitOrLossBeforeTax
ifrs_OtherComprehensiveIncomeThatWillBeReclassifiedToProfitOrLossNetOfTax
ifrs_OtherComprehensiveIncomeThatWillNotBeReclassifiedToProfitOrLossBeforeTax
ifrs_OtherComprehensiveIncomeThatWillNotBeReclassifiedToProfitOrLossNetOfTax
ifrs_OtherContingentLiabilitiesMember
ifrs_OtherContingentLiabilitiesRelatedToJointVentures
ifrs_OtherCurrentAssets
ifrs_OtherCurrentBorrowingsAndCurrentPortionOfOtherNoncurrentBorrowings
ifrs_OtherCurrentFinancialAssets
ifrs_OtherCurrentFinancialLiabilities
ifrs_OtherCurrentLiabilities
ifrs_OtherCurrentNonfinancialAssets
ifrs_OtherCurrentNonfinancialLiabilities
ifrs_OtherCurrentPayables
ifrs_OtherCurrentReceivables
ifrs_OtherDebtInstrumentsHeld
ifrs_OtherDecreasesAggregateDifferenceBetweenFairValueAtInitialRecognitionAndAmountDeterminedUsingValuationTechniqueYetToBeRecognised
ifrs_OtherDifferencesToCashAndCashEquivalentsInStatementOfCashFlows
ifrs_OtherDisposalsOfAssetsMember
ifrs_OtherEmployeeExpense
ifrs_OtherEnvironmentRelatedContingentLiabilityMember
ifrs_OtherEnvironmentRelatedProvisionMember
ifrs_OtherEquityInterest
ifrs_OtherEquityInterestMember
ifrs_OtherEquitySecuritiesMember
ifrs_OtherExpenseByFunction
ifrs_OtherExpenseByNature
ifrs_OtherFeeAndCommissionExpense
ifrs_OtherFeeAndCommissionIncome
ifrs_OtherFinanceCost
ifrs_OtherFinanceIncome
ifrs_OtherFinanceIncomeCost
ifrs_OtherFinancialAssets
ifrs_OtherFinancialLiabilities
ifrs_OtherGainsLosses
ifrs_OtherImpairedAssetsMember
ifrs_OtherIncome
ifrs_OtherIncomeExpenseFromSubsidiariesJointlyControlledEntitiesAndAssociates
ifrs_OtherIncreasesAggregateDifferenceBetweenFairValueAtInitialRecognitionAndAmountDeterminedUsingValuationTechniqueYetToBeRecognised
ifrs_OtherIndividuallyImmaterialComponentsOfOtherComprehensiveIncomeBeforeTax
ifrs_OtherIndividuallyImmaterialComponentsOfOtherComprehensiveIncomeNetOfTax
ifrs_OtherInflowsOutflowsOfCashClassifiedAsFinancingActivities
ifrs_OtherInflowsOutflowsOfCashClassifiedAsInvestingActivities
ifrs_OtherInflowsOutflowsOfCashClassifiedAsOperatingActivities
ifrs_OtherIntangibleAssets
ifrs_OtherIntangibleAssetsInternallyGeneratedMember
ifrs_OtherIntangibleAssetsMember
ifrs_OtherIntangibleAssetsNotInternallyGeneratedMember
ifrs_OtherInventories
ifrs_OtherLiabilities
ifrs_OtherLiabilitiesUnderInsuranceContractsAndReinsuranceContractsIssued
ifrs_OtherLongtermBenefitObligation
ifrs_OtherLongtermBenefits
ifrs_OtherLongtermBenefitsMember
ifrs_OtherLongtermProvisions
ifrs_OtherMaterialActuarialAssumptions
ifrs_OtherMaterialActuarialAssumptionsMember
ifrs_OtherMaterialNoncashItems
ifrs_OtherNoncurrentAssets
ifrs_OtherNoncurrentFinancialAssets
ifrs_OtherNoncurrentFinancialLiabilities
ifrs_OtherNoncurrentLiabilities
ifrs_OtherNoncurrentNonfinancialAssets
ifrs_OtherNoncurrentNonfinancialLiabilities
ifrs_OtherNoncurrentPayables
ifrs_OtherNoncurrentReceivables
ifrs_OtherNonfinancialAssets
ifrs_OtherNonfinancialLiabilities
ifrs_OtherOperatingIncomeExpense
ifrs_OtherPayables
ifrs_OtherPriceRiskMember
ifrs_OtherPropertyPlantAndEquipment
ifrs_OtherPropertyPlantAndEquipmentMember
ifrs_OtherProvisions
ifrs_OtherProvisionsAbstract
ifrs_OtherProvisionsMember
ifrs_OtherReceivables
ifrs_OtherRelatedPartiesMember
ifrs_OtherReserves
ifrs_OtherReservesAbstract
ifrs_OtherReservesMember
ifrs_OtherRevenue
ifrs_OtherReversalsOfProvisions
ifrs_OtherShorttermEmployeeBenefits
ifrs_OtherShorttermProvisions
ifrs_OtherTangibleOrIntangibleAssetsTransferred
ifrs_OtherTaxEffectsForReconciliationBetweenAccountingProfitAndTaxExpenseIncome
ifrs_OtherTaxRateEffectsForReconciliationBetweenAccountingProfitAndTaxExpenseIncome
ifrs_OtherTemporaryDifferencesMember
ifrs_OtherTradingIncomeExpense
ifrs_OtherWorkPerformedByEntityAndCapitalised
ifrs_OutflowsOfCashFromInvestingActivities
ifrs_OutstandingBalancesForRelatedPartyTransactionsAbstract
ifrs_OutstandingCommitmentsMadeByEntityRelatedPartyTransactions
ifrs_OutstandingCommitmentsMadeOnBehalfOfEntityRelatedPartyTransactions
ifrs_ParValuePerShare
ifrs_ParentMember
ifrs_ParticipationInDefinedBenefitPlanThatSharesRisksBetweenGroupEntitiesRelatedPartyTransactions
ifrs_PastServiceCostAndGainsLossesArisingFromSettlementsNetDefinedBenefitLiabilityAsset
ifrs_PastServiceCostAndGainsLossesArisingFromSettlementsNetDefinedBenefitLiabilityAssetAbstract
ifrs_PastServiceCostNetDefinedBenefitLiabilityAsset
ifrs_PastServiceCostRecognisedInProfitOrLossDefinedBenefitPlan
ifrs_PayablesOnSocialSecurityAndTaxesOtherThanIncomeTax
ifrs_PaymentsForDebtIssueCosts
ifrs_PaymentsForPremiumsAndClaimsAnnuitiesAndOtherPolicyBenefits
ifrs_PaymentsForShareIssueCosts
ifrs_PaymentsFromChangesInOwnershipInterestsInSubsidiaries
ifrs_PaymentsFromContractsHeldForDealingOrTradingPurpose
ifrs_PaymentsFromPlanNetDefinedBenefitLiabilityAsset
ifrs_PaymentsInRespectOfSettlementsNetDefinedBenefitLiabilityAsset
ifrs_PaymentsInRespectOfSettlementsReimbursementRights
ifrs_PaymentsOfFinanceLeaseLiabilitiesClassifiedAsFinancingActivities
ifrs_PaymentsOfOtherEquityInstruments
ifrs_PaymentsToAcquireOrRedeemEntitysShares
ifrs_PaymentsToAndOnBehalfOfEmployees
ifrs_PaymentsToManufactureOrAcquireAssetsHeldForRentalToOthersAndSubsequentlyHeldForSale
ifrs_PaymentsToSuppliersForGoodsAndServices
ifrs_PaymentsToSuppliersForGoodsAndServicesAndToAndOnBehalfOfEmployees
ifrs_PercentageOfExperienceAdjustmentsOnPlanAssets
ifrs_PercentageOfExperienceAdjustmentsOnPlanLiabilities
ifrs_PercentageOfReasonablyPossibleDecreaseInActuarialAssumption
ifrs_PercentageOfReasonablyPossibleIncreaseInActuarialAssumption
ifrs_PercentageOfVotingEquityInterestsAcquired
ifrs_PeriodCoveredByFinancialStatements
ifrs_PlanAssetsAtFairValue
ifrs_PlanAssetsMember
ifrs_PortfolioAndOtherManagementFeeIncome
ifrs_PortionOfConsiderationPaidReceivedConsistingOfCashAndCashEquivalents
ifrs_PortionOfGainsLossesRecognisedWhenControlOfSubsidiaryIsLostAttributableToRecognisingInvestmentRetainedInFormerSubsidiary
ifrs_PostemploymentBenefitExpenseDefinedBenefitPlans
ifrs_PostemploymentBenefitExpenseDefinedContributionPlans
ifrs_PotentialOrdinaryShareTransactionsMember
ifrs_PremiumsWrittenNetOfReinsurance
ifrs_PrepaymentRiskMember
ifrs_Prepayments
ifrs_PresentValueOfDefinedBenefitObligationMember
ifrs_PreviousGAAPMember
ifrs_PreviouslyStatedMember
ifrs_PriceIndexMovements
ifrs_PriceRisksOfCommodityOrFirmCommitmentsOrHighlyProbableForecastTransactionsToPurchaseOrSellCommodityMember
ifrs_PricesSpecifiedInForwardAgreementsToPurchaseFinancialAssetsForCash
ifrs_PrincipalPlaceOfBusiness
ifrs_PrincipalPlaceOfBusinessOfAssociate
ifrs_PrincipalPlaceOfBusinessOfEntityWhoseConsolidatedFinancialStatementsHaveBeenProducedForPublicUse
ifrs_PrincipalPlaceOfBusinessOfJointOperation
ifrs_PrincipalPlaceOfBusinessOfJointVenture
ifrs_PrincipalPlaceOfBusinessOfSubsidiary
ifrs_ProbabilityOfDefaultSignificantUnobservableInputsAssets
ifrs_ProbabilityOfDefaultSignificantUnobservableInputsEntitysOwnEquityInstruments
ifrs_ProbabilityOfDefaultSignificantUnobservableInputsLiabilities
ifrs_ProceedsFromBorrowingsClassifiedAsFinancingActivities
ifrs_ProceedsFromChangesInOwnershipInterestsInSubsidiaries
ifrs_ProceedsFromContributionsOfNoncontrollingInterests
ifrs_ProceedsFromCurrentBorrowings
ifrs_ProceedsFromDisposalOfNoncurrentAssetsOrDisposalGroupsClassifiedAsHeldForSaleAndDiscontinuedOperations
ifrs_ProceedsFromDisposalOrMaturityOfAvailableforsaleFinancialAssets
ifrs_ProceedsFromDisposalsOfPropertyPlantAndEquipmentIntangibleAssetsOtherThanGoodwillInvestmentPropertyAndOtherNoncurrentAssets
ifrs_ProceedsFromExerciseOfOptions
ifrs_ProceedsFromGovernmentGrantsClassifiedAsFinancingActivities
ifrs_ProceedsFromGovernmentGrantsClassifiedAsInvestingActivities
ifrs_ProceedsFromIssueOfBondsNotesAndDebentures
ifrs_ProceedsFromIssueOfPreferenceShares
ifrs_ProceedsFromIssueOfSubordinatedLiabilities
ifrs_ProceedsFromIssuingOtherEquityInstruments
ifrs_ProceedsFromIssuingShares
ifrs_ProceedsFromNoncurrentBorrowings
ifrs_ProceedsFromOtherLongtermAssetsClassifiedAsInvestingActivities
ifrs_ProceedsFromSaleOrIssueOfTreasuryShares
ifrs_ProceedsFromSalesOfBiologicalAssets
ifrs_ProceedsFromSalesOfIntangibleAssetsClassifiedAsInvestingActivities
ifrs_ProceedsFromSalesOfInterestsInAssociates
ifrs_ProceedsFromSalesOfInvestmentProperty
ifrs_ProceedsFromSalesOfInvestmentsAccountedForUsingEquityMethod
ifrs_ProceedsFromSalesOfInvestmentsOtherThanInvestmentsAccountedForUsingEquityMethod
ifrs_ProceedsFromSalesOfPropertyPlantAndEquipmentClassifiedAsInvestingActivities
ifrs_ProceedsFromSalesOrMaturityOfFinancialInstrumentsClassifiedAsInvestingActivities
ifrs_ProceedsFromTransferActivity
ifrs_ProductionSupplies
ifrs_ProductsAndServicesAxis
ifrs_ProductsAndServicesMember
ifrs_ProfitLoss
ifrs_ProfitLossAbstract
ifrs_ProfitLossAttributableToAbstract
ifrs_ProfitLossAttributableToNoncontrollingInterests
ifrs_ProfitLossAttributableToOrdinaryEquityHoldersOfParentEntity
ifrs_ProfitLossAttributableToOrdinaryEquityHoldersOfParentEntityAbstract
ifrs_ProfitLossAttributableToOrdinaryEquityHoldersOfParentEntityIncludingDilutiveEffects
ifrs_ProfitLossAttributableToOwnersOfParent
ifrs_ProfitLossBeforeTax
ifrs_ProfitLossBeforeTaxDiscontinuedOperations
ifrs_ProfitLossFromContinuingOperations
ifrs_ProfitLossFromContinuingOperationsAttributableToNoncontrollingInterests
ifrs_ProfitLossFromContinuingOperationsAttributableToOrdinaryEquityHoldersOfParentEntity
ifrs_ProfitLossFromContinuingOperationsAttributableToOrdinaryEquityHoldersOfParentEntityIncludingDilutiveEffects
ifrs_ProfitLossFromDiscontinuedOperations
ifrs_ProfitLossFromDiscontinuedOperationsAttributableToNoncontrollingInterests
ifrs_ProfitLossFromDiscontinuedOperationsAttributableToOrdinaryEquityHoldersOfParentEntity
ifrs_ProfitLossFromDiscontinuedOperationsAttributableToOrdinaryEquityHoldersOfParentEntityIncludingDilutiveEffects
ifrs_ProfitLossFromOperatingActivities
ifrs_ProfitLossOfAcquiree
ifrs_ProfitLossOfCombinedEntity
ifrs_ProfitLossRecognisedOnExchangingConstructionServicesForFinancialAsset2011
ifrs_ProfitLossRecognisedOnExchangingConstructionServicesForIntangibleAsset2011
ifrs_ProfitsLossesOnDisposalOfInvestmentsAndChangesInValueOfInvestments
ifrs_ProgressBillings
ifrs_PropertyAmountContributedToFairValueOfPlanAssets
ifrs_PropertyPercentageContributedToFairValueOfPlanAssets
ifrs_PropertyPlantAndEquipment
ifrs_PropertyPlantAndEquipmentAbstract
ifrs_PropertyPlantAndEquipmentCarryingAmountAtCostOfRevaluedAssets
ifrs_PropertyPlantAndEquipmentCarryingAmountOfAssetsRetiredFromActiveUse
ifrs_PropertyPlantAndEquipmentCarryingAmountOfRevaluedAssets
ifrs_PropertyPlantAndEquipmentCarryingAmountOfRevaluedAssetsByActiveMarketPrices
ifrs_PropertyPlantAndEquipmentCarryingAmountOfRevaluedAssetsByEstimations
ifrs_PropertyPlantAndEquipmentExpendituresRecognisedForConstructions
ifrs_PropertyPlantAndEquipmentFairValueUsedAsDeemedCost
ifrs_PropertyPlantAndEquipmentGrossCarryingAmountFullyDepreciated
ifrs_PropertyPlantAndEquipmentMember
ifrs_PropertyPlantAndEquipmentPledgedAsSecurity
ifrs_PropertyPlantAndEquipmentRecognisedAsOfAcquisitionDate
ifrs_PropertyPlantAndEquipmentRestrictionsOnTitle
ifrs_PropertyPlantAndEquipmentRevaluationAbstract
ifrs_PropertyPlantAndEquipmentRevaluationSurplus
ifrs_PropertyPlantAndEquipmentTemporarilyIdle
ifrs_PropertyPlantAndEquipmentUnderOperatingLeasesMember
ifrs_ProportionOfOwnershipInterestInAssociate
ifrs_ProportionOfOwnershipInterestInJointOperation
ifrs_ProportionOfOwnershipInterestInJointVenture
ifrs_ProportionOfOwnershipInterestInJointlyControlledEntity
ifrs_ProportionOfOwnershipInterestInSubsidiary
ifrs_ProportionOfOwnershipInterestsHeldByNoncontrollingInterests
ifrs_ProportionOfVotingPowerHeldInAssociate
ifrs_ProportionOfVotingPowerHeldInJointlyControlledEntity
ifrs_ProportionOfVotingPowerHeldInSubsidiary
ifrs_ProportionOfVotingRightsHeldByNoncontrollingInterests
ifrs_ProportionOfVotingRightsHeldInJointOperation
ifrs_ProportionOfVotingRightsHeldInJointVenture
ifrs_ProvisionForCreditCommitmentsMember
ifrs_ProvisionForDecommissioningRestorationAndRehabilitationCosts
ifrs_ProvisionForDecommissioningRestorationAndRehabilitationCostsAbstract
ifrs_ProvisionForDecommissioningRestorationAndRehabilitationCostsMember
ifrs_ProvisionOfGuaranteesOrCollateralByEntityRelatedPartyTransactions
ifrs_ProvisionOfGuaranteesOrCollateralToEntityRelatedPartyTransactions
ifrs_ProvisionUsedOtherProvisions
ifrs_Provisions
ifrs_ProvisionsAbstract
ifrs_ProvisionsArisingFromLiabilityAdequacyTests
ifrs_ProvisionsForDoubtfulDebtsRelatedToOutstandingBalancesOfRelatedPartyTransaction
ifrs_ProvisionsForEmployeeBenefits
ifrs_ProvisionsForFutureNonparticipatingBenefits
ifrs_PurchaseOfAvailableforsaleFinancialAssets
ifrs_PurchaseOfBiologicalAssets
ifrs_PurchaseOfFinancialInstrumentsClassifiedAsInvestingActivities
ifrs_PurchaseOfFinancialInstrumentsMeasuredInLevel3OfFairValueHierarchy
ifrs_PurchaseOfIntangibleAssetsClassifiedAsInvestingActivities
ifrs_PurchaseOfInterestsInAssociates
ifrs_PurchaseOfInterestsInInvestmentsAccountedForUsingEquityMethod
ifrs_PurchaseOfInvestmentProperty
ifrs_PurchaseOfInvestmentsOtherThanInvestmentsAccountedForUsingEquityMethod
ifrs_PurchaseOfOtherLongtermAssetsClassifiedAsInvestingActivities
ifrs_PurchaseOfPropertyPlantAndEquipmentClassifiedAsInvestingActivities
ifrs_PurchaseOfPropertyPlantAndEquipmentIntangibleAssetsOtherThanGoodwillInvestmentPropertyAndOtherNoncurrentAssets
ifrs_PurchaseOfTreasuryShares
ifrs_PurchasedCallOptionsMember
ifrs_PurchasesFairValueMeasurementAssets
ifrs_PurchasesFairValueMeasurementEntitysOwnEquityInstruments
ifrs_PurchasesFairValueMeasurementLiabilities
ifrs_PurchasesOfGoodsRelatedPartyTransactions
ifrs_PurchasesOfPropertyAndOtherAssetsRelatedPartyTransactions
ifrs_QualitativeInformationAboutContinuingInvolvementInDerecognisedFinancialAssets
ifrs_QualitativeInformationAboutEntitysObjectivesPoliciesAndProcessesForManagingCapital
ifrs_QualitativeInformationAboutSensitivityAndInformationAboutThoseTermsAndConditionsOfInsuranceContractsThatHaveMaterialEffect
ifrs_RangeAxis
ifrs_RangeOfEstimatesWithinWhichFairValueIsLikelyToLieForBiologicalAssetsAtCost
ifrs_RangeOfEstimatesWithinWhichFairValueIsLikelyToLieForInvestmentPropertyAtCostWithinFairValueModel
ifrs_RangeOfEstimatesWithinWhichFairValueIsLikelyToLieForInvestmentPropertyCostModel
ifrs_RangesMember
ifrs_RangesOfExercisePricesForOutstandingShareOptionsAxis
ifrs_RangesOfExercisePricesForOutstandingShareOptionsMember
ifrs_RatedCreditExposures
ifrs_RawMaterials
ifrs_RawMaterialsAndConsumablesUsed
ifrs_ReasonOfTransferOfFinancialInstrumentsIntoOrOutOfLevel3OfFairValueHierarchy
ifrs_ReceiptsFromContractsHeldForDealingOrTradingPurpose
ifrs_ReceiptsFromPremiumsAndClaimsAnnuitiesAndOtherPolicyBenefits
ifrs_ReceiptsFromRentsAndSubsequentSalesOfSuchAssets
ifrs_ReceiptsFromRoyaltiesFeesCommissionsAndOtherRevenue
ifrs_ReceiptsFromSalesOfGoodsAndRenderingOfServices
ifrs_ReceivablesAndPayablesRelatedToInsuranceContracts
ifrs_ReceivablesFromTaxesOtherThanIncomeTax
ifrs_RecipesFormulaeModelsDesignsAndPrototypes
ifrs_RecipesFormulaeModelsDesignsAndPrototypesInternallyGeneratedMember
ifrs_RecipesFormulaeModelsDesignsAndPrototypesMember
ifrs_RecipesFormulaeModelsDesignsAndPrototypesNotInternallyGeneratedMember
ifrs_ReclassificationAdjustmentsOnAvailableforsaleFinancialAssetsBeforeTax
ifrs_ReclassificationAdjustmentsOnAvailableforsaleFinancialAssetsNetOfTax
ifrs_ReclassificationAdjustmentsOnCashFlowHedgesBeforeTax
ifrs_ReclassificationAdjustmentsOnCashFlowHedgesNetOfTax
ifrs_ReclassificationAdjustmentsOnExchangeDifferencesOnTranslationBeforeTax
ifrs_ReclassificationAdjustmentsOnExchangeDifferencesOnTranslationNetOfTax
ifrs_ReclassificationAdjustmentsOnHedgesOfNetInvestmentsInForeignOperationsBeforeTax
ifrs_ReclassificationAdjustmentsOnHedgesOfNetInvestmentsInForeignOperationsNetOfTax
ifrs_ReclassificationIntoAvailableforsaleFinancialAssets
ifrs_ReclassificationIntoFinancialAssetsAtFairValueThroughProfitOrLoss
ifrs_ReclassificationIntoHeldtomaturityInvestments
ifrs_ReclassificationIntoLoansAndReceivables
ifrs_ReclassificationOfFinancialAssetsOutOfMeasuredAtAmortisedCostIntoMeasuredAtFairValue
ifrs_ReclassificationOfFinancialAssetsOutOfMeasuredAtFairValueIntoMeasuredAtAmortisedCost
ifrs_ReclassificationOutOfAvailableforsaleFinancialAssets
ifrs_ReclassificationOutOfFinancialAssetsAtFairValueThroughProfitOrLoss
ifrs_ReclassificationOutOfHeldtomaturityInvestments
ifrs_ReclassificationOutOfLoansAndReceivables
ifrs_ReclassifiedItemsAxis
ifrs_ReclassifiedItemsMember
ifrs_RecognisedAssetsAndLiabilitiesOfDefinedBenefitPlansAbstract
ifrs_RecognisedAssetsDefinedBenefitPlan
ifrs_RecognisedAssetsRepresentingContinuingInvolvementInDerecognisedFinancialAssets
ifrs_RecognisedExpenseOfDefinedBenefitPlansAbstract
ifrs_RecognisedFinanceLeaseAsAssets
ifrs_RecognisedLiabilitiesDefinedBenefitPlan
ifrs_RecognisedLiabilitiesRepresentingContinuingInvolvementInDerecognisedFinancialAssets
ifrs_ReconciliationOfAccountingProfitMultipliedByApplicableTaxRatesAbstract
ifrs_ReconciliationOfAggregateDifferenceBetweenFairValueAtInitialRecognitionAndAmountDeterminedUsingValuationTechniqueYetToBeRecognisedAbstract
ifrs_ReconciliationOfAverageEffectiveTaxRateAndApplicableTaxRateAbstract
ifrs_ReconciliationOfChangesInAllowanceAccountForCreditLossesOfFinancialAssetsAbstract
ifrs_ReconciliationOfChangesInBiologicalAssetsAbstract
ifrs_ReconciliationOfChangesInContingentLiabilitiesRecognisedInBusinessCombinationAbstract
ifrs_ReconciliationOfChangesInDeferredAcquisitionCostsArisingFromInsuranceContractsAbstract
ifrs_ReconciliationOfChangesInDeferredTaxLiabilityAssetAbstract
ifrs_ReconciliationOfChangesInFairValueMeasurementAssetsAbstract
ifrs_ReconciliationOfChangesInFairValueMeasurementEntitysOwnEquityInstrumentsAbstract
ifrs_ReconciliationOfChangesInFairValueMeasurementLiabilitiesAbstract
ifrs_ReconciliationOfChangesInFairValueOfPlanAssetsAbstract
ifrs_ReconciliationOfChangesInGoodwillAbstract
ifrs_ReconciliationOfChangesInIntangibleAssetsAndGoodwillAbstract
ifrs_ReconciliationOfChangesInIntangibleAssetsOtherThanGoodwillAbstract
ifrs_ReconciliationOfChangesInInvestmentPropertyAbstract
ifrs_ReconciliationOfChangesInLiabilitiesUnderInsuranceContractsAndReinsuranceContractsIssuedAbstract
ifrs_ReconciliationOfChangesInNetAssetsAvailableForBenefitsAbstract
ifrs_ReconciliationOfChangesInOtherProvisionsAbstract
ifrs_ReconciliationOfChangesInPresentValueOfDefinedBenefitObligationAbstract
ifrs_ReconciliationOfChangesInPropertyPlantAndEquipmentAbstract
ifrs_ReconciliationOfChangesInReinsuranceAssetsAbstract
ifrs_ReconciliationOfLiabilityAssetOfDefinedBenefitPlansAbstract
ifrs_ReconciliationOfNumberOfSharesOutstandingAbstract
ifrs_RecoverableAmountOfUnitOrGroupOfUnits
ifrs_RecurringFairValueMeasurementMember
ifrs_RedesignatedAmountMember
ifrs_RedesignatedFinancialAssetAsAvailableforsale
ifrs_RedesignatedFinancialAssetAtFairValueThroughProfitOrLoss
ifrs_RedesignatedFinancialLiabilityAtFairValueThroughProfitOrLoss
ifrs_RedesignatedMember
ifrs_RedesignationAxis
ifrs_ReductionOfIssuedCapital
ifrs_RefundsProvision
ifrs_RefundsProvisionAbstract
ifrs_RefundsProvisionMember
ifrs_ReimbursementRightsAtFairValue
ifrs_ReinsuranceAssets
ifrs_ReinsurersShareOfAmountArisingFromInsuranceContractsMember
ifrs_RelatedPartiesMember
ifrs_RelatedPartyTransactionsAbstract
ifrs_RemainingAmortisationPeriodOfIntangibleAssetsMaterialToEntity
ifrs_RemainingUnamortisedGainsAndLossesArisingOnBuyingReinsurance
ifrs_RemainingUnrecognisedAmountOfTransitionalLiabilities
ifrs_RentalIncome
ifrs_RentalIncomeFromInvestmentProperty
ifrs_RepairsAndMaintenanceExpense
ifrs_RepaymentsOfBondsNotesAndDebentures
ifrs_RepaymentsOfBorrowingsClassifiedAsFinancingActivities
ifrs_RepaymentsOfCurrentBorrowings
ifrs_RepaymentsOfNoncurrentBorrowings
ifrs_RepaymentsOfSubordinatedLiabilities
ifrs_ReportableSegmentsMember
ifrs_ReportedIfInComplianceWithRequirementOfIFRSMember
ifrs_RepurchaseAgreementsAndCashCollateralOnSecuritiesLent
ifrs_ResearchAndDevelopmentExpense
ifrs_ReserveForCatastrophe
ifrs_ReserveForCatastropheMember
ifrs_ReserveForEqualisation
ifrs_ReserveForEqualisationMember
ifrs_ReserveOfCashFlowHedges
ifrs_ReserveOfCashFlowHedgesMember
ifrs_ReserveOfChangeInFairValueOfFinancialLiabilityAttributableToChangeInCreditRiskOfLiability
ifrs_ReserveOfChangeInFairValueOfFinancialLiabilityAttributableToChangeInCreditRiskOfLiabilityMember
ifrs_ReserveOfDiscretionaryParticipationFeatures
ifrs_ReserveOfDiscretionaryParticipationFeaturesMember
ifrs_ReserveOfEquityComponentOfConvertibleInstruments
ifrs_ReserveOfEquityComponentOfConvertibleInstrumentsMember
ifrs_ReserveOfExchangeDifferencesOnTranslation
ifrs_ReserveOfExchangeDifferencesOnTranslationMember
ifrs_ReserveOfGainsAndLossesFromInvestmentsInEquityInstruments
ifrs_ReserveOfGainsAndLossesFromInvestmentsInEquityInstrumentsMember
ifrs_ReserveOfGainsAndLossesOnRemeasuringAvailableforsaleFinancialAssets
ifrs_ReserveOfGainsAndLossesOnRemeasuringAvailableforsaleFinancialAssetsMember
ifrs_ReserveOfHedgesOfNetInvestmentInForeignOperations
ifrs_ReserveOfHedgesOfNetInvestmentInForeignOperationsMember
ifrs_ReserveOfRemeasurementsOfDefinedBenefitPlans
ifrs_ReserveOfRemeasurementsOfDefinedBenefitPlansMember
ifrs_ReserveOfSharebasedPayments
ifrs_ReserveOfSharebasedPaymentsMember
ifrs_ReservesWithinEquityAxis
ifrs_ResidenceOfEntityWhoseConsolidatedFinancialStatementsHaveBeenProducedForPublicUse
ifrs_ResidualValueRiskMember
ifrs_RestatedMember
ifrs_RestrictedCashAndCashEquivalents
ifrs_RestrictionsOnAccessToAssetsInFunds
ifrs_RestrictionsOnRealisabilityOfInvestmentPropertyOrRemittanceOfIncomeAndProceedsOfDisposalOfInvestmentProperty
ifrs_RestructuringContingentLiabilityMember
ifrs_RestructuringProvision
ifrs_RestructuringProvisionAbstract
ifrs_RestructuringProvisionMember
ifrs_RetainedEarnings
ifrs_RetainedEarningsMember
ifrs_RetentionForContractsInProgress
ifrs_RetirementsPropertyPlantAndEquipment
ifrs_RetrospectiveApplicationAndRetrospectiveRestatementAxis
ifrs_ReturnOnPlanAssetsNetDefinedBenefitLiabilityAsset
ifrs_ReturnOnReimbursementRights
ifrs_RevaluationIncreaseDecreaseIntangibleAssetsOtherThanGoodwill
ifrs_RevaluationIncreaseDecreasePropertyPlantAndEquipment
ifrs_RevaluationOfIntangibleAssetsAbstract
ifrs_RevaluationSurplus
ifrs_RevaluationSurplusMember
ifrs_Revenue
ifrs_RevenueAbstract
ifrs_RevenueAndOperatingIncome
ifrs_RevenueArisingFromExchangesOfGoodsOrServices
ifrs_RevenueArisingFromExchangesOfGoodsOrServicesAbstract
ifrs_RevenueArisingFromExchangesOfGoodsOrServicesConstructionContracts
ifrs_RevenueArisingFromExchangesOfGoodsOrServicesDividends
ifrs_RevenueArisingFromExchangesOfGoodsOrServicesInterest
ifrs_RevenueArisingFromExchangesOfGoodsOrServicesOtherRevenue
ifrs_RevenueArisingFromExchangesOfGoodsOrServicesRenderingOfServices
ifrs_RevenueArisingFromExchangesOfGoodsOrServicesRoyalties
ifrs_RevenueArisingFromExchangesOfGoodsOrServicesSaleOfGoods
ifrs_RevenueDiscontinuedOperations
ifrs_RevenueFromCommissions
ifrs_RevenueFromConstructionContracts
ifrs_RevenueFromDividends
ifrs_RevenueFromFranchiseFees
ifrs_RevenueFromGovernmentGrants
ifrs_RevenueFromInsuranceContractsIssuedWithoutReductionForReinsuranceHeld
ifrs_RevenueFromInterest
ifrs_RevenueFromRenderingOfServices
ifrs_RevenueFromRenderingOfServicesRelatedPartyTransactions
ifrs_RevenueFromRoyalties
ifrs_RevenueFromSaleOfGoods
ifrs_RevenueFromSaleOfGoodsRelatedPartyTransactions
ifrs_RevenueMultipleSignificantUnobservableInputsAssets
ifrs_RevenueMultipleSignificantUnobservableInputsEntitysOwnEquityInstruments
ifrs_RevenueMultipleSignificantUnobservableInputsLiabilities
ifrs_RevenueOfAcquiree
ifrs_RevenueOfCombinedEntity
ifrs_RevenueRecognisedOnExchangingConstructionServicesForFinancialAsset
ifrs_RevenueRecognisedOnExchangingConstructionServicesForIntangibleAsset
ifrs_RevenuesFromExternalCustomersAndTransactionsWithOtherOperatingSegmentsOfSameEntity
ifrs_RevenuesFromTransactionsWithOtherOperatingSegmentsOfSameEntity
ifrs_ReversalAllowanceAccountForCreditLossesOfFinancialAssets
ifrs_ReversalOfImpairmentLoss
ifrs_ReversalOfImpairmentLossRecognisedInOtherComprehensiveIncome
ifrs_ReversalOfImpairmentLossRecognisedInOtherComprehensiveIncomeIntangibleAssetsOtherThanGoodwill
ifrs_ReversalOfImpairmentLossRecognisedInOtherComprehensiveIncomePropertyPlantAndEquipment
ifrs_ReversalOfImpairmentLossRecognisedInProfitOrLoss
ifrs_ReversalOfImpairmentLossRecognisedInProfitOrLossBiologicalAssets
ifrs_ReversalOfImpairmentLossRecognisedInProfitOrLossIntangibleAssetsOtherThanGoodwill
ifrs_ReversalOfImpairmentLossRecognisedInProfitOrLossInvestmentProperty
ifrs_ReversalOfImpairmentLossRecognisedInProfitOrLossPropertyPlantAndEquipment
ifrs_ReversalOfInventoryWritedown
ifrs_ReversalOfProvisionsForCostOfRestructuring
ifrs_ReverseRepurchaseAgreementsAndCashCollateralOnSecuritiesBorrowed
ifrs_ReversedUnsettledLiabilitiesContingentLiabilitiesRecognisedInBusinessCombination
ifrs_RightsPreferencesAndRestrictionsAttachingToClassOfShareCapital
ifrs_RiskDiversificationEffectMember
ifrs_RiskExposureAssociatedWithInstrumentsSharingCharacteristic
ifrs_SaleOrIssueOfTreasuryShares
ifrs_SalesAndMarketingExpense
ifrs_SalesFairValueMeasurementAssets
ifrs_SalesFairValueMeasurementEntitysOwnEquityInstruments
ifrs_SalesFairValueMeasurementLiabilities
ifrs_SalesOfFinancialInstrumentsMeasuredInLevel3OfFairValueHierarchy2011
ifrs_SalesOfPropertyAndOtherAssetsRelatedPartyTransactions
ifrs_SecuredBankLoansReceived
ifrs_SecuritiesLendingMember
ifrs_SecuritisationVehiclesMember
ifrs_SecuritisationsMember
ifrs_SegmentInWhichNoncurrentAssetOrDisposalGroupHeldForSaleIsPresented
ifrs_SensitivityAnalysisForEachTypeOfMarketRisk
ifrs_SensitivityAnalysisToInsuranceRisk
ifrs_SeparateMember
ifrs_ServiceConcessionArrangementsAxis
ifrs_ServiceConcessionArrangementsClassifiedAsIntangibleAssets
ifrs_ServiceConcessionArrangementsClassifiedAsIntangibleAssetsMember
ifrs_ServiceConcessionArrangementsMember
ifrs_ServicesReceivedRelatedPartyTransactions
ifrs_SettledLiabilitiesContingentLiabilitiesRecognisedInBusinessCombination
ifrs_SettlementOfLiabilitiesByEntityOnBehalfOfRelatedPartyRelatedPartyTransactions
ifrs_SettlementOfLiabilitiesOnBehalfOfEntityByRelatedPartyRelatedPartyTransactions
ifrs_SettlementsFairValueMeasurementAssets
ifrs_SettlementsFairValueMeasurementEntitysOwnEquityInstruments
ifrs_SettlementsFairValueMeasurementLiabilities
ifrs_SettlementsOfFinancialInstrumentsMeasuredInLevel3OfFairValueHierarchy
ifrs_ShareIssueRelatedCost
ifrs_ShareOfCapitalCommitmentsIncurredJointlyWithOtherVenturers2011
ifrs_ShareOfCapitalCommitmentsOfJointVenturesThemselves
ifrs_ShareOfContingentLiabilitiesIncurredJointlyWithOtherVenturers
ifrs_ShareOfContingentLiabilitiesOfAssociatesIncurredJointlyWithOtherInvestors
ifrs_ShareOfContingentLiabilitiesOfAssociatesMember
ifrs_ShareOfContingentLiabilitiesOfJointVenturesThemselves
ifrs_ShareOfOtherComprehensiveIncomeOfAssociatesAndJointVenturesAccountedForUsingEquityMethod
ifrs_ShareOfOtherComprehensiveIncomeOfAssociatesAndJointVenturesAccountedForUsingEquityMethodBeforeTax
ifrs_ShareOfOtherComprehensiveIncomeOfAssociatesAndJointVenturesAccountedForUsingEquityMethodBeforeTaxAbstract
ifrs_ShareOfOtherComprehensiveIncomeOfAssociatesAndJointVenturesAccountedForUsingEquityMethodNetOfTaxAbstract
ifrs_ShareOfOtherComprehensiveIncomeOfAssociatesAndJointVenturesAccountedForUsingEquityMethodThatWillBeReclassifiedToProfitOrLossBeforeTax
ifrs_ShareOfOtherComprehensiveIncomeOfAssociatesAndJointVenturesAccountedForUsingEquityMethodThatWillBeReclassifiedToProfitOrLossNetOfTax
ifrs_ShareOfOtherComprehensiveIncomeOfAssociatesAndJointVenturesAccountedForUsingEquityMethodThatWillNotBeReclassifiedToProfitOrLossBeforeTax
ifrs_ShareOfOtherComprehensiveIncomeOfAssociatesAndJointVenturesAccountedForUsingEquityMethodThatWillNotBeReclassifiedToProfitOrLossNetOfTax
ifrs_ShareOfProfitLossOfAssociates
ifrs_ShareOfProfitLossOfAssociatesAndJointVenturesAccountedForUsingEquityMethod
ifrs_ShareOfProfitLossOfContinuingOperationsOfAssociatesAndJointVenturesAccountedForUsingEquityMethod
ifrs_ShareOfProfitLossOfDiscontinuedOperationsOfAssociates
ifrs_ShareOfProfitLossOfDiscontinuedOperationsOfAssociatesAndJointVenturesAccountedForUsingEquityMethod
ifrs_ShareOfProfitLossOfDiscontinuedOperationsOfJointVentures
ifrs_ShareOfProfitLossOfJointVentures
ifrs_ShareOfTotalComprehensiveIncomeOfAssociatesAndJointVenturesAccountedForUsingEquityMethod
ifrs_SharePremium
ifrs_SharePremiumMember
ifrs_SharebasedPaymentArrangementsMember
ifrs_SharebasedPaymentTransactions
ifrs_SharesInEntityHeldByEntityOrByItsSubsidiariesOrAssociates
ifrs_SharesReservedForIssueUnderOptionsAndContractsForSaleOfShares
ifrs_Ships
ifrs_ShipsMember
ifrs_ShorttermBorrowings
ifrs_ShorttermDepositsClassifiedAsCashEquivalents
ifrs_ShorttermDepositsNotClassifiedAsCashEquivalents
ifrs_ShorttermEmployeeBenefitsAccruals
ifrs_ShorttermEmployeeBenefitsExpense
ifrs_ShorttermEmployeeBenefitsExpenseAbstract
ifrs_ShorttermInvestmentsClassifiedAsCashEquivalents
ifrs_ShorttermLegalProceedingsProvision
ifrs_ShorttermMiscellaneousOtherProvisions
ifrs_ShorttermOnerousContractsProvision
ifrs_ShorttermProvisionForDecommissioningRestorationAndRehabilitationCosts
ifrs_ShorttermRestructuringProvision
ifrs_ShorttermWarrantyProvision
ifrs_SignificantInvestmentsInAssociatesAxis
ifrs_SignificantInvestmentsInJointlyControlledEntitiesAxis
ifrs_SignificantInvestmentsInSubsidiariesAxis
ifrs_SignificantTransfersOfFinancialInstrumentsOutOfLevel1IntoLevel2OfFairValueHierarchy
ifrs_SignificantTransfersOfFinancialInstrumentsOutOfLevel2IntoLevel1OfFairValueHierarchy
ifrs_SocialSecurityContributions
ifrs_SpareParts
ifrs_StateDefinedBenefitPlansMember
ifrs_StatementOfCashFlowsAbstract
ifrs_StatementOfChangesInEquityAbstract
ifrs_StatementOfChangesInEquityLineItems
ifrs_StatementOfChangesInEquityTable
ifrs_StatementOfChangesInNetAssetsAvailableForBenefitsAbstract
ifrs_StatementOfComprehensiveIncomeAbstract
ifrs_StatementOfFinancialPositionAbstract
ifrs_StatementOfIFRSCompliance
ifrs_StatementOfIncomeAndRetainedEarningsAbstract
ifrs_StatutoryReserve
ifrs_StatutoryReserveMember
ifrs_StructuredDebtAmountContributedToFairValueOfPlanAssets
ifrs_SubclassificationsOfAssetsLiabilitiesAndEquitiesAbstract
ifrs_SubleasePaymentsRecognisedAsExpense
ifrs_SubordinatedLiabilities
ifrs_SubordinatedLiabilitiesAbstract
ifrs_SubsequentRecognitionOfDeferredTaxAssetsGoodwill
ifrs_SubsidiariesMember
ifrs_SubsidiariesWithMaterialNoncontrollingInterestsMember
ifrs_SummaryOfQuantitativeDataAboutWhatEntityManagesAsCapital
ifrs_SummaryQuantitativeDataAboutEntitysExposureToRisk
ifrs_SummaryQuantitativeDataAboutPuttableFinancialInstrumentsClassifiedAsEquityInstruments
ifrs_SupportProvidedToStructuredEntityWithoutHavingContractualObligationToDoSo
ifrs_SurplusDeficitInPlan
ifrs_SwapContractMember
ifrs_TangibleExplorationAndEvaluationAssets
ifrs_TangibleExplorationAndEvaluationAssetsMember
ifrs_TaxBenefitArisingFromPreviouslyUnrecognisedTaxLossTaxCreditOrTemporaryDifferenceOfPriorPeriodUsedToReduceCurrentTaxExpense
ifrs_TaxBenefitArisingFromPreviouslyUnrecognisedTaxLossTaxCreditOrTemporaryDifferenceOfPriorPeriodUsedToReduceDeferredTaxExpense
ifrs_TaxContingentLiabilityMember
ifrs_TaxEffectFromChangeInTaxRate
ifrs_TaxEffectOfExpenseNotDeductibleInDeterminingTaxableProfitTaxLoss
ifrs_TaxEffectOfForeignTaxRates
ifrs_TaxEffectOfImpairmentOfGoodwill
ifrs_TaxEffectOfRevenuesExemptFromTaxation2011
ifrs_TaxEffectOfTaxLosses
ifrs_TaxExpenseIncomeAtApplicableTaxRate
ifrs_TaxExpenseIncomeFromChangeInValuationAllowance
ifrs_TaxExpenseIncomeRelatingToChangesInAccountingPoliciesAndErrorsIncludedInProfitOrLoss
ifrs_TaxExpenseOfDiscontinuedOperationAbstract
ifrs_TaxExpenseOtherThanIncomeTaxExpense
ifrs_TaxExpenseRelatingToGainLossOnDiscontinuance
ifrs_TaxExpenseRelatingToProfitLossFromOrdinaryActivitiesOfDiscontinuedOperations
ifrs_TaxRateEffectFromChangeInTaxRate
ifrs_TaxRateEffectOfAdjustmentsForCurrentTaxOfPriorPeriods
ifrs_TaxRateEffectOfExpenseNotDeductibleInDeterminingTaxableProfitTaxLoss
ifrs_TaxRateEffectOfForeignTaxRates
ifrs_TaxRateEffectOfImpairmentOfGoodwill
ifrs_TaxRateEffectOfRevenuesExemptFromTaxation
ifrs_TaxRateEffectOfTaxLosses
ifrs_TemporaryDifferenceMember
ifrs_TemporaryDifferenceUnusedTaxLossesAndUnusedTaxCreditsAxis
ifrs_TemporaryDifferenceUnusedTaxLossesAndUnusedTaxCreditsMember
ifrs_TemporaryDifferencesAssociatedWithInvestmentsInSubsidiariesBranchesAndAssociatesAndInterestsInJointVentures
ifrs_TerminationBenefitObligation
ifrs_TerminationBenefitsExpense
ifrs_TerminationBenefitsMember
ifrs_TimingAndReasonForTransferBetweenFinancialLiabilitiesAndEquityAttributableToChangeInRedemptionProhibition
ifrs_TitleOfInitiallyAppliedIFRS
ifrs_TitleOfNewIFRS
ifrs_TopOfRangeMember
ifrs_TradeAndOtherCurrentPayables
ifrs_TradeAndOtherCurrentPayablesAbstract
ifrs_TradeAndOtherCurrentPayablesToRelatedParties
ifrs_TradeAndOtherCurrentPayablesToTradeSuppliers
ifrs_TradeAndOtherCurrentReceivables
ifrs_TradeAndOtherCurrentReceivablesAbstract
ifrs_TradeAndOtherCurrentReceivablesArisingFromAccruedIncomeNotYetBilled
ifrs_TradeAndOtherCurrentReceivablesDueFromOtherParties
ifrs_TradeAndOtherCurrentReceivablesDueFromRelatedParties
ifrs_TradeAndOtherPayables
ifrs_TradeAndOtherPayablesAbstract
ifrs_TradeAndOtherPayablesRecognisedAsOfAcquisitionDate
ifrs_TradeAndOtherPayablesToRelatedParties
ifrs_TradeAndOtherPayablesToTradeSuppliers
ifrs_TradeAndOtherReceivables
ifrs_TradeAndOtherReceivablesAbstract
ifrs_TradeAndOtherReceivablesArisingFromAccruedIncomeNotYetBilled
ifrs_TradeAndOtherReceivablesDueFromOtherParties
ifrs_TradeAndOtherReceivablesDueFromRelatedParties
ifrs_TradeReceivables
ifrs_TradingEquitySecuritiesMember
ifrs_TradingIncomeExpense
ifrs_TradingIncomeExpenseAbstract
ifrs_TradingIncomeExpenseOnDebtInstruments
ifrs_TradingIncomeExpenseOnDerivativeFinancialInstruments
ifrs_TradingIncomeExpenseOnEquityInstruments
ifrs_TradingIncomeExpenseOnForeignExchangeContracts
ifrs_TradingSecuritiesMember
ifrs_TransactionsRecognisedSeparatelyFromAcquisitionOfAssetsAndAssumptionOfLiabilitiesInBusinessCombinationAxis
ifrs_TransactionsRecognisedSeparatelyFromAcquisitionOfAssetsAndAssumptionOfLiabilitiesInBusinessCombinationMember
ifrs_TransferBetweenFinancialLiabilitiesAndEquityAttributableToChangeInRedemptionProhibition
ifrs_TransferFromToInventoriesAndOwnerOccupiedPropertyInvestmentProperty
ifrs_TransferOfFinancialInstrumentsIntoLevel3OfFairValueHierarchy2011
ifrs_TransferOfFinancialInstrumentsOutOfLevel3OfFairValueHierarchy
ifrs_TransferToPropertyPlantAndEquipmentInvestmentProperty
ifrs_TransfersFromToOtherRetirementBenefitPlans
ifrs_TransfersIntoLevel3OfFairValueHierarchyAssets
ifrs_TransfersIntoLevel3OfFairValueHierarchyEntitysOwnEquityInstruments
ifrs_TransfersIntoLevel3OfFairValueHierarchyLiabilities
ifrs_TransfersOfCumulativeGainLossWithinEquity
ifrs_TransfersOfResearchAndDevelopmentFromEntityRelatedPartyTransactions
ifrs_TransfersOfResearchAndDevelopmentToEntityRelatedPartyTransactions
ifrs_TransfersOutOfLevel1IntoLevel2OfFairValueHierarchyAssets
ifrs_TransfersOutOfLevel1IntoLevel2OfFairValueHierarchyEntitysOwnEquityInstruments
ifrs_TransfersOutOfLevel1IntoLevel2OfFairValueHierarchyLiabilities
ifrs_TransfersOutOfLevel2IntoLevel1OfFairValueHierarchyAssets
ifrs_TransfersOutOfLevel2IntoLevel1OfFairValueHierarchyEntitysOwnEquityInstruments
ifrs_TransfersOutOfLevel2IntoLevel1OfFairValueHierarchyLiabilities
ifrs_TransfersOutOfLevel3OfFairValueHierarchyAssets
ifrs_TransfersOutOfLevel3OfFairValueHierarchyEntitysOwnEquityInstruments
ifrs_TransfersOutOfLevel3OfFairValueHierarchyLiabilities
ifrs_TransfersToInvestmentPropertyAtFairValuePropertyPlantAndEquipment
ifrs_TransfersUnderFinanceAgreementsFromEntityRelatedPartyTransactions
ifrs_TransfersUnderFinanceAgreementsToEntityRelatedPartyTransactions
ifrs_TransfersUnderLicenseAgreementsFromEntityRelatedPartyTransactions
ifrs_TransfersUnderLicenseAgreementsToEntityRelatedPartyTransactions
ifrs_TreasuryShares
ifrs_TreasurySharesMember
ifrs_TypesOfFinancialAssetsAxis
ifrs_TypesOfFinancialLiabilitiesAxis
ifrs_TypesOfHedgesAxis
ifrs_TypesOfHedgesMember
ifrs_TypesOfInstrumentMember
ifrs_TypesOfInsuranceContractsAxis
ifrs_TypesOfRisksAxis
ifrs_TypesOfRisksMember
ifrs_TypesOfSharebasedPaymentArrangementsAxis
ifrs_TypesOfTransferMember
ifrs_UnallocatedAmountsMember
ifrs_UnallocatedGoodwill
ifrs_UnconsolidatedStructuredEntitiesAxis
ifrs_UnconsolidatedStructuredEntitiesMember
ifrs_UndatedSubordinatedLiabilities
ifrs_UndiscountedCashOutflowRequiredToRepurchaseDerecognisedFinancialAssets
ifrs_UndrawnBorrowingFacilities
ifrs_UnearnedFinanceIncomeOnFinanceLease
ifrs_UnearnedPremiums
ifrs_UnratedCreditExposures
ifrs_UnrealisedForeignExchangeGainsLossesMember
ifrs_UnrecognisedActuarialGainsLosses2011
ifrs_UnrecognisedAssetsOfDefinedBenefitPlans2011
ifrs_UnrecognisedPastServiceCostNegativePastServiceCost
ifrs_UnrecognisedShareOfLossesOfAssociates
ifrs_UnrecognisedShareOfLossesOfJointVentures
ifrs_UnsecuredBankLoansReceived
ifrs_UnusedProvisionReversedOtherProvisions
ifrs_UnusedTaxCreditsForWhichNoDeferredTaxAssetRecognised
ifrs_UnusedTaxCreditsMember
ifrs_UnusedTaxLossesForWhichNoDeferredTaxAssetRecognised
ifrs_UnusedTaxLossesMember
ifrs_UsefulLivesOrAmortisationRatesIntangibleAssetsOtherThanGoodwill
ifrs_UsefulLivesOrDepreciationRatesBiologicalAssetsAtCost
ifrs_UsefulLivesOrDepreciationRatesInvestmentPropertyCostModel
ifrs_UsefulLivesOrDepreciationRatesPropertyPlantAndEquipment
ifrs_UtilisationAllowanceAccountForCreditLossesOfFinancialAssets
ifrs_ValuationAllowance2011
ifrs_ValuationTechniquesMember
ifrs_ValuationTechniquesUsedInFairValueMeasurementAxis
ifrs_ValueAddedTaxPayables
ifrs_ValueAddedTaxReceivables
ifrs_ValueAtRisk
ifrs_ValueOfBusinessAcquiredMember
ifrs_Vehicles
ifrs_VehiclesAbstract
ifrs_VehiclesMember
ifrs_VoluntaryChangesInAccountingPolicyAxis
ifrs_VoluntaryChangesInAccountingPolicyMember
ifrs_WagesAndSalaries
ifrs_WarrantyContingentLiabilityMember
ifrs_WarrantyProvision
ifrs_WarrantyProvisionAbstract
ifrs_WarrantyProvisionMember
ifrs_WeightedAverageCostOfCapitalSignificantUnobservableInputsAssets
ifrs_WeightedAverageCostOfCapitalSignificantUnobservableInputsEntitysOwnEquityInstruments
ifrs_WeightedAverageCostOfCapitalSignificantUnobservableInputsLiabilities
ifrs_WeightedAverageDurationOfDefinedBenefitObligation
ifrs_WeightedAverageExercisePriceOfOtherEquityInstrumentsExercisableInSharebasedPaymentArrangement
ifrs_WeightedAverageExercisePriceOfOtherEquityInstrumentsExercisedOrVestedInSharebasedPaymentArrangement
ifrs_WeightedAverageExercisePriceOfOtherEquityInstrumentsExpiredInSharebasedPaymentArrangement
ifrs_WeightedAverageExercisePriceOfOtherEquityInstrumentsForfeitedInSharebasedPaymentArrangement
ifrs_WeightedAverageExercisePriceOfOtherEquityInstrumentsGrantedInSharebasedPaymentArrangement
ifrs_WeightedAverageExercisePriceOfOtherEquityInstrumentsOutstandingInSharebasedPaymentArrangement
ifrs_WeightedAverageExercisePriceOfShareOptionsExercisableInSharebasedPaymentArrangement
ifrs_WeightedAverageExercisePriceOfShareOptionsExercisedInSharebasedPaymentArrangement
ifrs_WeightedAverageExercisePriceOfShareOptionsExpiredInSharebasedPaymentArrangement
ifrs_WeightedAverageExercisePriceOfShareOptionsForfeitedInSharebasedPaymentArrangement
ifrs_WeightedAverageExercisePriceOfShareOptionsGrantedInSharebasedPaymentArrangement
ifrs_WeightedAverageExercisePriceOfShareOptionsInSharebasedPaymentArrangementExercisedDuringPeriodAtDateOfExercise
ifrs_WeightedAverageExercisePriceOfShareOptionsOutstandingInSharebasedPaymentArrangement
ifrs_WeightedAverageFairValueAtMeasurementDateOtherEquityInstrumentsGranted
ifrs_WeightedAverageFairValueAtMeasurementDateShareOptionsGranted
ifrs_WeightedAverageMember
ifrs_WeightedAverageRemainingContractualLifeOfOutstandingShareOptions
ifrs_WeightedAverageSharePrice
ifrs_WeightedAverageSharePriceShareOptionsGranted
ifrs_WeightedAverageShares
ifrs_WeightedAverageSharesAndAdjustedWeightedAverageSharesAbstract
ifrs_WorkInProgress
ifrs_WritedownsReversalsOfInventories
ifrs_WritedownsReversalsOfPropertyPlantAndEquipment
ifrs_WritedownsReversalsOfWritedownsOfInventoriesAbstract
ifrs_WritedownsReversalsOfWritedownsOfPropertyPlantAndEquipmentAbstract
ifrs_WrittenPutOptionsMember

ifrst'file

name::
* McsEngl.ifrst'file@cptIt,

A complete set of the IFRS Taxonomy consists of over 400 files (including several schemas).
[http://www.ifrs.org/XBRL/Resources/Documents/ITGGuide2012final.pdf]

ifrst'resourceInfHmn#cptResource843#

name::
* McsEngl.ifrst'resourceInfHmn@cptIt,

_ADDRESS.WPG:
* http://xbrl.ifrs.org/taxonomy/2012-03-29//
* http://xbrl.ifrs.org/taxonomy/2012-03-29/ifrs-cor_2012-03-29.xsd,
* http://www.ifrs.org/XBRL/Pages/XBRL.aspx,
* http://www.ifrs.org/XBRL/Resources/Documents/ITGGuide2012final.pdf,

xbrl'instance-document

name::
* McsEngl.xbrl'instance-document@cptIt,
* McsEngl.xbrl'instance@cptIt,
* McsEngl.xbrl'report@cptIt,

_DESCRIPTION:
XBRL defines a syntax in which a fact can be reported as the value of a well defined reporting Concept within a particular context. The syntax enables software to efficiently and reliably find, extract and interpret those facts. The XBRL framework splits business reporting information into two components: XBRL Instances and taxonomies.
XBRL Instances contain the facts being reported while the taxonomies define the Concepts being communicated by the facts. The combination of an XBRL instance and its supporting taxonomies, and additional linkbases constitute an XBRL business report.
[http://xbrl.org/Specification/XBRL-2.1/REC-2003-12-31/XBRL-2.1-REC-2003-12-31+corrected-errata-2013-02-20.html]
===
An XBRL instance document is a business report in an electronic format created according to the rules of XBRL. It contains facts that are defined by the elements in the taxonomy it refers to, together with their values and an explanation of the context in which they are placed.
The example above states that the example company’s Profit (loss) before tax for the year 2004 amounted to 661,000 EUR. The element’s definition is contained in the taxonomy schema. The instance document assigns it a value, provides additional information about the currency in which it is disclosed, and defines a period and the entity that it refers to.
...
instance document – a business report in XBRL format; it contains tagged business facts (whose definitions can be found in the taxonomy that the instance document refers to), together with the context in which they appear and unit description; the root element of XBRL instances is <xbrl>.
more: XBRL Spec: 4.
[http://www.ifrs.org/XBRL/Resources/Documents/ITGGuide2012final.pdf]

xbrl'context-xmlelm

name::
* McsEngl.xbrl'context-xmlelm@cptIt,

Context: Contexts are elements that occur as children of the root element in XBRL instances. They document the entity, the period and the scenario that collectively give the appropriate context for understanding the values of items.
[http://xbrl.org/Specification/XBRL-2.1/REC-2003-12-31/XBRL-2.1-REC-2003-12-31+corrected-errata-2013-02-20.html]
===
We have two contexts for our sample report:the start of the reported period and the end of the period.
<context id="c_start">
<entity>
<identifier scheme="http://www.statistics.org">12-34567</identifier>
</entity>
<period>
<instant>2005-01-01</instant>
</period>
</context>
<context id="c_end">
<entity>
<identifier scheme="http://www.statistics.org">12-34567</identifier>
</entity>
<period>
<instant>2005-12-31</instant>
</period>
</context>
[http://www.batavia-xbrl.com/downloads/XBRLinPlainEnglishv1.1.pdf]

xbrl'fact

name::
* McsEngl.xbrl'fact@cptIt,

While a taxonomy defines reporting Concepts, it does not contain the actual values of facts based on the defined concepts. The fact values are contained in XBRL Instances and are referred to as "facts". Besides the actual value of a fact, such as "cash is 500,000", the XBRL instance provides contextual information necessary for interpreting the fact values. For numeric facts, the XBRL instance also documents measurement accuracy and measurement Units.
[http://xbrl.org/Specification/XBRL-2.1/REC-2003-12-31/XBRL-2.1-REC-2003-12-31+corrected-errata-2013-02-20.html]

xbrl'footnote

name::
* McsEngl.xbrl'footnote@cptIt,

footnote – appears in instance documents and provides additional information about facts; for example, several facts may be
linked to the sentence Including the effect of merger with Sample Company; to express these connections XBRL utilises a footnoteLink
extended link element; footnoteLinks act as a kind of linkbase and enclose locators to the instance documents’ facts; footnotes use
footnoteArcs with an arcrole value set to http://www.xbrl.org/2003/arcrole/fact-footnote to connect facts to additional information.
more: XBRL Spec: 4.11.
[http://www.ifrs.org/XBRL/Resources/Documents/ITGGuide2012final.pdf]

xbrl'schemaRef-xmlelm

name::
* McsEngl.xbrl'schemaRef-xmlelm@cptIt,

The schema is referenced in a schemaRef element.
<link:schemaRef
xlink:type="simple"
xlink:href="http://www.sample.com/2006-01-01/sample-2006-01-01.xsd" />
• xlink:type
The type of reference is 'simple'.
• xlink:href
The reference is given as a href attribute. It points to the location of our taxonomy schema on the sample website.
[http://www.batavia-xbrl.com/downloads/XBRLinPlainEnglishv1.1.pdf]

xbrl'unit-xmlelm

name::
* McsEngl.xbrl'unit-xmlelm@cptIt,

Numeric facts need a unit of measure. The units used in an Instance Document are presented as unit elements.
<unit id="u_person">
<measure>Person</measure>
</unit>
• id
The id is used to refer to units from within the facts that are reported. It must be unique within the instance document.
• measure
The measure child element identifies the unit of measure. In our example we have defined our own measure: that of Person.
[http://www.batavia-xbrl.com/downloads/XBRLinPlainEnglishv1.1.pdf]

xbrl'linkbase-document

name::
* McsEngl.xbrl'linkbase-document@cptIt,
* McsEngl.xbrl'linkbase@cptIt,
* McsEngl.xbrl'linkbase-file@cptIt,

_GENERIC:
* xml-document#ql:xml'document#

_WHOLE:
* xbrl-taxonomy#ql:xbrl'taxonomy#

_DESCRIPTION:
Linkbase  A linkbase is a collection of XML Linking Language [XLINK] extended links that document the semantics of Concepts in a taxonomy.
[http://xbrl.org/Specification/XBRL-2.1/REC-2003-12-31/XBRL-2.1-REC-2003-12-31+corrected-errata-2013-02-20.html]
===
To summarise, linkbases provide descriptions for relationships between elements by localising them and defining the type of relationship using the arcrole attribute. Each of the five linkbases, (presentation, calculation, definition, reference and label), contain definitions of different types of relationships.
[http://www.ifrs.org/XBRL/Resources/Documents/ITGGuide2012final.pdf]
===
XBRL linkbases and XBRL Schemas define together XBRL taxonomy. Schema defines the core elements and its characteristics, while the purpose of XBRL linkbases is to combine labels and references to the concepts as well as define relationships between those concepts. There are various types of linkbases different kinds of linkbases and each has a special purpose.
[http://www.mca.gov.in/XBRL/Glossary.html]

_PART:
Any given <linkbase> element may contain several extended links.
So a single linkbase can contain the extended link for the definition relationships and the calculation relationships, and so forth.
However, by convention, a linkbase file usually contains only one type of extended link (definition, calculation, presentation, label, or reference).
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]

xbrl'linkbase'arc-xmlelm

name::
* McsEngl.xbrl'linkbase'arc-xmlelm@cptIt,
* McsEngl.arc-xbrl@cptIt,
* McsEngl.xbrl'arc-xmlelm@cptIt,

_WHOLE:
* xbrl-extended-link#ql:xbrl'extended_link_xmlelm#

_DESCRIPTION:
An arc is used to relate concepts. Basically, the arc contains the labels of the locators to be related.
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]
===
arc – according to the XBRL Specification 2.1, arcs link concepts to each other by associating their locators; they also link concepts with resources by linking the concept locators to the resources themselves; arcs are also used to link fact locators to footnote resources in footnote extended links; arcs have a set of attributes that document the nature of the expressed relationships; in particular they posses attributes: type (whose value shall be arc), from, to and arcrole.
[http://www.ifrs.org/XBRL/Resources/Documents/ITGGuide2012final.pdf]

xbrl'arc'doing.negation

name::
* McsEngl.xbrl'arc'doing.negation@cptIt,

To negate an arc from a taxonomy, you recreate the arc but set the
use attribute on the replica arc to “prohibited” and set the priority
attribute on the replica arc to a decimal value that is greater than that
on the existing arc. If the optional priority attribute has been omitted
on the original arc, then its default value is zero.
When XBRL software processes the extension and original linkbases, only the arc with the highest priority, between any two elements, is attributed with meaning. By introducing a new arc that prohibits the relationship, the previous, lower priority relationship is negated.
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]

xbrl'arc'attribute

name::
* McsEngl.xbrl'arc'attribute@cptIt,

_XML'ARC'ACTUATE:
The xlink:actuate attribute always has the value of “onRequest.” It
is part of the XLink specification and is again supplied for the
benefit of XLink-aware software.
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]

_XML'ARC'ARCROLE:
The xlink:arcrole says that the relationship is a parent-child relationship. That is, assets is a parent of current assets. This attribute describes the kind of relationship of the arc. The different kinds of arc roles will be discussed along with descriptions of the different kinds of arcs in the following sections.
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]

_XML'ARC'FROM_TO:
from attribute – an XLink attribute that appears on arcs; its value is equal to the value of a label attribute of at least one locator or resource on the same extended link as the arc element itself; its value is an XML NCName (ie it must begin with a letter or an underscore).
more: XBRL Spec: 3.5.3.9.2.
[http://www.ifrs.org/XBRL/Resources/Documents/ITGGuide2012final.pdf]
===
The xlink:from and xlink:to attributes are used to indicate the starting point (from) and the ending point (to) for the arc. In this example, the arc is showing a relationship from the assets concept to the current assets concept, via the locators.
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]

_XML'ARC'PRIORITY:
Another optional attribute not shown is priority. This is also used for extending taxonomies and is discussed in the Extending Taxonomies section.
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]

_XML'ARC'SHOW:
The xlink:show attribute can have one of two values: “embed” or “replace.”
...
The xlink:show attribute on definition arcs is set to “replace.”
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]

_XML'ARC'TITLE:
The optional xlink:title attribute gives the arc a human-readable
value. This is sometimes used in XLink-aware software. In addition,
it may help make the file more readable for humans when looking at
taxonomy files or when viewing a taxonomy in an XBRL taxonomy
application.
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]

_XML'ARC'TYPE:
The xlink:type attribute always has the value of “arc.” It is part of
the XLink specification and is there for the benefit of XLink-aware
software to help it recognize the arc element as an XLink arc.
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]

_XML'ARC'USE:
There is an optional attribute that is not shown in the example, use.
There are three possible values for use: “required,” “option,” and “prohibited.”
The use attribute affects how concepts are reported in the instance document. Required is used to indicate that if the from concept of an arc is in an instance document, the to concept must be in the instance document as well.
If the use is “required” when the assets are reported in an instance document, the current assets must also be reported in the instance document.
Optional is used to indicate that there is no dependence on the part of either concept appearing in an instance document on the other concept. So in the example, if the use is “optional,” then the instance document may or may not report on assets or current assets, and if assets is “reported,” current assets does not have to be reported, and visa versa. This is the default for use, so when use is not specified
on an arc, it is implicitly “optional.”
The last option, prohibited, is used when extending taxonomies and will be discussed in the Extending Taxonomies section.
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]

SPECIFIC

The element name of the arc is shown as xxxArc. In an XBRL
taxonomy the xxx would be replaced with one of the five types of
arcs:
• Definition (defintionArc)
• Calculation (calculationArc)
• Presentation (presentationArc)
• Label (labelArc)
• Reference (referenceArc)
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]

xbrl'arc.CALCULATION

name::
* McsEngl.xbrl'arc.CALCULATION@cptIt,

<calculationArc
xlink:type="arc"
xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item"
xlink:from="AssetsTotal" xlink:to="AssetsCurrent"
weight="1.0" order="1"/>
[http://www.ifrs.org/XBRL/Resources/Pages/Glossary.aspx]

xbrl'arc.EXAMPLE

name::
* McsEngl.xbrl'arc.EXAMPLE@cptIt,

<xxxArc xlink:type=”arc”
xlink:show=”replace”
xlink:actuate=”
onRequest” xlink:title=”Assets to Current Assets”
xlink:from=”loc_assets”
xlink:to=”loc_currentAssets”
xlink:arcrole=”http://www.xbrl.org/linkprops/arc/parent-child”/>

xbrl'linkbase'extended-link

name::
* McsEngl.xbrl'linkbase'extended-link@cptIt,
* McsEngl.xbrl'extended-link@cptIt,
* McsEngl.xbrl'extended-link-xmlelm@cptIt,

_WHOLE:
* linkbase-xmlelm#ql:xbrl'linkbase_xmlelm#

_DESCRIPTION:
In the beginning of the relationship section, there was a brief mention of extended links. Extended links are used to contain the locator, resources, and arcs needed to fully describe the relationships.
Each kind of relationship has its own extended link. Therefore, the five kinds of extended links for XBRL taxonomy documents are:
• definition links (<definitionLink>)
• calculation links (<calculationLink>)
• presentation links (<presentationLink>)
• label links (<labelLink>)
• reference links (<referenceLink>)
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]

_WHOLE:
XBRL extended link elements are always contained in another element, which can be in an XBRL taxonomy schema document or in a separate XML document with a <linkbase> parent element.
In cases where the extended links are to be contained inside XBRL taxonomy schema documents, they can be placed inside an annotation.
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]

_PART:
* arc-xmlelm#ql:xbrl'arc_xmlelm#
* loc-xmlelm,
* resource-label-xmlelm,
* resource-reference-xmlelm,

xbrl'linkbase'locator-xmlelm

name::
* McsEngl.xbrl'linkbase'locator-xmlelm@cptIt,
* McsEngl.xbrl'loc-xmlelm@cptIt,
* McsEngl.xbrl'locator@cptIt,

_WHOLE:
* xbrl-extended-link#ql:xbrl'extended_link_xmlelm#

_EXAMPLE:
<loc
xlink:type="locator"
xlink:href="../gl-usk-2010-04-12.xsd#gl-usk_jobCode"
xlink:label="jobCode"/>

xbrl'loc'attribute

name::
* McsEngl.xbrl'loc'attribute@cptIt,

_XBRL'LOC'LABEL:
The last attribute on the locator is the xlink:label attribute. This is
the identification of the locator within the scope of the extended link
of which it is a part. For example, arcs refer to the locators using
these label attributes.
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]

_XBRL'LOC'TYPE:
The first attribute of the <loc> tag, xlink:type, is required and
always has the value of “locator.” It is provided to ensure that
XLink-aware software can identify the element as a locator.
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]

_XBR'LOC'HREF:
The next attribute, xlink:href, points to the element’s syntax
definition. This is the part that actually makes the connection to the
concept.
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]

xbrl'linkbase'linkbase-xmlelm

name::
* McsEngl.xbrl'linkbase'linkbase-xmlelm@cptIt,
* McsEngl.xbrl'linkbase-xmlelm@cptIt,
* McsEngl.xbrl'linkbaseelm@cptIt,

_WHOLE:
* linkbase-file#linkL#

<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" xmlns:ifrs="http://xbrl.ifrs.org/taxonomy/2012-03-29/ifrs" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:IFRSF="http://www.ifrs.org/xbrl/IFRSFannualreport2010" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance">
...
</link:linkbase>

_PART:
* link:roleRef-xmlelm,
* link:arcroleRef
* link:calculationLink
* link:definitionLink
* link:labelLink-xmlelm,
* link:presentationLink

xbrl'linkbase'rolref-xmlelm

name::
* McsEngl.xbrl'linkbase'rolref-xmlelm@cptIt,

_EXAMPLE:
<link:roleRef
roleURI="http://www.ifrs.org/xbrl/role/00008"
xlink:type="simple"
xlink:href="IFRSF_2012-05-28.xsd#_00008"/>

SPECIFIC

name::
* McsEngl.xbrl'linkbase.specific@cptIt,

_SPECIFIC:
Definition, calculation, and presentation relationships relate concepts to each other.
Label relationships relate a concept to human-readable text.
References relate a concept to the authoritative literature defining the meaning of that concept.
===
Note that some linkbases (Reference and Label) are 'uni-directional', i.e. there is only a link
from the taxonomy to resources in the linkbase.
Other linkbases (Definition, Calculation and Presentation) are 'bi-directional'. The links point
from one part of the taxonomy to another part.
[http://www.batavia-xbrl.com/downloads/XBRLinPlainEnglishv1.1.pdf]

xbrl'linkbase.CALCULATION

name::
* McsEngl.xbrl'linkbase.CALCULATION@cptIt,
* McsEngl.calculation-linkbase@cptIt,

_DESCRIPTION:
The idea of a calculation linkbase is to improve quality of an XBRL report (XBRL instance). The calculation linkbase defines basic calculation validation rules (addition/subtraction), which must apply for all instances of the taxonomy. For example two elements (concepts) A, B can be summed up to a third element (concept) C, such that C = A + B.
[http://www.tryxbrl.com/Learn/Glossary/tabid/58/Default.aspx]
===
calculation linkbase – a linkbase that contains mathematical relationships such as addition and subtraction (see weight attribute) between numeric items defined in a schema document.
more: XBRL Spec: 5.2.5 ; FRTA 3.3.
[http://www.ifrs.org/XBRL/Resources/Documents/ITGGuide2012final.pdf]
===
A calculation linkbase might define the following rule:
• nr_employees_male + nr_employees_female = nr_employees_total.
Such a rule would automatically catch the arithmetic mistake in our example filled in form.
[http://www.batavia-xbrl.com/downloads/XBRLinPlainEnglishv1.1.pdf]

_EXAMPLE:
<link:calculationLink xlink:type="extended" xlink:role="http://www.ifrs.org/xbrl/role/00001">
<link:loc xlink:type="locator" xlink:href="http://xbrl.ifrs.org/taxonomy/2012-03-29/ifrs-cor_2012-03-29.xsd#ifrs_ComprehensiveIncome" xlink:label="loc"/>
<link:loc xlink:type="locator" xlink:href="http://xbrl.ifrs.org/taxonomy/2012-03-29/ifrs-cor_2012-03-29.xsd#ifrs_ProfitLossBeforeTax" xlink:label="loc_2"/>
<link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc" xlink:to="loc_2" order="10.0" weight="1.0"/>
===
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
<link:roleRef roleURI="http://xbrl.ifrs.org/role/ifrs/ifrs_for_smes_2012-03-29_role-410000" xlink:href="rol_ifrs_for_smes_2012-03-29.xsd#ifrs_for_smes_2012-03-29_role-410000" xlink:type="simple"/>
<link:calculationLink xlink:role="http://xbrl.ifrs.org/role/ifrs/ifrs_for_smes_2012-03-29_role-410000" xlink:type="extended">
<link:loc xlink:href="../ifrs-cor_2012-03-29.xsd#ifrs_ProfitLoss" xlink:label="loc_1" xlink:type="locator"/>
<link:loc xlink:href="../ifrs-cor_2012-03-29.xsd#ifrs_ComprehensiveIncome" xlink:label="loc_2" xlink:type="locator"/>
<link:calculationArc order="10.0" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_2" xlink:to="loc_1" xlink:type="arc"/>
<link:loc xlink:href="../ifrs-cor_2012-03-29.xsd#ifrs_OtherComprehensiveIncomeNetOfTaxExchangeDifferencesOnTranslation" xlink:label="loc_3" xlink:type="locator"/>
<link:loc xlink:href="../ifrs-cor_2012-03-29.xsd#ifrs_OtherComprehensiveIncome" xlink:label="loc_4" xlink:type="locator"/>
<link:calculationArc order="10.0" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_4" xlink:to="loc_3" xlink:type="arc"/>
<link:calculationArc order="20.0" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_2" xlink:to="loc_4" xlink:type="arc"/>
<link:loc xlink:href="../ifrs-cor_2012-03-29.xsd#ifrs_OtherComprehensiveIncomeNetOfTaxCashFlowHedges" xlink:label="loc_5" xlink:type="locator"/>
<link:calculationArc order="20.0" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_4" xlink:to="loc_5" xlink:type="arc"/>
<link:loc xlink:href="../ifrs-cor_2012-03-29.xsd#ifrs_OtherComprehensiveIncomeNetOfTaxActuarialGainsLossesOnDefinedBenefitPlans" xlink:label="loc_6" xlink:type="locator"/>
<link:calculationArc order="30.0" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_4" xlink:to="loc_6" xlink:type="arc"/>
<link:loc xlink:href="../ifrs-cor_2012-03-29.xsd#ifrs_ShareOfOtherComprehensiveIncomeOfAssociatesAndJointVenturesAccountedForUsingEquityMethod" xlink:label="loc_7" xlink:type="locator"/>
<link:calculationArc order="40.0" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_4" xlink:to="loc_7" xlink:type="arc"/>
</link:calculationLink>
</link:linkbase>

xbrl'linkbase.DEFINITION

name::
* McsEngl.xbrl'linkbase.DEFINITION@cptIt,
* McsEngl.definition-linkbase@cptIt,

_DESCRIPTION:
definition linkbase – a linkbase that is intended to contain a wide variety of miscellaneous relationships between concepts in taxonomies; four standard relations expressed by this linkbase are general-special, essence-alias, similar-tuples and requires-element as well as dimensional relationships.
more: XBRL Spec: 5.2.6; FRTA 3.4
[http://www.ifrs.org/XBRL/Resources/Documents/ITGGuide2012final.pdf]
===
The definition linkbase stores other pre-defined or self-defined relationships between elements. For example a relationship can be defined that the occurrence of one concept within an XBRL instance mandates the occurrence of other concepts.
[http://www.tryxbrl.com/Learn/Glossary/tabid/58/Default.aspx]
===
Definition Linkbase Definition Linkbase
The definitions of the concepts provide different kinds of information. One definition might be that
certain concepts require others:
Concept Concept Requires Requires
nr_employees_male nr_employees_female
nr_employees_female nr_employees_male
If you specify either a male or female count, you must specify the other one as well.
If a ‘nr_employees’ concept were defined, the definition linkbase could specify that concept as the
‘essence’ of all other nr_employees_xxx concepts:
Essence Essence Aliasas
nr_employees nr_employees_total
nr_employees nr_employees_male
nr_employees nr_employees_female
[http://www.batavia-xbrl.com/downloads/XBRLinPlainEnglishv1.1.pdf]

xbrl'linkbase.LABEL

name::
* McsEngl.xbrl'linkbase.LABEL@cptIt,
* McsEngl.label-linkbase@cptIt,
* McsEngl.xbrl'label-linkbase@cptIt,

_DESCRIPTION:
The goal of the XBRL Consortium is to create and develop a world-wide standard for electronic business reporting. This requires the taxonomies to represent business data in multiple language. Therefore it is possible to create an element (concept) in the taxonomy with labels in different languages and or for different purposes e.g. a short label PPE compared to its long label Property, plant and equipment. Those labels are stored and linked to their respective elements in a label linkbase.
[http://www.tryxbrl.com/Learn/Glossary/tabid/58/Default.aspx]
===
In the next release of the XBRL specification, a broad range of label purposes will be explicitly defined, enabling taxonomy designers to provide labels to be used in report presentations, labels to be used to document aspects of concepts (e.g., instructions on measurement of values for concepts), and labels to be used when defining the meaning of concepts.
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]

_PART:
* link:labelLink,

xbrl'label-xmlelm

name::
* McsEngl.xbrl'label-xmlelm@cptIt,
* McsEngl.xbrl'label-resource@cptIt,

_WHOLE:
* labelLink-xmlelm#linkL#

<link:label xlink:type="resource" xlink:label="res_12" xlink:role="http://www.xbrl.org/2003/role/label" xml:lang="en">INCOME</link:label>

xbrl'labelLink-xmlelm

name::
* McsEngl.xbrl'labelLink-xmlelm@cptIt,
* McsEngl.xbrl'labelLink@cptIt,

_WHOLE:
* linkbase-xmlelm#ql:xbrl'linkbase'linkbase_xmlelm#

xbrl'linkbase.PRESENTATION

name::
* McsEngl.xbrl'linkbase.PRESENTATION@cptIt,
* McsEngl.presentation-linkbase@cptIt,

_DESCRIPTION:
Business reports are in general organized into identifiable data structures e.g. a Balance Sheet. The presentation linkbase stores information about relationships between elements in order to properly organize the taxonomy content. This enables a taxonomy user to view a one dimensional representation of the elements.
[http://www.tryxbrl.com/Learn/Glossary/tabid/58/Default.aspx]
===
The presentation linkbase describes how the concepts could be hierarchically presented in a report
form. Our example could define the following hierarchy:
Concept    Children
abstract_group  nr_employees_total
     nr_employees_male
     nr_employees_female
[http://www.batavia-xbrl.com/downloads/XBRLinPlainEnglishv1.1.pdf]

xbrl'linkbase.REFERENCE

name::
* McsEngl.xbrl'linkbase.REFERENCE@cptIt,
* McsEngl.reference-linkbase-xbrl@cptIt,

_DESCRIPTION:
The reference linkbase
Most of the elements appearing in taxonomies refer to particular concepts defined by authoritative literature. The reference linkbase stores the relationships between elements and the references e.g. IAS, para 68. The layer does not store the regulations themselves but the source identification names and paragraphs.
[http://www.tryxbrl.com/Learn/Glossary/tabid/58/Default.aspx]

_EXAMPLE:
<reference …>
<ex:name>Company XYZ Financial Reporting Standards</ex:name>
<ex:chapter>5</ex:chapter>
<ex:paragraph>10</ex:paragraph>
</reference>
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]

xbrl'Organization

name::
* McsEngl.xbrl'Organization@cptIt,

xbrl'XBRL-International

name::
* McsEngl.xbrl'XBRL-International@cptIt,
* McsEngl.XBRL-International@cptIt,
* McsEngl.XII@cptIt,

XBRL International
XBRL International (XII) is the consortium of organisations that develops and maintains the XBRL Specification.

The consortium is made up of Jurisdictions, which represent disctinct geographical areas, along with Direct Members.

Read the 2012 XII Annual Report for updates on Jurisdiction activites and a financial snapshot of the organisation.

The primary governing body of XII is the Board of Directors. The Board of Directors reports to the Members Assembly, which is made up of voting representatives from each XII Jurisdiction as well as each Organisational Direct Member.

Technical work on the XBRL Specification is conducted by working groups overseen by the Standards Board (XSB). Charges and information on participating in technical Working Groups is available through Best Practices Board and Standards Board Sections.

Explore our membership opportunities.

To volunteer for Committee activities contact admin@xbrl.org.
[http://www.xbrl.org/xbrl-international-1]

xbrl'XBRL-Europe

name::
* McsEngl.xbrl'XBRL-Europe@cptIt,
* McsEngl.XBRL-Europe@cptIt,
* McsEngl.XEU@cptIt,

_DESCRIPTION:
Q1. What is XBRL Europe?
XBRL Europe has been founded as an international non-profit association based in Brussels under Belgian law in accordance with the Law of 27 June 1921 on Non-Profit Associations, International Non-Profit Associations and Foundations.

Q2. What are its objectives?
The organisation’s objectives are as follow:
To promote a platform for the creation and exchange of business and financial information including the development and maintenance of the XBRL standard, working under the auspices and within the procedures of XBRL International
To promote and support the standardization of electronic financial and business information in Europe through the use of the XBRL standard.
To support the reduction of the regulatory burden by taking advantage of the XBRL standard.
To support its Members in communication, dialogue, representation and co-operation in matters of a European nature to the benefit of the Members and the XBRL standard.
To support European regional XBRL projects to ensure collaboration and enhancing consistency.
To develop European XBRL Taxonomies and contribute to the harmonization of national implementations, with special focus on cross-border companies and institutions.
To promote and contribute to the development of new and existing European XBRL Members.
To support all other activities within Europe for the advancement of the XBRL standard.
[http://www.xbrleurope.org/faq]

_MEMBER:
XBRL Europe Members - click on the link to visit the members website

XBRL International  

THEIA Partners

XBRL Luxembourg  

European Federation of Financial Analyst Societies

XBRL Netherland  

Deloitte Innovation BV

XBRL Spain  

Bermuda Monetary Authority

XBRL Germany  

Fujitsu Poland EMEA

XBRL France  

Infogreffe

XBRL Italy  

Ernst & Young EMEIA

XBRL Belgium  

Bank Al Maghrib (Central Bank of Morocco)

XBRL Denmark    

Business Reporting Advisory Group

XBRL United Kingdom    

Atos International
[http://www.xbrleurope.org/membership/list-of-members]

xbrl'human#cptCore401#

name::
* McsEngl.xbrl'human@cptIt,

Hoffman.Charles

name::
* McsEngl.Hoffman.Charles@cptIt,

Charles Hoffman, CPA
Charles Hoffman is credited as being the "father of XBRL." Charlie, a member of the American Institute of Certified Public Accountants (AICPA), brought the idea of what was to become XBRL to the AICPA. Charlie is author of the books XBRL for Dummies, XBRL Essentials (a non-technical guide to XBRL), and Financial Reporting Using XBRL: IFRS and US GAAP Edition (a comprehensive guide to using XBRL in financial reporting). He was co-editor of the first XBRL taxonomy. He played a major role in creating the taxonomy for financial reporting under International Financial Reporting Standards (IFRS). He participated on the project to create the US GAAP Taxonomy and the US GAAP Taxonomy Architecture. He was a member of both the XBRL Specification and Domain Working Groups as XBRL 2.1 was being created. Charlie is co-author of the "Financial Reporting Taxonomies Architecture" (FRTA) 1.0 specification, the "Financial Reporting Instance Standards" and a significant contributor to the XBRL 2.1 specification.

Charlie received the AICPA Special Recognition Award in 2006 for his efforts in helping to create XBRL.

Prior to his involvement with XBRL, Charlie served as an auditor for what was then Price Waterhouse, as financial officer for a number of companies, and as an accounting software implementation consultant. In 1997, Charlie was the recipient of the AICPA Innovative User of Technology award. He was named by Accounting Technology as one of the one hundred most influential people in the accounting profession. Charlie is Director of Innovative Solutions for UBmatrix LLC.

Charlie is a graduate of Pacific Lutheran University (PLU) with both a BA in Business Administration with a concentration in accounting and an MBA with a focus on management information systems and world class manufacturing techniques. He received the Distinguished Alumnus Award from PLU in 2007.
[http://xbrl.squarespace.com/about-the-author]

xbrl'relation

name::
* McsEngl.xbrl'relation@cptIt,

9.1. Overview or relations between report elements
As pointed out in the previous section, digital financial reports are made up of the
following report elements: networks, tables, axes, members, line items, concepts,
facts.
These report elements can be related:
? Concept relations: relations between concepts
? Member aggregations: relations between the members of a domain
? Business rules: relations between facts
? Flow or sequence: relations between financial report components
? Integrity: relations between concepts which exist within numerous
components
? Intersections: general relation between report elements which may exist in
more than one component and therefore can be leveraged for navigating
between components of the digital financial report
All of these types of relations are important and we cover each in this section.
[http://www.xbrlsite.com/DigitalFinancialReporting/Book/DigitalFinancialReporting-2012-09-30.pdf]

xbrl'adjustment

name::
* McsEngl.xbrl'adjustment@cptIt,

An adjustment information model reconciles an originally stated balance to a restated balance, the adjustment being the total change, between two different report dates. An adjustment is similar to a roll forward in that it is a reconciliation, however rather than the period [Axis] changing; it is the Report Date [Axis] which changes: originally reported balance + adjustment = restated balance.
[http://www.xbrlsite.com/DigitalFinancialReporting/Book/DigitalFinancialReporting-2012-09-30.pdf]

xbrl'business-rule

name::
* McsEngl.xbrl'business-rule@cptIt,

8.14. Business rules
A business rule is a relation between reported facts. Business rules can be used to
validate the values of facts contained within a report.
Taking the notion that concepts are not randomly placed within a set of line items
further than just the concept relation model or information model; certain
information models have financial integrity. A balance sheet always has “Assets” and
“Liabilities and Equity”. A balance sheet always balances. The line items of Assets
will always foot. The line items of “Liabilities and Equity” will always foot. These
characteristics, or the balance sheets financial integrity, are expressed using
business rules.
HINT: Financial integrity exists within a table and also between tables.
[http://www.xbrlsite.com/DigitalFinancialReporting/Book/DigitalFinancialReporting-2012-09-30.pdf]

xbrl'roll-forward

name::
* McsEngl.xbrl'roll-forward@cptIt,

A roll forward information model reconciles the balance of a concept between two
points in time. This information model is commonly referred to a “roll forward” or
“movement analysis” or the equation: beginning balance + changes = ending
balance. In this equation period [Axis] is as of two different points in time and the
changes occur during the period between those two points in time.
[http://www.xbrlsite.com/DigitalFinancialReporting/Book/DigitalFinancialReporting-2012-09-30.pdf]

xbrl'roll-up

name::
* McsEngl.xbrl'roll-up@cptIt,

A roll up information model computes a total from a set of other concepts. This
information model is commonly referred to a “roll up”, or the equation A + B = C.
All concepts involved in this information model have the same set of characteristics
and all must be numeric.
[http://www.xbrlsite.com/DigitalFinancialReporting/Book/DigitalFinancialReporting-2012-09-30.pdf]

xbrl'variance

name::
* McsEngl.xbrl'variance@cptIt,

A variance information model reconciles some reporting scenario with another
reporting scenario, the variance between reporting scenarios being the variance or
changes. For example, a sales analysis which reconciles the concept sales for the
reporting scenarios of actual and budgeted is a variance. The equation is: actual –
budget = variance.
[http://www.xbrlsite.com/DigitalFinancialReporting/Book/DigitalFinancialReporting-2012-09-30.pdf]

xbrl'resourceInfHmn#cptResource843#

name::
* McsEngl.xbrl'resourceInfHmn@cptIt,

_ADDRESS.WPG:
* http://www.xbrl.org/SpecRecommendations,
* http://xbrl.org/Specification/XBRL-2.1/REC-2003-12-31/XBRL-2.1-REC-2003-12-31+corrected-errata-2013-02-20.html,
* http://www.xbrl.org/technical/guidance/FRTA-RECOMMENDATION-2005-04-25.htm,
* XBRL Dimensions 1.0: http://www.xbrl.org/Specification/XDT-REC-2006-09-18.htm,
===
* http://www.ifrs.org/XBRL/Resources/Pages/Resources.aspx,
* http://www.ifrs.org/XBRL/Resources/Pages/Glossary.aspx,
* http://www.xbrleurope.org//
* http://www.mca.gov.in/XBRL/Vision.html,
* http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf,
* http://www.tryxbrl.com//
* http://xbrl.squarespace.com//
* http://www.xbrlsite.com/DigitalFinancialReporting/Book/DigitalFinancialReporting-2012-09-30.pdf,
* http://www.hmrc.gov.uk/ct/ct-online/file-return/xbrl-guide.pdf,
* http://xbrl.sec.gov//
* http://xbrl.us/Learn/Pages/default.aspx,
* http://www.sec.gov/spotlight/xbrl/glossary.shtml,

xbrl'FRTA

name::
* McsEngl.xbrl'FRTA@cptIt,

FRTA – Financial Reporting Taxonomy Architecture; it is a document published by the XBRL International Consortium that recommends architectural rules and establishes conventions that assist in the comprehension, usage and performance of different financial reporting taxonomies; it is mainly intended for application by public taxonomy developers (authorities).
source: FRTA Abstract.
[http://www.ifrs.org/XBRL/Resources/Documents/ITGGuide2012final.pdf]

xbrl'schema-document

name::
* McsEngl.xbrl'schema-document@cptIt,
* McsEngl.xbrl-taxonomy-schema-file@cptIt,
* McsEngl.xbrl'schema-file@cptIt,

_WHOLE:
* xbrl-taxonomy#ql:xbrl'taxonomy#

_DESCRIPTION:
An XBRL schema stores information about taxonomy elements (their names, IDs and other characteristics). It can be regarded as a folder where an unstructured list of elements and references to linkbase files is held. From the technical point of view, the XBRL schema is an XML schema tailored to particular business and financial reporting needs. The schema itself represents a set of unrelated elements. Schemas are created using XML schema technology and their physical form is a file with an extension .xsd. Together with linkbases it creates an XBRL taxonomy.
The root element (the most general one) of all is schemas <schema/>. The same element may be defined in multiple schemas, each of which would assign it a different meaning (for example in various national GAAP the concept Assets may be defined differently).
Therefore to distinguish between the elements we use namespaces. Namespaces look like Internet addresses (for example http://xbrl.ifrs.org/ifrs/) but they are not. The reason for using names that look like Internet www locators (URIs) is that they are unique and therefore are appropriate to identify the elements that are unique to a schema. Instead of using the full address a prefix can be assigned for this. For example, if a taxonomy defines that ifrs=http://xbrl.ifrs.org/ifrs/, then instead of quoting the entire URI before an element name, ifrs can be used (for example <ifrs:Assets/>).
To summarise, the main purpose of XBRL schemas is to provide the computer with information on how it should represent and process accounting terms. As explained in the XBRL section, computers do not have built-in accounting knowledge so they have to be taught what a particular concept means and what its characteristics are.
[http://www.ifrs.org/XBRL/Resources/Documents/ITGGuide2012final.pdf]
===
Schema
XBRL Schemas together with linkbases define XBRL taxonomy. The purpose of XBRL schemas is to define financial and accounting concepts in system understandable manner. Each concept is given a unique name and its characteristics are defined.
Schema also binds together the different parts of taxonomy.
[http://www.mca.gov.in/XBRL/Glossary.html]

xbrl'schema'annotation-xmlelm

name::
* McsEngl.xbrl'schema'annotation-xmlelm@cptIt,
* McsEngl.xbrl'annotation-xmlelm@cptIt,

_WHOLE:
* schema-xmlelm#ql:xbrl'schema_xmlelm#

_DESCRIPTION:
To connect the concept definitions to the relationships, we must add some information to the XBRL taxonomy schema file in the taxonomy.
This information is contained in an XML Schema <annotation> child element of the XML Schema’s root <schema> element. It tells XLink processors how to find and process the linkbases. An example is given in Figure 26.
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]

_PART:
* appinfo-xmlelm#linkL#

xbrl'schema'appinfo-xmlelm

name::
* McsEngl.xbrl'schema'appinfo-xmlelm@cptIt,
* McsEngl.xbrl'appinfo-xmlelm@cptIt,

_WHOLE:
* annotation-xmlelm#linkL#

_DESCRIPTION:
<appinfo> is used in XML Schema to provide additional information for software tools and applications.
...
Inside the <appinfo> element we put a <linkbaseRef>#ql:"xbrl'schema'linkbaseref_xmlelm"# element for each linkbase that needs to be processed to understand the semantics of the elements defined in the schema document.
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]

xbrl'schema'element-xmlelm

name::
* McsEngl.xbrl'schema'element-xmlelm@cptIt,
* McsEngl.xbrl'element-xmlelm@cptIt,

_WHOLE:
* schema-xmlelm#ql:xbrl'schema_xmlelm#

_DESCRIPTION:
An element is a business concept (such as Assets, Liabilities, Income…) presented to a computer in a way that it could learn its main characteristics. To achieve this, definitions of elements that appear in schemas are constructed according to a specific set of rules. The example below describes simplified (prefixes have been omitted) definition of the element Assets.
<element name=”Assets” id=”Assets” periodType=”instant” balance=”debit” abstract=”false” substitutionGroup=”item” type=”monetaryItemType”/>
The most important parts provided in this example, from a business perspective, are name, type, balance and periodType.
It is easy to guess that the first component assigns an element a unique name. To distinguish between elements defined in different schemas we use namespaces and their prefixes (see schema section). A name must meet several criteria and cannot contain spaces and other characters that are 'illegal' in XML. XML distinguishes between upper and lower case so 'assets' and 'Assets' are different elements.
Apart from the name, for an accountant, the concept Assets is associated with a set of characteristics that are defined by other components presented in the example above.
periodType relates to the accounting distinction between flows and resources. Since it is natural to provide a value of Assets for a particular date and time (usually the end of the year), the value of this attribute for this concept is set to "instant". Flows such as Payments, Revenue or Profit would have "duration" as periodType.
Another characteristic of accounting that computers have to learn is the balance nature of an element. According to the basic rule of double entry accounting, Assets and Expenses are have normal balances in 'debit' while Equity, Liabilities and Revenues have normal balances in 'credit'. So to increase an Asset or Expense, you 'debit' the account and to decrease them you 'credit' the account.
To reflect this feature in XBRL, each element (or more precisely: each item) than falls into one of these categories and has a monetary value should contain in its definition a specification of whether it has a normal 'debit' or 'credit' balance. This requirement was introduced because of the need of having comparable data and because it is necessary in order to perform accounting calculations.
For example the element Cost of sales (an Expense) could be assigned negative value and added to Revenue ('credit') in order to calculate Gross profit or it could be a positive figure which by subtraction from Revenue would give the same result.
 
No balance attribute assigned
Balance attribute assigned
Revenues


1,000


1,000


1,000 (Cr)
Cost of sales
-
1,200


-1,200
-
1,200 (Dt)
Gross profit (loss)
=
-200
=
-200
=
-200 (Cr)

Although using a balance attribute is useful and straight forward in the case of Balance Sheets or Income Statements, it creates difficulties in calculating some Cash Flows in which elements do not necessarily obey 'credit'/'debit' rules. There are new technologies under development such as formulas and functions that make XBRL more programmable and so are likely to be helpful with the problem.
Last but not least important characteristic of an element that has to be defined is its type. In financial reports companies include information that are in the form of figures with monetary units (e.g. £100), numbers (for example number of employees), percents (interest rates), strings (regular text) and others.
To help computers know how to treat each of these, XBRL developers decided to use (with small adjustments) XML built-in types. By doing so, computers can check the validity of data entered according to the type as well as make calculations. The most common types that appear in financial statements are monetaryItemType, stringItemType and decimalItemType.
There are some concepts in business reporting that are expressed in XBRL using elements whose definitions and constructions differ significantly from presented above. They are called tuples and were designed to express, for instance, tables with unknown number of rows or columns. A simplified (prefixes have been omitted) example is provided below:

<element
id="Deposit" name="Deposit" substitutionGroup="tuple" nillable="true">
<complexType>
<complexContent>
<restriction base="anyType">
<sequence>
<element ref="Description" />
<element ref="Amount" />
<element ref="EffectiveInterestRate" minOccurs="0" />
</sequence>
<attribute name="id" type="ID" use="optional" />
</restriction>
</complexContent>
</complexType>
</element>
The first feature that distinguishes them from regular elements is that their substitutionGroup value is set to tuple (in contrast to the previous example where this attribute was assigned the value item).
Secondly, the definition of the element Deposit lacks many of the components described above such as balance attribute, periodType or type. Instead, this element contains other elements which are, in the example provided, Description, Amount and EffectiveInterestRate. The definition of the content a tuple may hold includes additional information concerning the order of elements contained and their minimum number of occurrences (minOccurs) and maximum number of occurrences (maxOccurs).
Unlike regular items, tuples (and items that they contain) may appear in instance documents several times in the same context. Relating this to the example above, the reporting entity may define a list of deposits by providing the Description, Amount and Effective Interest Rate of each.
Once elements and their features are defined in a schema, taxonomy creators face the task of providing computers with knowledge on relations between elements and their links with human readable resources. These constitute components of linkbases.
[http://www.ifrs.org/XBRL/Resources/Pages/Fundamentals.aspx#ELEMENT]

_EXAMPLE:
<element
id="Deposit" name="Deposit" substitutionGroup="tuple" nillable="true">
<complexType>
<complexContent>
<restriction base="anyType">
<sequence>
<element ref="Description" />
<element ref="Amount" />
<element ref="EffectiveInterestRate" minOccurs="0" />
</sequence>
<attribute name="id" type="ID" use="optional" />
</restriction>
</complexContent>
</complexType>
</element>
[http://www.ifrs.org/XBRL/Resources/Pages/Fundamentals.aspx#ELEMENT]

xbrl'element'balance-attribute

name::
* McsEngl.xbrl'element'balance-attribute@cptIt,

To reflect this feature in XBRL, each element (or more precisely: each item) than falls into one of these categories and has a monetary value should contain in its definition a specification of whether it has a normal 'debit' or 'credit' balance. This requirement was introduced because of the need of having comparable data and because it is necessary in order to perform accounting calculations.
For example the element Cost of sales (an Expense) could be assigned negative value and added to Revenue ('credit') in order to calculate Gross profit or it could be a positive figure which by subtraction from Revenue would give the same result.
No balance attribute assigned
Balance attribute assigned
Revenues


1,000


1,000


1,000 (Cr)
Cost of sales
-
1,200


-1,200
-
1,200 (Dt)
Gross profit (loss)
=
-200
=
-200
=
-200 (Cr)

Although using a balance attribute is useful and straight forward in the case of Balance Sheets or Income Statements, it creates difficulties in calculating some Cash Flows in which elements do not necessarily obey 'credit'/'debit' rules. There are new technologies under development such as formulas and functions that make XBRL more programmable and so are likely to be helpful with the problem.
[http://www.ifrs.org/XBRL/Resources/Pages/Fundamentals.aspx#ELEMENT]

xbrl'element'periodType-attribute

name::
* McsEngl.xbrl'element'periodType-attribute@cptIt,

_GENERIC:
* attribute-of-xml-element,

_DESCRIPTION:
periodType relates to the accounting distinction between flows and resources. Since it is natural to provide a value of Assets for a particular date and time (usually the end of the year), the value of this attribute for this concept is set to "instant". Flows such as Payments, Revenue or Profit would have "duration" as periodType.
[http://www.ifrs.org/XBRL/Resources/Pages/Fundamentals.aspx#ELEMENT]

_SPECIFIC:
* duration (flow),
* instant (stock),

xbrl'element'substitutionGroup-attribute

name::
* McsEngl.xbrl'element'substitutionGroup-attribute@cptIt,

_SPECIFIC:
* item,
* tuple,

xbrl'element'type-attribute

name::
* McsEngl.xbrl'element'type-attribute@cptIt,
* McsEngl.xbrl'concept'type@cptIt,

_GENERIC:
* attribute-of-xml-element#ql:xml'attribute#

_DESCRIPTION:
Last but not least important characteristic of an element that has to be defined is its type. In financial reports companies include information that are in the form of figures with monetary units (e.g. £100), numbers (for example number of employees), percents (interest rates), strings (regular text) and others.
To help computers know how to treat each of these, XBRL developers decided to use (with small adjustments) XML built-in types. By doing so, computers can check the validity of data entered according to the type as well as make calculations. The most common types that appear in financial statements are monetaryItemType, stringItemType and decimalItemType.
[http://www.ifrs.org/XBRL/Resources/Pages/Fundamentals.aspx#ELEMENT]

xbrl'schema'linkbaseRef-xmlelm

name::
* McsEngl.xbrl'schema'linkbaseRef-xmlelm@cptIt,
* McsEngl.xbrl'linkbaseRef@cptIt,

_WHOLE:
* appinfo-xmlelm#ql:xbrl'schema'appinfo_xmlelm#

_DESCRIPTION:
Inside the <appinfo> element we put a <linkbaseRef> element for each linkbase that needs to be processed to understand the semantics of the elements defined in the schema document.
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]

_EXAMPLE:
<link:linkbaseRef
xlink:type="simple"
xlink:href="presentation.xml"
xlink:actuate="onRequest"
xlink:role=”http://www.xbrl.org/linkprops/linkRef/presentation”
xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" >
<xhtml:p> Links for presentation relationship </xhtml:p>
</link:linkbaseRef>

xbrl'linkbaseRef'attribute

name::
* McsEngl.xbrl'linkbaseRef'attribute@cptIt,

_XBRL'LINKBASEREF'HREF:
The xlink:href attribute contains the location and filename of the linkbase containing the relevant extended links.
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]

_XBRL'LINKBASEREF'ROLE:
The xlink:role attribute indicates what kind of linkbases can be discovered by traversing the <linkbaseRef>. The XBRL 2.0 specification lists the following standard roles:
• http://www.xbrl.org/linkprops/linkRef/presentation
• http://www.xbrl.org/linkprops/linkRef/calculation
• http://www.xbrl.org/linkprops/linkRef/definition
• http://www.xbrl.org/linkprops/linkRef/label
• http://www.xbrl.org/linkprops/linkRef/reference
These roles indicate that presentation, calculation, definition, label, and reference links are to be found at the linkbase reference destination, respectively. Since a linkbaseRef identifies the kind of extended link that will be found (presentation, definition, calculation, label, or reference) it is generally accepted practice not to mix multiple kinds of extended links within a single linkbase.
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]

xbrl'schema'import-xmlelm

name::
* McsEngl.xbrl'schema'import-xmlelm@cptIt,
* McsEngl.xbrl'import-xmlelm@cptIt,

_WHOLE:
* schema-xmlelm#ql:xbrl'schema_xmlelm#

_EXAMPLE:
<import
namespace="http://www.xbrl.org/2003/instance"
schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd" />
[http://www.batavia-xbrl.com/downloads/XBRLinPlainEnglishv1.1.pdf]
===
<import
namespace=”http://www.xbrl.org/2001/instance”
schemaLocation=”xbrl-instance.xsd”/>
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]

xbrl'schema'schema-xmlelm

name::
* McsEngl.xbrl'schema'schema-xmlelm@cptIt,
* McsEngl.xbrl'schema-xmlelm@cptIt,
* McsEngl.xbrl'schemaelm@cptIt,

_PART:
* annotation-xmlelm#ql:xbrl'schema'annotation_xmlelm#
* element-xmlelm#ql:xbrl'schema'element_xmlelm#
* import-xmlelm#ql:xbrl'import_xmlelm#

xbrl'schemaelm'attribute

name::
* McsEngl.xbrl'schemaelm'attribute@cptIt,

_XBRL'SCHEMAELM'targetNamespace:
Starting with the extension XBRL taxonomy schema, you simply create new schema, giving them their own target namespace using the targetNamspace attribute of the <schema> element.
The target namespace is different from the namespaces of the schemas that are being extended. This difference in namespaces prevents element name collisions between the various schemas, and it assists users of the taxonomies in recognizing the boundaries between the original schemas and the extensions.

_XBRL'SCHEMAELEM'attributeFormDefault:
="unqualified"

_XBRL'SCHEMAELEM'elementFormDefault:
="qualified"

xbrl'schema.ROLE

name::
* McsEngl.xbrl'schema.ROLE@cptIt,

role schema – a schema containing only definitions of roles.
[http://www.ifrs.org/XBRL/Resources/Documents/ITGGuide2012final.pdf]

xbrl'software-tool

name::
* McsEngl.xbrl'software-tool@cptIt,
* McsEngl.xbrl'program@cptIt,
* McsEngl.xbrl'tool@cptIt,

_ADDRESS.WPG:
* Batavia XBRL Java Library http://sourceforge.net/projects/batavia-xbrl//
-

* CodeXBRL Beta
Last Update: 2009-09-02
Library (.NET and Java) to generate and process data in XBRL Global Ledger (XBRL GL) format and link it with multiple XBRL taxonomies for XBRL data generation and reconciliation. Please subscribe to the project RSS feed for upcoming additional features.
http://sourceforge.net/projects/codexbrl//

* Java XBRL API implementation
Last Update: 2013-03-01
A Java API for XBRL providing comprehensive data access. It is suitable for searching, analysing and presenting LARGE amounts of XBRL data. XBRLAPI also releases a separate XLink processor, XML Base resolver and XPointer parser.
- http://sourceforge.net/projects/xbrlapi//
- http://www.xbrlapi.org//

* Rivet Software Dragon Tag XBRL Enabler: http://sourceforge.net/projects/rivetdragontag//

* Rivet Software Dragon View XBRL Viewer http://sourceforge.net/projects/rivetdragonview//

* XBRL Core http://sourceforge.net/projects/xbrlcore//
Last Update: 2011-11-29

* XBRL Processing Engine http://sourceforge.net/projects/ubmatrix-xbrl//
Last Update: 2011-08-12

* http://www2.xbrl.org/frontend.aspx?clk=SLK&val=108,

xbrl'program.VIEWER

name::
* McsEngl.xbrl'program.VIEWER@cptIt,

_Yeti_taxonomy_viewer:
* http://bigfoot.corefiling.com/yeti/resources/yeti-gwt/Yeti.jsp,

xbrl'taxonomy

name::
* McsEngl.xbrl'taxonomy@cptIt,
* McsEngl.xbrlt@cptIt,

_DESCRIPTION:
XBRL taxonomies
Different countries use different accounting standards. Reporting under each standard reflects differing definitions. The XBRL language uses different dictionaries, known as ‘taxonomies’, to define the specific tags used for each standard. Different dictionaries may be defined for different purposes and types of reporting. Taxonomies are the computer-readable ‘dictionaries’ of XBRL. Taxonomies provide definitions for XBRL tags, they provide information about the tags, and they organize the tags so that they have a meaningful structure.

As a result, taxonomies enable computers with XBRL software to:

understand what the tag is (eg whether it is a monetary item, a percentage or text);
what characteristics the tag has (eg if it has a negative value);
its relationship to other items (eg if it is part of a calculation).
This additional information is called meta-data. When information that has been tagged with XBRL is transmitted, the meta-data contained within the tags is also transmitted.

Taxonomies differ according to reporting purposes, the type of information being reported and reporting presentation requirements. Consequently, a company may use one taxonomy when reporting to a stock exchange, but use a different taxonomy when reporting to a securities regulator. Taxonomies are available for most of the major national accounting standards around the world.
[http://www.mca.gov.in/XBRL/WhatisXBRL.html]

xbrlt'file

name::
* McsEngl.xbrlt'file@cptIt,

_DESCRIPTION:
Common practice is to have some or all of the files shown in Figure 25 in an XBRL taxonomy:
* File
* Description
* Type of File

* Taxonomy Schema
* Contain all the business reporting concepts as <element> elements.
* XML Schema Files (.xsd)

* Definition Linkbase
* Contains the <definitionLink> extended link elements and all the locators and definition arcs.
* XML Files (.xml)

* Calculation Linkbase
* Contains the <caluclationLink> extended link elements and all the locators and calculation arcs.
* XML Files (.xml)

* Presentation Linkbase
* Contains the <presentationLink> extended link elements and all the locators and presentation arcs.
* XML Files (.xml)

* Label Linkbase
* Contains the <labelLink> extended link elements and all the locators, label resources, and label arcs.
* XML Files (.xml)

* Reference Linkbase
* Contains the <referenceLink> extended link elements and all the locators, reference resources, and reference arcs.
* XML Files (.xml)
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]

_SPECIFIC:
* Calculation-Linkbase-file#linkL#
* Definition-Linkbase-file#linkL#
* Label Linkbase-file#linkL#
* Presentation-Linkbase-file#linkL#
* Reference-Linkbase-file#linkL#
* Taxonomy-Schema-file#ql:xbrl'schema_document#

xbrlt'doing.extention

name::
* McsEngl.xbrlt'doing.extention@cptIt,
* McsEngl.taxonomy-extenstion-xbrl@cptIt,

_DESCRIPTION:
Formally, the process of adapting other taxonomy structures for your own purposes is known as taxonomy extension. The actual mechanism of taxonomy extension is relatively straightforward. All it involves is the creation of:
• New extension XBRL taxonomy schemas to define elements that are not already defined in the taxonomies that you are leveraging
• New XBRL linkbases that provide labels and references for the new XBRL elements in your extension schemas (and perhaps for the XBRL elements in the schemas that you are extending)
• Presentation, definition, and calculation linkbases that establish the relationships between the new XBRL elements in your extension schemas and the XBRL elements in the schemas that you are extending
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]

xbrlt'namespace

name::
* McsEngl.xbrlt'namespace@cptIt,
* McsEngl.xbrl'namespace@cptIt,
* McsEngl.xbrlns@cptIt,

_GENERIC:
* xml-namespace#ql:xml'namespace#

SPECIFIC

name::
* McsEngl.xbrlt.specific@cptIt,

_SPECIFIC:
* base-xbrl-taxonomy#ql:xbrlt.base#
* extension-xbrl-taxonomy#ql:xbrlt.extension#
* public-xbrl-taxonomy,
* IFRS-xbrl-taxonomy#ql:xbrl'ifrs_taxonomy#
===
* base-xbrl-taxonomy#ql:xbrlt.base#
* extension-xbrl-taxonomy#ql:xbrlt.extension#

xbrlt.EXTENSION

name::
* McsEngl.xbrlt.EXTENSION@cptIt,
* McsEngl.xbrl'extending-taxonomy@cptIt,
* McsEngl.xbrl'extension-taxonomy@cptIt,

_DESCRIPTION:
Taxonomy extension
Public taxonomies, such as the IFRS Taxonomy, define elements and the relationships between them according to particular legislation or standards. These XBRL-described concepts allow companies to create financial statements that are valid and compliant with regulatory requirements. However, in the diverse world of finance, companies are required to include in their business reports additional concepts (usually related to their specific area of activity or a specific reporting purpose). XBRL, as its name indicates, allows for such extensions without the loss of data integrity.
Extending a taxonomy may involve performing the following operations:
? adding an element not described in the base taxonomy, but which is required;
? modifying the relationship between elements in terms of their order, addition or deletion.
Taxonomy extensions are built for different purposes, mainly by regulators, local authorities or simply by reporting companies.
There are several rules that should be obeyed when building a taxonomy extension. The most important one is that the extension should not physically modify the content of any of the base taxonomy files. This is usually done by locating the base taxonomy on a website, which prevents other users from making changes to the files.
Building an extension that involves the modification of linkbases requires developers to be familiar with the use and priority attributes, and the concept of equivalency. With these attributes extenders can prohibit a relationship (an arc) or override it. The use attribute may take the values optional and prohibited (the latter implies that the relationship is not processed by a computer).
The priority attribute assigns relationships with ranks, which informs the computer about the processing order.
[http://www.ifrs.org/XBRL/Resources/Documents/ITGGuide2012final.pdf]
===
1.7 Extensions to this specification

It is understood that no single XML vocabulary can capture the entirety of business reporting. XBRL has therefore included extensibility as a design principle. Certain kinds of extension facilities are embodied in this specification, such as the basic ability to create taxonomies. In addition, it is possible to create new kinds of linkbases and new roles and arc roles for new and existing linkbases. It is also possible to create attributes that may be used on elements from the various XBRL namespaces. Other methods of extending the functionality of XBRL MAY be introduced in the future, by individual developers or with formal support from the XBRL consortium.

However, the design of this specification is such that all extension mechanisms MUST obey certain rules as follows:

An extension MUST NOT add anything to the namespaces defined by this specification.
An extension MUST NOT change the semantics of anything in this specification or anything in any of the namespaces defined in the schemas.
An extension MUST use the elements and attributes of XBRL 2.1 and the other namespaces defined in this specification following the semantics defined herein and the syntactic constraints of XML Schema.
As an example, certain linkbases defined in this specification do not allow local resources. That constraint MUST NOT be changed by any extension mechanism. It is not permitted to create a "resources-allowed" link role whose semantics are to make local resources acceptable.

In summary, the only way to change the semantics of anything defined by this specification would be to change the text of this specification itself.
[http://xbrl.org/Specification/XBRL-2.1/REC-2003-12-31/XBRL-2.1-REC-2003-12-31+corrected-errata-2013-02-20.html]

xbrlt.extension'schema-file

name::
* McsEngl.xbrlt.extension'schema-file@cptIt,

Extending taxonomies can be a matter of simply changing some of the
relationships in an existing taxonomy. Even though, in this case, there
are no new concept definitions, a new XBRL taxonomy schema file
must be created to define the new taxonomy with a new namespace.
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]

xbrlt.GL

name::
* McsEngl.xbrlt.GL@cptIt,
* McsEngl.XBRL-General-Ledger-taxonomy@cptIt,

_DESCRIPTION:
The XBRL Global Ledger Taxonomy Framework (XBRL GL) is a holistic and generic XML and XBRL-based representation of the detailed data that can be found in accounting and operational systems, and is meant to be the bridge from transactional standards to reporting standards, integrating the Business Reporting Supply Chain.
XBRL GL is developed by the XBRL GL Working Group of XBRL International.
XBRL GL can be used by Computer programs for information interchange of accounting General ledger balances (summarized information) as well as complete accounting ledgers (payables, receivables, inventory, payroll, order entry, purchasing, banking) supporting object oriented accounting, quantity accounting and transparency support. The instance documents (XML files) can also be viewed in Web browsers using XSL or programmatically; it can also be carried in Inline XBRL. XBRL is designed to standardize the data, processes and rules of Business Reporting as a whole, although most implementations focus on financial reporting. XBRL GL can support the detail and integrate to all manners of reporting, financial, tax, sustainability, statistics and otherwise, and carry both quantitative and qualitative information.
[http://en.wikipedia.org/wiki/XBRL_GL] 2013-03-12

_ADDRESS.WPG:
* http://www.xbrl.org/GLFiles,

xbrlt.ORIGINAL

name::
* McsEngl.xbrlt.ORIGINAL@cptIt,
* McsEngl.xbrl'base-taxonomy@cptIt,
* McsEngl.xbrl'core-taxonomy@cptIt,
* McsEngl.xbrl'standard-taxonomy@cptIt,
* McsEngl.xbrlt.base@cptIt,
* McsEngl.xbrlt.core@cptIt,
* McsEngl.xbrlt.standard@cptIt,

_DESCRIPTION:
core taxonomy – a taxonomy that is used as the foundation for the creation of an extension.
[http://www.ifrs.org/XBRL/Resources/Documents/ITGGuide2012final.pdf]
===
XBRL does not provide an explicit mechanism to identify an extending
taxonomy. There is no specified method to identify the base taxonomy in
the extending taxonomy’s schema file. The only way that a base
taxonomy is discovered is by following the linkbases. When there is a
locator to another taxonomy, you know that you are dealing with an
“extension taxonomy.” By following that locator to a base taxonomy, the
base taxonomy linkbases can be discovered. This is an iterative process,
as the base taxonomy may be an extension of another taxonomy.
[http://us.kpmg.com/microsite/xbrl/ACO_XBRL_020204A_WORD_10_22.pdf]

xbrlt.PUBLIC

name::
* McsEngl.xbrlt.PUBLIC@cptIt,

xbrlt.XII (XBRL-International)

name::
* McsEngl.xbrlt.XII (XBRL-International)@cptIt,

XII Recognised Taxonomies
XII has a multi-step Taxonomy Recognition Process that validates the conformance of the taxonomy to the XBRL specification, determines that a taxonomy has been correctly authored, has had sufficient input from the public and meets the needs for which it was created. It must be emphasized that this process does not specifically address issues such as ease-of-use or the completeness of accounting/reporting content.

Acknowledged Taxonomies are recognised by XBRL International as being in compliance with the XBRL Specification. Compliance is confirmed by testing a taxonomy in a defined range of XBRL applications which may be upgraded and changed from time to time. The Taxonomy Recognition process does not specifically address other issues such as ease-of-use or the completeness of accounting/reporting content.

Approved Taxonomies must meet a number of quality criteria. In summary, it must:

Comply with the Financial Reporting Taxonomies Architecture (FRTA) document, which is published in the Taxonomy Guidance section.
Have been used to create a number of instance documents which confirm it adequately covers the data it purports to represent.
Have been through a period of open review following initial Acknowledgement.
[http://www.xbrl.org/FRTaxonomies/]

xbrl'xml-element

name::
* McsEngl.xbrl'xml-element@cptIt,
* McsEngl.xbrl'elm@cptIt,
* McsEngl.xbrl'tag@cptIt,

_GENERIC:
* xml-element#ql:xml'element rl?#

_DESCRIPTION:
element – according to the XML Specification 1.1, each XML document contains one or more elements, the boundaries of which are either delimited by start-tags (<…>) and end-tags(</…>), or for empty elements, by an empty-element tag (<…/>); each element has a type, is identified by name and may have a set of attribute specifications; in XBRL, elements (see concept) are defined and assigned attributes in schemas and may appear either as items or as tuples; instance documents contain elements together with the content and information about the context that they are associated with.
more: XML Schema: 3.3.2.
[http://www.ifrs.org/XBRL/Resources/Documents/ITGGuide2012final.pdf]

xbrl'elm'attribute

name::
* McsEngl.xbrl'elm'attribute@cptIt,

attribute – according to the XML Specification 1.1, attributes are used to associate name-value pairs with elements; attribute specifications shall not appear outside of start-tags (<...>) and empty-element tags (<.../>); each attribute specification has a name and a value; XML attribute types are of three kinds: a string type (any literal string as a value), a set of tokenised types (varying lexical and semantic constraints), and enumerated types.
[http://www.ifrs.org/XBRL/Resources/Documents/ITGGuide2012final.pdf]

xbrl'elm'content

name::
* McsEngl.xbrl'elm'content@cptIt,

element content (value, business fact) – appears between a start-tag (<...>) and a closing-tag (<.../>); in the example <Asset>1000</Asset> the number 1000 is the content; content depends on the type of an element; empty elements (<.../>) have no content but they may carry information in their attributes or simply appear in instance documents.
[http://www.ifrs.org/XBRL/Resources/Documents/ITGGuide2012final.pdf]

SPECIFIC

name::
* McsEngl.xbrl'elm.specific@cptIt,

xbrl'elm.EMPTY

name::
* McsEngl.xbrl'elm.EMPTY@cptIt,

xbrl'elm.ENTITY

name::
* McsEngl.xbrl'elm.ENTITY@cptIt,

entity element – a required element in a context; it identifies the entity that is reporting the facts; it shall contain an identifier element and may include a segment description.
Example:
<entity>
<identifier scheme=“http://www.nasdaq.com”>COMPANY</identifier>
<segment>
<my:state>MI</my:state>
</segment>
</entity>
source: XBRL Spec: 4.7.3.
[http://www.ifrs.org/XBRL/Resources/Documents/ITGGuide2012final.pdf]

xbrl'elm.ROOT

name::
* McsEngl.xbrl'elm.ROOT@cptIt,

root element – is the top level element fulfilling the role of a container for a larger whole; in XBRL such elements can be schema, xbrl and linkbase.
[http://www.ifrs.org/XBRL/Resources/Documents/ITGGuide2012final.pdf]

SPECIFIC

xbrl.iXBRL

name::
* McsEngl.xbrl.iXBRL@cptIt,
* McsEngl.inline-XBRL@cptIt,
* McsEngl.iXBRL@cptIt,

_DESCRIPTION:
Inline XBRL was created to avoid the need to create visual renderings of XBRL instance documents.
Conventional XML data documents (like XBRL instance documents) maintain a separation of data and rendering instructions. The data is kept in the XML data document, and the rendering instructions are kept in a stylesheet or separate application. Where the structure of the data is known in advance, this is efficient and simple. XBRL, however, is based on taxonomies and not schemas: the precise data content of a document is often not known in advance. This makes it difficult to devise satisfactory rendering instructions.
Inline XBRL is a mechanism for allowing the author of the XBRL instance document to specify the visual rendering of the data. It does this by providing a method for incorporating XBRL instance data and metadata into an HTML or XHTML document. The [Inline XBRL Specification] defines how this data and metadata can then be used to construct an XBRL instance document.
[http://www.xbrl.org/Specification/inlineXBRL-part0/PWD-2013-02-13/inlineXBRL-part0-PWD-2013-02-13.html]
iXBRL – inline XBRL; a standard for embedding XBRL fragments into an HTML document. The objective is to provide documents which can be viewed in a browser while making XBRL tags which can be processed automatically by consuming applications.
[http://www.ifrs.org/XBRL/Resources/Documents/ITGGuide2012final.pdf]

ixbrl'namespace

name::
* McsEngl.ixbrl'namespace@cptIt,

2.4 Namespace prefixes
This Specification uses a number of namespace prefixes when describing elements and attributes. These are:
Namespace prefix  Namespace name
ix    http://www.xbrl.org/2008/inlineXBRL
ixt  http://www.xbrl.org/inlineXBRL/transformation/2010-04-20
link  http://www.xbrl.org/2003/linkbase
xbrli  http://www.xbrl.org/2003/instance
xl    http://www.xbrl.org/2003/XLink
xlink  http://www.w3.org/1999/xlink
xml  http://www.w3.org/XML/1998/namespace
xsi  http://www.w3.org/2001/XMLSchema-instance
[http://www.xbrl.org/Specification/inlineXBRL-part1/REC-2010-04-20/inlineXBRL-part1-REC-2010-04-20+corrected-errata-2011-08-17.html#h5o-15]

ixbrl'Program

name::
* McsEngl.ixbrl'Program@cptIt,

ixbrl'validator

name::
* McsEngl.ixbrl'validator@cptIt,

_SPECIFIC:
* https://ixv.accountingweb.co.uk//

ixbrl'resourceInfHmn#cptResource843#

name::
* McsEngl.ixbrl'resourceInfHmn@cptIt,

_ADDRESS.WPG:
* http://www.xbrl.org/Specification/inlineXBRL-part1/REC-2010-04-20/inlineXBRL-part1-REC-2010-04-20+corrected-errata-2011-08-17.html,
* http://www.xbrl.org/inlinexbrlextractortutorial/index.html,

lagCmr.knowledge.OWL {2009, 2004}

_CREATED: {2007-09-04}

name::
* McsEngl.conceptIt562,
* McsEngl.lagOwl0, {2021-01-09}
* McsEngl.lagWebo, {2021-01-03}
* McsEngl.lagKnlg.OWL,
* McsEngl.methodKnowledgeOwl@cptIt562,
* McsEngl.owl-language,
* McsEngl.web-ontology-language@cptIt562, {2011-09-04}

lagOwl0'DEFINITION

OWL is a general purpose representation language that provides no special vocabulary for service applications.
[http://www.daml.org/services/owl-s/1.1/related.html]

The Web Ontology Language OWL is a semantic markup language for publishing and sharing ontologies on the World Wide Web.
[http://www.w3.org/TR/2004/REC-owl-ref-20040210/]

The OWL Web Ontologoy Language is a language for defining and instantiating Web ontologies.
[http://www.w3.org/TR/2004/REC-owl-guide-20040210/]

lagOwl0'WHOLE

_WHOLE:
SEMANTIC_WEB:
OWL is a component of the Semantic Web activity. This effort aims to make Web resources more readily accessible to automated processes by adding information about the resources that describe or provide Web content. As the Semantic Web is inherently distributed, OWL must allow for information to be gathered from distributed sources. This is partly done by allowing ontologies to be related, including explicitly importing information from other ontologies.
[http://www.w3.org/TR/2004/REC-owl-guide-20040210/]

lagOwl0'ENVIRONMENT#cptCore756#

name::
* McsEngl.lagOwl0'ENVIRONMENT@cptIt,

lagOwl0'UNIVERSE-OF-DISCOURSE (world)

name::
* McsEngl.lagOwl0'UNIVERSE-OF-DISCOURSE (world)@cptIt,

lagOwl0'DOMAIN,

OWL is a general purpose representation language that provides no special vocabulary for service applications. Thus anyone who needs to build a service application would need to find a service ontology or build their own.
[http://www.daml.org/services/owl-s/1.1/related.html]

lagOwl0'ONTOLOGY (codomain)

name::
* McsEngl.lagOwl0'ONTOLOGY (codomain)@cptIt,

lagOwl0'ontology'TermEnglish:
ontology'in'owl-562, lagOwl0'document-562, lagOwl0'code-562, lagOwl0'knowledgebase-562,

* As with most RDF documents, the OWL code should be subelements of a rdf:RDF element.
[http://www.w3.org/TR/2004/REC-owl-ref-20040210/]

lagOwl0'ontology'DEFINITION:
An OWL ontology may include descriptions of classes, properties and their instances.
[http://www.w3.org/TR/2004/REC-owl-guide-20040210/]

An OWL ontology in the abstract syntax contains a sequence of annotations, axioms, and facts.
[http://www.w3.org/TR/2004/REC-owl-semantics-20040210/syntax.html]

An ontology is a resource
[http://www.w3.org/TR/2004/REC-owl-ref-20040210/#Header]

lagOwl0'ontology'NAME:
OWL ontologies can have a name.
[http://www.w3.org/TR/2004/REC-owl-semantics-20040210/syntax.html]

lagOwl0'ontology'CONTENT:
* what domain'entity describes.
[KasNik, 2007-12-07]

* The main content of an OWL ontology is carried in its axioms and facts, which provide information about classes, properties, and individuals in the ontology.
[http://www.w3.org/TR/2004/REC-owl-semantics-20040210/syntax.html]

lagOwl0'ontology'SYNTACTIC_FORM:
an OWL ontology graph can be written in many different syntactic forms
[http://www.w3.org/TR/2004/REC-owl-ref-20040210/]

lagOwl0'ontology'CONSISTENCY:
According to the OWL model-theoretic semantics [2], an ontology is consistent if there is an interpretation that satisfies all the facts and axioms in the ontology.
Such an interpretation is called a model of the ontology.
[http://pellet.owldl.com/papers/sirin05pellet.pdf]

lagOwl0'ontology'EXCHANDGE-SYNTAX-FOR-OWL

name::
* McsEngl.lagOwl0'ontology'EXCHANDGE-SYNTAX-FOR-OWL@cptIt,

The exchange syntax for OWL is RDF/XML [RDF Syntax], as specified in the OWL Reference Description [OWL Reference].
[http://www.w3.org/TR/2004/REC-owl-semantics-20040210/mapping.html]

lagOwl0'ontology'RDF-graph-form

name::
* McsEngl.lagOwl0'ontology'RDF-graph-form@cptIt,

lagOwl0'ontology'SPECIFEINO

name::
* McsEngl.lagOwl0'ontology'SPECIFEINO@cptIt,

* OWL_S#ql:owl_s'ontology-561i###

lagOwl0'CREATOR

name::
* McsEngl.lagOwl0'CREATOR@cptIt,

the Web Ontology Language, being produced by the W3C Web Ontology Working Group (WebOnt).
[http://www.w3.org/TR/2004/REC-owl-guide-20040210/]

lagOwl0'AND'OTHER'LANGUAGES

name::
* McsEngl.lagOwl0'AND'OTHER'LANGUAGES@cptIt,

OWL has more facilities for expressing meaning and semantics than XML, RDF, and RDF-S, and thus OWL goes beyond these languages in its ability to represent machine interpretable content on the Web. OWL is a revision of the DAML+OIL web ontology language incorporating lessons learned from the design and application of DAML+OIL.
[http://www.w3.org/TR/2004/REC-owl-features-20040210/]

lagOwl0'Relation-to-Description-logics

name::
* McsEngl.lagOwl0'Relation-to-Description-logics@cptIt,

RELATION WITH DESCRIPTION_LOGICS:
OWL Lite and OWL DL closely correspond to the description logics known as SHIF(D) and SHION(D), with some limitation on how datatypes are treated. The abstract syntax for OWL Lite doesn't contain many of the common explicit constructors associated with SHIF(D), but the expressivity remains.
[http://www.w3.org/TR/2004/REC-owl-semantics-20040210/syntax.html]

Synonyms
OWL  DL
class  concept
property  role
object  individual
[http://en.wikipedia.org/wiki/Description_logic]

lagOwl0'Relation-to-rdf

name::
* McsEngl.lagOwl0'Relation-to-rdf@cptIt,
* McsEngl.rdf'and'owl@cptIt756i,

Main RDFS components are included in the more expressive language OWL#cptIt562#.
[http://en.wikipedia.org/wiki/RDFS] 2007-12-05

Note that OWL has been designed for maximal compatibility with RDF and RDF Schema. These XML and RDF formats are part of the OWL standard.
[http://www.w3.org/TR/2004/REC-owl-guide-20040210/]

lagOwl0'Annotation

name::
* McsEngl.lagOwl0'Annotation@cptIt,
* McsEngl.annotation-owl@cptIt,

Annotations on OWL ontologies can be used to record authorship and other information associated with an ontology, including imports references to other ontologies.
[http://www.w3.org/TR/2004/REC-owl-semantics-20040210/syntax.html]

lagOwl0'Axiom (definition)

name::
* McsEngl.lagOwl0'Axiom (definition)@cptIt,
* McsEngl.axiom-owl@cptIt562,
* McsEngl.definition-owl@cptIt562,

=== _NOTES: Axioms used to be called definitions, but they are not all definitions in the common sense of the term and thus a more neutral name has been chosen.
[http://www.w3.org/TR/2004/REC-owl-semantics_20040210/syntax.html]

lagOwl0'axiom'DEFINITION:
The biggest differences between the OWL Lite and OWL DL abstract syntaxes show up in the axioms, which are used to provide information about classes and properties.
[http://www.w3.org/TR/2004/REC-owl-semantics-20040210/syntax.html]

lagOwl0'axiom.CLASS (lagOwl0'CLASS_AXIOM):

lagOwl0'axiom.PROPERTY (lagOwl0'PROPERTY_AXIOM):
A property axiom defines characteristics of a property. In its simplest form, a property axiom just defines the existence of a property. For example:
<owl:ObjectProperty rdf:ID="hasParent"/>
This defines a property with the restriction that its values should be individuals.
[http://www.w3.org/TR/2004/REC-owl-ref-20040210/]

lagOwl0'Fact

name::
* McsEngl.lagOwl0'Fact@cptIt,
* McsEngl.fact-owl@cptIt562,
* McsEngl.individual-axiom-owl@cptIt562,

_DEFINITION:
Individuals are defined with individual axioms (also called "facts").
[http://www.w3.org/TR/2004/REC-owl-ref-20040210/]

lagOwl0'fact'SPESIFEPTO:
There are two kinds of facts in the OWL abstract syntax.

The first kind of fact states information about a particular individual, in the form of classes that the individual belongs to plus properties and values of that individual.
...
The second kind of fact is used to make individual identifiers be the same or pairwise distinct.
[http://www.w3.org/TR/2004/REC-owl-semantics-20040210/syntax.html]

lagOwl0'code.CLASS (=set of instances)

name::
* McsEngl.lagOwl0'code.CLASS (=set of instances)@cptIt,
* McsEngl.class-owl@cptIt562,
* McsEngl.lagOwl0'class@cptIt,

lagOwl0'class'DEFINITION:
* Classes provide an abstraction mechanism for grouping resources with similar characteristics. Like RDF classes, every OWL class is associated with a set of individuals#ql:owl'individual#, called the class extension.
[http://www.w3.org/TR/2004/REC-owl-ref-20040210/]
===
Classes
A class is a collection of objects. It corresponds to a description logic (DL) concept. A class may contain individuals, instances of the class. A class may have any number of instances. An instance may belong to none, one or more classes.

A class may be a subclass of another, inheriting characteristics from its parent superclass. This corresponds to logical subsumption and DL concept inclusion notated .

All classes are subclasses of owl:Thing (DL top notated ), the root class.

All classes are subclassed by owl:Nothing (DL bottom notated ), the empty class. No instances are members of owl:Nothing. Modelers use owl:Thing and owl:Nothing to assert facts about all or no instances.[39]

[edit]Example
For example, Employee could be the subclass of class owl:Thing while Dealer, Manager, and Labourer all subclass of Employee.
[http://en.wikipedia.org/wiki/Web_Ontology_Language]

lagOwl0'class'EXAMPLE:
<owl:Class rdf:ID="Winery"/>
<owl:Class rdf:ID="Region"/>
<owl:Class rdf:ID="ConsumableThing"/>

<owl:Class rdf:ID="PotableLiquid">
<rdfs:subClassOf rdf:resource="#ConsumableThing" />
...
</owl:Class>

<owl:Class rdf:ID="Wine">
<rdfs:subClassOf rdf:resource="&food;PotableLiquid"/>
<rdfs:label xml:lang="en">wine</rdfs:label>
<rdfs:label xml:lang="fr">vin</rdfs:label>
...
</owl:Class>

lagOwl0'class'NAME:
The syntax rdf:ID="Region" is used to introduce a name, as part of its definition. This is the rdf:ID attribute ([RDF], 7.2.22) that is like the familiar ID attribute defined by XML. Within this document, the Region class can now be referred to using#Region, e.g. rdf:resource="#Region". Other ontologies may reference this name using its complete form, "http://www.w3.org/TR/2004/REC-owl-guide-20040210/wine#Region".
[http://www.w3.org/TR/2004/REC-owl-guide-20040210/]

lagOwl0'class'EXTENSION:
Like RDF classes, every OWL class is associated with a set of individuals, called the class extension. The individuals in the class extension are called the instances of the class. A class has an intensional meaning (the underlying concept) which is related but not equal to its class extension. Thus, two classes may have the same class extension, but still be different classes.
[http://www.w3.org/TR/2004/REC-owl-ref-20040210/#Class]

Sometimes we want to emphasize the distinction between a class as an object and a class as a set containing elements. We call the set of individuals that are members of a class the extension of the class.
[http://www.w3.org/TR/2004/REC-owl-guide-20040210/]

lagOwl0'class'INTENSIONAL_MEANING:
A class has an intensional meaning (the underlying concept) which is related but not equal to its class extension. Thus, two classes may have the same class extension, but still be different classes.
[http://www.w3.org/TR/2004/REC-owl-ref-20040210/#Class]

lagOwl0'class'INSTANCE:
The individuals in the class extension are called the instances of the class.
[http://www.w3.org/TR/2004/REC-owl-ref-20040210/#Class]

lagOwl0'class'DESCRIPTION:
OWL classes are described through "class descriptions", which can be combined into "class axioms".
...
A class description is the term used in this document (and in the OWL Semantics and Abstract Syntax) for the basic building blocks of class axioms (informally called class definitions in the Overview and Guide documents).
...
OWL distinguishes six types of class descriptions:
1. a class identifier (a URI reference)
2. an exhaustive enumeration of individuals that together form the instances of a class
3. a property restriction
4. the intersection of two or more class descriptions
5. the union of two or more class descriptions
6. the complement of a class description
The first type is special in the sense that it describes a class through a class name (syntactically represented as a URI reference). The other five types of class descriptions describe an anonymous class by placing constraints on the class extension.
[http://www.w3.org/TR/2004/REC-owl-ref-20040210/#Class]

lagOwl0'class'Doing

name::
* McsEngl.lagOwl0'class'Doing@cptIt,

Operators
Languages in the OWL family support various operations on classes such as union, intersection and complement. They also allow class enumeration, cardinality, and disjointness.
[http://en.wikipedia.org/wiki/Web_Ontology_Language]

lagOwl0'class.THING

name::
* McsEngl.lagOwl0'class.THING@cptIt,

Every individual in the OWL world is a member of the class owl:Thing. Thus each user-defined class is implicitly a subclass of owl:Thing.
[http://www.w3.org/TR/2004/REC-owl-guide-20040210/]

lagOwl0'class.NOTHING

name::
* McsEngl.lagOwl0'class.NOTHING@cptIt,

OWL also defines the empty class, owl:Nothing.
[http://www.w3.org/TR/2004/REC-owl-guide-20040210/]

lagOwl0'code.INSTANCE

name::
* McsEngl.lagOwl0'code.INSTANCE@cptIt,
* McsEngl.individual-owl@cptIt562,
* McsEngl.instance-owl@cptIt562,
* McsEngl.lagOwl0'instance@cptIt,

lagOwl0'indifidual.DEFINITION:
An instance is an object. It corresponds to a description logic individual.
[http://en.wikipedia.org/wiki/Web_Ontology_Language]
===
Every individual in the OWL world is a member of the class owl:Thing.
[http://www.w3.org/TR/2004/REC-owl-guide-20040210/]

lagOwl0'individual.EXAMPLE:
============= RDF/XML_FORMAT ==============
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE rdf:RDF [
<!ENTITY SUMO "http://reliant.teknowledge.com/DAML/SUMO.owl#">
<!ENTITY owl "http://www.w3.org/2002/07/owl#">
<!ENTITY rdf "http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<!ENTITY rdfs "http://www.w3.org/2000/01/rdf-schema#">
<!ENTITY xsd "http://www.w3.org/2001/XMLSchema#">
]>
<rdf:RDF xml:base="http://reliant.teknowledge.com/DAML/SUMO.owl"
xmlns:SUMO="&SUMO;"
xmlns:owl="&owl;"
xmlns:rdf="&rdf;"
xmlns:rdfs="&rdfs;">
<SUMO:PrimaryColor rdf:about="#Blue"
rdfs:comment="The Attribute of being blue in color."/>
<owl:Class rdf:about="#PrimaryColor"/>
<owl:AnnotationProperty rdf:about="&rdfs;comment"/>
</rdf:RDF>
============= CONCISE_FORMAT =========
OWL-Individual: SUMO:Blue
Annotations: rdfs:comment : The Attribute of being blue in color.
Instance of: SUMO:PrimaryColor
============= ABSTRACT_SYNTAX =========
Ontology( <http://reliant.teknowledge.com/DAML/SUMO.owl>
Individual(SUMO:Blue
annotation(rdfs:comment "The Attribute of being blue in color.")
type(SUMO:PrimaryColor)
)
)
============= TURTLE_FORMAT ============
@prefix SUMO: <http://reliant.teknowledge.com/DAML/SUMO.owl#> . @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
SUMO:Blue
          a     SUMO:PrimaryColor;
     rdfs:comment     "The Attribute of being blue in color." .

lagOwl0'code.PROPERTY (=binary relation)

name::
* McsEngl.lagOwl0'code.PROPERTY (=binary relation)@cptIt,
* McsEngl.lagOwl0'property@cptIt,
* McsEngl.property-owl-562@cptIt,

lagOwl0'property'DEFINITION:
A property is a binary relation.
...
Properties let us assert general facts about the members of classes and specific facts about individuals.
[http://www.w3.org/TR/2004/REC-owl-guide-20040210/]
===
Properties
A property is a directed binary relation that specifies class characteristics. It corresponds to a description logic role. They are attributes of instances and sometimes act as data values or link to other instances. Properties may possess logical capabilities such as being transitive, symmetric, inverse and functional. Properties may also have domains and ranges.

[edit]Datatype properties
Datatype properties are relations between instances of classes and RDF literals or XML schema datatypes. For example, modelName (String datatype) is the property of Manufacturer class. They are formulated using owl:DatatypeProperty type.

[edit]Object properties
Object properties are relations between instances of two classes. For example, ownedBy may be an object type property of the Vehicle class and may have a range which is the class Person. They are formulated using owl:ObjectProperty.
[http://en.wikipedia.org/wiki/Web_Ontology_Language]

lagOwl0'property'EXAMPLE:
<owl:ObjectProperty rdf:ID="madeFromGrape">
<rdfs:domain rdf:resource="#Wine"/>
<rdfs:range rdf:resource="#WineGrape"/>
</owl:ObjectProperty>

<owl:ObjectProperty rdf:ID="course">
<rdfs:domain rdf:resource="#Meal" />
<rdfs:range rdf:resource="#MealCourse" />
</owl:ObjectProperty>

lagOwl0'property'INSTANCE:
Instances of properties are not single elements, but subject-object pairs of property statements.
[http://www.w3.org/TR/2004/REC-owl-ref-20040210/]

lagOwl0'property'SPESIFEPTO:
Two types of properties are distinguished:
* datatype properties, relations between
- instances of classes and
- RDF literals and XML Schema datatypes
* object properties, relations between instances of two classes. Note that the name object property is not intended to reflect a connection with the RDF term rdf:object ([RDF], 5.3.4).
[http://www.w3.org/TR/2004/REC-owl-guide-20040210/]

Properties relate individuals to other information, and are divided into four disjoint groups, data-valued properties, individual-valued properties, annotation properties, and ontology properties. Data-valued properties relate individuals to data values. Individual-valued properties relate individuals to other individuals. Annotation properties are used to place annotations on individuals, class names, property names, and ontology names. Ontology properties relate ontologies to other ontologies, in particular being used for importing information from other ontologies. Individual identifiers are used to refer to resources, and data literals are used to refer to data values.
[http://www.w3.org/TR/2004/REC-owl-semantics-20040210/syntax.html]

lagOwl0'property.FUNCTIONAL:

name::
* McsEngl.functional'property'in'owl-562@cptIt,

_DESCRIPTION:
A functional property is a property that can have only one (unique) value y for each instance x, i.e. there cannot be two distinct values y1 and y2 such that the pairs (x,y1) and (x,y2) are both instances of this property.
[http://www.w3.org/TR/2004/REC-owl-ref-20040210/]

<owl:ObjectProperty rdf:ID="husband">
   <rdf:type rdf:resource="&owl;FunctionalProperty" />
   <rdfs:domain rdf:resource="#Woman" />
<rdfs:range rdf:resource="#Man" />
</owl:ObjectProperty>
As always, there are syntactic variations. The example above is semantically equivalent to the one below:
<owl:ObjectProperty rdf:ID="husband">
     <rdfs:domain rdf:resource="#Woman" />
     <rdfs:range rdf:resource="#Man" />
</owl:ObjectProperty>
<owl:FunctionalProperty rdf:about="#husband" />

lagOwl0'property.TRANSITIVE:
When one defines a property P to be a transitive property, this means that if a pair (x,y) is an instance of P, and the pair (y,z) is also instance of P, then we can infer the the pair (x,z) is also an instance of P.
[http://www.w3.org/TR/2004/REC-owl-ref-20040210/]

================= atomic ================================

lagOwl0'property.oneOf:
A class description of the "enumeration" kind is defined with the owl:oneOf property. The value of this built-in OWL property must be a list of individuals that are the instances of the class. This enables a class to be described by exhaustively enumerating its instances. The class extension of a class described with owl:oneOf contains exactly the enumerated individuals, no more, no less. The list of individuals is typically represented with the help of the RDF construct rdf:parseType="Collection", which provides a convenient shorthand for writing down a set of list elements. For example, the following RDF/XML syntax defines a class of all continents:
<owl:Class>
<owl:oneOf rdf:parseType="Collection">
<owl:Thing rdf:about="#Eurasia"/>
<owl:Thing rdf:about="#Africa"/>
<owl:Thing rdf:about="#NorthAmerica"/>
<owl:Thing rdf:about="#SouthAmerica"/>
<owl:Thing rdf:about="#Australia"/>
<owl:Thing rdf:about="#Antarctica"/>
</owl:oneOf>
</owl:Class>
[http://www.w3.org/TR/2004/REC-owl-ref-20040210/]

A\cap B = \varnothing.\,

lagOwl0'CollectionKnlagOwl0edge

name::
* McsEngl.lagOwl0'CollectionKnlagOwl0edge@cptIt,
* McsEngl.ontology-owl@cptIt562,
* McsEngl.owl-ontology@cptIt562,
* McsEngl.vocabulary-owl@cptIt562,

_GENERIC:
* domainOut,

_DESCRIPTION:
Formally, an OWLDL vocabulary VO = (Vcls, Vop, Vdp, Vap, Vind, VD, Vlit) is a 7-tuple where Vcls is the set of URIs denoting class names, Vop is the set of URIs denoting object properties, Vdp is the set of URIs denoting datatype properties, Vap is the set of URIs denoting annotation properties, Vind is the set of URIs denoting individuals, VD is the set of URIs denoting datatype names, and Vlit is the set of well-formed RDF literals. In OWL-DL, Vuri is the union of Vcls, Vop, Vdp, Vap, Vind, and VDand does not include any of builtin URIs from RDF, RDF-S, or OWL namespace.
[http://pellet.owldl.com/papers/sirin07sparqldl.pdf]

lagOwl0'Header-of-ontology

name::
* McsEngl.lagOwl0'Header-of-ontology@cptIt,

A document describing an ontology typically contains information about the ontology itself. An ontology is a resource, so it may be described using properties from the OWL and other namespaces, e.g.:

<owl:Ontology rdf:about="">
<owl:versionInfo> ... </owl:versionInfo>
<rdfs:comment>...</rdfs:comment>
<owl:imports rdf:resource="..."/>
</owl:Ontology>

This is commonly called the ontology header and is typically found near the beginning of the RDF/XML document.
[http://www.w3.org/TR/2004/REC-owl-ref-20040210/]

lagOwl0'DomainIn ::this.part

name::
* McsEngl.lagOwl0'DomainIn ::this.part@cptIt,

_SPECIFIC:
* axiom#ql:owl'axiom#,
* class#ql:owl'class#,
* property#ql:owl'property#,
* instance#ql:owl'instance#

lagOwl0'Datatype

name::
* McsEngl.lagOwl0'Datatype@cptIt,

OWL uses most of the built-in XML Schema datatypes. References to these datatypes are by means of the URI reference for the datatype, http://www.w3.org/2001/XMLSchema. The following datatypes are recommended for use with OWL:
xsd_string  xsd:normalizedString  xsd:boolean
xsd_decimal  xsd:float  xsd:double
xsd_integer  xsd:nonNegativeInteger  xsd:positiveInteger
xsd_nonPositiveInteger  xsd:negativeInteger
xsd_long  xsd:int  xsd:short  xsd:byte
xsd_unsignedLong  xsd:unsignedInt  xsd:unsignedShort  xsd_unsignedByte
xsd_hexBinary  xsd:base64Binary
xsd_dateTime  xsd:time  xsd:date  xsd:gYearMonth
xsd_gYear  xsd:gMonthDay  xsd:gDay  xsd:gMonth
xsd_anyURI  xsd:token  xsd:language
xsd_NMTOKEN  xsd:Name  xsd:NCName
The above datatypes, plus rdfs:Literal, form the built-in OWL datatypes. All OWL reasoners are required to support the xsd:integer and xsd:string datatypes.
[http://www.w3.org/TR/2004/REC-owl-guide-20040210/]

_SPECIFIC:
* annotation
* axiom
* class,
* individual,
* property,

lagOwl0'Semantics

name::
* McsEngl.lagOwl0'Semantics@cptIt,

here with "semantics" they mean the determination of what a "logero" means.
In logic with "semantics" some mean the truth/false of sentences.
[kas-nik, 2007-09-06]

The OWL semantics are defined in OWL Web Ontology Language Semantics and Abstract Syntax.
[http://www.w3.org/TR/2004/REC-owl-guide-20040210]

lagOwl0'DomainOut ::this.part

name::
* McsEngl.lagOwl0'DomainOut ::this.part@cptIt,

_SPECIFIC:
* ontology#ql:owl'collectionknowledge#

lagOwl0'Evaluation

name::
* McsEngl.lagOwl0'Evaluation@cptIt,

Limitations
Relationships are directed
No direct language support for n-ary relationships. For example modelers may wish to describe the qualities of a relation, to relate more than 2 individuals or to relate an individual to a list. This cannot be done within OWL. They may need to adopt a pattern instead which encodes the meaning outside the formal semantics.[46]
[http://en.wikipedia.org/wiki/Web_Ontology_Language]

lagOwl0'Open-world-assumption

name::
* McsEngl.lagOwl0'Open-world-assumption@cptIt,
* McsEngl.open-world-assumption-owl@cptIt562,

In addition, OWL makes an open world assumption. That is, descriptions of resources are not confined to a single file or scope. While class C1 may be defined originally in ontology O1, it can be extended in other ontologies. The consequences of these additional propositions about C1 are monotonic. New information cannot retract previous information. New information can be contradictory, but facts and entailments can only be added, never deleted.
The possibility of such contradictions is something the designer of an ontology needs to take into consideration. It is expected that tool support will help detect such cases.
[http://www.w3.org/TR/2004/REC-owl-guide-20040210/]

lagOwl0'Order-of-componets

name::
* McsEngl.lagOwl0'Order-of-componets@cptIt,

NOTE: OWL does not impose any order on OWL components. Humans writing ontologies are likely to use some sort of ordering, for example putting the ontology header in the beginning, but this has no impact on the meaning. Tools should not assume any order.
[http://www.w3.org/TR/2004/REC-owl-ref-20040210/]

lagOwl0'Program

name::
* McsEngl.lagOwl0'Program@cptIt,
* McsEngl.owl-implementation@cptIt,
* McsEngl.system'of'owl@cptIt562,
* McsEngl.tool'of'owl@cptIt562,

_DEFINITION:
One advantage of OWL ontologies will be the availability of tools that can reason about them. Tools will provide generic support that is not specific to the particular subject domain, which would be the case if one were to build a system to reason about a specific industry-standard XML schema.
[http://www.w3.org/TR/2004/REC-owl-guide-20040210/]

lagOwl0'Viewer

name::
* McsEngl.lagOwl0'Viewer@cptIt,

lagOwl0'Editor

name::
* McsEngl.lagOwl0'Editor@cptIt,

lagOwl0'Reasoner

name::
* McsEngl.lagOwl0'Reasoner@cptIt,
* McsEngl.lagOwl0'inference@cptIt562,
* McsEngl.lagOwl0'inference'engine@cptIt562i,
* McsEngl.lagOwl0'Semantic'Reasoner@cptIt562i,

_DEFINITION:
The underlying semantics provides support for inferences over this data that may yield unexpected results. In particular, the ability to express equivalences using owl:sameAs can be used to state that seemingly different individuals are actually the same. Owl:InverseFunctionalProperty can also be used to link individuals together. For example, if a property such as "SocialSecurityNumber" is an owl:InverseFunctionalProperty, then two separate individuals could be inferred to be identical based on having the same value of that property. When individuals are determined to be the same by such means, information about them from different sources can be merged.
[http://www.w3.org/TR/2004/REC-owl-guide-20040210]

_GENERIC
* REASONER#cptIt485.2: attSpe#

_SPECIFIC:
Pellet is an open source, OWL DL reasoner in Java, originally developed at the University of Maryland’s Mindswap Lab. Pellet is now commercially supported by Clark & Parsia LLC.
http://pellet.owldl.com//

lagOwl0'CLASSIFICATION

name::
* McsEngl.lagOwl0'CLASSIFICATION@cptIt,

Classification, which computes the subclass relations between every named class to create the complete class hierarchy. The class hierarchy can be used to answer queries such as getting all or only the direct subclasses of a class.
[http://pellet.owldl.com/papers/sirin05pellet.pdf]

lagOwl0'CONSISTENCY-CHECKER

name::
* McsEngl.lagOwl0'CONSISTENCY-CHECKER@cptIt,

The OWL Test Cases document [1] defines an OWL consistency checker as follows:
An OWL consistency checker takes a document as input, and returns one word being Consistent, Inconsistent, or Unknown.
...
Consistency checking, which ensures that an ontology does not contain any contradictory facts. The OWL Abstract Syntax & Semantics document [2] provides a formal definition of ontology consistency that Pellet uses. In DL terminology (see Figure 1), this is the operation to check the consistency of an ABox with respect to a TBox.
[http://pellet.owldl.com/papers/sirin05pellet.pdf]

lagOwl0'REALIZATION

name::
* McsEngl.lagOwl0'REALIZATION@cptIt,

Realization, which finds the most specific classes that an individual belongs to; or in other words, computes the direct types for each of the individuals. Realization can only be performed after classification since direct types are defined with respect to a class hierarchy. Using the classification hierarchy, it is also possible to get all the types for that individual.
[http://pellet.owldl.com/papers/sirin05pellet.pdf]

lagOwl0'BOSSAM

name::
* McsEngl.lagOwl0'BOSSAM@cptIt,
* McsEngl.bossam@cptIt562i,

Bossam is an inference engine ( a Semantic Reasoner) for the semantic web. It is basically a RETE-based rule engine with native supports for reasoning over OWL ontologies, SWRL ontologies, and RuleML rules.

Additionally, Bossam includes saveral expressivity features including: 1) URI references as symbols, 2) 2nd-order logic syntax, 3) disjunctions in the antecedent and conjunctions in the consequent (both via Lloyd-Topor transformation), 4) URI-based java method attachment, 5) support for both negation-as-failure and classical negation.

Bossam loads, performs reasoning over, and answers to the queries over a knowledge set, which can include any combination of the following document types.
1. RDF(S) documents (in RDF/XML or in N3)
2. OWL documents (in RDF/XML or in N3)
3. Bossam rule documents
4. SWRL(+OWL) documents (in OWLX or in RDF/XML)
Bossam can call Java objects from the antecedent or consequent of rules through the URI-based java method attachment. It's possible to easily mix Java objects into the combination of rules and ontologies.

External links
* Bossam Rule/OWL Reasoner Homepage (http://bossam.wordpress.com)
[http://en.wikipedia.org/wiki/Bossam]

lagOwl0'Swoop

name::
* McsEngl.lagOwl0'Swoop@cptIt,

_ADDRESS.WPG:
* http://code.google.com/p/swoop//
* http://www.mindswap.org/2004/SWOOP//

lagOwl0'Swoogle

name::
* McsEngl.lagOwl0'Swoogle@cptIt,

_DESCRIPTION:
Swoogle is a search engine for Semantic Web ontologies, documents, terms and data published on the Web. Swoogle employs a system of crawlers to discover RDF documents and HTML documents with embedded RDF content. Swoogle reasons about these documents and their constituent parts (e.g., terms and triples) and records and indexes meaningful metadata about them in its database.

Swoogle provides services to human users through a browser interface and to software agents via RESTful web services. Several techniques are used to rank query results inspired by the PageRank algorithm developed at Google but adapted to the semantics and use patterns found in semantic web documents.

Swoogle was developed at and is hosted by the University of Maryland, Baltimore County (UMBC) with funding from the US DARPA and National Science Foundation agencies. It is PhD thesis work of Li Ding advised by Professor Tim Finin
[http://en.wikipedia.org/wiki/Swoogle]

lagOwl0'Query-language

name::
* McsEngl.lagOwl0'Query-language@cptIt,

SPARQL-DL

name::
* McsEngl.sparql'dl@cptIt562,

In this paper, we have presented SPARQL-DL as a query language for OWL-DL ontologies. SPARQL-DL is a step between RDF QLs that are too unstructured w.r.t. OWL-DL and DL QLs which are not as expressive. We believe SPARQL-DL would help interoperability on the Semantic Web as it bridges this gap. As part of future work, we intend to investigate other possible extensions to SPARQL-DL including (but not limited to) aggregation operators, epistemic operators (and negation as failure), and regular expressions on OWL properties.
[http://pellet.owldl.com/papers/sirin07sparqldl.pdf]

lagOwl0'Specification

name::
* McsEngl.lagOwl0'Specification@cptIt,

Overview
W3C Recommendation 10 February 2004
http://www.w3.org/TR/2004/REC-owl-features-20040210//
gives a simple introduction to OWL by providing a language feature listing with very brief feature descriptions;

Guide:
W3C Recommendation 10 February 2004
http://www.w3.org/TR/2004/REC-owl-guide-20040210//
demonstrates the use of the OWL language by providing an extended example. It also provides a glossary of the terminology used in these documents;

Reference:
W3C Recommendation 10 February 2004
http://www.w3.org/TR/2004/REC-owl-ref-20040210//
gives a systematic and compact (but still informally stated) description of all the modelling primitives of OWL;

Semantics and Abstract Syntax: (normative)
W3C Recommendation 10 February 2004
http://www.w3.org/TR/2004/REC-owl-semantics-20040210//
is the final and formally stated normative definition of the language;

lagOwl0'Notation (syntax)

name::
* McsEngl.lagOwl0'Notation (syntax)@cptIt,
* McsEngl.syntax-owl@cptIt,

lagOwl0'notation.Manchester

name::
* McsEngl.lagOwl0'notation.Manchester@cptIt,

Manchester Syntax

Ontology: <http://example.com/tea.owl>
Class: Tea
[http://en.wikipedia.org/wiki/Web_Ontology_Language]

lagOwl0'notation.OWL2-Functional

name::
* McsEngl.lagOwl0'notation.OWL2-Functional@cptIt,

OWL2 Functional Syntax

Ontology(<http://example.com/tea.owl>
Declaration( Class( :Tea ) )
)
[http://en.wikipedia.org/wiki/Web_Ontology_Language]

lagOwl0'notation.OWL2-XML

name::
* McsEngl.lagOwl0'notation.OWL2-XML@cptIt,

OWL2 XML Syntax

<Ontology ontologyIRI="http://example.com/tea.owl" ...>
<Prefix name="owl" IRI="http://www.w3.org/2002/07/owl#"/>
<Declaration>
<Class IRI="Tea"/>
</Declaration>
</Ontology>
[http://en.wikipedia.org/wiki/Web_Ontology_Language]

lagOwl0'notation.RDF-Turtle

name::
* McsEngl.lagOwl0'notation.RDF-Turtle@cptIt,

RDF/Turtle

<http://example.com/tea.owl> rdf:type owl:Ontology .
:Tea rdf:type owl:Class .
[http://en.wikipedia.org/wiki/Web_Ontology_Language]

lagOwl0'notation.RDF-XML

name::
* McsEngl.lagOwl0'notation.RDF-XML@cptIt,

RDF/XML syntax

<rdf:RDF ...>
<owl:Ontology rdf:about=""/>
<owl:Class rdf:about="#Tea"/>
</rdf:RDF>
[http://en.wikipedia.org/wiki/Web_Ontology_Language]

lagOwl0'Element

name::
* McsEngl.lagOwl0'Element@cptIt,
* McsEngl.element-owl@cptIt,

JENEREPTO:
* XML_ELEMENT#ql:xml'element###

lagOwl0'element.Ontology

name::
* McsEngl.lagOwl0'element.Ontology@cptIt,
* McsEngl.ontology'element'in'owl@cptIt562,

_DEFINITION:
Once namespaces are established we normally include a collection of assertions about the ontology grouped under an owl:Ontology tag. These tags support such critical housekeeping tasks as comments, version control and inclusion of other ontologies.
...
The owl:Ontology element is a place to collect much of the OWL meta-data for the document.
...
Thus, in OWL the term ontology has been broadened to include instance data.
[http://www.w3.org/TR/2004/REC-owl-guide-20040210/]


EXAMPLE:
<owl:Ontology rdf:about="">
<rdfs:comment>An example OWL ontology</rdfs:comment>
<owl:priorVersion rdf:resource="http://www.w3.org/TR/2003/PR-owl-guide-20031215/wine"/>
<owl:imports rdf:resource="http://www.w3.org/TR/2004/REC-owl-guide-20040210/food"/>
<rdfs:label>Wine Ontology</rdfs:label>
...

lagOwl0'Usage

name::
* McsEngl.lagOwl0'Usage@cptIt,

OWL is intended to be used when the information contained in documents needs to be processed by applications, as opposed to situations where the content only needs to be presented to humans. OWL can be used to explicitly represent the meaning of terms in vocabularies and the relationships between those terms.
[http://www.w3.org/TR/2004/REC-owl-features-20040210/]

lagOwl0'Resource

name::
* McsEngl.lagOwl0'Resource@cptIt,

OWL Use Cases and Requirements:
contains a set of use cases for a web ontology language and compiles a set of requirements for OWL.

The OWL Language is described by a set of documents, each fulfilling a different purpose, and catering to a different audience. The following provides a brief roadmap for navigating through this set of documents:
* This OWL Overview gives a simple introduction to OWL by providing a language feature listing with very brief feature descriptions;
* The OWL Guide demonstrates the use of the OWL language by providing an extended example. It also provides a glossary of the terminology used in these documents;
* The OWL Reference gives a systematic and compact (but still informally stated) description of all the modelling primitives of OWL;
* The OWL Semantics and Abstract Syntax document is the final and formally stated normative definition of the language;
* The OWL Web Ontology Language Test Cases document contains a large set of test cases for the language;
* The OWL Use Cases and Requirements document contains a set of use cases for a web ontology language and compiles a set of requirements for OWL.
The suggested reading order of the first four documents is as given since they have been listed in increasing degree of technical content. The last two documents complete the documentation set.
[http://www.w3.org/TR/2004/REC-owl-features-20040210/]

lagOwl0'EVOLUTION#cptCore546.171#

name::
* McsEngl.lagOwl0'EVOLUTION@cptIt,

{time.2009}:
OWL 2 became a W3C recommendation in October 2009. OWL 2 introduces profiles to improve scalability in typical applications.[10]
[http://en.wikipedia.org/wiki/Web_Ontology_Language]

{time.2004}:
* 2004-05-31:
the working group was disbanded on 2004-05-31.[4]
[http://en.wikipedia.org/wiki/Web_Ontology_Language]
* 2004-02-10: w3c_recommendations:
OWL became a formal W3C recommendation on February 10, 2004 and the working group was disbanded on May 31, 2004.[18]
[http://en.wikipedia.org/wiki/Web_Ontology_Language]
Overview:
http://www.w3.org/TR/2004/REC-owl-features-20040210//
gives a simple introduction to OWL by providing a language feature listing with very brief feature descriptions;
Guide:
http://www.w3.org/TR/2004/REC-owl-guide-20040210//
demonstrates the use of the OWL language by providing an extended example. It also provides a glossary of the terminology used in these documents;
Reference:
http://www.w3.org/TR/2004/REC-owl-ref-20040210//
gives a systematic and compact (but still informally stated) description of all the modelling primitives of OWL;
Semantics and Abstract Syntax: (normative)
http://www.w3.org/TR/2004/REC-owl-semantics-20040210//
is the final and formally stated normative definition of the language;

{time.2001-11-01
The World Wide Web Consortium created the "Web Ontology Working Group" which began work on 2001-11-01 chaired by James Hendler and Guus Schreiber.
[http://en.wikipedia.org/wiki/Web_Ontology_Language]

{time.1990s
A number of research efforts during the mid to late 1990s explored how the idea of knowledge representation (KR) from AI could be made useful on the World Wide Web. These included languages based on HTML (called SHOE), XML (called XOL, later OIL), and various frame-based KR languages and knowledge acquisition approaches.
[http://en.wikipedia.org/wiki/Web_Ontology_Language]

lagOwl0'GENERIC

_GENERIC:
* method-knowledge-ontology#cptItsoft511#
* w3c_RECOMMENDATION#ql:w3c'recommendation-*###
* XML_BASED_LANGUAGE#cptIt439#
* SEMANTIC_MARKUP_LANGUAGE

OWL is based on earlier languages OIL and DAML+OIL, and is now a W3C recommendation.
[http://en.wikipedia.org/wiki/Web_Ontology_Language]

SPECIFIC

_SPECIFIC:#ql:_GENERIC cptIt562#

OWL has three increasingly-expressive sublanguages: OWL Lite, OWL DL, and OWL Full.
[http://www.w3.org/TR/2004/REC-owl-features-20040210/]

OWL-LITE

name::
* McsEngl.owl-lite@cptIt562,

_DEFINITION:
OWL Lite supports those users primarily needing a classification hierarchy and simple constraints. For example, while it supports cardinality constraints, it only permits cardinality values of 0 or 1. It should be simpler to provide tool support for OWL Lite than its more expressive relatives, and OWL Lite provides a quick migration path for thesauri and other taxonomies. Owl Lite also has a lower formal complexity than OWL DL, see the section on OWL Lite in the OWL Reference for further details.
[http://www.w3.org/TR/2004/REC-owl-features-20040210/]

OWL-DL

name::
* McsEngl.owl-dl@cptIt562,
* McsEngl.SHOIN'D@cptIt768,
* McsEngl.OWL-DL@cptIt, i.e. the Description Logic (DL) SHOIN(D)

_DEFINITION:
OWL DL supports those users who want the maximum expressiveness while retaining computational completeness (all conclusions are guaranteed to be computable) and decidability (all computations will finish in finite time). OWL DL includes all OWL language constructs, but they can be used only under certain restrictions (for example, while a class may be a subclass of many classes, a class cannot be an instance of another class). OWL DL is so named due to its correspondence with description logics, a field of research that has studied the logics that form the formal foundation of OWL.
[http://www.w3.org/TR/2004/REC-owl-features-20040210/]

JENEREPTO:
* DESCRIPTION_LOGIC#cptIt560#

IMPLEMENTATION

Pellet is an open source, OWL DL reasoner in Java, originally developed at the University of Maryland’s Mindswap Lab. Pellet is now commercially supported by Clark & Parsia LLC.
http://pellet.owldl.com//

OWL-FULL

name::
* McsEngl.owl-full@cptIt562,

_DEFINITION:
OWL Full is meant for users who want maximum expressiveness and the syntactic freedom of RDF with no computational guarantees. For example, in OWL Full a class can be treated simultaneously as a collection of individuals and as an individual in its own right. OWL Full allows an ontology to augment the meaning of the pre-defined (RDF or OWL) vocabulary. It is unlikely that any reasoning software will be able to support complete reasoning for every feature of OWL Full.
[http://www.w3.org/TR/2004/REC-owl-features-20040210/]

OWL-1.1

name::
* McsEngl.OWL-1.1@cptIt,
* McsEngl.owl11@cptIt562,
* McsEngl.owl1.1@cptIt562,
* McsEngl.SROIQ'D@cptIt562,

=== _NOTES: OWL_1.1 effort 1 , i.e. the DL SROIQ(D).
[http://pellet.owldl.com/papers/sirin07pellet.pdf]

owl11_DEFINITION:
* An extended version of OWL, (sometimes called OWL 1.1, but with no official status) has been proposed which includes increased expressiveness, a simpler data model and serialization, and a collection of well-defined sub-languages each with known computational properties.
[http://en.wikipedia.org/wiki/Web_Ontology_Language] 2007-12-06

At the First OWL: Experiences and Directions Workshop (held at Galway, Ireland, on November 11-12 2005), the participants identified several restrictions of OWL that are problematic in many applications, and that have been rendered unnecessary by recent theoretical advances in logic-based Knowledge Representation. As a result of the workshop, an extension of OWL-DL was proposed. This extension, called OWL 1.1, is grounded on the above mentioned theoretical advances, has a well defined model-theoretic semantics, and is motivated by application requirements. The builders of the major Semantic Web reasoners, namely. RACER, FaCT++, Pellet and Cerebra expressed a committment to support OWL 1.1 in the near future.
[http://www.webont.org/owl/1.1/]

RELATION TO OWL_DL:
OWL 1.1 adds the following language constructs to OWL DL:
* qualified cardinality restrictions
* complex subproperty axioms (between a property and a property chain)
* local reflexivity restrictions
* reflexive, irreflexive, symmetric, and anti-symmetric properties
* disjoint properties
* user-defined datatypes
[http://pellet.owldl.com/features]

OWL 1.1 extends OWL-DL with qualified cardinality restrictions, complex subproperty axioms (between a property and a property chain), local reflexivity restrictions, reflexive, irreflexive, symmetric and anti-symmetric properties, disjoint properties.
[http://pellet.owldl.com/papers/sirin07pellet.pdf]

DEFINITION

The Resource Description Framework (RDF) is a general-purpose language for representing information in the Web.
[http://www.w3.org/TR/2004/REC-rdf-schema-20040210/]

The Resource Description Framework (RDF) is a family of World Wide Web Consortium (W3C) specifications originally designed as a metadata data model. It has come to be used as a general method for conceptual description or modeling of information that is implemented in web resources, using a variety of syntax formats.
[http://en.wikipedia.org/wiki/Resource_Description_Framework]

The Resource Description Framework (RDF) is a W3C standard for describing Web resources, such as the title, author, modification date, content, and copyright information of a Web page.
[http://www.w3schools.com/rdf/rdf_intro.asp]

The Resource Description Framework (RDF) is a standard (technically a W3C Recommendation) for describing resources. What is a resource? That is rather a deep question and the precise definition is still the subject of debate. For our purposes we can think of it as anything we can identify. You are a resource, as is your home page, this tutorial, the number one and the great white whale in Moby Dick.
[http://jena.sourceforge.net/tutorial/RDF_API/index.html]

* RDF is an assertional logic, in which each triple expresses a simple proposition. This imposes a fairly strict monotonic discipline on the language, so that it cannot express closed-world assumptions, local default preferences, and several other commonly used non-monotonic constructs.
[http://www.w3.org/TR/2004/REC-rdf-mt-20040210/]

* RDF is a proposed standard for defining data about data. Used in conjunction with the XHTML specification, for example, or with HTML pages, RDF could be used to describe the content of the pages. For example, if your browser stored your ID information as FIRSTNAME, LASTNAME, and EMAIL, an RDF description could make it possible to transfer data to an application that wanted NAME and EMAILADDRESS. Just think! Some day you may not need to type your name and address at every web site you visit!
For the latest information on RDF, see http://www.w3.org/TR/PR-rdf-syntax/.
[jaxp tutorial 2.5, 2000jul13]

lagRdf'GENERIC

_GENERIC:
* W3C_RECOMMENDATION#ql:w3c'recommendation###
* XML_BASED_LANGUAGE#cptIt439#
* ONTOLOGY_LANGUAGE#cptIt511#

* RDF along with OWL are Semantic Web specifications.
[http://www.w3.org/RDF/#specs]

RDF is a W3C Recommendation
RDF became a W3C Recommendation 10. February 2004.
[http://www.w3schools.com/rdf/rdf_intro.asp]

lagRdf'WHOLE

_WHOLE:
* OWL#cptIt562#

Note that OWL has been designed for maximal compatibility with RDF and RDF Schema. These XML and RDF formats are part of the OWL standard.
[http://www.w3.org/TR/2004/REC-owl-guide-20040210/]

rdf.SPECIFIC

name::
* McsEngl.rdf.SPECIFIC@cptIt,

_SPECIFIC:#ql:_GENERIC cptIt565#

lagRdf'input

name::
* McsEngl.lagRdf'input@cptIt,
* McsEngl.rdf'UNIVERSE-OF-DISCOURCE@cptIt,

_DESCRIPTION:
Universe (n., also Universe of discourse) The universal classification, or the set of all things that an interpretation considers to exist. In RDF/S, this is identical to the set of resources.
[http://www.w3.org/TR/2004/REC-rdf-mt-20040210/]
===
- RDF is a proposed standard for defining data about data.
[jaxp tutorial 2.5, 2000jul13]
===
RDF can be applied in fields that deal with ad-hoc incoming data, such as CRM, and is already being widely used in social networking and self-publishing software like LiveJournal and TypePad.
[http://www-128.ibm.com/developerworks/java/library/j-jena/]

_SPECIFIC:
* property#ql:rdf'property#,
* resource#ql:rdf'resource#

lagRdf'Assertion

name::
* McsEngl.lagRdf'Assertion@cptIt,

_DESCRIPTION:
One of the most important assertions you are likely to want to make about a thing is what type it belongs to.
[http://www.ontopia.net/topicmaps/materials/tmrdf.html]

lagRdf'Semantics (model-theory)

name::
* McsEngl.lagRdf'Semantics (model-theory)@cptIt,
* McsEngl.model-theory-in-rdf@cptIt565,
* McsEngl.interpretation-theory-in-rdf@cptIt565,
* McsEngl.semantics-in-rdf@cptIt565,
* McsEngl.formal-semantic-theory-in-rdf@cptIt565,
* McsEngl.rdf-formal-semantics@cptIt565,

=== _NOTES: A particular world is called an interpretation, so that model theory might be better called 'interpretation theory'.
[http://www.w3.org/TR/2004/REC-rdf-mt@cptIt20040210/]

The semantics given here restricts itself to a formal notion of meaning which could be characterized as the part that is common to all other accounts of meaning, and can be captured in mechanical inference rules.
[http://www.w3.org/TR/2004/REC-rdf-mt-20040210/]

This document uses a basic technique called model theory for specifying the semantics of a formal language.
[http://www.w3.org/TR/2004/REC-rdf-mt-20040210/]

the "meaning" of an RDF graph must be defined in a very precise manner.
...
However, RDF statements also have a formal meaning which determines, with mathematical precision, the conclusions (or entailments) that machines can draw from a given RDF graph. The RDF Semantics [RDF-SEMANTICS] document defines this formal meaning, using a technique called model theory for specifying the semantics of a formal language. [RDF-SEMANTICS] also defines the semantic extensions to the RDF language represented by RDF Schema, and by individual datatypes. In other words, the RDF model theory provides the formal underpinnings for all RDF concepts. Based on the semantics defined in the model theory, it is simple to translate an RDF graph into a logical expression with essentially the same meaning.
[http://www.w3.org/TR/2004/REC-rdf-primer-20040210/]

NAMES-RESOURCES:
The semantics treats all RDF names as expressions which denote. The things denoted are called 'resources', following [RFC 2396], but no assumptions are made here about the nature of resources; 'resource' is treated here as synonymous with 'entity', i.e. as a generic term for anything in the universe of discourse.
[http://www.w3.org/TR/2004/REC-rdf-mt-20040210/]

MAIN-UTILITY:
The chief utility of a formal semantic theory is not to provide any deep analysis of the nature of the things being described by the language or to suggest any particular processing model, but rather to provide a technical way to determine when inference processes are valid, i.e. when they preserve truth.
[http://www.w3.org/TR/2004/REC-rdf-mt-20040210/]

lagRdf'MEANING'OF'LITERAL

name::
* McsEngl.lagRdf'MEANING'OF'LITERAL@cptIt,

The chief semantic characteristic of literals is that their meaning is largely determined by the form of the string they contain.
[http://www.w3.org/TR/2004/REC-rdf-mt-20040210/]

lagRdf'ResourceRdf

name::
* McsEngl.lagRdf'ResourceRdf@cptIt,

rdf'resource'TermEnglish:
* resource_rdf-565,

_GENERIC:
* domainIn#ql:rdf'domainin#

rdf'resource'DEFINITION:
* RDF defines a resource as anything that is identifiable by a URI-reference#ql:uri_reference_it67#, so using URIrefs allows RDF to describe practically anything, and to state relationships between such things as well.
[http://www.w3.org/TR/2004/REC-rdf-primer-20040210/]

What is a resource? That is rather a deep question and the precise definition is still the subject of debate. For our purposes we can think of it as anything we can identify. You are a resource, as is your home page, this tutorial, the number one and the great white whale in Moby Dick.
[http://jena.sourceforge.net/tutorial/RDF_API/index.html]

rdf'resource'EXAMPLE:
The resource, John Smith, is shown as an elipse and is identified by a Uniform Resource Identifier (URI)1, in this case "http://.../JohnSmith".
1. The identifier of an RDF resource can include a fragment identifier, e.g. http://hostname/rdf/tutorial/#ch-Introduction, so, strictly speaking, an RDF resource is identified by a URI reference.
[http://jena.sourceforge.net/tutorial/RDF_API/index.html]

rdf'resource'REPRESENATION:
The resource, John Smith, is shown as an elipse and is identified by a Uniform Resource Identifier (URI)
[http://jena.sourceforge.net/tutorial/RDF_API/index.html]

lagRdf'resource.Anonymous

name::
* McsEngl.lagRdf'resource.Anonymous@cptIt,

In RDF, a blank node (also called bnode) is a node in an RDF graph representing a resource for which a URI or literal is not given. The resource represented by a blank node is also called an anonymous resource. By RDF standard a blank node can only be used as subject or object in an RDF triple, although in some syntaxes like Notation 3 [1] it is acceptable to use a blank node as a predicate. If a blank node has a node ID (not all blank nodes are labeled in all RDF serializations), it is limited in scope to a serialization of a particular RDF graph, i.e. the node p1 in the subsequent example does not represent the same node as a node named p1 in any other graph.
[http://en.wikipedia.org/wiki/Blank_node]

lagRdf'resource.CLASS

name::
* McsEngl.lagRdf'resource.CLASS@cptIt,
* McsEngl.class-rdf@cptIt565,

rdf'class'DEFINITION:
* Resources may be divided into groups called classes. The members of a class are known as instances of the class. Classes are themselves resources.
[http://www.w3.org/TR/2004/REC-rdf-schema-20040210/]

rdf'class'INSTANCE:
The members of a class are known as instances of the class. Classes are themselves resources.
[http://www.w3.org/TR/2004/REC-rdf-schema-20040210/]

rdf'class'EXTENSION:
RDF distinguishes between a class and the set of its instances. Associated with each class is a set, called the class extension of the class, which is the set of the instances of the class. Two classes may have the same set of instances but be different classes. For example, the tax office may define the class of people living at the same address as the editor of this document. The Post Office may define the class of people whose address has the same zip code as the address of the author. It is possible for these classes to have exactly the same instances, yet to have different properties. Only one of the classes has the property that it was defined by the tax office, and only the other has the property that it was defined by the Post Office.
[http://www.w3.org/TR/2004/REC-rdf-schema-20040210/]

rdfs:Resource (rdfs.Resource):
All things described by RDF are called resources, and are instances of the class rdfs:Resource. This is the class of everything.
All other classes are subclasses of this class.
rdfs:Resource is an instance of rdfs:Class.
[http://www.w3.org/TR/2004/REC-rdf-schema-20040210/]

rdfs:Class (rdfs.Class):
This is the class of resources that are RDF classes. rdfs:Class is an instance of rdfs:Class.
[http://www.w3.org/TR/2004/REC-rdf-schema-20040210/]

rdf:Property (rdf.Property)
rdf:Property is the class of RDF properties. rdf:Property is an instance of rdfs:Class.
[http://www.w3.org/TR/2004/REC-rdf-schema-20040210/]

RDF classes
Class name  comment
rdfs:Resource  The class resource, everything.
rdfs.Literal  The class of literal values, e.g. textual strings and integers.
rdf.XMLLiteral  The class of XML literals values.
rdfs:Class  The class of classes.
rdf:Property  The class of RDF properties.
rdfs.Datatype  The class of RDF datatypes.
rdf.Statement  The class of RDF statements.
rdf.Bag  The class of unordered containers.
rdf.Seq  The class of ordered containers.
rdf.Alt  The class of containers of alternatives.
rdfs.Container  The class of RDF containers.
rdfs.ContainerMembershipProperty  The class of container membership properties, rdf:_1, rdf:_2, ..., all of which are sub-properties of 'member'.
rdf.List  The class of RDF Lists.
[http://www.w3.org/TR/2004/REC-rdf-schema-20040210/]

lagRdf'resource.CONTAINER

name::
* McsEngl.lagRdf'resource.CONTAINER@cptIt,
* McsEngl.container'in'rdf@cptIt565,

_DEFINITION:
A container is a resource that contains things.
[http://www.w3.org/TR/2004/REC-rdf-primer-20040210/]

MEMBER:
The contained things are called members. The members of a container may be resources (including blank nodes) or literals.
[http://www.w3.org/TR/2004/REC-rdf-primer-20040210/]

RDF defines three types of containers:
* rdf:Bag
* rdf:Seq
* rdf:Alt

A Bag (a resource having type rdf:Bag) represents a group of resources or literals, possibly including duplicate members, where there is no significance in the order of the members. For example, a Bag might be used to describe a group of part numbers in which the order of entry or processing of the part numbers does not matter.

A Sequence or Seq (a resource having type rdf:Seq) represents a group of resources or literals, possibly including duplicate members, where the order of the members is significant. For example, a Sequence might be used to describe a group that must be maintained in alphabetical order.

An Alternative or Alt (a resource having type rdf:Alt) represents a group of resources or literals that are alternatives (typically for a single value of a property). For example, an Alt might be used to describe alternative language translations for the title of a book, or to describe a list of alternative Internet sites at which a resource might be found. An application using a property whose value is an Alt container should be aware that it can choose any one of the members of the group as appropriate.
[http://www.w3.org/TR/2004/REC-rdf-primer-20040210/]

lagRdf'DomainOut ::this.part

name::
* McsEngl.lagRdf'DomainOut ::this.part@cptIt,

_SPECIFIC:
* file#ql:rdf'file#,
* graph#ql:rdf'graph#,
* vocabulary#ql:rdf'vocabulary#

lagRdf'Element

name::
* McsEngl.lagRdf'Element@cptIt,

The main elements of RDF are the root element, <RDF>, and the <Description> element, which identifies a resource.
[http://www.w3schools.com/rdf/rdf_main.asp]

SPECIFIC

rld'CONTAINER:
RDF containers are used to describe group of things.

The following RDF elements are used to describe groups: <Bag>, <Seq>, and <Alt>.

In the examples above we have talked about "list of values" when describing the container elements. In RDF these "list of values" are called members.

So, we have the following:

A container is a resource that contains things
The contained things are called members (not list of values)
[http://www.w3schools.com/rdf/rdf_containers.asp]

lagRdf'File

name::
* McsEngl.lagRdf'File@cptIt,

_GENERIC:
* domainOut#ql:rdf'domainout#

_File_extension:
.rdf

lagRdf'Knowledge-base

name::
* McsEngl.lagRdf'Knowledge-base@cptIt,

DBpedia

_CREATED: {2012-11-25}

name::
* McsEngl.DBpedia@cptIt,

_ADDRESS.WPG:
* http://wiki.dbpedia.org/About,

lagRdf'Linked-data

_CREATED: {2013-07-31}

name::
* McsEngl.lagRdf'Linked-data@cptIt,
* McsEngl.linked-data@cptIt,

_ADDRESS.WPG:
* http://www.epimorphics.com/web/resources/what-is-linked-data,

What is linked data?
Linked data is an approach to publishing and sharing data on the web.

What does that mean? Surely if I just put an Excel or PDF file on a web site then I'm publishing data? What makes linked data different and what's the benefit?

Yes, it is certainly possible to publish data by simply putting a document, a PDF or HTML file, on a web site. That does mean that you can provide a narrative to explain the data. If your only purpose is for people to read your report then that's a fine way to publish. However, any data behind such a document is locked away and inaccessible. People can't take that data and analyse and re-present it. They can't combine it with other data to provide new services or discover new insights.

Publishing the data as structured files like spreadsheets does allow the data to be analyzed and used in applications but leads to a series of static data silos. The structure and coding of the data is typically not explained in machine processable form, making it hard to use the data safely without help. There is no connection between the information in one spreadsheet and the next, each is a separate data island. The data is static, if a new data entry is available an hour later do you have to re-download and figure out what has changed? If you only want a slice of the data can you do that without having to download the whole spreadsheet?

Linked data is about applying the principles of the web to sharing data, and doing so at a deeper level that just putting up one big monolithic file. Instead we give each thing in the data an individual identity or URI. For example if we were publishing a set of information about the addresses of schools in the UK we would have URI for each school. Then we can publish information about these schools as small sets of statements, for example stating its name, its latitude/longitude or the administrative district it falls in. If the things we link to, such as the administrative district, themselves are represented by URIs then we are creating a web of linked information. The district URI might give information on the boundary of the district and in turn link to other information on the current political make up of the administration and its education budget.

This gives us a number of benefits:

the data is placed in context, each item has a web address through which it can be annotated and referenced, allowing explanations and implications to be linked back directly to the data;
the data is linked (to its information model and to related data) enabling information to be combined across silos, enhanced by combination with third party data sources and contextualized;
the data is accessible at a fine grain over the web so that downstream applications can run from the live data, ensuring it is up to date, while not preventing them using static data dumps if preferred.
How
The linked data approach builds upon a number of key web standards:

URIs
URIs are used to identify anything of interest in the data, including the entities the data is about (e.g. a particular school), the classes or concepts involved in the data (e.g. the notion of a School) and the properties that are available to describe schools (e.g. its name, location, or controlling authority). While we tend to talk about URIs, which include various different identifier schemes, the recommendation is to use http URLs so that standard web client software can fetch (GET) from those URLs and hope to discover useful information on them and onward links to other related data.

RDF
The recommended approach to representing the data itself is to use RDF the Resource Description Framework.

RDF presents information as a series of simple statements. Each statement (sometimes also called a triple) says that some subject has some property with some value. The subject of the statement is normally identified by a URI, as is the property or predicate being described. The value of the property, the object of the statement, can either be a literal value (a string or number for example) or it can be another URI.

For example we might make a statement about the name of the school:

Picture of a triple with subject so:401874, predicate rdfs:label and object 'Cardiff High School'

where so:401874 represents the URI http://education.data.gov.uk/id/school/401874 and rdfs:label represents the URI http://www.w3.org/2000/01/rdf-schema#label The things being described and linked in these statements are typically called resources, hence the name Resource Description Framework. Thus RDF is intrinsically well-suited to the linked data approach of linking together things identified by URIs.

Apart from its simplicity and the fact that it is fundamentally based on identifying resources through use of URIs, RDF has one other key characteristic that makes linked data work well - it is schemaless or open world. When representing data using object oriented modelling such as UML or in common database design methods one thinks in terms of data as being held in containers (objects or rows of values). To publish, store or query such data you need to know what the allowed values are in the containers. In contrast in RDF everything is represented as statements, whether the statements are about attributes, such as a label, or relational links such as hasAdministrator, there is no similar notion of a fixed shape container. This means there is no requirement to do a global, top-down schema design to agree, for example, everything that can be said about a school. Instead different authorities are free to publish different statements about the same school using their own sets of properties. This gives an intrinsic flexibility and resilience to data published this way. However, we still need some way of publishing agreed on vocabularies of terms that can be used.

Vocabulary standards - RDFS, OWL, SKOS
To complement this open world use of terms we do need some way to publish vocabularies that define what terms are available and how those terms relate. These might range from simple controlled lists of terms, such as might be used in a library for categorizing documents, though to rich logical models of a domain. The formal term for such a shared, well specified vocabulary is an ontology. Though in linked data the level of formality and depth of modelling can vary widely according to the needs of a particular application.

Of course, we identify the class by a URI such as http://education.data.gov.uk/def/school/School not by its label. We commonly shorten URIs by defining a common prefix for a set of terms, so that if we use school: to represent the prefix http://education.data.gov.uk/def/school/ then the earlier URI would be shown as school:School.
At heart this approach to modelling is quite straightforward. We want to represent the types or categories into which our resources can be grouped, these are called classes.

So for example in defining an ontology to represent school information we might have a class called School. Similarly we need properties that can be used to link a resource to another resource or to a simple literal value. Again we use URIs to identify these properties, for example the rdfs:label used in the above example is standard way of attaching a name or text label to any resource.

The standards that support this provide for a range of sophistication from simply listing classes and properties, through to expressing rich axioms that define relationships between the classes and properties. RDFS, the RDF Vocabulary Language (misleadingly the 'S' originally stood for 'schema'), provides a base foundation. In particular it defines terms such as rdf:type which links a resource to its class. Then OWL, the Web Ontology Language, provides more sophisticated capabilities on top of this.

In some situations we simply want a set of controlled terms that we are going to use as symbolic labels. They are not intended to model the domain in the way that the classes and properties do in RDFS and OWL. We simply want some way to denote a category separate from its textual label. The standard for that situation is SKOS or Simple Knowledge Organization System.

SPARQL
The final key piece of the puzzle is query. If we publish data as linked data then there is a certain amount that can be achieved by following your nose - that is starting from the URI of one resource, fetching it and following links to other resources. However, in many situations we want to actually query some aggregation of this data - to find all resources matching some pattern. For this we need a query language suited to this graph-like connected web of data. That query language is SPARQL.

Semantic Web
This technology stack was originally developed as part of a W3C initiative called the semantic web. The initiative was sometimes mis-interpreted as rather top down, AI-like, approach to the whole web - which was not the case. Some people may use semantic web and linked data interchangeably, others emphasise that linked data is a particular pragmatic way of applying the technology stack. In our view the technology stack is a very solid, practical way of modelling, sharing and working with data on the web - whatever label you want to give it.

To find out more
Linked Data: Evolving the Web into a Global Data Space
[http://www.epimorphics.com/web/resources/what-is-linked-data] {2013-07-31}

lagRdf'Notation

name::
* McsEngl.lagRdf'Notation@cptIt,

_SPECIFIC:
* triple,

lagRdf'Query-language

name::
* McsEngl.lagRdf'Query-language@cptIt,

RDF-based query QLs, such as RDQL3, SeRQL4 and the upcoming W3C recommendation SPARQL [1], are based on the notion of RDF triple patterns and their semantics is based on matching triples with RDF graphs. It is harder to provide a semantics for these QLs under OWL-DL semantics
because RDF representation mixes the syntax of the language with its assertions. The triple patterns in a query do not necessarily map to well-formed OWL-DL constructs.
...
RDF-based QLs (RDQL, SeRQL, SPARQL) are harder to give a semantics
w.r.t.
[http://pellet.owldl.com/papers/sirin07sparqldl.pdf]

lagRdf'SPARQL

name::
* McsEngl.lagRdf'SPARQL@cptIt,
* McsEngl.sparql@cptIt565,

_DEFINITION:
SPARQL is a query language developed primarily to query RDF graphs.
[http://pellet.owldl.com/papers/sirin07sparqldl.pdf]

The building block for SPARQL queries is Basic Graph Patterns (BGP). A SPARQL BGP is a set of triple patterns.
[http://pellet.owldl.com/papers/sirin07sparqldl.pdf]

lagRdf'Notation.N3

name::
* McsEngl.lagRdf'Notation.N3@cptIt,
* McsEngl.N3-rdf@cptIt,
* McsEngl.notation3-rdf@cptIt,

_DESCRIPTION:
Notation3, or N3 as it is more commonly known, is a shorthand non-XML serialization of Resource Description Framework models, designed with human-readability in mind: N3 is much more compact and readable than XML RDF notation. The format is being developed by Tim Berners-Lee and others from the Semantic Web community.
N3 has several features that go beyond a serialization for RDF models, such as support for RDF-based rules. Turtle is a simplified, RDF-only subset of N3.
[http://en.wikipedia.org/wiki/Notation_3]
===
In addition to serializing RDF as XML, the W3C introduced Notation 3 (or N3) as a non-XML serialization of RDF models designed to be easier to write by hand, and in some cases easier to follow. Because it is based on a tabular notation, it makes the underlying triples encoded in the documents more easily recognizable compared to the XML serialization. N3 is closely related to the Turtle and N-Triples formats.
[http://en.wikipedia.org/wiki/Resource_Description_Framework]

n3c'Evaluation

name::
* McsEngl.n3c'Evaluation@cptIt,

N3 has been well received for its "scribblability", because it is much more compact and readble than XML RDF, and because it forms a good introduction into many key principles of the Semantic Web.

Some people are opposed to N3, however, because the stability of the language in the long term is not known, there are some i18n issues (which are being resolved), and a notable lack of analogies for various features of N3 in XML RDF.
[http://infomesh.net/2002/notation3/]

n3c'Example

name::
* McsEngl.n3c'Example@cptIt,

Examples

This RDF model in standard XML notation

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<rdf:Description rdf:about="http://en.wikipedia.org/wiki/Tony_Benn">
<dc:title>Tony Benn</dc:title>
<dc:publisher>Wikipedia</dc:publisher>
</rdf:Description>
</rdf:RDF>

may be written in Notation 3 like this:

@prefix dc: <http://purl.org/dc/elements/1.1/>.

<http://en.wikipedia.org/wiki/Tony_Benn>
dc:title "Tony Benn";
dc:publisher "Wikipedia".
[http://en.wikipedia.org/wiki/Notation_3]

lagRdf'Notation.Triple

name::
* McsEngl.lagRdf'Notation.Triple@cptIt,

_GENERIC:
* notation,

_DEFINITION:
Sometimes it is not convenient to draw graphs when discussing them, so an alternative way of writing down the statements, called triples, is also used. In the triples notation, each statement in the graph is written as a simple triple of subject, predicate, and object, in that order. For example, the three statements shown in Figure 3 would be written in the triples notation as:

<http://www.example.org/index.html> <http://purl.org/dc/elements/1.1/creator> <http://www.example.org/staffid/85740> .

<http://www.example.org/index.html> <http://www.example.org/terms/creation-date> "August 16, 1999" .

<http://www.example.org/index.html> <http://purl.org/dc/elements/1.1/language> "en" .
[http://www.w3.org/TR/2004/REC-rdf-primer-20040210/]

lagRdf'GRAPH

name::
* McsEngl.lagRdf'GRAPH@cptIt,
* McsEngl.rdf'graph@cptIt565,
* McsEngl.graph'in'rdf@cptIt565,
* McsEngl.graph'data'model'in'rdf@cptIt565,

_DEFINITION:
* A set of such triples#ql:triple'in'rdf_it565# is called an RDF graph.
[http://www.w3.org/TR/2004/REC-rdf-concepts-20040210/]

rdf'graph'NODE:
The nodes of an RDF graph are its subjects and objects.
[http://www.w3.org/TR/2004/REC-rdf-concepts-20040210/]

In drawing RDF graphs, nodes that are URIrefs are shown as ellipses, while nodes that are literals are shown as boxes.
[http://www.w3.org/TR/2004/REC-rdf-primer-20040210/]

rdf'graph'MEANING:
the meaning of an RDF graph is the conjunction (logical AND) of the statements corresponding to all the triples it contains.
[http://www.w3.org/TR/2004/REC-rdf-concepts-20040210/]

rdf'graph'VOCALULARY:
The vocabulary for RDF graphs is three disjoint sets: a set of URIs Vuri, a set of bnode identifiers Vbnode, and a set of well-formed literals Vlit. The union of these sets is called the set of RDF terms.
[http://pellet.owldl.com/papers/sirin07sparqldl.pdf]

lagRdf'Notation.XML

name::
* McsEngl.lagRdf'Notation.XML@cptIt,
* McsEngl.rdf'xml@cptIt565,
* McsEngl.xml'serialization'form'of'rdf@cptIt565,

_DESCRIPTION:
RDF has a recommended XML serialization form [RDF-SYNTAX], which can be used to encode the data model for exchange of information among applications.
[http://www.w3.org/TR/2004/REC-rdf-concepts@cptIt20040210/]

XML_NOTATION:
<rdf:RDF
xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#'
xmlns:vcard='http://www.w3.org/2001/vcard-rdf/3.0#'
>
<rdf:Description rdf:about='http://somewhere/JohnSmith'>
<vcard:FN>John Smith</vcard:FN>
<vcard:N rdf:nodeID="A0"/>
</rdf:Description>
<rdf:Description rdf:nodeID="A0">
<vcard:Given>John</vcard:Given>
<vcard:Family>Smith</vcard:Family>
</rdf:Description>
</rdf:RDF>
[http://jena.sourceforge.net/tutorial/RDF_API/index.html]

EXAMPLE:
<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:contact="http://www.w3.org/2000/10/swap/pim/contact#">

<contact:Person rdf:about="http://www.w3.org/People/EM/contact#me">
<contact:fullName>Eric Miller</contact:fullName>
<contact:mailbox rdf:resource="mailto:em@w3.org"/>
<contact:personalTitle>Dr.</contact:personalTitle>
</contact:Person>

</rdf:RDF>

lagRdf'Specification

name::
* McsEngl.lagRdf'Specification@cptIt,

This specification is one of several [RDF-PRIMER] [RDF-SYNTAX] [RDF-CONCEPTS] [RDF-SEMANTICS] [RDF-TESTS] related to RDF.
[http://www.w3.org/TR/2004/REC-rdf-schema-20040210/]

[RDF-PRIMER]:
RDF Primer
W3C Recommendation 10 February 2004
http://www.w3.org/TR/2004/REC-rdf-primer-20040210//
This Primer is designed to provide the reader with the basic knowledge required to effectively use RDF. It introduces the basic concepts of RDF and describes its XML syntax. It describes how to define RDF vocabularies using the RDF Vocabulary Description Language, and gives an overview of some deployed RDF applications. It also describes the content and purpose of other RDF specification documents.

* The Primer is a non-normative document, which means that it does not provide a definitive specification of RDF.
[http://www.w3.org/TR/2004/REC-rdf-primer-20040210/]

[RDF-SYNTAX] (normative)
RDF/XML Syntax Specification (Revised)
W3C Recommendation 10 February 2004
http://www.w3.org/TR/2004/REC-rdf-syntax-grammar-20040210//
This document defines an XML syntax for RDF called RDF/XML in terms of Namespaces in XML, the XML Information Set and XML Base.

[RDF-CONCEPTS] (normative)
RDF Concepts and Abstract Syntax
W3C Recommendation 10 February 2004
http://www.w3.org/TR/2004/REC-rdf-concepts-20040210//
* RDF Concepts and Abstract Syntax defines an abstract syntax on which RDF is based, and which serves to link its concrete syntax to its formal semantics. It also includes discussion of design goals, key concepts, datatyping, character normalization and handling of URI references.

[RDF-SEMANTICS]
RDF Semantics
W3C Recommendation 10 February 2004
http://www.w3.org/TR/2004/REC-rdf-mt-20040210// (ModelTheory)
This is a specification of a precise semantics, and corresponding complete systems of inference rules, for the Resource Description Framework (RDF) and RDF Schema (RDFS).

[RDF-VOCABULARY]
RDF Vocabulary Description Language 1.0: RDF Schema:
W3C Recommendation 10 February 2004
http://www.w3.org/TR/2004/REC-rdf-schema-20040210//
This specification describes how to use RDF to describe RDF vocabularies. This specification defines a vocabulary for this purpose and defines other built-in RDF vocabulary initially specified in the RDF Model and Syntax Specification.

[RDF-TESTS]
RDF Test Cases
W3C Recommendation 10 February 2004
http://www.w3.org/TR/2004/REC-rdf-testcases-20040210/
This document describes the RDF Test Cases deliverable for the RDF Core Working Group as defined in the Working Group's Charter.

lagRdf'Standard ::this.part

name::
* McsEngl.lagRdf'Standard ::this.part@cptIt,

Current Status  Published, W3C Recommendation

lagRdf'statement

name::
* McsEngl.lagRdf'statement@cptIt,
* McsEngl.rdf'statement@cptIt,
* McsEngl.rdf'triple@cptIt,
* McsEngl.statement.rdf@cptIt565,

=== _NOTES: Triple A structure containing a subject, a predicate and an object. Another term for a statement.
[http://jena.sourceforge.net/tutorial/RDF_API/index.html]

_DESCRIPTION:
The only form of assertion in RDF is what is known as a statement. A statement relates the subject (the node the statement is about) to the object (the node that is the value) via a property (a node that defines the relationship). The object may be either a node representing a resource, or a literal (a string).
[http://www.ontopia.net/topicmaps/materials/tmrdf.html]

_DEFINITION:
* RDF is very simple. It is no more than a way to express and process a series of simple assertions. For example: This article is authored by Uche Ogbuji.
This is called a statement in RDF and has three structural parts: a subject ("this article"), a predicate ("is authored by"), and an object ("Uche Ogbuji"). This is a familiar breakdown of such assertions, whether in the field of formal logic or grammar (well, OK, as long as you don't make too fine a point of that intransitive verb). Indeed, RDF is nothing more than an application of long study in such fields aimed at describing resources, which consist of any item accessible through the Web.
[http://www-128.ibm.com/developerworks/library/w-rdf/]

* Statement An arc in an RDF Model, normally interpreted as a fact.
[http://jena.sourceforge.net/tutorial/RDF_API/index.html]

_DESCRIPTION:
Some simple facts indicate a relationship between two things. Such a fact may be represented as an RDF triple in which the predicate names the relationship, and the subject and object denote the two things. A familiar representation of such a fact might be as a row in a table in a relational database. The table has two columns, corresponding to the subject and the object of the RDF triple. The name of the table corresponds to the predicate of the RDF triple.
A further familiar representation may be as a two place predicate in first order logic.
[http://www.w3.org/TR/2004/REC-rdf-concepts-20040210/]

_ENVIRONMENT:
RDF statements are similar to a number of other formats for recording information, such as:
* entries in a simple record or catalog listing describing the resource in a data processing system.
* rows in a simple relational database.
* simple assertions in formal logic
and information in these formats can be treated as RDF statements, allowing RDF to be used to integrate data from many sources.
[http://www.w3.org/TR/2004/REC-rdf-primer-20040210/]

lagRdf'SUBJECT

name::
* McsEngl.lagRdf'SUBJECT@cptIt,
* McsEngl.subject.rdf@cptIt565,

_DEFINITION:
Subject The resource which is the source of an arc in an RDF Model
[http://jena.sourceforge.net/tutorial/RDF_API/index.html]

lagRdf'PREDICATE

name::
* McsEngl.lagRdf'PREDICATE@cptIt,
* McsEngl.predicate.rdf@cptIt565,

_DEFINITION:
Predicate The property part of a triple.
[http://jena.sourceforge.net/tutorial/RDF_API/index.html]

lagRdf'OBJECT

name::
* McsEngl.lagRdf'OBJECT@cptIt,
* McsEngl.object.rdf@cptIt565,

_DEFINITION:
Object The part of a triple which is the value of the statement
[http://jena.sourceforge.net/tutorial/RDF_API/index.html]

lagRdf'Property

name::
* McsEngl.lagRdf'Property@cptIt,
* McsEngl.property-rdf@cptIt565,

_GENERIC:
* domainIn#ql:rdf'domainin#

rdf'property'DEFINITION:
Resources have properties.
[http://jena.sourceforge.net/tutorial/RDF_API/index.html]

* The RDF Concepts and Abstract Syntax specification [RDF-CONCEPTS] describes the concept of an RDF property as a relation between subject resources and object resources.
[http://www.w3.org/TR/2004/REC-rdf-schema-20040210/]

rdf'property'REPRESENATION:
A property is represented by an arc, labeled with the name of a property.
[http://jena.sourceforge.net/tutorial/RDF_API/index.html]

lagRdf'property'NAME

name::
* McsEngl.lagRdf'property'NAME@cptIt,

_DEFINITION:
The name of a property is also a URI, but as URI's are rather long and cumbersome, the diagram shows it in XML qname form.
The part before the ':' is called a namespace prefix and represents a namespace.
The part after the ':' is called a local name and represents a name in that namespace. Properties are usually represented in this qname form when written as RDF XML and it is a convenient shorthand for representing them in diagrams and in text. Strictly, however, properties are identified by a URI. The nsprefix:localname form is a shorthand for the URI of the namespace concatenated with the localname. There is no requirement that the URI of a property resolve to anything when accessed by a browser.
[http://jena.sourceforge.net/tutorial/RDF_API/index.html]

lagRdf'property'DOMAIN

name::
* McsEngl.lagRdf'property'DOMAIN@cptIt,

lagRdf'property'VALUE (RANGE)

name::
* McsEngl.lagRdf'property'VALUE (RANGE)@cptIt,
* McsEngl.value'of'property'of'rdf@cptIt565,

_DEFINITION:
Each property has a value.
[http://jena.sourceforge.net/tutorial/RDF_API/index.html]

SPESIFEPTO:
* LITERAL
* RDF properties can also take other resources as their value.

lagRdf'LITERAL

name::
* McsEngl.lagRdf'LITERAL@cptIt,
* McsEngl.literal'in'rdf@cptIt565,

_DEFINITION:
* constant value.

* In this case the value is a literal, which for now we can think of as a strings of characters2. Literals are shown in rectangles.
2. As well as being a string of characters, literals also have an optional language encoding to represent the language of the string. For example the literal "two" might have a language encoding of "en" for English and the literal "deux" might have a language encoding of "fr" for France.
[http://jena.sourceforge.net/tutorial/RDF_API/index.html]

_USAGE:
Literals may not be used as subjects or predicates in RDF statements.
[http://www.w3.org/TR/2004/REC-rdf-primer-20040210/]

lagRdf'PLAIN-LITERAL

name::
* McsEngl.lagRdf'PLAIN-LITERAL@cptIt,

lagRdf'DATATYPE

name::
* McsEngl.lagRdf'DATATYPE@cptIt,
* McsEngl.typed'literal'in'rdf@cptIt565,

Datatypes are used by RDF in the representation of values such as integers, floating point numbers and dates.
[http://www.w3.org/TR/2004/REC-rdf-concepts-20040210/]

EXAMPLE:
"27"^^xsd:integer
"1999-08-16"^^xsd:date

lagRdf'property'SPESIFEPTO

name::
* McsEngl.lagRdf'property'SPESIFEPTO@cptIt,


6.2 RDF properties
Property name  comment  domain  range
rdf_type  The subject is an instance of a class.  rdfs:Resource  rdfs:Class
rdfs_subClassOf  The subject is a subclass of a class.  rdfs:Class  rdfs:Class
rdfs_subPropertyOf  The subject is a subproperty of a property.  rdf:Property  rdf:Property
rdfs_domain  A domain of the subject property.  rdf:Property  rdfs:Class
rdfs_range  A range of the subject property.  rdf:Property  rdfs:Class
rdfs_label  A human-readable name for the subject.  rdfs:Resource  rdfs:Literal
rdfs_comment  A description of the subject resource.  rdfs:Resource  rdfs:Literal
rdfs_member  A member of the subject resource.  rdfs:Resource  rdfs:Resource
rdf_first  The first item in the subject RDF list.  rdf:List  rdfs:Resource
rdf_rest  The rest of the subject RDF list after the first item.  rdf:List  rdf:List
rdfs_seeAlso  Further information about the subject resource.  rdfs:Resource  rdfs:Resource
rdfs_isDefinedBy  The definition of the subject resource.  rdfs:Resource  rdfs:Resource
rdf_value  Idiomatic property used for structured values (see the RDF Primer for an example of its usage).  rdfs:Resource  rdfs:Resource
rdf_subject  The subject of the subject RDF statement.  rdf:Statement  rdfs:Resource
rdf_predicate  The predicate of the subject RDF statement.  rdf:Statement  rdfs:Resource
rdf_object  The object of the subject RDF statement.
 rdf:Statement  rdfs:Resource

In addition to these classes and properties, RDF also uses properties called
rdf:_1, rdf:_2, rdf:_3... etc., each of which is both a sub-property of rdfs:member
and an instance of the class rdfs:ContainerMembershipProperty. There is also
an instance of rdf:List called rdf:nil that is an empty rdf:List.
[http://www.w3.org/TR/2004/REC-rdf-schema-20040210/#ch_summary]

lagRdf'Related-technologies ::this.Other

name::
* McsEngl.lagRdf'Related-technologies ::this.Other@cptIt,

_SPECIFIC:
* Conceptual Graphs
* SOAP/WSDL
* UML/MOF/XMI
* TopicMaps

lagRdf'Relation-to-XML ::this.Other

name::
* McsEngl.lagRdf'Relation-to-XML ::this.Other@cptIt,

RDF has an XML syntax and many who are familiar with XML will think of RDF in terms of that syntax. This is mistake. RDF should be understood in terms of its data model. RDF data can be represented in XML, but understanding the syntax is secondary to understanding the data model.
[http://jena.sourceforge.net/tutorial/RDF_API/index.html]

lagRdf'Resource

name::
* McsEngl.lagRdf'Resource@cptIt,

An Introduction to RDF and the Jena RDF API:
Author: Brian McBride
Updated by: Daniel Boothby and Chris Dollin
$Id: index.html,v 1.22 2007/03/21 16:58:19 andy_seaborne Exp $
http://jena.sourceforge.net/tutorial/RDF_API/index.html

lagRdf'Vocabulary

name::
* McsEngl.lagRdf'Vocabulary@cptIt,
* McsEngl.vocabulary-rdf@cptIt565,

_GENERIC:
* domainOut,

_DEFINITION:
Since RDF uses URIrefs instead of words to name things in statements, RDF refers to a set of URIrefs (particularly a set intended for a specific purpose) as a vocabulary.
[http://www.w3.org/TR/2004/REC-rdf-primer-20040210/]

_SPESIFEPTO:
* dc:  http://purl.org/dc/elements/1.1/ (DUBLIN CORE)
* rdf:  http://www.w3.org/1999/02/22-rdf-syntax-ns#
* rdfs:  http://www.w3.org/2000/01/rdf-schema#
* owl:  http://www.w3.org/2002/07/owl#
* ex:  http://www.example.org/ (or http://www.example.com/)
* xsd:  http://www.w3.org/2001/XMLSchema#

lagRdf'Vocabulary-description-language (rdfs)

name::
* McsEngl.lagRdf'Vocabulary-description-language (rdfs)@cptIt,
* McsEngl.conceptIt565.1,
* McsEngl.rdfs-565.1@cptIt,
* McsEngl.rdf-schema-565.1@cptIt,
* McsEngl.rdf-vocabulary-description-language-565.1@cptIt,

rdfs'DEFINITION:
RDF Schema (variously abbreviated as RDFS, RDF(S), RDF-S, or RDF/S) is a set of classes with certain properties using the RDF extensible knowledge representation language, providing basic elements for the description of ontologies, otherwise called RDF vocabularies, intended to structure RDF resources. The first version[1] was published by the World-Wide Web Consortium (W3C) in April 1998, and the final[2] W3C recommendation was released in February 2004. Many RDFS components are included in the more expressive language Web Ontology Language (OWL).
[http://en.wikipedia.org/wiki/RDFS] 2011-09-05
===
RDFS or RDF Schema is an extensible knowledge representation language, providing basic elements for the description of ontologies, otherwise called RDF vocabularies, intended to structure RDF resources. The first version was published by W3C in April 1998, and the final W3C recommendation was released in February 2004. Main RDFS components are included in the more expressive language OWL#cptIt562#.
[http://en.wikipedia.org/wiki/RDFS] 2007-12-05

RDF Schema defines classes and properties that may be used to describe classes, properties and other resources.
...
This document is intended to provide a clear specification of the RDF vocabulary description language to those who find the formal semantics specification, RDF Semantics [RDF-SEMANTICS] daunting. Thus, this document duplicates material also specified in the RDF Semantics specification . Where there is disagreement between this document and the RDF Semantics specification, the RDF Semantics specification should be taken to be correct.
[http://www.w3.org/TR/2004/REC-rdf-schema-20040210/]

rdfs'Class

name::
* McsEngl.rdfs'Class@cptIt,

_DESCRIPTION:
Resources may be divided into groups called classes.
[http://www.w3.org/TR/rdf-schema/]

rdfs'Example.YAGO

name::
* McsEngl.rdfs'Example.YAGO@cptIt,

<?xml version="1.0"?>
<!--
This is a sample snippet from the RDFS version of YAGO
-->
<!DOCTYPE rdf:RDF [<!ENTITY d "http://www.w3.org/2001/XMLSchema#">
<!ENTITY y "http://www.mpii.de/yago/resource/">]>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xml:base="http://www.mpii.de/yago/resource"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:y="http://www.mpii.de/yago/resource/">
<rdf:Description rdf:about="&y;Núria_Espert">
<y:actedIn rdf:ID="f400000001" rdf:resource="&y;Actrius"/>
</rdf:Description>
<rdf:Description rdf:about="#f400000001"><y:confidence rdf:datatype="&d;double">0.9662078477734617</y:confidence></rdf:Description>
<rdf:Description rdf:about="&y;Mercè_Pons"><y:actedIn rdf:ID="f400000005" rdf:resource="&y;Actrius"/></rdf:Description>
<rdf:Description rdf:about="#f400000005"><y:confidence rdf:datatype="&d;double">0.9662078477734617</y:confidence></rdf:Description>
<rdf:Description rdf:about="&y;Martin_Sheen"><y:actedIn rdf:ID="f400000009" rdf:resource="&y;Apocalypse_Now"/></rdf:Description>
<rdf:Description rdf:about="#f400000009"><y:confidence rdf:datatype="&d;double">0.9662078477734617</y:confidence></rdf:Description>
<rdf:Description rdf:about="&y;Calista_Flockhart"><y:actedIn rdf:ID="f400000013" rdf:resource="&y;Ally_McBeal"/></rdf:Description>
<rdf:Description rdf:about="#f400000013"><y:confidence rdf:datatype="&d;double">0.9662078477734617</y:confidence></rdf:Description>
<rdf:Description rdf:about="&y;Gil_Bellows"><y:actedIn rdf:ID="f400000017" rdf:resource="&y;Ally_McBeal"/></rdf:Description>
<rdf:Description rdf:about="#f400000017"><y:confidence rdf:datatype="&d;double">0.9662078477734617</y:confidence></rdf:Description>
<rdf:Description rdf:about="&y;Bruce_Campbell"><y:actedIn rdf:ID="f400000021" rdf:resource="&y;Army_of_Darkness"/></rdf:Description>
<rdf:Description rdf:about="#f400000021"><y:confidence rdf:datatype="&d;double">0.9662078477734617</y:confidence></rdf:Description>
<rdf:Description rdf:about="&y;Marcus_Gilbert"><y:actedIn rdf:ID="f400000025" rdf:resource="&y;Army_of_Darkness"/></rdf:Description>
<rdf:Description rdf:about="#f400000025"><y:confidence rdf:datatype="&d;double">0.9662078477734617</y:confidence></rdf:Description>
<rdf:Description rdf:about="&y;Lillian_Gish"><y:actedIn rdf:ID="f400000029" rdf:resource="&y;The_Birth_of_a_Nation"/></rdf:Description>
<rdf:Description rdf:about="#f400000029"><y:confidence rdf:datatype="&d;double">0.9662078477734617</y:confidence></rdf:Description>

<rdf:Description rdf:about="&y;Mae_Marsh"><y:actedIn rdf:ID="f400000033" rdf:resource="&y;The_Birth_of_a_Nation"/></rdf:Description>
<rdf:Description rdf:about="#f400000033"><y:confidence rdf:datatype="&d;double">0.9662078477734617</y:confidence></rdf:Description>
<rdf:Description rdf:about="&y;Buddy_Ebsen"><y:actedIn rdf:ID="f400000037" rdf:resource="&y;The_Beverly_Hillbillies"/></rdf:Description>
<rdf:Description rdf:about="#f400000037"><y:confidence rdf:datatype="&d;double">0.9662078477734617</y:confidence></rdf:Description>
<rdf:Description rdf:about="&y;Harrison_Ford"><y:actedIn rdf:ID="f400000041" rdf:resource="&y;Blade_Runner"/></rdf:Description>
<rdf:Description rdf:about="#f400000041"><y:confidence rdf:datatype="&d;double">0.9662078477734617</y:confidence></rdf:Description>
<rdf:Description rdf:about="&y;Joanna_Cassidy"><y:actedIn rdf:ID="f400000045" rdf:resource="&y;Blade_Runner"/></rdf:Description>
<rdf:Description rdf:about="#f400000045"><y:confidence rdf:datatype="&d;double">0.9662078477734617</y:confidence></rdf:Description>
<rdf:Description rdf:about="&y;Cleavon_Little"><y:actedIn rdf:ID="f400000049" rdf:resource="&y;Blazing_Saddles"/></rdf:Description>
<rdf:Description rdf:about="#f400000049"><y:confidence rdf:datatype="&d;double">0.9662078477734617</y:confidence></rdf:Description>
<rdf:Description rdf:about="&y;Harvey_Korman"><y:actedIn rdf:ID="f400000053" rdf:resource="&y;Blazing_Saddles"/></rdf:Description>
<rdf:Description rdf:about="#f400000053"><y:confidence rdf:datatype="&d;double">0.9662078477734617</y:confidence></rdf:Description>
<rdf:Description rdf:about="&y;Kyle_MacLachlan"><y:actedIn rdf:ID="f400000057" rdf:resource="&y;Blue_Velvet"/></rdf:Description>
<rdf:Description rdf:about="#f400000057"><y:confidence rdf:datatype="&d;double">0.9662078477734617</y:confidence></rdf:Description>
<rdf:Description rdf:about="&y;Dean_Stockwell"><y:actedIn rdf:ID="f400000061" rdf:resource="&y;Blue_Velvet"/></rdf:Description>
<rdf:Description rdf:about="#f400000061"><y:confidence rdf:datatype="&d;double">0.9662078477734617</y:confidence></rdf:Description>
</rdf:RDF>

rdfs'Relation-to-OOL

name::
* McsEngl.rdfs'Relation-to-OOL@cptIt,

_DESCRIPTION:
The RDF vocabulary description language class and property system is similar to the type systems of object-oriented programming languages such as Java. RDF differs from many such systems in that instead of defining a class in terms of the properties its instances may have, the RDF vocabulary description language describes properties in terms of the classes of resource to which they apply. This is the role of the domain and range mechanisms described in this specification. For example, we could define the eg:author property to have a domain of eg:Document and a range of eg:Person, whereas a classical object oriented system might typically define a class eg:Book with an attribute called eg:author of type eg:Person. Using the RDF approach, it is easy for others to subsequently define additional properties with a domain of eg:Document or a range of eg:Person. This can be done without the need to re-define the original description of these classes. One benefit of the RDF property-centric approach is that it allows anyone to extend the description of existing resources, one of the architectural principles of the Web [BERNERS-LEE98].
[http://www.w3.org/TR/2004/REC-rdf-schema-20040210/]

rdfs'Specification

name::
* McsEngl.rdfs'Specification@cptIt,

RDF Vocabulary Description Language 1.0: RDF Schema
W3C Recommendation 10 February 2004
* http://www.w3.org/TR/rdf-schema//

lagRdf'EVOLUTION#cptCore546.171#

name::
* McsEngl.lagRdf'EVOLUTION@cptIt,

{time.2010}:
In June 2010, W3C organized a workshop to gather feedback from the Web community and discuss possible revisions and improvements to RDF.[6]
[http://en.wikipedia.org/wiki/Resource_Description_Framework]

{time.2004}:
Work then began on a new version that was published as a set of related specifications in 2004. While there are a few implementations based on the 1999 Recommendation that have yet to be completely updated, adoption of the improved specifications has been rapid since they were developed in full public view, unlike some earlier technologies of the W3C. Most newcomers to RDF are unaware that the older specifications even exist.
[http://en.wikipedia.org/wiki/Resource_Description_Framework]

{time.1999}:
The W3C published a specification of RDF's data model and XML syntax as a Recommendation in 1999.[5]
[http://en.wikipedia.org/wiki/Resource_Description_Framework]
===
First released in 1999, RDF was first intended to describe resources, in other words to declare metadata of resources in a standard way.
[http://en.wikipedia.org/wiki/Resource_%28Web%29]

lagCmr.knowledge.SEMANTIC-NETWORK

_CREATED: ? {2007-12-02}

name::
* McsEngl.lagCmr.knowledge.SEMANTIC-NETWORK@cptIt,
* McsEngl.conceptIt501.6,
* McsEngl.lagKnlg.SEMANTIC-NETWORK@cptIt,
* McsEngl.semantic-network-501.6@cptIt,
* McsEngl.network'representation-501.6@cptIt,
* McsEngl.semantic'network'language-501.6@cptIt,
* McsEngl.semantic-network@cptIt,
* McsEngl.semantic'network-501.6@cptIt,
* McsEngl.sn-501.6@cptIt,

_DEFINITION:
A semantic network is often used as a form of knowledge representation. It is a directed-graph#ql:directed'graph-*# consisting of vertices, which represent concepts, and edges, which represent semantic relations between the concepts.
[http://en.wikipedia.org/wiki/Semantic_network]

* "Structured objects" is the name given to any method of representation whose major format for holding information can be directly compared to the nodes and links of a graph. Structured objects hold information about objects and the relationships between objects. "Semantic networks" were the first such system to be developed [3]. In the semantic network model, objects, concepts, situations and actions are represented by nodes. The relationships between these nodes are represented by labelled arcs. The labels in the nodes gain their meaning from their connections [4]. Although there are no constraints in the naming of nodes and arcs, certain classes of links have developed as standards. For example the "IS-A" link is often used to convey the meaning of type. Descriptions of complex relationships between objects can be built up using this type of semantic network. Semantic nets can also be used to link attributes to objects. By combining the lattice structure that comes from the IS-A links with the attribute links, a network can be developed that will support the facility for property inheritance. That is, objects at the lower levels in the structure inherit properties explicitly associated with objects at the higher level. The major problem of semantic networks is the lack of theory of semantics. No fundamental distinction is made between different types of links, for example those that describe properties of objects, and those that make assertions, nor between classes of objects and individuals [5]. Niemann et al. [6] describe the development of system for the representation of knowledge based on the semantic network model. They show how semantic networks can be used for knowledge based image and speech understanding.

* A knowledge representation scheme in which objects or concepts are stored as nodes or vertices in a graph and linked together with labeled relations such as "is_a" and "has_a" (eg. DOG is_a ANIMAL / DOG has_a TAIL where DOG is a node with two links to other nodes).

* Networks are often used in artificial intelligence as schemes for representation. One of the advantages of using a network representation is that theorists in computer science have studied such structures in detail and there are a number of efficient and robust algorithms that may be used to manipulate the representations.
Trees and Graphs A tree is a collection of nodes in which each node may be expanded into one or more unique subnodes until termination occurs. There may be no termination and an infinite tree results. A graph is simply a tree in which non-unique nodes are generated; in other words, a tree is a graph with no loops. The representation of the nodes and links is arbitrary. In a computer chess player, for example, nodes might represent individual board positions and the links from each node the legal moves from that position. This is a specific instance of a problem space. In general, problem spaces are graphs in which the nodes represent states and the connections between states represented by an operator that makes the state transformation.
IS-A Links and Semantic Networks In constructing concept hierarchies, often the most important means of showing inclusion in a set is to use what is called an IS-A link, in which X is a member in some more general set Y. For example, a DOG ISA MAMMAL. As one travels up the link, the more general concept is defined. This is generally the simplest type of link between concepts in concept or semantic hierarchies. The combination of instances and classes connected by ISA links in a graph or tree is generally known as a semantic network. Semantic networks are useful, in part, because they provide a natural structure for inheritance. For instance, if a DOG ISA MAMMAL then those properties that are true for MAMMALs and DOGs need not be specified for the DOG; instead they may be derived via an inheritance procedure. This greatly reduces the amount of information that must be stored explicitly although there is an increase in the time required to access knowledge through the inheritance mechanism. Frames are a special type of semantic network representation.
--------------------------------------------------------------------------------
- Modular-Integrated Architecture (ICARUS)
- Adaptive Intelligent Systems (AIS)
- Entropy Reduction Engine (ERE)
[http://krusty.eecs.umich.edu/cogarch4/toc_defs/defs_props/defs_isa.html] 1998feb16

sn'GENERIC:
* KNOWLEDGE_REPRESENTATION_LANGUAGE#cptIt501.7#
* BRAINEPTO_CCL#cptIt501.1#

sn'EVOLUTION#cptCore546.171#

name::
* McsEngl.sn'EVOLUTION@cptIt,

1968 Quillian:
Quillian, M. Ross, ``Semantic Memory,'' PhD dissertation, Carnegie-Mellon University, Pittsburgh. Abridged version in Minsky (1968) pp. 227-270.
* For his PhD dissertation, Quillian [15] implemented a version of semantic networks that had a strong influence on the AI community.

1961:
The first implementations of semantic networks were used to define concept types and patterns of relations for machine translation systems. Silvio Ceccato (1961) developed correlational nets, which were based on 56 different relations, including subtype, instance, part-whole, case relations, kinship relations, and various kinds of attributes. He used the correlations as patterns for guiding a parser and resolving syntactic ambiguities. Margaret Masterman's system at Cambridge University (1961) was the first to be called a semantic network. She developed a list of 100 primitive concept types, such as Folk, Stuff, Thing, Do, and Be. In terms of those primitives, her group defined a conceptual dictionary of 15,000 entries. She organized the concept types into a lattice, which permits inheritance from multiple supertypes. The basic principles and even many of the primitive concepts have survived in more recent systems of preference semantics (Wilks & Fass 1992).
[http://www.jfsowa.com/pubs/semnet.htm] 2008-08-27

1956:
"Semantic Nets" were first invented for computers by Richard H. Richens of the Cambridge Language Research Unit in 1956 as an "interlingua" for machine translation of natural languages.
[http://en.wikipedia.org/wiki/Semantic_network]

1950s:
The first implementations of semantic networks were developed for Machine Translation in the late 1950s and early 1960s.
...
Margaret Masterman's system at Cambridge University [10] was the first one to be called a semantic network.
Masterman, Margaret, Semantic Message Detection for Machine Translation Using an Interlingua, Proceedings of the 1961 International Conference on Machine Translation, 1961, 438-475.
[Fulfilling Peirce's Dream: Conceptual Structures and Communities of Inquiry, Leroy Searle, Mary Keeler, John Sowa, Harry Deluagch, and Dickson Lukose, ICCS'97]

3rd AD: Tree_of_Porphyry
The oldest known semantic network was drawn in the 3rd century AD by the Greek philosopher Porphyry in his commentary on Aristotle's categories. Porphyry used it to illustrate Aristotle's method of defining categories by specifying the genus or general type and the differentiae that distinguish different subtypes of the same supertype.
[http://www.jfsowa.com/pubs/semnet.htm] 2008-08-27

sn'relation

name::
* McsEngl.sn'relation@cptIt,

Important semantic relations:

* Meronymy (A is part of B, i.e. B has A as a part of itself)
* Holonymy (B is part of A, i.e. A has B as a part of itself)

* Hyponymy (or troponymy) (A is subordinate of B; A is kind of B)
* Hypernymy (A is superordinate of B)

* Synonymy (A denotes the same as B)
* Antonymy (A denotes the opposite of B)
[http://en.wikipedia.org/wiki/Semantic_network]

sn'program

name::
* McsEngl.sn'program@cptIt,

sn'resource

name::
* McsEngl.sn'resource@cptIt,

SPECIFIC

* sn.specific,

_SPECIFIC:
Following are six of the most common kinds of semantic networks, each of which is discussed in detail in one section of this article.
1. Definitional networks emphasize the subtype or is-a relation between a concept type and a newly defined subtype. The resulting network, also called a generalization or subsumption hierarchy, supports the rule of inheritance for copying properties defined for a supertype to all of its subtypes. Since definitions are true by definition, the information in these networks is often assumed to be necessarily true.
2. Assertional networks are designed to assert propositions. Unlike definitional networks, the information in an assertional network is assumed to be contingently true, unless it is explicitly marked with a modal operator. Some assertional netwoks have been proposed as models of the conceptual structures underlying natural language semantics.
3. Implicational networks use implication as the primary relation for connecting nodes. They may be used to represent patterns of beliefs, causality, or inferences.
4. Executable networks include some mechanism, such as marker passing or attached procedures, which can perform inferences, pass messages, or search for patterns and associations.
5. Learning networks build or extend their representations by acquiring knowledge from examples. The new knowledge may change the old network by adding and deleting nodes and arcs or by modifying numerical values, called weights, associated with the nodes and arcs.
6. Hybrid networks combine two or more of the previous techniques, either in a single network or in separate, but closely interacting networks.
[http://www.jfsowa.com/pubs/semnet.htm] 2008-08-27

sn.DEFINITIONAL

name::
* McsEngl.sn.DEFINITIONAL@cptIt,
* McsEngl.definitional-semantic-network-501.6i@cptIt,

_DEFINITION:
1. Definitional networks emphasize the subtype or is-a relation between a concept type and a newly defined subtype. The resulting network, also called a generalization or subsumption hierarchy, supports the rule of inheritance for copying properties defined for a supertype to all of its subtypes. Since definitions are true by definition, the information in these networks is often assumed to be necessarily true.
[http://www.jfsowa.com/pubs/semnet.htm] 2008-08-27

sn.ASSERTIONAL

name::
* McsEngl.sn.ASSERTIONAL@cptIt,
* McsEngl.assertional-semantic-network-501.6i@cptIt,

_DEFINITION:
2. Assertional networks are designed to assert propositions. Unlike definitional networks, the information in an assertional network is assumed to be contingently true, unless it is explicitly marked with a modal operator. Some assertional netwoks have been proposed as models of the conceptual structures underlying natural language semantics.
[http://www.jfsowa.com/pubs/semnet.htm] 2008-08-27

sn.IMPLICATIONAL

name::
* McsEngl.sn.IMPLICATIONAL@cptIt,
* McsEngl.implicational-semantic-network-501.6i@cptIt,

_DEFINITION:
3. Implicational networks use implication as the primary relation for connecting nodes. They may be used to represent patterns of beliefs, causality, or inferences.
[http://www.jfsowa.com/pubs/semnet.htm] 2008-08-27

sn.EXECUTABLE

name::
* McsEngl.sn.EXECUTABLE@cptIt,
* McsEngl.executable-semantic-network-501.6i@cptIt,

_DEFINITION:
4. Executable networks include some mechanism, such as marker passing or attached procedures, which can perform inferences, pass messages, or search for patterns and associations.
[http://www.jfsowa.com/pubs/semnet.htm] 2008-08-27

sn.LEARNING

name::
* McsEngl.sn.LEARNING@cptIt,
* McsEngl.learning-semantic-network-501.6i@cptIt,

_DEFINITION:
5. Learning networks build or extend their representations by acquiring knowledge from examples. The new knowledge may change the old network by adding and deleting nodes and arcs or by modifying numerical values, called weights, associated with the nodes and arcs.
[http://www.jfsowa.com/pubs/semnet.htm] 2008-08-27

sn.HYBRID

name::
* McsEngl.sn.HYBRID@cptIt,
* McsEngl.hybrid-semantic-network-501.6i@cptIt,

_DEFINITION:
6. Hybrid networks combine two or more of the previous techniques, either in a single network or in separate, but closely interacting networks.
[http://www.jfsowa.com/pubs/semnet.htm] 2008-08-27

lagCmr.knowledge.SHOE {1996}

_CREATED: {1998-04-25}

name::
* McsEngl.lagCmr.knowledge.SHOE {1996}@cptIt,
* McsEngl.lagKnlg.SHOE@cptIt,
* McsEngl.shoe@cptIt,
* McsEngl.shoe-501i@cptIt,
* McsEngl.Simple-HTML-Ontology-Extensions@cptIt,

_ADDRESS.WPG:
* http://www.cs.umd.edu/projects/plus/SHOE//

_DEFINITION:
In the semantic web, Simple HTML Ontology Extensions are a small set of HTML extensions designed to give web pages semantic meaning by allowing information such as class, subclass and property relationships. SHOE had little adoption due to the limited vocabulary of ways that HTML pages could be coded.
SHOE was developed around 1996 by James Hendler, Jeff Heflin and Sean Luke at the University of Maryland, College Park.
[http://en.wikipedia.org/wiki/Simple_HTML_Ontology_Extensions]
===
* SHOE is an HTML-based knowledge representation language. SHOE is a superset of HTML which adds the tags necessary to embed arbitrary semantic data into web pages.
SHOE tags are divided into two categories. First, there are tags for constructing ontologies. SHOE ontologies are sets of rules which define what kinds of assertions SHOE documents can make and what these assertions mean. For example, a SHOE ontology might say that a SHOE document can declare that some data entity is a "dog", and that if it does so, that this "dog" is permitted to have a "name". Secondly, there are tags for annotating web documents to subscribe to one or more ontologies, declare data entities, and make assertions about those entities under the rules proscribed by the ontologies. For example, a SHOE document subscribing to the SHOE ontology above might then declare that it's all about a dog named "Fido".

ORGANIZATION:
Parallel Understanding Systems Group
Department of Computer Science
University of Maryland at College Park

lagCmr.knowledge.TOPIC_MAPS

_CREATED: {2011-09-03} {2007-12-02}

name::
* McsEngl.conceptIt526,
* McsEngl.lagKnlg.TOPIC-MAPS,
* McsEngl.methodKnowledgeTopic-map@cptIt526,
* McsEngl.tms@cptIt526,
* McsEngl.topic-maps@cptIt526,
* McsEngl.tpmp@cptIt526,

tms'DEFINITION

_DEFINITION:
Topic Maps is an international industry standard (ISO 13250) for information management and interchange. The Topic Maps Data Model is the heart of the Topic Maps standards and is supported by several file formats, query languages and modeling languages. A topic map in a software system is usually managed using a Topic Maps engine.
[http://www.topicmaps.org//]
===
Topic maps started life as a way of representing the knowledge structures inherent in traditional back of book indexes, in order to solve the information management problems involved in creating, maintaining and processing indexes for complex documentation. As the model evolved, their scope was broadened to encompass other kinds of navigational aid, such as glossaries, thesauri and cross references.
[http://www.ontopia.net/topicmaps/materials/tao.html]
===
Topic Maps is an ISO standard for the representation and interchange of knowledge, with an emphasis on the findability of information. The standard is formally known as ISO/IEC 13250:2003.
A topic map can represent information using topics (representing any concept, from people, countries, and organizations to software modules, individual files, and events), associations (which represent the relationships between them), and occurrences (which represent relationships between topics and information resources relevant to them). They are thus similar to semantic networks and both concept and mind maps in many respects. In loose usage all those concepts are often used synonymously, though only topic maps are standardized.
[http://en.wikipedia.org/wiki/Topic_Maps]

_DESCRIPTION:
Similarly, if you are looking for a particular piece of information in a book (as opposed to enjoying the experience of reading it from cover to cover), a good index is an immense asset. The traditional back-of-book index can be likened to a carefully researched and hand-crafted map, and the task of the indexer, as Larry Bonura puts it [Bonura 1994], “to chart[ing] the topics of the document and [presenting] a concise and accurate map for readers.”
[http://www.ontopia.net/topicmaps/materials/tao.html]

tms'GENERIC

_GENERIC:
* method-knowledge#cptItsoft525#

tms'WHOLE

_WHOLE:
* tech-knowledge#cptItsoft458#

tms'Assertion

name::
* McsEngl.tms'Assertion@cptIt,

_DESCRIPTION:
Names, occurrences, and roles played in associations are thus the kinds of characteristics that can be assigned to a topic.
Any time we make an assignment of such a characteristic to a topic, we are essentially making an assertion about that topic.
...
assertions (or characteristic assignments)
[http://www.ontopia.net/topicmaps/materials/scope.htm, 2002]

tms'Association

name::
* McsEngl.tms'Association@cptIt,
* McsEngl.association-tm@cptIt,

_GENERIC:
* domainIn#ql:tm'domainin#

_DESCRIPTION:
associations, representing hypergraph relationships between topics,
[http://en.wikipedia.org/wiki/Topic_Maps]
===
"see also" references in an index of book, point to associated topics;
[hmnSngo.2011-09-01]

association's-type

name::
* McsEngl.association's-type@cptIt,

Just as topics and occurrences can be grouped according to type (e.g., composer/opera/country and mention/article/commentary, respectively), so too can associations between topics be grouped according to their type. The association type for the relationships mentioned above are written_by, takes_place_in, born_in, is_in (or geographical containment), and influenced_by. As with most other constructs in the topic map standard, association types are themselves defined in terms of topics.
[http://www.ontopia.net/topicmaps/materials/tao.html]

tms'AsTMa

name::
* McsEngl.tms'AsTMa@cptIt,

The AsTMa language family is designed to support authoring, updating, constraining and querying of Topic Maps
[http://astma.it.bond.edu.au/]

tms'CollectionKnowledge

name::
* McsEngl.tms'CollectionKnowledge@cptIt,

_GENERIC:
* domainOut,

_PART:
* topic-map,

tms'DomainIn ::this.part

name::
* McsEngl.tms'DomainIn ::this.part@cptIt,

_SPECIFIC:
* subject,

* association#ql:tm'association#,
* topic#ql:tms'topic#

tms'DomainOut ::this.part

name::
* McsEngl.tms'DomainOut ::this.part@cptIt,

_SPECIFIC:
* topic-map#ql:tms'collectionknowledge#

tms'Evaluation

name::
* McsEngl.tms'Evaluation@cptIt,

The semantic expressivity of Topic Maps is, in many ways, equivalent to that of RDF, but the major differences are that Topic Maps
(i) provide a higher level of semantic abstraction (providing a template of topics, associations and occurrences, while RDF only provides a template of two arguments linked by one relationship) and (hence)
(ii) allow n-ary relationships (hypergraphs) between any number of nodes, while RDF is limited to triplets.
[http://en.wikipedia.org/wiki/Topic_Maps]

tms'evolution#cptCore725#

name::
* McsEngl.tms'evolution@cptIt,

{time.2007}:
The First International Topic Maps Users Conference took place at the Oslo Conference Centre in Norway on March 20-21 2007.
[http://topicmaps.com/tmc/conference.jsp?conf=TM2007]

{time.2006}:
In the last years, the Topic Maps Data Model was developed and standardized by ISO in 2006, together with a XML-based serialization format, XTM 2. Later, the Compact Topic Maps Notation followed which is more suited for manual editing. Additionally, a query language and and a modeling language are currently in the progress of standardization.
[http://www.topicmaps.org/]

{time.2000}:
The topic map paradigm was first standardised by the ISO in January 2000 after nearly ten years of development [Pepp99].
[http://www.ontopia.net/topicmaps/materials/scope.htm]

{time.1991}:
Topic Maps date back to 1991 and have gone a long way since then. The article A Perspective on the Quest for Global Knowledge Interchange (PDF) by Steve Newcomb gives a historical overview. It was published as chapter 3 of XML Topic Maps – Creating and Using Topic Maps for the Web (Jack Park and Sam Hunting, eds.), 2003: Addison-Wesley. The publisher makes this chapter available free.
[http://www.topicmaps.org/]

tms'Freebase-website

_CREATED: {2011-09-11}

name::
* McsEngl.tms'Freebase-website@cptIt,
* McsEngl.conceptIt526.1,
* McsEngl.freebase@cptIt526.1,

_GENERIC:
* web-site,

_DESCRIPTION:
Freebase is a graph database. This means that instead of using tables and keys found in conventional database to define data structures, Freebase defines its data structure as a set of nodes and a set of links that establish relationships between the nodes. Because its data structure is non-hierarchical, Freebase can model much more complex relationships between individual elements than a conventional database, and is open for users to enter new objects and relationships into the underlying graph.
[http://wiki.freebase.com/wiki/Graph]
===
What is Freebase?
Freebase is an open, Creative Commons licensed collection of structured data, and a platform for accessing and manipulating that data via the Freebase API.
How big is Freebase?
Freebase contains about 20 million topics (aka entities) at the time of writing; for the latest number you can visit the Explore page which always has the latest numbers. There are hundreds of millions of assertions or facts about those entities.
[http://wiki.freebase.com/wiki/FAQ]
===
Freebase is not only a web site that people can use directly with their browsers, but it's also a collection of web services that your own web applications can use to achieve things that wouldn't be possible without additional data or a hosting platform where you can develop and run securely your web applications directly in Freebase's own server infrastructure.
[http://www.freebase.com/docs/data/introduction]

freebase'Acre

name::
* McsEngl.freebase'Acre@cptIt,

_DESCRIPTION:
Acre is an application hosting platform designed to minimize the effort required to build web applications that make use of Freebase data, or create mashups with other web services.
[http://www.freebase.com/docs/acre]

freebase'Application

name::
* McsEngl.freebase'Application@cptIt,

_DESCRIPTION:
Apps are community created web applications that use Freebase data.
[http://www.freebase.com/apps]

_SPECIFIC:
* ids: http://ids.freebaseapps.com//
* sets: http://sets.freebaseapps.com//
* wikey: http://wikey.freebaseapps.com//

freebase'Base

name::
* McsEngl.freebase'Base@cptIt,

_DESCRIPTION:
A base is a new type of website that anyone can build using the free, open data in Freebase. It is a place to organize and share collections of information about a particular subject, like San Francisco, American Comedy, or The Smurfs.
[http://wiki.freebase.com/wiki/How_to_build_a_base]

Base topic type
Each Base in Freebase has a type called the Base topic type. For any base like /base/foo the base topic type will be called /base/foo/topic.
[http://wiki.freebase.com/wiki/Base_topic_type]

Taking over a base
So someone made a base and it's empty or gathering dust... but it has a name you want. What do you do?
Post a message on the base homepage, asking the admin if you can help out as a co-admin, letting them know you're keen to improve the base
If you get no response, repeat it again a couple of weeks later (giving the admin a reasonable time to respond, in case they're on vacation or something)
When you have attempted to contact the admin(s) of the base at least twice, giving at least 2 weeks for them to respond in each case...
Contact someone with superuser privileges and let them know. Ways to do this include:
post on the "General Support" discussion forum on Freebase.com
post on the freebase-discuss mailing list
raise a Jira ticket in the FREEBASE queue
The superuser will transfer ownership of the base to you
If the base is a spam base, the above process may be faster. You can go direct to contacting a superuser in that case.
[http://wiki.freebase.com/wiki/Taking_over_a_base]

freebase'Content-store

name::
* McsEngl.freebase'Content-store@cptIt,

_DESCRIPTION:
In addition to the Metaweb graph database, Metaweb servers also implement a content store. The content store is responsible for storing chunks of binary data (in SQL these chunks are called BLOBs) and is tightly integrated with the graph database. Each chunk in the content store has a corresponding node in the graph, and metadata about the content (such as its MIME type) is stored as relationships in the graph. Interestingly, the SHA2 hashcode of a chunk is used as the key into the content store, which makes it possible to test whether the store contains a specific chunk without uploading that chunk, and also prevents duplication of entries in the content store.
[http://www.freebase.com/docs/mql/ch02.html]

freebase'blob

name::
* McsEngl.freebase'blob@cptIt,

A blob (binary large object) is any block of binary data uploaded via the trans/upload or trans/uri_submit API services. All uploaded images and files are blobs.
[http://wiki.freebase.com/wiki/Blob]

freebase'Domain

name::
* McsEngl.freebase'Domain@cptIt,

_DESCRIPTION:
A domain is a collection of Types which share a namespace#ql:freebase'namespace#. It is typed as /type/domain. It can occur anywhere in the namespace, eg:
/film
/base/tallships
/user/skud/default_domain
/freebase/apps
Commons and Bases are special types of domains.
[http://wiki.freebase.com/wiki/Domains]

ID

name::
* McsEngl.ID-of-domain-freebase@cptIt,

Just as properties are grouped into types, types themselves are grouped into domains. Think of domains as the sections in your favorite newspaper: Business, Life Style, Arts and Entertainment, Politics, Economics, etc. Each domain is given an ID (identifier), e.g.,

/business is the ID of the Business domain
/music - the Music domain
/film - the Film domain
/medicine - the Medicine domain
etc.
The ID of a domain looks like a file path, or a path in a web address.
[http://www.freebase.com/docs/data/basic_concepts]

freebase'EVOLUTION#cptCore546.171#

name::
* McsEngl.freebase'EVOLUTION@cptIt,

{time.2010-07-16}:
Freebase is a large collaborative knowledge base consisting of metadata composed mainly by its community members. It is an online collection of structured data harvested from many sources, including individual 'wiki' contributions.[2] Freebase aims to create a global resource which allows people (and machines) to access common information more effectively. It was developed by the American software company Metaweb and has been running publicly since March 2007. Metaweb was acquired by Google in a private sale announced July 16, 2010.
Freebase data is available for free/libre for commercial and non-commercial use under a Creative Commons Attribution License, and an open API, RDF endpoint, and database dump are provided for programmers. Owned by google
[http://en.wikipedia.org/wiki/Freebase]

freebase'Graph-database

name::
* McsEngl.freebase'Graph-database@cptIt,

Graph
Node

When viewed at the lowest level, the Metaweb graph is a set of nodes and a set of links or relationships between those nodes. Each node has a unique identifier (so it can be named and referred to) and a record of when and by whom it was created. Other than the id, timestamp and creator, however, the nodes in the graph hold no information themselves. All the interesting data in the database is stored in the form of relationships between nodes (or between nodes and primitive values).
[http://www.freebase.com/docs/mql/ch02.html]

Relationship

freebase'graphd

name::
* McsEngl.freebase'graphd@cptIt,

graphd is the back-end database which powers Freebase.com. It is a in-house graph database or tuple store which is written in C and runs on Unix-like machines. It processes graph query language (GQL) queries (translated from the MQL queries submitted through the Freebase API). The best available overview is an April 2008 blog post by graphd lead, Scott Meyers. For more technical details, see the team's SIGMOD '10 paper.
Graphd is different than relational databases. Relational databases store data in the form of tables, but the database stores data as a graph of nodes and relationships between those nodes. Relational databases use the SQL query language and accept queries and return results using a specialized network protocol. Metaweb uses the MQL query language and communicates via standard HTTP requests and responses.
Once written, primitives are read only. Graphd is a log-structured or append-only store. To “modify” a primitive, for example by changing the value, you write a new primitive carrying the modification and use the prev to indicate that it replaces the “modified” primitive. To delete a primitive, you write a new primitive which marks the primitive you wish to delete as being deleted. Deleted or versioned primitives are weeded out during query execution.
In addition to many implementation advantages, a log-structured database makes it easy to run queries “as of” a certain date.
In April 2008, Metaweb reported a sustained performance of about 3300 "simple" queries/sec on a single AMD64 core for a database of 121 million primitives (aka "facts"). See the blog post for more details.
Metaweb has no announced plans to open source graphd or even to sell it as a commercial product. Much of it is kept secret.
[http://wiki.freebase.com/wiki/Graphd]

freebase'Metaweb

name::
* McsEngl.freebase'Metaweb@cptIt,

Metaweb is the commercial entity that sponsored and developed the Freebase platform. Metaweb was acquired by Google in July, 2010.
[http://wiki.freebase.com/wiki/FAQ]

freebase'MQL

name::
* McsEngl.freebase'MQL@cptIt,

_DESCRIPTION:
MQL (Metaweb Query Language; rhymes with "pickle") is an API for making programmatic queries to freebase. This allows you to incorporate knowledge from the Freebase database into your own applications and websites. It is analogous to the SPARQL query language used in RDF. It uses JSON objects as queries via standard HTTP requests and responses.
[http://wiki.freebase.com/wiki/MQL]

mql'Editor

name::
* McsEngl.mql'Editor@cptIt,

mql'Query

name::
* McsEngl.mql'Query@cptIt,

The key point is this:
A MQL query is expressed in JSON, and the results to a MQL query is also expressed in JSON. Conceptually, Freebase processes the query by taking the query JSON and filling in the blanks in order to produce the result JSON.
[http://www.freebase.com/docs/data/first_query]

In a browser:
https://api.freebase.com/api/service/mqlread?query=
{"query":{"type":"/music/artist","name":"The Police","album":[]}}

in query-editor:
{
"type":"/music/artist",
"name":"The Police",
"album":[]
}

mql'Resource

name::
* McsEngl.mql'Resource@cptIt,

_SPECIFIC:
* editor: http://www.freebase.com/queryeditor,
* reference: http://www.freebase.com/docs/mql,

mql'Result

name::
* McsEngl.mql'Result@cptIt,

freebase'Namespace

name::
* McsEngl.freebase'Namespace@cptIt,

_DESCRIPTION:
A namespace is a directory of uniquely named objects. All objects in the namespace have a name and every name is unique. Common examples of namespaces are the directories in a computer file system, domain names on the internet, and paths in a URL.
Often namespaces are organized in a hierarchy. Multiple hierarchical namespaces can be represented in a single string by using separator characters, like the slash (/) in a directory path, to distinguish the pieces.
[http://wiki.freebase.com/wiki/Namespace]

_SPECIFIC:
* en,

/en

Common well-known topics are given IDs in the /en namespace, which are human-readable English strings.
[http://www.freebase.com/docs/data/basic_concepts]

freebase'Property

name::
* McsEngl.freebase'Property@cptIt,

_DESCRIPTION:
Properties of a topic define a HAS A relationship between the topic and the value of the property. e.g. Paris {topic} has a population {property} of 2153600 {value}.
In Freebase the value of a property can also be another topic. e.g. Apocalypse Now {topic} has a director {property} Francis Ford Coppola {value}.
It's very common that the property name is a verb, or verb phrase. e.g. 'directed by'.
[http://wiki.freebase.com/wiki/Properties]

ID

Just as a type inherits the beginning of its ID from its domain, a property also inherits the beginning of its ID from the type it belongs to. For example, the Industry property of the Company type (used for specifying which industry a company is in) is given the ID /business/company/industry. Here are some other examples:

/automotive/engine/horsepower is the ID of the Horsepower property of the (Automotive) Engine type
/astronomy/star/planet_s is the ID of the Planets property of the Star type (used for listing planets around a star)
/language/human_language/writing_system is the ID of the Writing System property of the Human Language type
Thus, domains, types, and properties are given IDs conceptually arranged in a file directory-like hierarchy.
[http://www.freebase.com/docs/data/basic_concepts]

Value

Properties are multi-value by default, and multi-value properties and single-value properties can be queried in the same way.
[http://www.freebase.com/docs/data/basic_concepts]

freebase'Resource

name::
* McsEngl.freebase'Resource@cptIt,

_SPECIFIC:
* help: http://wiki.freebase.com/wiki/Main_Page,
* faq: http://wiki.freebase.com/wiki/FAQ,

freebase'Schema

name::
* McsEngl.freebase'Schema@cptIt,

_DESCRIPTION:
We use the term Schema to refer to the way Freebase's data is laid out or structured. In the Semantic web world, this is referred to as Ontology.
[http://wiki.freebase.com/wiki/Schema]

freebase'Topic

name::
* McsEngl.freebase'Topic@cptIt,

_DESCRIPTION:
A lot of data in Freebase corresponds to information you might find on Wikipedia. Corresponding to a Wikipedia article is a Freebase topic (as in "topic of discourse"). For example, corresponding to this Wikipedia article on Bob Dylan is this Freebase topic on Bob Dylan. Of course, Freebase contains a lot of topics that have no correspondence in Wikipedia.

The term "topic" is chosen purposedly for its vagueness because there are all kinds of topic. Topics can range from

physical entities, e.g., Bob Dylan, the Louvre Museum, the Saturn planet, to
artistic/media creations, e.g., The Dark Knight (film), Hotel California (song), to
classifications, e.g., nobel gas, Chordate, to
abstract concepts, e.g., love, to
schools of thoughts or artistic movements, e.g., Impressionism.
Some topics are important because they hold a lot of data (e.g., Wal-Mart), and some are important because they link to many other topics, potentially in different domains of information. For example, because such abstract topics as love, poverty, chivalry, etc. can be book subjects, poetry subjects, film subjects, and so forth, given a book, we can find poems and films about the same subject(s) as the book.
[http://www.freebase.com/docs/data/basic_concepts]

Creating

name::
* McsEngl.freebase'topic-creation@cptIt,

Creating a new topic
BEFORE CREATING A NEW Topic in Freebase:

Many times when you think you need to Create a New Topic, you probably will NOT need to. Since Freebase already has millions and millions of existing topics, and sometimes the topic you need or want to link with, or select in a drop down, is already created. It's just a matter of searching through the suggestions that appear in a drop down list or the flyout panel that appears and selecting the correct topic. (or even typing the right phrase into the input box)
( To make finding the correct topic you need, even easier than now, the hope is to offer a new Suggestion service than currently used in many areas of Freebase and dropdown lists, in the later half of 2011 )

IF YOUR SURE YOU NEED TO CREATE A NEW Topic in Freebase:

Think about what sort of thing your topic is. For instance, is it a Person, Film, or Skyscraper.
On Freebase.com, navigate to that Type (the Search interface at the top of each page is an easy way to do this)
When you are on the type page, click "Add more topics" in the upper right of the page
Enter the name of your new topic
Once it is added, you can click through to it and then edit it to add more information.
New topics usually appear in a Search within a minute or so, but this can be longer if the system is under high load.
[http://wiki.freebase.com/wiki/Creating_a_new_topic]

GUID

Topics are uniquely identified within Freebase by GUIDs.
[http://www.freebase.com/docs/data/basic_concepts]

Type

A topic can be assigned one or more types (the default type being /common/topic)
[http://www.freebase.com/docs/data/basic_concepts]

freebase'Type

name::
* McsEngl.freebase'Type@cptIt,
* McsEngl.type-freebase@cptIt,

_WHOLE:
* domain#ql:freebase'domain#

_Descritpion:
Each type carries a different set of properties germane to that type.
...
Thus, a type can be thought of as a conceptual container of properties that are most commonly needed for describing a particular aspect of information. (You can think of a type as analogous to a relational table, and each "type" table has a foreign key into the one "identity" table that uniquely defines each topic.)
[http://www.freebase.com/docs/data/basic_concepts]

ID

name::
* McsEngl.ID-of-type-freebase@cptIt,

Each type is also given an ID, and its ID is based on the domain in which it belongs. For example, the Company type belongs in the Business domain, and it's given the ID /business/company. Here are some other examples:

/music/album is the ID of the (Music) Album type, belonging in the Music domain
/film/actor - the Actor type in the Film domain
/medicine/disease - the Disease type in the Medicine domain
[http://www.freebase.com/docs/data/basic_concepts]

tms'GTM

name::
* McsEngl.tms'GTM@cptIt,

GTM
GTM is a graphical notation used to define ontologies (level 1) and represent Topic Maps instance data (level 0). Formally, GTM is specified in ISO 13250-7, that is, part 7 of the Topic Maps standard. The acronym GTM stands for Graphical Topic Maps notation.
[http://www.isotopicmaps.org/gtm/]

tms'Human

name::
* McsEngl.tms'Human@cptIt,

Pepper-Steve

Steve Pepper
Ontopia
Waldemar Thranes gt. 98
N-0175 Oslo, NORWAY
+47 23233080
pepper@ontopia.net

tms'JTM

name::
* McsEngl.tms'JTM@cptIt,
* McsEngl.JSON-Topic-Maps@cptIt501i,
* McsEngl.JTM@cptIt501i,

_GENERIC:
* method-representation,

JSON Topic Maps (JTM) is a format for topic maps using the JavaScript Object Notation (JSON). It is targeted for web applications which process topic maps on the web browser. The latest version is 1.1.
[http://www.cerny-online.com/jtm/]

jtms'


[http://www.cerny-online.com/jtm/1.1//]

jtm'


[http://www.cerny-online.com/jtm/1.1//]

jtm'Name

name::
* McsEngl.jtm'Name@cptIt,

_DESCRIPTION:
The name object contains the following members:
value - a string required
type - a topic reference
scope - an array of topic references
variants - an array of Variants
reifier - a topic reference or null
item_identifiers - an array of strings
[http://www.cerny-online.com/jtm/1.1//]

jtm'Occurrence

name::
* McsEngl.jtm'Occurrence@cptIt,

_Example:
{"version":"1.1",
"prefixes":{"tns":"http://psi.topincs.com/"},
"item_type":"occurrence",
"parent":["si:[tns:people/thomas-vinterberg]"],
"value":"1969-05-19",
"datatype":"[xsd:date]",
"type":"si:[tns:date-of-birth]"}
[http://www.cerny-online.com/jtm/1.1//]

jtm'Role

name::
* McsEngl.jtm'Role@cptIt,

The role object contains the following members:
player - a topic reference required
type - a topic reference required
reifier - a topic reference or null
item_identifiers - an array of strings
[http://www.cerny-online.com/jtm/1.1//]

jtm'Topic

name::
* McsEngl.jtm'Topic@cptIt,

_DESCRIPTION:
The topic object contains the following members:
instance_of - an array of topic references
names - an array of Names
occurrences - an array of Occurrences
item_identifiers - an array of strings
subject_identifiers - an array of strings
subject_locators - an array of strings
The union of item_identifiers, subject_identifiers, and subject_locators must not be empty.
[http://www.cerny-online.com/jtm/1.1//]

_Example:
{"version":"1.1",
"prefixes":{"tmdm":"http://psi.topicmaps.org/iso13250/model/",
"tns":"http://psi.topincs.com/"},
"item_type":"topic",
"subject_identifiers":["[tns:people/thomas-vinterberg]"],
"instance_of":["si:[tns:person]"],
"names":[
{"value":"Thomas Vinterberg",
"type":"si:[tmdm:topic-name]"}]}
[http://www.cerny-online.com/jtm/1.1//]

jtm'Topic-map

name::
* McsEngl.jtm'Topic-map@cptIt,

_DESCRIPTION:
The topic map object contains the following members:
topics - an array of Topics
associations - an array of Associations
item_identifiers - an array of strings
reifier - a topic reference or null
[http://www.cerny-online.com/jtm/1.1/]

_Example:
{"version":"1.1",
"prefixes":{"country":"http://www.topicmaps.org/xtm/1.0/country.xtm#",
"tns":"http://psi.topincs.com/"},
"item_type":"topicmap",
"topics":[
{"subject_identifiers":["[tns:movies/dear-wendy]"],
"instance_of":["si:[tns:movie]"],
"names":[
{"value":"Dear Wendy",
"type":"si:[tns:title]",
"scope":[
"si:[country:US]",
"si:[country:DE]"]}],
"occurrences":[
{"value":"2005",
"type":"si:[tns:publication-year]",
"datatype":"[xsd:gYear]"}]}],
"associations":[
{"type":"si:[tns:director]",
"roles":[
{"player":"si:[tns:movies/dear-wendy]",
"type":"si:[tns:work]"},
{"player":"si:[tns:people/thomas-vinterberg]",
"type":"si:[tns:author]"}]}]}

jtm'Topic-reference

name::
* McsEngl.jtm'Topic-reference@cptIt,

When a topic is referred to by means of a locator L, the string is to be constructed as follows:
L is a subject identifier: "si:L"
L is a subject locator: "sl:L"
L is an item identifier: "ii:L"
Any such string is called a topic reference.
[http://www.cerny-online.com/jtm/1.1//]

jtm'Variant

name::
* McsEngl.jtm'Variant@cptIt,

The variant object contains the following members:
datatype - a string
scope - an array of topic references required
value - a string required
reifier - a topic reference or null
item_identifiers - an array of strings
The value of the scope member only contains references to those topics, which are not already contained in the scope of parent name. This follows from the constraint of the TMDM on Variant scope.
[http://www.cerny-online.com/jtm/1.1//]

tms'LTM

name::
* McsEngl.tms'LTM@cptIt,
* McsEngl.LTM-TM@cptIt526i,

The Linear Topic Map notation (LTM) is a simple textual format for topic maps. Just like XTM, the XML interchange format, it represents the constructs in the topic map standard as text, but unlike XTM it is compact and simple. The notation can be written in any text editor and processed by topic map software that supports it, or converted into the XML format supported by such software.
[http://www.ontopia.net/download/ltm.html]

_ADDRESS.WPG:
* file:///D:/TECHKNO/PROGRAM/ONTOPIA/doc/misc/ltm.html

ltm'Example

name::
* McsEngl.ltm'Example@cptIt,

Below is given a more complete example of an LTM topic map. Note that text appearing between '/*' and '*/' is comments.

/* topic types */

[format = "Format"]
[standard = "Standard"]
[organization = "Organization"]

/* association types */

[format-for = "Format for"]
[defined-by = "Defined by"]

/* occurrence types */

[specification = "Specification"]
[homepage = "Home page"]

/* topics, associations and occurrences */

[topic-maps : standard = "Topic maps"
= "ISO/IEC 13250 Topic Maps" / fullname]
{topic-maps, specification,
"http://www.y12.doe.gov/sgml/sc34/document/0129.pdf"}

[xtm : format = "XTM Syntax"]

[ltm : format = "The linear topic map notation";
"linear topic map notation, the"
@"http://www.ontopia.net/topicmaps/ltm-tech-report.html"]
{ltm, specification, "http://www.ontopia.net/topicmaps/ltm-tech-report.html"}

format-for(ltm, topic-maps)
format-for(xtm, topic-maps)

defined-by(ltm, ontopia)
defined-by(xtm, topicmaps.org)

[ontopia : organization = "Ontopia AS"]
{ontopia, homepage, "http://www.ontopia.net"}

[topicmaps.org : organization = "TopicMaps.Org"]
{topicmaps.org, homepage, "http://www.topicmaps.org"}
[file:///D:/TECHKNO/PROGRAM/ONTOPIA/doc/misc/ltm.html]

tms'Notation

name::
* McsEngl.tms'Notation@cptIt,
* McsEngl.format-tm@cptIt,

_GENERIC:
* notation-knowledge#ql:mkno'notation#

_SPECIFIC:
* AsTMa,
* GTM,
* JTM,
* LTP,
* XTM,

tms'Ontopedia

name::
* McsEngl.tms'Ontopedia@cptIt,
* McsEngl.ontopedia@cptIt526i,

_DESCRIPTION:
What is ontopedia.net?
ontopedia.net is an arena for conducting experiments with a subject-centric approach to information and knowledge management. Everything we do here is related to Topic Maps.

What does subject-centric mean?
It means what it says: Putting subjects, not documents or computers, at the centre of our computing universe. Subjects are what people are interested in when looking for information or knowledge, and they should be able to find information about those subjects without bothering about which documents they are in, or which applications created those documents.
[http://www.ontopedia.net/] 2011-09-11

resourceInfHmn#cptResource843#

_SPECIFIC:
* http://www.ontopedia.net//

tms'Ontopia-program (java)

name::
* McsEngl.tms'Ontopia-program (java)@cptIt,
* McsEngl.ontopia@cptIt526i,

_GENERIC:
* program#ql:tms'program#

_DESCRIPTION:
Ontopia is an open source application development platform for Topic Maps. It is the most comprehensive suite of Topic Maps tools available, and consists of a number of interrelated products that address every aspect of the Topic Maps project life cycle, including topic map creation (both automated and manual), validation, maintenance, storage, querying and end-user delivery.
[http://localhost:8080/about.jsp, 5.1.3]
===
Ontopia is a set of tools which contains everything you need to build a full Topic Maps-based application. Using Ontopia you can design your ontology, populate the topic map manually and/or automatically, build the user interface, show graphical visualizations of the topic map, and much more.
The core of Ontopia is the engine, which stores and maintains the topic maps, and has an extensive Java API. On top of it are built a number of additional components, as shown in the diagram below. More information about these components can be found on the right.
Ontopia is 100% Java, and runs on any operating system which has Java 1.5. It is fully open source and can be used without any restrictions beyond those in the Apache 2.0 license.
[http://www.ontopia.net/section.jsp?id=ontopia-the-product]

ontopia'Congiguration

name::
* McsEngl.ontopia'Congiguration@cptIt,

_tm_sources.xml:
* location: \TECHKNO\PROGRAM\ONTOPIA\apache-tomcat\common\classes
* The Navigator Framework uses this file to find topic maps and enter them into the topic map repository. The file basically contains a collection of sources, where each source can produce references to topic maps. The next sections describe different types of sources that can be configured in the file.
[file:///D:/TECHKNO/PROGRAM/ONTOPIA/doc/navigator/config.html]

ontopia'Engine

name::
* McsEngl.ontopia'Engine@cptIt,

The engine
The Topic Maps engine is the heart of Ontopia, since it takes care of storing and providing access to the topic maps in the system. Essentially, the engine is a set of Java APIs, for

Accessing and modifying any part of a topic map
Importing topic maps from file (in XTM 1.0, 2.0, CTM, TM/XML, or LTM format)
Exporting topic maps to file (to XTM 1.0, 2.0, TM/XML, or LTM format)
Converting from RDF to Topic Maps (and vice versa)
Executing queries using the tolog query language
Performing full-text search
The engine can keep topic maps in memory or store them in a relational database. The API to the engine is the same in both cases, so that applications can switch backends without changing anything more than the configuration. The following databases are supported:

Oracle 8 or newer
Microsoft SQL Server 2005 or newer
PostgreSQL 7.4 or newer
MySQL 5.0 or newer
h2 version 1.1 or newer
[http://www.ontopia.net/page.jsp?id=engine]

ontopia'Evolution

name::
* McsEngl.ontopia'Evolution@cptIt,

{time.2011}:
After a short beta period Ontopia 5.1.3 has just been released. This is a fairly minor release which fixes a few bugs and adds some minor new functionality.
[http://ontopia.wordpress.com/2011/02/21/ontopia-5-1-3-released/]

{time.2001}:
Ontopia 1.0 was released in June 2001
[http://www.ontopia.net/page.jsp?id=about]

ontopia'Installation

name::
* McsEngl.ontopia'Installation@cptIt,

ontopia'Navigator-Framework

name::
* McsEngl.ontopia'Navigator-Framework@cptIt,

_DESCRIPTION:
The idea behind the Ontopia Navigator Framework is that although the Omnigator can display any topic map and has a nice user interface, it is unlikely that all those building web sites using topic maps will want to use the Omnigator as the web site presenting their topic maps to the world. Most likely, those building topic map web sites will wish to have them look as much like ordinary web sites as possible.

Using the navigator framework it is easy to develop new topic map-based web sites, and these web sites need not look anything like the Omnigator. In fact, they can have any user interface at all. The navigator framework does not generate any HTML; this is left for your web application to do. The result is that you have complete control over the layout and structure of your application.
[file:///D:/TECHKNO/PROGRAM/ONTOPIA/doc/navigator/navguide.html]

ontopia'Omnigator (browser)

name::
* McsEngl.ontopia'Omnigator (browser)@cptIt,
* McsEngl.omnigator@cptIt526i,
* McsEngl.ontopia'browser@cptIt,
* McsEngl.ontopia's-browser@cptIt526i,

_DESCRIPTION:
The Omnigator is an application that lets you load and browse any topic map, including your own, using a standard web browser. The name is a contraction of "omnivorous navigator", and was chosen to underline the application's principal design goal, which is to be able to make sense of any conforming topic map. The Omnigator is intended as a teaching aid, to help you understand topic map concepts, and as an aid in developing your own topic maps.
[file:///D:/TECHKNO/PROGRAM/ONTOPIA/apache-tomcat/webapps/omnigator/docs/navigator/userguide.html]
===
Omnigator is a web-based Topic Maps browser which can display any topic map. It is not intended as an end-user tool (although some have used it as such), but is more of a developer support since it can be used to view any part of any topic map. One user referred to it as a "Topic Maps debugger", which is quite accurate, but it is actually more than that, since it can be used to run tolog queries, validate topic maps, get size statistics, etc.
[http://www.ontopia.net/page.jsp?id=omnigator]

omnigator'Attribute

name::
* McsEngl.omnigator'Attribute@cptIt,

But the Omnigator lets you do far more than simply browse your topic maps. It supports all aspects of the Topic Maps standard and has a host of powerful features, such as the ability to merge topic maps on the fly; search in ways that make Google boggle; export to a range of syntaxes; customize different views; produce filtered subsets based on scope; perform semantic validation; and much more besides.
[http://localhost:8080/omnigator/models/index.jsp]

omnigator'Tech

name::
* McsEngl.omnigator'Tech@cptIt,

Technology
The Omnigator is built using the tools in the Ontopia Java toolkit for Topic Maps application development. It is built on top of the Ontopia Topic Maps Engine using the Ontopia Navigator Framework, a toolkit for building web delivery applications. We recommend using the Navigator Framework for end-user applications designed around a specific ontology; it's like XSLT for Topic Maps. You can see examples of such custom applications on our Scripts and Languages and OperaMap web sites. For more information about these products and Ontopia's partners around the world, contact info@ontopia.net or visit www.ontopia.net.
[http://localhost:8080/omnigator/models/index.jsp]

omnigator'User-interface

name::
* McsEngl.omnigator'User-interface@cptIt,

User Interface
The Omnigator's interface has not been designed for end users and Ontopia does not therefore recommend using the Omnigator for end user applications. End users should not be aware that the application they are using is driven by a topic map: They should simply experience an interface that for once makes it possible to find the information they are looking for, quickly, easily, and intuitively. The reason you will see technical terms (like "topic type") in the Omnigator is because it is intended as a teaching aid and debugger for people like yourself who want to know what is going on under the covers.
[http://localhost:8080/omnigator/models/index.jsp]

ontopia'Ontopoly (editor)

name::
* McsEngl.ontopia'Ontopoly (editor)@cptIt,
* McsEngl.ontopoly@cptIt526i,
* McsEngl.ontopia'editor@cptIt,

_DESCRIPTION:
The editor
Ontopoly is a Topic Maps editor that lets you incrementally design your Topic Maps ontology using a user-friendly web interface. The ontology then drives a web-based user interface for populating the topic map with instance data. Thus, it is possible to build an entire topic map stored either in file or a database using Ontopoly.

The instance editing user interface is configurable, and can be set up to present reduced views of the data to users, thus reducing the amount of clutter and confusion for authors.

In addition, Ontopoly is embeddable inside other applications, so that it is possible to add Topic Maps editing capabilities to other applications (such as content management systems).
[http://www.ontopia.net/page.jsp?id=ontopoly]

ontopoly'PART

name::
* McsEngl.ontopoly'PART@cptIt,

_DESCRIPTION:
Ontopoly is therefore divided into two main parts: the ontology editor and the instance editor. The application also has an administration interface, i.e., a page for adding metadata to the topic map (description, creator, version, etc.), validating it, etc.; and an interface for exporting to various interchange syntaxes.
[file:///D:/TECHKNO/PROGRAM/ONTOPIA/apache-tomcat/webapps/ontopoly/doc/user-guide.html, 5.1.3]

ontopia'Resource

name::
* McsEngl.ontopia'Resource@cptIt,

_ResourceWeb:
* http://www.ontopia.net//

_ResourceLocal:
* 5.1.3: file:///D:/TECHKNO/PROGRAM/ONTOPIA/index.html,

ontopia'Running

name::
* McsEngl.ontopia'Running@cptIt,

4.3.1. Start the application server

Windows
Locate the ${basedir}/apache-tomcat/bin directory in Windows Explorer.

Double-click on the startup.bat file.

Unix
Change directory to ${basedir}/apache-tomcat.

Execute the bin/startup.sh script.

After starting the application server it will take a few seconds before the server is initialized and ready to answer requests.

If the application server fails to start correctly you may have to set the JAVA_HOME environment variable to point to the directory where the Java Runtime Environment is installed. This can be done either at the command-line before running the tomcat startup script, or by editing the script to insert a line setting it. See appendix C for details.

4.3.3. Stop the application server

Windows
Close the server window(s) or run shutdown.bat.
Unix
Change directory to ${basedir}/apache-tomcat.

Execute the bin/shutdown.sh script.

ontopia'Settings

name::
* McsEngl.ontopia'Settings@cptIt,

CLASSPATH:
.;\JAVA\CLASSES;\Program Files\Java\jre6\lib\ext\QTJava.zip;
\TECHKNO\PROGRAM\ONTOPIA\lib\ontopia.jar;
\TECHKNO\PROGRAM\ONTOPIA\lib\ontopia-tests.jar;
\TECHKNO\PROGRAM\ONTOPIA\apache-tomcat\common\lib\servlet-api.jar;
\TECHKNO\PROGRAM\ONTOPIA\apache-tomcat\common\lib\jsp-api.jar;
\TECHKNO\PROGRAM\ONTOPIA\apache-tomcat\common\lib\jstl.jar;
\TECHKNO\PROGRAM\ONTOPIA\apache-tomcat\common\lib\standard.jar;

\JAVA\CLASSES\postgresql-9.1-901.jdbc4.jar

ontopia'tolog

name::
* McsEngl.ontopia'tolog@cptIt,

_DESCRIPTION:
tolog is a language for querying topic maps, inspired by Datalog (a subset of Prolog) and SQL. Using tolog one can query a topic map in much the same way as a relational database can be queried with SQL. It is possible to ask for all topics of a particular types, the names of all topics of a particular type in a particular scope, for all topics used as association role types, for all associations with more than two roles, and so on.
[http://www.ontopia.net/omnigator/docs/query/tutorial.html]

tolog'Predicate

name::
* McsEngl.tolog'Predicate@cptIt,

Assertions in tolog consist of predicates, which are relationships between sets of values. A predicate can be thought of as a table of all the sets of values that make it true, and querying is done by matching the query against the table, returning all sets of values that match.
One tolog predicate is the one known as instance-of, which is used to query the topic instance-topic type relationship. One query using this predicate might be:
instance-of($TOPIC, $TYPE)?
[http://www.ontopia.net/omnigator/docs/query/tutorial.html]

ontopia'Vizigator

name::
* McsEngl.ontopia'Vizigator@cptIt,
* McsEngl.vizigator@cptIt526,

The Ontopia Vizigator ("vi[z]ual navigator") uses a graphical interface to provide an additional method of topic map navigation. Although Vizigator can be used on its own, it is also well-suited to complement a text-based interface.
...
Vizigator is used to visualize a topic map, not an ontology. That is, Vizigator is designed to help users understand, navigate, and browse a populated topic map via a graphical interface.
Note
It is possible to visualize an ontology using Vizigator; however, it requires modifications to the topic map. One way to accomplish this is to create a topic type, such as 'ontology_topic' and make all typing topics an instance of that type.
Creating and editing topic maps via Vizigator is not supported at this time.
[file:///D:/TECHKNO/PROGRAM/ONTOPIA/apache-tomcat/webapps/omnigator/docs/vizigator/userguide.html]

ontopia'TouchGraph

name::
* McsEngl.ontopia'TouchGraph@cptIt,

* http://www.touchgraph.com/navigator

Vizigator uses TouchGraph, an open source toolkit for graph visualization, which is maintained as a Sourceforge project. For further information, please see the Sourceforge project homepage and the TouchGraph homepage with other example applications.

ontopia'Web-framework

name::
* McsEngl.ontopia'Web-framework@cptIt,

_DESCRIPTION:
Web framework
The Navigator Framework is a JSP tag library and Java API which enables developers to quickly and easily develop web-based interfaces based on Topic Maps using Ontopia. The tag library generates no HTML on its own, giving developers complete freedom to produce exactly the type of output they wish. The tag library is based on the tolog query language, and is quite similar to XSLT and the JSTL core tag library. It is also integrated with the JSTL core tag library, allowing interaction between the two sets of tag libraries and the use of the JSTL expression language.
[http://www.ontopia.net/page.jsp?id=web-framework]

tms'Program

name::
* McsEngl.tms'Program@cptIt,

_SPECIFIC:
* ontopia,
* TM4Jscript,
* Topincs,

tms'TM4Jscript

name::
* McsEngl.tms'TM4Jscript@cptIt,
* McsEngl.TM4Jscript@cptIt525i,

TM4Jscript is an open-source Topic Maps engine written entirely in JavaScript, and hence supported by a host of browsers out there. It includes JTMA (Javascript Topic Maps Application), a Topic Maps editor, also written in JavaScript.
[http://tm4jscript.sourceforge.net/index.html]

tms'Topincs

name::
* McsEngl.tms'Topincs@cptIt,

Topincs is a client server application that runs on top of Apache 2, MySQL and PHP 5. Thus the administration of a Topincs Server requires a familiarity with these technologies. For the modelling of a Topincs Store you need to understand Topic Maps, in particular the Topic Maps Data Model and the Topic Maps Constraints Language.
[http://www.cerny-online.com/topincs/manual/]

tms'ResourceInfHmnn#cptResource843#

name::
* McsEngl.tms'ResourceInfHmnn@cptIt,

_ADDRESS.WPG:
* http://www.topicmaps.org// - Where the standard lives.
* http://www.topicmap.com//
- http://www.ontopia.net/topicmaps/materials/The_Case_for_Published_Subjects.pdf,

- Living with topic maps and RDF
Topic maps, RDF, DAML, OIL, OWL, TMCL
http://www.ontopia.net/topicmaps/materials/tmrdf.html,

The Case for Published Subjects (psi 2006.04)

name::
* McsEngl.The Case for Published Subjects (psi 2006.04)@cptIt,

tms'Scope

name::
* McsEngl.tms'Scope@cptIt,

_DESCRIPTION:
One useful and potentially very powerful application of scope is to permit the capture of different "Weltanschauungen", or world views, of the subject. This is extremely important when merging topic maps, since it permits knowledge of which assertions came from which source to be retained: The individual names, occurrences, and associations can be scoped in such a way as to indicate where they originated. However, this is not the only application of scope, as we shall see.
[http://www.ontopia.net/topicmaps/materials/scope.htm, 2002]

tms'Standard

name::
* McsEngl.tms'Standard@cptIt,

_SPECIFIC:
* ISO 13250:
- http://www.isotopicmaps.org//
- http://www.itscj.ipsj.or.jp/sc34/open/1045.htm,
- http://www1.y12.doe.gov/capabilities/sgml/sc34/document/0446.htm (fundamental cpts)

tms'subject

name::
* McsEngl.tms'subject@cptIt,
* McsEngl.topic's-subject-tmps@cptIt,
* McsEngl.subject-topicmaps@cptIt,

_DESCRIPTION:
Strictly speaking, the term “topic” refers to the object or node in the topic map that represents the subject being referred to. However, there is (or should be) a one-to-one relationship between topics and subjects, with every topic representing a single subject and every subject being represented by just one topic. To a certain degree, therefore, the two terms can be used interchangeably.[3]
[http://www.ontopia.net/topicmaps/materials/tao.html]
===
The "referent" of a topic.
[hmnSngo.2011-09-01]

PSI

subject-address-tms

_DESCRIPTION:
In Topic Maps, a fundamental distinction is made between subjects which are addressable and subjects which are not. They are sometimes called "addressable subjects" and "non-addressable subjects", respectively.
In the case of addressable subjects (i.e., information resources such as the RDF document describing Eric Miller in Figure 2, above), a URI can be used to identify the subject directly. When used in this way, the URI is called a subject address.
[http://www.ontopia.net/topicmaps/materials/identitycrisis.html]

subject-identifier-tms

_DESCRIPTION:
* the "information-resource" about a "subject.
[hmnSngo.2011-09-13]

subject-indicator-tms

_DESCRIPTION:
* the "name" of a "subject-identifier" in URI form.
[hmnSngo.2011-09-13]
===
When a URI is used to identify a subject indirectly, it is called a subject identifier (to distinguish it from subject address, a URI used to identify a subject directly). This is the case in Figure 1, which talks about the person Eric Miller. The URI references an information resource that provides some kind of compelling and unambiguous indication of the subject. A human can interpret the information resource and know what subject is being referred to. An information resource that is used in this manner is called a subject indicator.
...
7. Conclusion

The widely recognized "identity crisis" of the Web is due to the absence of a formal distinction between information resources and subjects in general. This can be traced back to the definition of "resource" in [RFC 2396].

Recognition of the important distinction made in Topic Maps between addressable and non-addressable subjects leads to the notion of subject indicators as an indirection mechanism for establishing the identity of subjects that cannot be addressed directly.

This allows URIs to be used in two ways - as subject addresses or as subject identifiers - without ambiguity. Syntactic context can be used to determine which mode is intended in any specific instance.

The concept of subject indicators also provides a powerful two-sided identification mechanism that can be used by both humans and applications.

For RDF and other semantic web technologies to take advantage of this mechanism, changes are required in the underlying data model of RDF and the basic architecture of the Web. Once these are made, the foundation will have been laid for achieving the goals of the semantic web.
[http://www.ontopia.net/topicmaps/materials/identitycrisis.html]

tms'TMDM

name::
* McsEngl.tms'TMDM@cptIt,

ISO 13250-2: Topic Maps — Data Model is part 2 of ISO 13250, the topic maps standard, and defines a formal data model for topic maps, which will be used to define the XML topic map syntax (XTM), and also be the foundation for the query language (TMQL) and the schema language (TMCL). It is often known by its acronym: TMDM. (In case you are wondering, yes, it used to be known as the SAM, or Standard Application Model.)
[http://www.isotopicmaps.org/sam/]

tms'Topic

name::
* McsEngl.tms'Topic@cptIt,

_WHOLE:
* topic-map,

_DESCRIPTION:
A topic is essentially an object within the computer that represents (or reifies) some subject of discourse.
[http://www.ontopia.net/topicmaps/materials/scope.htm, 2002]
===
Topic
A symbol used within a topic map to represent a subject.
[http://www1.y12.doe.gov/capabilities/sgml/sc34/document/0446.htm]
===
(Where it will not lead to confusion, we will sometimes use the terms topic and subject interchangeably; since each topic reifies some subject, and since for each subject we can construct a topic to reify it, the difference is not always important.)
[http://www.topicmaps.org/xtm/]

topic's-characteristic

name::
* McsEngl.topic's-characteristic@cptIt,
* McsEngl.characteristic-of-topic-tms@cptIt,

_DESCRIPTION:
Names, occurrences, and roles played in associations are thus the kinds of characteristics that can be assigned to a topic.
[http://www.ontopia.net/topicmaps/materials/scope.htm]
===
Anything that may be asserted about a topic in the topic map paradigm is known as a characteristic of that topic. Characteristics can be one of the following:
a topic name,
a topic occurrence, or
a role played by a topic as a member of an association
The assignment of such characteristics is considered to be valid within a certain scope, or context.
[http://www.topicmaps.org/xtm/]

_SPECIFIC:
* name
* occurence,
* association,

topic's-name

name::
* McsEngl.topic's-name@cptIt,
* McsEngl.name-of-topic-tms@cptIt,

A topic may have zero or more names, each of which is considered to be valid within a certain scope (which may be the unconstrained scope).
[http://www.topicmaps.org/xtm/]

The standard therefore provides the facility to assign multiple base names to a single topic, and to provide variants of each base name for use in specific processing contexts. In the original ISO standard variants were limited to display name and sort name. XTM offers a more general variant name mechanism.
[http://www.ontopia.net/topicmaps/materials/tao.html]

topic's-occurance

name::
* McsEngl.topic's-occurance@cptIt,
* McsEngl.occurance-of-topic-tms@cptIt,
* McsEngl.tms'Occurance@cptIt,

_DESCRIPTION:
Occurrences are information resources that are pertinent to a subject. Again, a topic can have multiple occurrences of different types. In an index, occurrences are what you arrive at if you follow the page number references in the index entry.
[http://www.ontopia.net/topicmaps/materials/scope.htm, 2002]
===
Like from the "index" of a book, to "occurance" of the information on the "topic" in index.
[hmnSngo.2011-09-01]

_ATTRIBUTE:
* subject,

_role:
Occurrences, as we have already seen, may be of any number of different types (we gave the examples of “monograph”, “article”, “illustration”, “mention” and “commentary” above). Such distinctions are supported in the standard by the concepts of occurrence role and occurrence role type.
The distinction between an occurrence role and its type is subtle but important (at least in HyTM). In general terms they are both “about” the same thing, namely the way in which the occurrence contributes information to the subject in question (e.g. through being a portrait, an example or a definition). However, the role (indicated syntactically in HyTM by the role attribute) is simply a mnemonic; the type (indicated syntactically by the type attribute), on the other hand, is a reference to a topic which further characterizes the nature of the occurrence's relevance to its subject. In general it makes sense to specify the type of the occurrence role, since then the power of topic maps can be used to convey more information about the relevance of the occurrence.
[http://www.ontopia.net/topicmaps/materials/tao.html]

topic's-type

name::
* McsEngl.topic's-type@cptIt,

tms'Topic-map

name::
* McsEngl.tms'Topic-map@cptIt,
* McsEngl.topic-map@cptIt526i,

_PART:
* topic#ql:tms'topic#

tms'XTM

name::
* McsEngl.tms'XTM@cptIt,
* McsEngl.XTM@cptIt526i,

XML Topic Maps (XTM) is a product of the TopicMaps.Org Authoring Group (AG), formed in 2000 by an independent consortium named TopicMaps.Org, originally chaired by Michel Biezunski and Steven R. Newcomb, and chaired at the date of delivery of this specification by Steve Pepper and Graham Moore. The Participating Members of the XTM Authoring Group are listed in Annex H: Acknowledgements.
[http://www.topicmaps.org/xtm/]

xtm'Document

name::
* McsEngl.xtm'Document@cptIt,

An XTM document is an XML document that conforms to the XTM syntax.
[http://www.isotopicmaps.org/sam/sam-xtm/]

lagCmr.knowledge.RIF

_CREATED: {2007-12-02}

name::
* McsEngl.lagCmr.knowledge.RIF@cptIt,
* McsEngl.lagKnlg.RIF@cptIt,
* McsEngl.rif@cptIt501i,
* McsEngl.Rule-Interchage-Format@cptIt501.i,

_DEFINITION:
The Rule Interchange Format (RIF) is a W3C recommendation-track effort to develop a format for interchange of rules in rule-based systems on the semantic web. The goal is to create an interchange format for different rule languages and inference engines. The RIF initiative is closely related to Ontologies. Whereas ontologies describe distributed information objects in a computer executable manner, rules in this sense combine such information and derive new information on top of ontologies.
History
The RIF working group was chartered in late 2005. Among its goals was drawing in members of the commercial rules marketplace. The working group started with more than 50 members and two chairs drawn from industry, Christian de Saint-Marie of ILOG, and Chris Welty of IBM.
[http://en.wikipedia.org/wiki/Rule_Interchange_Format]

lagCmr.knowledge.UNIFORM

name::
* McsEngl.lagCmr.knowledge.UNIFORM@cptIt,
* McsEngl.lagKnlg.representation.UNIFORM@cptIt,
* McsEngl.uniform-knowledge-representation@cptIt501i,

A uniform knowledge representation implies that all knowledge throughout a system is represented in the same manner. The chief advantage of a uniform representation is that all components of the architecture may access, use, and modify any knowledge in the system. The disadvantage of such a representation is that, since it is not flexible, it can not be modified to meet the demands of a particular type of knowledge. This may be contrasted with heterogeneous knowledge representations and systems with no explicit knowledge representation.
Systems having a uniform knowledge representation include:
Plan-then-Compile Architecture (THEO)
Planning and Learning Architecture (PRODIGY)
Meta-Reasoning Architecture (MAX)
Adaptive Intelligent Systems (AIS)
Problem Space Architecture (Soar)
Real-Time Decision Theoretic (RALPH-MEA)
[http://krusty.eecs.umich.edu/cogarch4/toc_defs/defs_props/defs_uniformkno.html] 1998feb16

lagCmr.knowledge.UNIFORM.NO

name::
* McsEngl.lagCmr.knowledge.UNIFORM.NO@cptIt,
* McsEngl.heterogeneous'knowledge'representation@cptIt501.i,
* McsEngl.lagKnlg.representation.Heterogeneous-Knowledge-Representation@cptIt,
* McsEngl.lcr.knowledge.Heterogeneous-Knowledge-Representation@cptIt,

_DESCRIPTION:
Knowledge can be represented uniformly throughout an agent or it can be represented in some way that facilitates some aspect of the agent or in some way that optimizes the agent in some way. Agents in which knowledge is not open often have heterogeneous representation. Systems having a heterogeneous knowledge representation include:
Hereogeneous Asynchronous Architecture (ATLANTIS)
A Basic Integrated Agent (Homer)
Entropy Reduction Engine (ERE)
[http://krusty.eecs.umich.edu/cogarch4/toc_defs/defs_props/defs_heterokno.html] 1998feb16

lagCmr.knowledge.VISUAL

_CREATED: {2007-08-13}

name::
* McsEngl.lagCmr.knowledge.VISUAL@cptIt,
* McsEngl.conceptIt525.9,
* McsEngl.conceptIt434,
* McsEngl.drawing'krm@cptIt434,
* McsEngl.drawing-knowledge-representation-mapping@cptIt,
* McsEngl.lagKnlg.VISUAL@cptIt,
* McsEngl.krl.visual@cptIt501i,
* McsEngl.methodKnowledgeVisual@cptIt525.9,
* McsEngl.visual-krl@cptIt501i,

_ATTRIBUTE:
* krp#cptItsoft497#

Diagram

Tool

SPECIFIC

_SPECIFIC: Alphabetically:
* concept-map#cptIt501.4#
* FUNCTION_GRAPH
* MATH_DRAWING
* mind-map
* VENN_DIAGRAM

krl.Mind-Map

name::
* McsEngl.krl.Mind-Map@cptIt,
* McsEngl.mind-map@cptIt501i,

A mind map is a diagram used to represent words, ideas, tasks, or other items linked to and arranged around a central key word or idea. Mind maps are used to generate, visualize, structure, and classify ideas, and as an aid to studying and organizing information, solving problems, making decisions, and writing.

The elements of a given mind map are arranged intuitively according to the importance of the concepts, and are classified into groupings, branches, or areas, with the goal of representing semantic or other connections between portions of information. Mind maps may also aid recall of existing memories.[citation needed]

By presenting ideas in a radial, graphical, non-linear manner, mind maps encourage a brainstorming approach to planning and organizational tasks.[citation needed] Though the branches of a mindmap represent hierarchical tree structures, their radial arrangement disrupts the prioritizing of concepts typically associated with hierarchies presented with more linear visual cues.[citation needed] This orientation towards brainstorming encourages users to enumerate and connect concepts without a tendency to begin within a particular conceptual framework.[citation needed]

The mind map can be contrasted with the similar idea of concept mapping. The former is based on radial hierarchies and tree structures denoting relationships with a central governing concept, whereas concept maps are based on connections between concepts in more diverse patterns.
[http://en.wikipedia.org/wiki/Mind_mapping]

lagCmr.LINGO

_CREATED: {2000-09-14} {2007-12-02}

name::
* McsEngl.lagCmr.LINGO@cptIt,
* McsEngl.conceptIt501.3,
* McsEngl.langero-drm@cptIt501.3, {2008-01-24}
* McsEngl.logero'ccl@cptIt501.3, {2007-12-02}
* McsEngl.mdr.Logal-Representation@cptIt,

_DEFINITION:
* LOGERO_CCL is a content_computer_language that uses logero_models#cptCore474# to represent braineptos.
[KasNik, 2007-12-02]

* NATURAL-LANGUAGE is the most not-formal KRL humans use to represent knowledge. Because of its unformality, and because the machine doesn't know the knowledge that a human knows, the machine cannot manage it.
My methodology for knowledge-management is
a) to represent knowledge with the structured-concept-formalism and
b) to find a mechanical-isomorphism between natural-language and structured-concept-knowledge.
[hmnSngo.{2000-09-14}]

_SPECIFIC:
* DOCUMENT_REPRESENTATION_METHOD
* HYPERTEXT_REPRESENTATION_METHOD

lagCmr.MARKDOWN

name::
* McsEngl.lagCmr.MARKDOWN@cptIt,
* McsEngl.conceptIt501.16,
* McsEngl.lcrMd@cptIt,
* McsEngl.Lmd@cptIt, {2017-11-20}
* McsEngl.markdown@cptIt501.16,
* McsEngl.md@cptIt501.16,

_DESCRIPTION:
Markdown is a lightweight markup language, originally created by John Gruber and Aaron Swartz allowing people "to write using an easy-to-read, easy-to-write plain text format, then convert it to structurally valid XHTML (or HTML)".[1] The language takes many cues from existing conventions for marking up plain text in email.

Markdown is also a Perl script written by Gruber, Markdown.pl, which converts marked-up text input to valid, well-formed XHTML or HTML and replaces left-pointing angle brackets ('<') and ampersands with their corresponding character entity references. It can be used as a standalone script, as a plugin for Blosxom or Movable Type, or as a text filter for BBEdit.[1]

Markdown has since been re-implemented by others as a Perl module available on CPAN (Text::Markdown), and in a variety of other programming languages. It is distributed under a BSD-style license and is included with, or available as a plugin for, several content-management systems.[2][3]
[http://en.wikipedia.org/wiki/Markdown]

Lmd'Archetype

name::
* McsEngl.Lmd'Archetype@cptIt,

Lmd'Model (doc)

name::
* McsEngl.Lmd'Model (doc)@cptIt,

Lmd'doc'Heading

name::
* McsEngl.Lmd'doc'Heading@cptIt,

_DESCRIPTION:
Headings
HTML headings are produced by placing a number of hashes before the header text corresponding to the level of heading desired (HTML offers six levels of headings), like so:

# First-level heading
#### Fourth-level heading

The first two heading levels also have an alternative syntax:

First-level heading
===================

Second-level heading
--------------------
[http://en.wikipedia.org/wiki/Markdown]

Lmd'doc'LineNew

name::
* McsEngl.Lmd'doc'LineNew@cptIt,

_DESCRIPTION:
Set 2 or more spaces and hit enter.

Lmd'doc'link

name::
* McsEngl.Lmd'doc'link@cptIt,
* McsEngl.markdown'link@cptIt,

* McsEngl.lmd'link@cptIt,

_DESCRIPTION:
Links may be included inline:

[link text here](link.address.here "link title here")
Alternatively, links can be placed in footnotes outside of the paragraph, being referenced with some sort of reference tag. For example, including the following inline:

[link text here][linkref]
would produce a link if the following showed up outside of the paragraph (or at the end of the document):

[linkref]: link.address.here "link title here"
[http://en.wikipedia.org/wiki/Markdown#Links]

Lmd'doc'List

name::
* McsEngl.Lmd'doc'List@cptIt,

_DESCRIPTION:
* An item in a bulleted (unordered) list
* A subitem, indented with 4 spaces
* Another item in a bulleted list
1. An item in an enumerated (ordered) list
2. Another item in an enumerated list
[http://en.wikipedia.org/wiki/Markdown#Lists]

Lmd'doc'Paragraph

name::
* McsEngl.Lmd'doc'Paragraph@cptIt,

A paragraph is one or more consecutive lines of text separated by one or more blank lines. Normal paragraphs should not be indented with spaces or tabs:

This is a paragraph. It has two sentences.

This is another paragraph. It also has
two sentences.
[http://en.wikipedia.org/wiki/Markdown#Paragraphs]

Lmd'doc'Table

name::
* McsEngl.Lmd'doc'Table@cptIt,

_DESCRIPTION:
| Group | At launch | After 1 year | After 5 years
| ------------- | ------------- |-------------| ----------- |
| Currency units | 1.198X | 1.458X | 2.498X |
| Purchasers | 83.5% | 68.6% | 40.0% |
| Reserve spent pre-sale | 8.26% | 6.79% | 3.96% |
| Reserve used post-sale | 8.26% | 6.79% | 3.96% |
| Miners | 0% | 17.8% | 52.0% |

Lmd'doc'Style

name::
* McsEngl.Lmd'doc'Style@cptIt,

_DESCRIPTION:
_italic_, *italic*,
__bold__, **bold**,
`monospace`.
[http://en.wikipedia.org/wiki/Markdown]

Lmd'doc'Source-code

name::
* McsEngl.Lmd'doc'Source-code@cptIt,

_DESCRIPTION:
indented blocks (Markdown's way of indicating source code)
[http://coffeescript.org/#literate]

Lmd'doing.NODEJS

name::
* McsEngl.Lmd'doing.NODEJS@cptIt,

_MODULE:
* https://www.npmjs.org/package/node-markdown,

_ADDRESS.WPG:
* http://nodeexamples.com/2012/09/16/parsing-markdown-files-in-node-js-using-the-node-markdown-module/#more-16/

Lmd'Resource

name::
* McsEngl.Lmd'Resource@cptIt,

_SPECIFIC:
* http://daringfireball.net/projects/markdown/basics,
* http://xbeta.org/wiki/show/Markdown,
* http://stackoverflow.com/editing-help,
* https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet,

Lmd'Tool

name::
* McsEngl.Lmd'Tool@cptIt,

_SPECIFIC:
* online-editor: http://markdown.pioul.fr/,
* http://livepipe.net/control/textarea,

lagCmr.Markup

name::
* McsEngl.lagCmr.Markup@cptIt,
* McsEngl.conceptIt501.9,
* McsEngl.markup-representation@cptIt501.9, {2011-08-30}

_GENERIC:
* markup-language#cptItsoft204.12#

_SPECIFIC:
* HTML#cptItsoft568#

lagCmr.MathML#cptIt441#

name::
* McsEngl.lagCmr.MathML@cptIt,

lagCmr.NUMBER-REPRESENTATION

NAME

name::
* McsEngl.lagCmr.NUMBER-REPRESENTATION@cptIt,
* McsEngl.conceptIt553,
* McsEngl.number-representation@cptIt,

DEFINITION

SPECIFIC

INTEGER

ΟΙ ΘΕΤΙΚΟΙ ΑΚΕΡΑΙΟΙ ΠΑΡΙΣΤΑΝΟΝΤΑΙ με 0 το MSB στα μπιτ που χρησιμοποιεί οι 'λέξη' της μνήμης του.
πχ ο 22(10)=10110(2) παριστάνεται ως 00010110 σε υπολογιστή με μήκος λέξης 8.

ΟΙ ΑΡΝΗΤΙΚΟΙ ΑΚΕΡΑΙΟΙ ΠΑΡΙΣΤΑΝΟΝΤΑΙ συνήθως ως 'συμπλήρωμα ως προς το 2' επειδή γίνονται εύκολα οι πράξεις.
πχ ο -22(10):
α) βρίσκουμε τον αντίστοιχο θετικο σε δυαδική μορφή στο μήκος λέξης που διαθέτουμε: 00010110
β) αντικαθιστούμε το 0 με 1 και το 1 με 0: 11101001
γ) προσθέτουμε 1: 11101010

Για να βρούμε ποιος αριθμός είναι ο 11101010 που έχει χρησιμοποιηθεί η παράσταση συμπληρώματος ως προς το 2:
α) αντικαθιστούμε το 0 με 1 και το 1 με 0 και στο πρόσημο: 00010101
β) προσθέτουμε 1: 00010110
γ) βρίσκουμε το δεκαδικο: 22
άρα είναι ο -22

ΠΡΑΞΕΙΣ: όπως στους δυαδικούς γενικά.

DEFINITION

What is SGML?
•Standard Generalized Markup Language: the international standard for structured document interchange, ISO 8879 (1986)
•Developed out of a search for a universal typesetting language begun in the late 1960s
•Descriptive, not procedural -- the procedures are left to formatting/presentation systems
•Not a single markup language, but a metalanguage for the specification of an unlimited number of markup languages, each optimized for a particular category of documents
•The SGML description of a markup language is called a Document Type Definition (DTD)
•In SGML, the DTD is a required part of the document
[SOURCE: Overview: XML, HTML, and all that, Jon Bosak Sun Microsystems, {1997-04-11}]

SGML is an international standard for the definition of device-independent, system-independent methods of representing texts in electronic form.
SGML is an international standard for the description of marked-up electronic text. More exactly, SGML is a metalanguage, that is, a means of formally describing a language, in this case, a markup language.
There are three characteristics of SGML which distinguish it from other markup languages:
- its emphasis on descriptive rather than procedural markup;
- its document type concept; and
- its independence of any one system for representing the script in which a text is written.
[TEI Introduction to SGML]

SGML is a well established ISO-standard and has been mandated by the Department of Defense as the markup methodology to be used in all aspects of the far reaching Camputer aided Acquisitions and Logistics Support program.

SGML is based on describing the meaning of the text rather than its typographical appearance so it includes, for instance, tags telling the formatter, "this is a chapter heading" or "this is a section heading".
[Nielsen, 1990, 173#cptResource712]

SGML is the MARKUP-LANGUAGE we use to write SGML-DOCUMENTS#ql:sgml'document#.
[NIKOS, 1997oct]

sgml'GENERIC

_GENERIC:
* programming_language#cptItsoft248#
InfoTech STANDARD#cptIt139#

sgml'WHOLE

_WHOLE:
ISO#cptIt164#

sgml'ATTRIBUTE

name::
* McsEngl.sgml'ATTRIBUTE@cptIt,

DEFINITION ANALYTIC:
In the SGML context, the word attribute, like some other words, has a specific technical sense. It is used to describe information which is in some sense descriptive of a specific element#ql:sgml'element# occurrence but not regarded as part of its content. For example, you might wish to add a status attribute to occurrences of some elements in a document to indicate their degree of reliability, or to add an identifier attribute so that you could refer to particular element occurrences from elsewhere within a document. Attributes are useful in precisely such circumstances.
...
If an element has been defined as having attributes, the attribute values are supplied in the document instance as attribute-value pairs inside the start-tag for the element occurrence. An end-tag may not contain an attribute-value specification, since it would be redundant. For example
<poem id=P1 status="draft"> ... </poem>
...
<!ATTLIST poem
id ID#IMPLIED
status (draft | revised | published) draft >
The declaration begins with the symbol ATTLIST, which introduces an attribute list specification. The first part of this specifies the element (or elements) concerned. In our example, attributes have been declared only for the <poem> element. If several elements share the same attributes, they may all be defined in a single declaration; just as with element declarations, several names may be given in a parenthesized list. Following this name (or list of names), is a series of rows, one for each attribute being declared, each containing three parts. These specify the name of the attribute, the type of value it takes, and a default value respectively.
[TEI Introduction to SGML]

Each of these elements#ql:sgml'element# can have certain attributes (properties) that describe the way in which it is to be processed.
[Bryan intro 1997]

sgml'CDATA
* The attribute value may contain any valid character data; tags may be included in the value, but they will not be recognized by the SGML parser, and will not be processed as tags normally are
[TEI Introduction to SGML]

sgml'IDREF
* The attribute value must contain a pointer to some other element (see further the discussion of ID below)
[TEI Introduction to SGML]

sgml'NMTOKEN
* The attribute value is a name token, that is, (more or less) any string of alphanumeric characters
[TEI Introduction to SGML]

sgml'NUMBER
* The attribute value is composed only of numerals
[TEI Introduction to SGML]

#sgml'REQUIRED
* A value must be specified.
[TEI Introduction to SGML]

#sgml'IMPLIED
* A value need not be supplied (as in the case of ID above).
[TEI Introduction to SGML]

#sgml'CURRENT
* If no value is supplied in this element occurrence, the last specified value should be used.
[TEI Introduction to SGML]

sgml'COMMENT

name::
* McsEngl.sgml'COMMENT@cptIt,

Comments in the DTD
Comments may stand alone in the DTD as the only content of a declaration or they may appear almost anywhere inside other markup declarations. They allow developers to add notes in the text as to why certain decisions were made and can give guidance to others who have to use the DTD.
<!-- comment ... -->
<!ENTITY tsp "The SGML Primer" -- short comment: the title of this doc-->
[SoftQuad Primer 1997]

Comments in Instances
Comments may also appear inside a document instance. Within the comments, authors and editors, a team of writers, clients -- anyone interested in the document -- can converse or leave messages for themselves or others. The parser knows to ignore these; they will never be output in final form.
[SoftQuad Primer 1997]

sgml'DOCUMENT

name::
* McsEngl.sgml'DOCUMENT@cptIt,

DEFINITION SYNTHETIC:
An SGML document consists of
- an SGML-prolog#ql:sgml'prolog# and
- a document-instance#ql:sgml'document'instance#.
Different software systems may provide different ways of associating the document instance with the prolog; in some cases, for example, the prolog may be hard-wired into the software used, so that it is completely invisible to the user.
[SOURCE: TEI Introduction]

sgml'PROLOG

name::
* McsEngl.sgml'PROLOG@cptIt,

DEFINITION ANALYTIC:
An SGML-DOCUMENT#ql:sgml'document# consists of
- an SGML-prolog#ql:sgml'prolog# and
- a document-instance#ql:sgml'document'instance#.
[SOURCE: TEI Introduction]

DEFINITION SYNTHETIC:
The prolog contains
- an SGML declaration (described below) and
- a document-type-definition#ql:sgml'dtd#, which contains element and entity declarations such as those described above.
[SOURCE: TEI Introduction]

sgml'DOCUMENT'INSTANCE

name::
* McsEngl.sgml'DOCUMENT'INSTANCE@cptIt,

DEFINITION'ANALYSIS:
An SGML-document#ql:sgml'document# consists of
- an SGML prolog and
- a document instance.
Different software systems may provide different ways of associating the document instance with the prolog; in some cases, for example, the prolog may be hard-wired into the software used, so that it is completely invisible to the user.
[SOURCE: TEI Introduction]

a document instance = a markup text
[SOURCE: TEI Introduction]

The document instance contains the text of the document incorporating the markup as specified in the DTD.
Markup within the document instance is called descriptive markup. Descriptive markup identifies the elements within the document instance which make up its logical structure.
[SoftQuad Premier 1997]

sgml'DTD

name::
* McsEngl.sgml'DTD@cptIt,
* McsEngl.sgml'DOCUMENT'TYPE'DEFINITION@cptIt,

DEFINITION ANALYTIC:
The PROLOG#ql:sgml'prolog# contains
- an SGML declaration (described below) and
- a document-type-definition#ql:sgml'dtd#, which contains element and entity declarations such as those described above.
[SOURCE: TEI Introduction]

SGML introduces the notion of a document type, and hence a document type definition (DTD). Documents are regarded as having types, just as other objects processed by computers do. The type of a document is formally defined by its constituent parts and their structure. The definition of a report, for example, might be that it consisted of a title and possibly an author, followed by an abstract and a sequence of one or more paragraphs. Anything lacking a title, according to this formal definition, would not formally be a report, and neither would a sequence of paragraphs followed by an abstract, whatever other report-like characteristics these might have for the human reader.
[SOURCE: TEI Introduction]

SGML defines a document structure using a special grammar called a Document Type Definition (DTD)

sgml'DECLARATION

name::
* McsEngl.sgml'DECLARATION@cptIt,

DEFINITION ANALYTIC:
A DTD#ql:sgml'dtd# consists of DECLARATIONS of the form:

<!Keyword parameter associated-parameter(s)>

where keyword can be any one of:
DOCTYPE which assigns the name in the first parameter to a set of declarations. These declarations may be right there enclosed in square brackets or in another file identified in the next parameter (or in a combination of these places). This set comprises the document type declaration subset, and may include any of the other kinds of markup declarations.
ELEMENT to declare an object (element type) within the logical structure of the document; here the first parameter is declared to have as content everything in a following parameter, the content model. (For example: a "chapter" is declared to have content which consists of "title followed by any number of paragraphs".)
ATTLIST to associate an element type with a set of characteristics that may be applied to one specific instance of that element. (For example: An element "figure" is associated with an unique identifier so that references to it can calculate its page number or show it in a separate window.)
ENTITY to allow a short string of text to stand for a longer string, or to point to a file stored externally to the current file. (For example: Let "tsp" be used as shorthand for "The SGML Primer")
NOTATION to associate the first parameter, which names a "content notation" for non-SGML data (CGM for graphics, for example; SCORE or "MIDI Files" format for music or whatever), and the second parameter which instructs the system in how to handle such notation.
SHORTREF to name a set of associations between short strings of characters (or a single character) and markup.
USEMAP to activate the set of SHORTREFS named in the first parameter with the ELEMENT(s) named in the second one. (SHORTREF and USEMAP declarations are not covered in this booklet. These constructs are most useful when you attempt to use SGML with typewriters or old-fashioned word-processors or in retrofitting, the turning of old electronic files into SGML-encoded text. SoftQuad contends that software tools designed specifically for creating or editing SGML can avoid them.)
[SoftQuad Primer 1997]

sgml'DECLARATION.ATTRIBUTE'LIST

name::
* McsEngl.sgml'DECLARATION.ATTRIBUTE'LIST@cptIt,
* McsEngl.sgml'ATTRIBUTE'LIST'DECLARATION@cptIt,

DEFINITION ANALYTIC:
A declaration#ql:sgml'declaration# that begins with the word ATTLIST allows you to qualify an element#ql:sgml'element# by declaring a list of its attributes. The DTD for the following menu avoids the declaration of a new element for every kind of dressing on the salad. The attribute declaration is attached to an element and is composed of one or more attribute definitions.
[SoftQuad Primer 1997]

DEFINITION SYNTHETIC:
Every attribute definition is composed of a name, a declared value and a default value.
[SoftQuad Primer 1997]

Name

The first parameter of any attribute list declaration names the element or elements being associated with the list. The second parameter is a name or names for the attribute or set of attributes to be associated with the element.
[SoftQuad Primer 1997]

Attribute Value

The third parameter -- the declared attribute value -- may be a name token group, the actual values anticipated (potato|fries |rice), for example) or a keyword that specifies the sort of value that is needed:
CDATA zero or more valid SGML characters
ENTITY currently declared general entity name
ENTITIES list of ENTITY names
ID unique name
IDREF unique name reference value
IDREFS list of unique name reference values
NAME string of 1-8 characters (8 is a "default" limit); starting with a-z or A-Z, followed by a-z or A-Z, hyphen, period
NAMES list of NAME values; each string separated by one or more spaces, tabs or returns ("separators")
NMTOKEN same as NAME except that it can also start with 0-9, hyphen, period.
NMTOKENS list of NMTOKEN values; each separated by a separator+
NOTATION a notation name that identifies the data content notation of the element's content
NUMBER a string of 1-8 characters consisting of the digits 0-9
NUMBERS list of NUMBER values; each separated by a separator+
NUTOKEN string of 1-8 characters beginning with 0-9 followed by a-z, A-Z, 0-9, hyphen, period
NUTOKENS list of NUTOKEN values; each separated by a separator+
[SoftQuad Primer 1997]

Default Value

An attribute's default value may be a LITERAL STRING, the actual characters needed (fries for example) or a keyword. Most common keywords are#REQUIRED, which is obvious; and#IMPLIED, which effectively means optional.
[SoftQuad Primer 1997]

sgml'DECLARATION.COMMENT

name::
* McsEngl.sgml'DECLARATION.COMMENT@cptIt,
* McsEngl.sgml'COMMENT'DECLARATION@cptIt,

The exception to the declaration structures described here is the comment declaration which instead of a keyword begins and ends with two hyphens.

<!-- Comment declarations can help clarify a DTD. This DTD, for example, strings together
some of the declarations that describe this booklet. -->
[SoftQuad Premier 1997]

sgml'DECLARATION.DOCTYPE

name::
* McsEngl.sgml'DECLARATION.DOCTYPE@cptIt,

The DTD begins with the DOCTYPE declaration

sgml'DECLARATION.ELEMENT

name::
* McsEngl.sgml'DECLARATION.ELEMENT@cptIt,
* McsEngl.sgml'ELEMENT'DECLARATION@cptIt,

DEFINITION ANALYTIC:
ELEMENT DECLARATION is a DECLARATION#ql:sgml'declaration# of an ELEMENT#ql:sgml'element#.

EXAMPLE:
<!ELEMENT poem - - (title?, stanza+)>
where:
poem = element type
-- = minimization rule
(title?, stanza+) = content model,

EXAMPLE:
We can declare them together if they have the same content model.
<!ELEMENT (chptitle | para | heading) (#PCDATA) >
The SGML reserved name, PCDATA, is recognized by the system as meaning that "chptitle", "para" and "heading" don't have any subelements of their own. Rather, they contain what is termed parsed character data -- the actual letters, numbers, punctuation and special characters that make up content.
[SoftQuand Primer-Intro 1997]

Element Type

name::
* McsEngl.sgml'ELEMENT'TYPE@cptIt,

Within the element declaration, the first parameter indicates the element name referred to in SGML as the element type. Element names consist of one name start character followed by zero or more name characters, up to 8 characters in total. Name start characters are a-z and A-Z. Name characters are a-z, A-Z, 0-9, period, and hyphen. Names are not case sensitive.
The element type parameter may consist of one element, or a group of elements.

sgml'GENERIC'IDENTIFIER:
GENERIC IDENTIFIER is the name of an element

sgml'Minimization'Rule

name::
* McsEngl.sgml'Minimization'Rule@cptIt,
* McsEngl.sgml'MINIMIZATION'RULE@cptIt,

The second part of the declaration specifies what are called minimization rules for the element concerned. These rules determine whether or not start- and end-tags must be present in every occurrence of the element concerned. They take the form of a pair of characters, separated by white space, the first of which relates to the start-tag, and the second to the end-tag. In either case, either a hyphen or a letter O (for ``omissible'' or ``optional'') must be given; the hyphen indicating that the tag must be present, and the letter O that it may be omitted. Thus, in this example, every element except <line> must have a start-tag. Only the <poem> and <anthology> elements must have end-tags as well.
[SOURCE: TEI Introduction]

sgml'ELEMENT'Content'Model

name::
* McsEngl.sgml'ELEMENT'Content'Model@cptIt,
* McsEngl.sgml'CONTENT'MODEL@cptIt,

DEFINITION ANALYTIC:
The third part of each declaration#ql:sgml'declaration.element#, enclosed in parentheses, is called the content model of the element, because it specifies what element occurrences may legitimately contain. Contents are specified either in terms of other elements or using special reserved words. There are several such reserved words, of which by far the most commonly encountered is#PCDATA, as in this example. This is an abbreviation for parsed character data, and it means that the element being defined may contain any valid character data. If an SGML declaration is thought of as a structure like a family tree, with a single ancestor at the top (in our case, this would be <anthology>), then almost always, following the branches of the tree downwards (for example, from <anthology> to <poem> to <stanza> to <line> and <title>) will lead eventually to#PCDATA. In our example, <title> and <line> are so defined. Since their content models say#PCDATA only and name no embedded elements, they may not contain any embedded elements.
[SOURCE: TEI Introduction]

sgml'Occurrence'Indicators:
? optional -- element or model group appears once or not at all.
* optional and repeatable -- element or model group may appear zero or more times (that is, not at all or any number of times).
+ required and repeatable -- element or model group appears once or more.

sgml'Connectors:
, sequential -- (e.g. a, b, . . . a must be followed by b; b is followed by . . .) Note: in a,b?, a may be followed by b.
& "and" -- the elements on either side of the ampersand must occur, but may appear in any order (e.g. a & b means a and b; or b and a).
| "or" -- any one of the elements or model groups must appear (e.g. a | b means either a or b).
[SoftQuad Premier 1997]

sgml'PCDATA:
This is an abbreviation for parsed character data, and it means that the element being defined may contain any valid character data.
[TEI Introduction]

sgml'INCLUSION'EXCEPTION:
Rather than add them to the content model for each type of poem, we can add them in the form of an inclusion list to the poem element, which now reads:
<!ELEMENT poem - O (title?, (stanza+ | couplet+ | line+) )
+(note | variant) >
The plus sign at the start of the (NOTE | VARIANT) name list indicates that this is an inclusion exception. With this addition, notes or variants can appear at any point in the content of a poem element---even those (such as <title>) for which we have defined a content model of#PCDATA. They can thus also appear within notes or variants!
[TEI Introduction]

sgml'EXCLUSION'EXCEPTION:
<!ELEMENT title - O (#PCDATA) -(note | variant) >
The minus sign at the start of the (NOTE | VARIANT) name list indicates that this is an exclusion exception. With this addition, notes and variants will be prohibited from appearing within titles, notwithstanding their potential inclusion implied by the previous addition to the content model for <poem>.
[TEI Introduction]

sgml'DECLARATION.ENTITY

name::
* McsEngl.sgml'DECLARATION.ENTITY@cptIt,
* McsEngl.sgml'ENTITY'DECLARATION@cptIt,

DEFINITION ANALYTIC: ENTITY DECLARATION is a DECLARATION#ql:sgml'declaration# of an ENTITY#ql:sgml'entity#.

Since certain kinds of entities must be declared before they can be used, it is customary to list all ENTITY declarations together at the beginning of the DTD.
[SoftQuad Premier 1997]

sgml'DECLARATION.NOTATION

name::
* McsEngl.sgml'DECLARATION.NOTATION@cptIt,

In processing an SGML file for output, some data may require special treatment. A notation declaration is used to specify any special techniques that may be required when processing the document. Typical examples would be mathematical formulae or graphics files.
[SoftQuad Premier 1997]

sgml'DECLARATION.SGML

name::
* McsEngl.sgml'DECLARATION.SGML@cptIt,

The SGML declaration specifies basic facts about the dialect of SGML being used such as the character set, the codes used for SGML delimiters, the length of identifiers, etc. Its content for TEI-conformant document types is discussed further in chapters 39, Formal Grammar for the TEI-Interchange-Format Subset and 28, Conformance . Normally the SGML declaration will be held in the form of compiled tables by the SGML processor and will thus be invisible to the user.
[TEI Introduction]

sgml'DTD'example

name::
* McsEngl.sgml'DTD'example@cptIt,
* McsEngl.sgml'DTD'example@cptIt,

A DTD is expressed in SGML as a set of declarative statements, using a simple syntax defined in the standard. For our simple model of a poem, the following declarations would be appropriate:

<!ELEMENT anthology - - (poem+)>
<!ELEMENT poem - - (title?, stanza+)>
<!ELEMENT title - O (#PCDATA) >
<!ELEMENT stanza - O (line+) >
<!ELEMENT line O O (#PCDATA) >

These five lines are examples of formal SGML element declarations. A declaration, like an element, is delimited by angle brackets; the first character following the opening bracket must be an exclamation mark, followed immediately by one of a small set of SGML-defined keywords, specifying the kind of object being declared. The five declarations above are all of the same type: each begins with an ELEMENT keyword, indicating that it declares an element, in the technical sense defined above. Each consists of three parts: a name or group of names, two characters specifying minimization rules, and a content model. Each of these parts is discussed further below. Components of the declaration are separated by white space, that is one or more blanks, tabs or newlines.
The first part of each declaration above gives the generic identifier of the element which is being declared, for example poem, title, etc. It is possible to declare several elements in one statement, as discussed below.

...
The definition we have so far built up for the anthology looks, in full, like this:
<!DOCTYPE anthology [
<!ELEMENT anthology - - (poem+) >
<!ELEMENT poem - - (title?, stanza+) >
<!ELEMENT stanza - O (line+) >
<!ELEMENT (title | line) - O (#PCDATA) >
]>
[SOURCE: TEI Introduction]

More usually, the document type definition will be held in a separate file and invoked by reference, as follows:

<!DOCTYPE tei.2 system "tei2.dtd" [
]>
<tei.2>
This is an instance of an unmodified TEI type document
</tei.2>
[TEI introduction]

sgml'DTD'subgeneral

name::
* McsEngl.sgml'DTD'subgeneral@cptIt,

Major industry DTDs (markup languages)
ATA 2100  aircraft industry
CALS    military, aerospace
CMC    pharmaceuticals
PCIS    semiconductors
DocBook  computer software
IBMIDDoc  IBM software
SAE J2008  automobile manufacturing
TMC T2008  truck manufacturing
TIM    telecommunications
EDGAR  Securities and Exchange Commission
ISO 12083  journal, book, and magazine publishing
ICADD    publishing for the print-disabled
TEI    academic and scholarly publishing
UTF    news media
HTML    World Wide Web
[SOURCE: Overview: XML, HTML, and all that, Jon Bosak Sun Microsystems, {1997-04-11}]

sgml'ENTITY

name::
* McsEngl.sgml'ENTITY@cptIt,

_DESCRIPTION:
`Entity' is the English spelling of the French word `entite', the Teutonic equivalent of which is `thing'. Those familiar with modern programming techniques will be probably be more comfortable using the word `object'. All these terms are synonymous.
[M. Bryan Intro 1997]

DEFINITION ANALYTIC:
In SGML the word entity has a special sense: it means a named part of a MARK-UP-DOCUMENT#ql:sgml'document#, irrespective of any structural considerations. An entity might be a string of characters or a whole file of text. To include it in a document, we use a construction known as an entity reference. For example, the following declaration

<!ENTITY tei "Text Encoding Initiative">

defines an entity whose name is tei and whose value is the string ``Text Encoding Initiative.'' By convention case is significant in entity names, unlike element names.
[SOURCE: TEI Introduction]

EXPLANATION:
In general, people who create the component pieces of electronic documents are actually thinking of them in two ways at once:
They are files -- as many as are needed to build the final document -- on a computer or on several computers. There may be a file with a title page, a portion of a spreadsheet that gets printed as part of Chapter Two, a graphic of an organization chart that shows up in Chapter Six, and a lot of text in various chunks. This collection of separate entities comprises what one generally thinks of as the document, or what, for the purposes of SGML, is termed the SGML document. These entities can be any size, created by any kind or number of pieces of software, resident on any number of computers. Parts may be shared with other documents but, they may be thought of together, as the entity structure of a single document.
At the same time, if you were to look at the table of contents of this fictional document, you would see no reference to the file that contains the spreadsheet, or the file with the title page, and so on. Those entities have been subsumed into a logical structure, a hierarchical structure of objects such as chapters and tables and paragraphs that comprise the document's element structure. Sometimes the elements and the entities are the same -- the logical element "table" may be the file entity "spreadsheet" -- but often they're not.
[SoftQuand Primer-Intro 1997]

ENTITY-DECLARATION#ql:sgml'declaration.entity#

sgml'ENTITY'NAME

name::
* McsEngl.sgml'ENTITY'NAME@cptIt,

the following declaration
<!ENTITY tei "Text Encoding Initiative">
defines an entity whose name is tei and whose value is the string ``Text Encoding Initiative.'' By convention case is significant in entity names, unlike element names. This is an instance of an entity declaration, which declares an internal entity.
The following declaration, by contrast, declares a system entity:
<!ENTITY ChapTwo SYSTEM "sgmlmkup.txt">
This defines a system entity whose name is ChapTwo and whose value is the text associated with the system identifier
[TEI introduction]

sgml'ENTITY'REFERENCE

name::
* McsEngl.sgml'ENTITY'REFERENCE@cptIt,

Once an entity has been declared, it may be referenced anywhere within a document. This is done by supplying its name prefixed with the ampersand character and followed by the semicolon. The semicolon may be omitted if the entity reference is followed by a space or record end.
[TEI introduction]

sgml'ENTITY.PARAMETER

name::
* McsEngl.sgml'ENTITY.PARAMETER@cptIt,
* McsEngl.sgml'PARAMETER'ENTITY@cptIt,

_DEFINITION:
A special form of entities, parameter entities, may be used within SGML markup declarations; these differ from the entities discussed above (which technically are known as general entities) in two ways:

* Parameter entities are used only within SGML markup declarations; with some special exceptions which will not be discussed here, they will normally not be found within the document itself.
* Parameter entities are delimited by percent sign and semicolon, rather than by ampersand and semicolon.

Declarations for parameter entities take the same form as those for general entities, but insert a percent sign between the keyword ENTITY and the name of the entity itself. White space (blanks, tabs, or line breaks) must occur on both sides of the percent sign. An internal parameter entity named TEI.prose, with an expansion of INCLUDE, and an external parameter entity named TEI.extensions.dtd, which refers to the system file mystuff.dtd, could be declared thus:
Such entity declarations might be used in extending the TEI base tag set for prose using the declarations found in mystuff.dtd.
<!ENTITY % TEI.prose 'INCLUDE'>
<!ENTITY % TEI.extensions.dtd SYSTEM 'mystuff.dtd'>
[TEI introduction]

sgml'ENTITY.INTERNAL

name::
* McsEngl.sgml'ENTITY.INTERNAL@cptIt,

the following declaration
<!ENTITY tei "Text Encoding Initiative">
defines an entity whose name is tei and whose value is the string ``Text Encoding Initiative.'' By convention case is significant in entity names, unlike element names. This is an instance of an entity declaration, which declares an internal entity.
[TEI introduction]

sgml'ENTITY.SYSTEM

name::
* McsEngl.sgml'ENTITY.SYSTEM@cptIt,

_DEFINITION:
The following declaration, by contrast, declares a system entity:
<!ENTITY ChapTwo SYSTEM "sgmlmkup.txt">
This defines a system entity whose name is ChapTwo and whose value is the text associated with the system identifier --- in this case, the system identifier is the name of an operating system file and the replacement text of the entity is the contents of the file.
[TEI introduction]

SUBGENERAL:
Strictly speaking, SGML does not require system entities to be files; they can in principle be any data source available to the SGML processor: files, results of database queries, results of calls to system functions --- anything at all
[TEI introduction]

sgml'ELEMENT

name::
* McsEngl.sgml'ELEMENT@cptIt,

_DEFINITION:
The technical term used in the SGML standard for a textual unit, viewed as a structural component, is element.
Different types of elements are given different names, but SGML provides no way of expressing the meaning of a particular type of element, other than its relationship to other element types. That is, all one can say about an element called (for instance) <blort> is that instances of it may (or may not) occur within elements of type <farble>, and that it may (or may not) be decomposed into elements of type <blortette>. It should be stressed that the SGML standard is entirely unconcerned with the semantics of textual elements: these are application dependent. Work is currently going on in the standards community to create (using SGML syntax) a definition of a standard ``document style semantics and specification language'' or DSSSL#ql:dsssl_itsoft1018#.

An element may be empty, that is, it may have no content at all, or it may contain simple text. More usually, however, elements of one type will be embedded (contained entirely) within elements of a different type.
[SOURCE: TEI Introduction]

RELATION TO TAG:
SGML/XML elements and tags are often confused. An SGML element is the area from the start tag (<TAG>) to the corresponding end tag (</TAG>). In HTML the HTML element is the whole document (apart from the !DOCTYPE declaration). Another example is links, where the element is the start and end tags as well as the underlined text between them.
[SOURCE: L.M. Garshol, XML INTRO, 1997aug14]

sgml'EVALUATION#cptCore546.107#

name::
* McsEngl.sgml'EVALUATION@cptIt,

Advantages of generic SGML
•Based on international standards -- no vendor wars
•Fully extensible -- no tag limitations
•Supports formal validation and controlled authoring
•Highly structured -- can model any kind of data
•Links and navigational aids can be generated directly from the structure of documents
•Context searching increases the speed of user access 10-20 times
•Documents can easily be reused for different purposes
•All versions of a document (printed and online) can be generated from the same source
•User-selectable stylesheets allow dynamically configurable views
•System administration of large document repositories is vastly simplified
[SOURCE: Overview: XML, HTML, and all that, Jon Bosak Sun Microsystems, {1997-04-11}]

sgml'EVOLUTION#cptCore546.171#

name::
* McsEngl.sgml'EVOLUTION@cptIt,

sgml'GRAMMAR

name::
* McsEngl.sgml'GRAMMAR@cptIt,

sgml'GROVE

name::
* McsEngl.sgml'GROVE@cptIt,

Grove
Graph Representation of Property ValuEs, provides a complete representation of a parsed SGML document instance

A grove is a standardized representation of the information contained within an SGML document.
The acronym is defined in the (corrected) HyTime standard as Graph Representation of Property Values. The objects defined in the SGML Property Set are represented as nodes, grouping their property assignments.
The value of some properties can be a node (or a nodelist) in its own right, thus constituting subnodes for the current nodes or references to a node elsewhere in the grove (irefnodes)
A grove is a set of trees; it could be seen as a tree of nodes, although there are a lot of relationships which are not of a parent-child or sibling nature. A grove contains much more than a tree of logical elements.

NODE

Node
The constituent objects in a grove. They are connected through their properties.

sgml'HYPERLINKING

name::
* McsEngl.sgml'HYPERLINKING@cptIt,

SGML supports the creation of hyperlinks based on direct addressing. Links within a document are defined by assigning a unique identifier name (ID) to an element and referring to that element by means of its ID.
[SOURCE: Ferris 1995]

sgml'MARKED'SECTION

name::
* McsEngl.sgml'MARKED'SECTION@cptIt,

It is occasionally convenient to mark some portion of a text for special treatment by the SGML parser. Certain portions of legal boilerplate, for example, might need to be included or omitted systematically, depending on the state or country in which the document was intended to be valid. (Thus the statement ``Liability is limited to $50,000.'' might need to be included in Delaware, but excluded in Maryland.) Technical manuals for related products might share a great deal of information but differ in some details; it might be convenient to maintain all the information for the entire set of related products in a single document, selecting at display or print time only those portions relevant to one specific product. (Thus, a discussion of how to change the oil in a car might use the same text for most steps, but offer different advice on removing the carburetor, depending on the specific engine model in question.)

SGML provides the marked section construct to handle such practical requirements of document production. In general, as the examples above are intended to suggest, it is more obviously useful in the production of new texts than in the encoding of pre-existing texts. Most users of the TEI encoding scheme will never need to use marked sections, and may wish to skip the remainder of this discussion. The TEI DTD makes extensive use of marked sections, however, and this section should be read and understood carefully by anyone wishing to follow in detail the discussions in chapter 3, Structure of the TEI Document Type Definition .

When a marked section occurs in the text, it is preceded by a marked-section start string, which contains one or more keywords from the list above; its end is marked by a marked-section close string. The second and last lines of the following example are the start and close of a marked section to be ignored:

In such cases, the bank will reimburse the customer for all losses.
<![ IGNORE [
Liability is limited to $50,000.
]]>
[TEI introduction]

KEYWORD

The special processing offered for marked sections in SGML can be of several types, each associated with one of the following keywords:

sgml'INCLUDE
* The marked section should be included in the document and processed normally.

sgml'IGNORE
* The marked section should be ignored entirely; if the SGML application program produces output from the document, the marked section will be excluded from the document.

sgml'CDATA
* The marked section may contain strings of characters which look like SGML tags or entity references, but which should not be recognized as such by the SGML parser. (These Guidelines use such CDATA marked sections to enclose the examples of SGML tagging.)

sgml'RCDATA
* The marked section may contain strings of characters which look like SGML tags, but which should not be recognized as such by the SGML parser; entity references, on the other hand, may be present and should be recognized and expanded as normal.

sgml'TEMP
* The passage included in the marked section is a temporary part of the document; the marked section is used primarily to indicate its location, so that it can be removed or revised conveniently later.

sgml'MARKUP

name::
* McsEngl.sgml'MARKUP@cptIt,
* McsEngl.encoding@cptIt,

Historically, the word markup has been used to describe annotation or other marks within a text intended to instruct a compositor or typist how a particular passage should be printed or laid out. Examples include wavy underlining to indicate boldface, special symbols for passages to be omitted or printed in a particular font and so forth. As the formatting and printing of texts was automated, the term was extended to cover all sorts of special markup codes inserted into electronic texts to govern formatting, printing, or other processing.
Generalizing from that sense, we define markup, or (synonymously) encoding, as any means of making explicit an interpretation of a text. At a banal level, all printed texts are encoded in this sense: punctuation marks, use of capitalization, disposition of letters around the page, even the spaces between words, might be regarded as a kind of markup, the function of which is to help the human reader determine where one word ends and another begins, or how to identify gross structural features such as headings or simple syntactic units such as dependent clauses or sentences. Encoding a text for computer processing is in principle, like transcribing a manuscript from scriptio continua, a process of making explicit what is conjectural or implicit, a process of directing the user as to how the content of the text should be interpreted.
[TEI Introduction to SGML]

In any communication, two levels of information are being passed: what we think of as the content, and other, subtler information, about that content. That other information -- boldface in a book, underlining on a hand-written memo, shouting in a face-to-face conversation -- may be thought of as markup. Its job is to express information (in general reflecting hierarchical structure) that is useful to a human or computer for processing the content.
SGML makes exactly the same distinction, dividing what is contained in a document into content, or data (made up, naturally, of data characters, which are the letters of the alphabet, the numbers, punctuation, and so on) and markup (made up of markup characters, which, by an important coincidence, are also letters, numbers, punctuation characters).
[SoftQuad Primer-Intro 197]

sgml'TAG

name::
* McsEngl.sgml'TAG@cptIt,

sgml'ORGANIZATION#cptIt968#

name::
* McsEngl.sgml'ORGANIZATION@cptIt,

sgml'human#cptCore401#

name::
* McsEngl.sgml'human@cptIt,

COVER, ROBIN:
* SGML Web Page creator http://www.sil.org/sgml/

sgml'PROPERTY'SET

name::
* McsEngl.sgml'PROPERTY'SET@cptIt,

SGML Property Set
The SGML Property Set defines a complete inventory of the information possibly contained within an SGML document, i.e. its content, its structure, its SGML declaration and prolog and its encoding.
The SGML Property Set perceives a document as a set of objects which have certain properties. It defines a number of classes, of which these objects are instantiations, with their properties.
The Property Set is composed of a number of modules, distinguished in function of what they define:
-- 'abstract' classes and properties (such as ELEMENT),
-- SGML document strings, i.e. character strings and other characteristics specific to the parsed document (such as SSEP, white space separator(s), or SGMLDCL, the SGML declaration sequence such as <!SGML "ISO 8879:1986 (ENR)"),
-- base classes and properties,
-- information from the SGML declaration, the prolog or the document instance,
information in case support of optional features is included (DATATAG, RANK, SHORTREF, LINK, SUBDOC or FORMAL).

The distinction is visible in the module names, composed of elements such as BASE..., SDCL..., PRLG..., INST..., ...BAS, ...SDS. For some modules, several levels of support are defined. The basic level starts at zero.

sgml'QUERY'LANGUAGE

name::
* McsEngl.sgml'QUERY'LANGUAGE@cptIt,

There are already SGML query languages that are similar to SQL in power and this field is still under research.
[SOURCE: L.M. Garshol, XML INTRO, 1997aug14]

SDQL (Standard Document Query Language )
A query language used for identifying portions of an SGML document. See section 10 of the DSSSL standard.
In addition to the full query language, the DSSSL standard defines a subset called the core query language. See section 10.2.4 of the DSSSL standard.

sgml'resourceInfHmn#cptResource843#

name::
* McsEngl.sgml'resourceInfHmn@cptIt,

TEI: A-Gentle-Introduction-to-SGML#ql:2 A Gentle Introduction to SGML rl5#.

CHARLES GOLDFARB:
The standard, authoritative reference work on SGML is Charles Goldfarb's _The SGML Handbook_, published by Oxford University Press. We highly recommend this book, which contains the verbatim text of the ISO 8879 standard itself, along with considerable explanatory text.

ROBIN COVER:
For a list of general information on SGML, including online tutorials, see the following link at Robin Cover's SGML Web Site (next question):
http://www.sil.org/sgml/general.html
The site is updated almost daily (or so NetMinder tells me), and is the best source of both general and specific SGML information. ALWAYS, ALWAYS, ALWAYS START HERE!!! If you want to search for a specific term or keyword, you can jump straight to the URL http://www.sil.org/htbin/sgml-index.com

Robin Cover's excellent and frequently-updated bibliography/database of materials regarding SGML can by found at http://www.sil.org/sgml/sgml.html.

STEVE PEPPER:
Steve Pepper's excellent Whirlwind Guide to SGML Tools and Vendors at
http://www.falch.no/people/pepper/sgmltool/

The SGML Centre contact http://www.sgml.u-net.com

sgml'SPEC

name::
* McsEngl.sgml'SPEC@cptIt,

sgml'SYNTAX

name::
* McsEngl.sgml'SYNTAX@cptIt,

I'll explain these ideas in more detail below, but one example is the distinction between syntax (the basic rules for carrying the information components) and semantics (what meaning you put on them and what behaviour a machine is expected to perform).

sgml'TOOL

name::
* McsEngl.sgml'TOOL@cptIt,

A variety of software is available to assist in the tasks of creating, validating and processing SGML documents. Only a few basic types can be described here. At the heart of most such software is an SGML parser: that is, a piece of software which can take a document type definition and generate from it a software system capable of validating any document invoking that DTD. Output from a parser, at its simplest, is just ``yes'' (the document instance is valid) or ``no'' (it is not). Most parsers will however also produce a new version of the document instance in canonical form (typically with all end-tags supplied and entity references resolved) or formatted according to user specifications. This form can then be used by other pieces of software (loosely or tightly coupled with the parser) to provide additional functions, such as structured editing, formatting and database management.

A structured editor is a kind of intelligent word-processor. It can use information extracted from a processed DTD to prompt the user with information about which elements are required at different points in a document as the document is being created. It can also greatly simplify the task of preparing a document, for example by inserting tags automatically.

A formatter operates on a tagged document instance to produce a printed form of it. Many typographic distinctions, such as the use of particular typefaces or sizes, are intimately related to structural distinctions, and formatters can thus usefully take advantage of descriptive markup. It is also possible to define the tagging structure expected by a formatting program in SGML terms, as a concurrent document structure.

Text-oriented database management systems typically use inverted file indexes to point into documents, or subdivisions of them. A search can be made for an occurrence of some word or word pattern within a document or within a subdivision of one. Meaningful subdivisions of input documents will of course be closely related to the subdivisions specified using descriptive markup. It is thus simple for textual database systems to take advantage of SGML-tagged documents. Much research work is also currently going into ways of extending the capabilities of existing (non-text) database systems to take advantage of the structuring information made explicit by SGML markup.

Hypertext systems improve on other methods of handling text by supporting associative links within and across documents. Again, the basic building block needed for such systems is also a basic building block of SGML markup: the ability to identify and to link together individual document elements comes free as a part of the SGML way of doing things. By tagging links explicitly, rather than using proprietary software, developers of hypertexts can be sure that the resources they create will continue to be useful. To load an SGML document into a hypertext system requires only a processor which can correctly interpret SGML tags such as those discussed in chapter 14, Linking, Segmentation, and Alignment .
[SOURCE: TEI Introduction]

sgml'BROWSER

name::
* McsEngl.sgml'BROWSER@cptIt,

Panorama:
http://www.sq.com/products/panorama/panor-fe.htm

Multidoc Pro:
http://www.citec.fi/mdp/index.html

sgml'EDITOR

name::
* McsEngl.sgml'EDITOR@cptIt,

SGML documents may be created and edited using any kind of standard text editor or word processor, with markup being added by hand and validation performed externally. Such a method has the advantage of being cheap in its initial implementation (the text editing software will already exist on most computer systems) but provides no assistance to the end-user as to how to enter the markup correctly.
A syntax-directed or "SGML smart" editor, on the other hand, knows enough about ISO 8879 to be able to guide and assist the end-user in such a way that is easier to avoid markup errors, and it may incorporate a validating SGML parser that makes it possible to guarantee that the document is structurally correct.
In addition to platform and level of SGML support, SGML editors may be classified by the features they offer and the kind of interface they provide to the end-user. An ISO technical report (ISO/IEC TR 10037) exists to provide guidelines for SGML syntax-directed editing systems, and most books on SGML provide some discussion of the kind of features to look for. A detailed discussion of the issues involved can be found in W.J.Davidson's article "SGML Authoring Tools for Technical Communication" in the journal Technical Communication, Vol. 40, No. 3 (August 1993). For the purpose of this article we content ourselves therefore with a brief summary of some of the more salient points:
* Parsing: interactive; background; turn on/off; ability to edit partial documents.
* Level of SGML support: arbitrary document types; short references; minimisation; ease of import/export (if required).
* User interface: raw markup, WYSIWYG or object-oriented; hide/show tags; feedback on position in structure; intelligent cut-and-paste.
* Document views: collapse/expand structure; tree view of structure; navigation/editing via structure view.
* Adding markup: via menus and dialog boxes; via keyboard shortcuts; via direct editing.
* Search/replace: context sensitive; tags, attributes and content; pattern matching.
* Non-text elements: support for graphics, tables (which table DTD(s)?), maths, etc.
* Error messages: relevant, customisable.
* National language support: spell/grammar checking; character set handling (e.g. what gets put into the document if we type ι?)
* Printer support: formatted output.
* Customisability: keyboard macros, API, DDE support.
[SOURCE: PEPER 1996]

sgml'PARSER

name::
* McsEngl.sgml'PARSER@cptIt,

The purpose of the SGML parser is, quite simply, to recognize markup in SGML documents. Together with the entity manager (the software component that makes it possible to segment SGML documents into separate entities) it forms the basis of any conforming SGML system. Without an SGML parser it is not possible to process an SGML document reliably.
An SGML parser does not have to be able to detect errors; the only requirement of an SGML parser is the ability to correctly process an error-free (i.e. conforming) SGML document. A validating SGML parser, on the other hand, must be capable of finding and reporting what the standard defines as "reportable markup errors". It must also not report non-existent errors (i.e. it must never claim that a conforming document is invalid). In addition, a validating SGML parser may optionally report other errors (e.g. ambiguous content models) and warn of conditions that are potential causes of errors.
The job of the validating parser, in other words, is to tell us whether or not our document conforms to the standard and if not, what errors exist and where. Although this is a fundamental prerequisite for any kind of SGML based system, there are in fact few plain parsers available, either commercially or in the public domain. The reason for this is that it is seldom enough to know that a document is valid; the document usually also needs to be processed in some way. Parsers, both validating and non-validating, are therefore usually encountered as components of other tools, such as editors, document managers, presentation software and transformation tools, to which we now turn.
[SOURCE: Pepper 1996]

If documents are of known types, a special purpose program (called a parser) can be used to process a document claiming to be of a particular type and check that all the elements required for that document type are indeed present and correctly ordered.
[TEI introduction]

TOOLS BY VENDOR

The Whirlwind Guide
SGML Tools - By Vendor
© 1992-96 Steve Pepper. All rights reserved.
Last updated: 27 March 96

---------------------------------------------------------------------------
List of vendors:
* Advent Publishing Systems
* AEsthetex
* AIS Berger-Levrault
* Andyne Computing Ltd.
* Arbortext Inc.
* Auto-Graphics, Inc.
* Avalanche/Interleaf
* Bellcore
* British National Corpus
* Corel Corporation
* Corena A/S
* Datalogics, Inc.
* Digitome Limited
* eidon GmbH
* Electronic Book Technologies, Inc.
* Exoterica Corporation
* Expert Software Systems
* Ferntree Computer Corp.
* Folio Corporation
* Frame Technology Corp.
* Green Book International Corp.
* Grif S.A.
* HaL Software Systems, Inc.
* IBM Corp.
* InContext Systems
* InfoAccess Inc.
* InfoDesign Corporation
* Inforium - The Information Attrium Inc.
* Information Dimensions Inc.
* Infrastructures for Information Inc.
* Interleaf, Inc.
* Jouve Software Incorporated
* Lexicon Systems, Inc.
* LSC Consulting
* Microsoft Corp.
* Microstar Software Ltd.
* MID Information Logistics Group
* Miles 33 Ltd.
* NICE Technologies
* Ntergaid, Inc.
* OCLC Online Computer Library Center
* Open Text Corp.
* Oxford University Press
* Passage Systems, Inc.
* Penta Software, Inc.
* Public Domain/Freely Distributable
* Publishing Development AB
* Sema Group Belgium
* SGML Systems Engineering
* SoftQuad Inc.
* STEP
* Stilo Associates
* Synex Information AB
* T.I.M.E. LUX sarl
* TechnoTeacher, Inc.
* TetraSys
* Texcel (UK) Ltd.
* Unifilt Co.
* WordPerfect Corp.
* XSoft, A Division of Xerox
* XyVision Inc.
* Zandar Corporation
* ZIFTech Computer Systems, Inc.

Advent Publishing Systems

3B2 House
12 Bath Road, Old Town
Swindon
Wiltshire SN1 4BA
UK
Tel: +44 (1793) 511432
Fax: +44 (1793) 536616

* 3B2 SGML (Page layout software)

AEsthetex

626 Lanark Road
Juniper Green
Edinburgh EH14 5EW
UK
Tel: +44 (131) 458 3933
Fax: +44 (131) 458 3903
Email: angus@aesthetex.co.uk

* Synthaesis (Page layout software)

AIS Berger-Levrault

35, rue du Pont
F-92200 Neuilly-sur-Seine
France
Tel: +33 (1) 46-40-84-00
Fax: +33 (1) 46-40-84-10
Email: fcha@ais.berger-levrault.fr

* Balise (Conversion/Transformation software)
* SGML/Search (Databases)
* SGML/Store (Databases)

Andyne Computing Ltd.

name::
* McsEngl.Andyne Computing Ltd.@cptIt,

552 Princess Street
Kingston, Ontario
K7L 1C7
Canada
Tel: +1 (613) 548-4355
Fax: +1 (613) 548-7801
Email: robin@andyne.on.ca
URL: http://www.andyne.on.ca/

* Rosetta (Databases)

Arbortext Inc.

name::
* McsEngl.Arbortext Inc.@cptIt,

1000 Victors Way, Suite 400
Ann Arbor, MI 48108
USA
Tel: +1 (313) 996-3566
Fax: +1 (313) 996-3573
Email: info@arbortext.com
URL: http://www.arbortext.com/

* ADEPT Editor (Text editors)
* ADEPT Publisher (Page layout software)
* PowerPaste (Conversion/Transformation software)

Auto-Graphics; Inc.

name::
* McsEngl.Auto-Graphics; Inc.@cptIt,

3201 Temple Avenue
Pomona, CA 91768
USA
Tel: (800) 776-6939
Tel: +1 (909) 595-7204
Fax: +1 (909) 595-3506
Email: info@auto-graphics.com
URL: http://www.auto-graphics.com

* Impact Search and Retrieval (Databases)
* SGML Smart Editor (Text editors)

Avalanche/Interleaf

4999 Pearl East Circle
Boulder, CO 80301
USA
Tel: +1 (303) 449-5032
Fax: +1 (303) 449-3246
Email: sales@avalanche.com

* Document Analyzer (Document analysis/design tools)
* FastTAG (Conversion/Transformation software)
* SGML Hammer (Conversion/Transformation software)
* SureSTYLE (Conversion/Transformation software)

Bellcore

8 Corporate Place - Room 3A184
Piscataway, NJ 08854
USA
Tel: +1 (908) 699-5800
Fax: +1 (908) 336-2559
Email: ccl@bellcore.com

* SuperBook System (Electronic delivery)

British National Corpus

Oxford University Computing Services
13 Banbury Road
Oxford, OX2 6NN
United Kingdom
Tel: +44 (1865) 273280
Fax: +44 (1865) 273275
Email: natcorp@vax.ox.ac.uk

* SARA (SGML Aware Retrieval Application) (Databases)

Corel Corporation

1600 Carling Avenue
Ottawa, Ontario
K1Z 8R7
Canada
Tel: (800) 848-5222
Tel: +1 (613) 728-8200
Fax: +1 (613) 728-9790

* Corel Ventura (Page layout software)

Corena A/S

Kongberg Naeringspark
P.O.Box 1024
N-3600 Kongsberg
Norway
Tel: +47-32 73 74 33
Fax: +47-32 73 68 77
Email: toralf@corena.no

* Life*CDM (Document management)

Datalogics; Inc.

name::
* McsEngl.Datalogics; Inc.@cptIt,

441 West Huron Street
Chicago, IL 60610
USA
Tel: +1 (312) 266-4444
Fax: +1 (312) 266-4473

* DL Composer (Page layout software)
* WriterStation (Text editors)

Digitome Limited

13 Herbert Street
Dublin 2
Ireland
Tel: +353-1-6621499
Fax: +353-1-6621056
Email: digitome@iol.ie
URL: http://www.screen.ie/digitome/

* IDM (Conversion/Transformation software)

eidon GmbH

Am Weichselgarten 7
D-91058 Erlangen
Germany
Tel: +49-9131-691-151
Fax: +49-9131-691-111
Email: eidon@axis.de

* CheckQ (Conversion/Transformation software)
* ExpertBook (Electronic delivery)
* SGMLbase/CGMbase (Databases)

Electronic Book Technologies; Inc.

name::
* McsEngl.Electronic Book Technologies; Inc.@cptIt,

One Richmond Square
Providence, RI 02906
USA
Tel: +1 (401) 421-9550
Fax: +1 (401) 421-9551
Email: info@ebt.com
URL: http://www.ebt.com

* DynaBase Publishing Environment (Document management)
* DynaTag (Conversion/Transformation software)
* DynaText (Electronic delivery)

Exoterica Corporation

1545 Carling Avenue, Suite 404
Ottawa, Ontario
K1Z 8P9
Canada
Tel: +1 (613) 722-1700
Fax: +1 (613) 722-5706
Email: info@exoterica.com
URL: http://www.exoterica.com/

* OmniMark (Conversion/Transformation software)
* SGML Conformance Test Suite (Various)
* SGML Kernel (Parsers/SGML Engines)

Expert Software Systems

Building "de Schelde"
Moutstraat 100
B-9000 Gent
Belgium
Tel: +32 91 21.03.83
Fax: +32 91 20.31.91
Email: e2s@e2s.be

* EASE (E2S Advanced SGML Editor) (Text editors)

Ferntree Computer Corp.

name::
* McsEngl.Ferntree Computer Corp.@cptIt,

GPO Box 3000
Canberra
ACT 2601
Australia
Tel: +61 6-248-8488
Fax: +61 6-247-6773
Email: twthink@spirit.com.au

* SIM (Structured Information Manager) (Document management)

Folio Corporation

5072 North 300 West
Provo, UT 84604
USA
Tel: (800) 543-6546
Tel: +1 (801) 229-6700
Fax: +1 (801) 229-6787
Email: sales@folio.com
URL: http://www.folio.com/

* Folio VIEWS (Electronic delivery)

Frame Technology Corp.

name::
* McsEngl.Frame Technology Corp.@cptIt,

333 West San Carlos Street
San Jose, CA 95110-2711
USA
Tel: (800) U4-FRAME
Tel: +1 (408) 975-6000
Fax: +1 (408) 975-6799
Email: comment@frame.com
URL: http://www.frame.com/

* FrameMaker+SGML (Page layout software)

Green Book International Corp.

name::
* McsEngl.Green Book International Corp.@cptIt,

15 Emery Court
Nepean
Ontario
K2H 7W2
Canada
Tel: +1 (613) 726-6565
Fax: +1 (613) 820-8299
Email: sales@greenbook.com
URL: http://www.greenbook.com/news/

* GBook (Electronic delivery)

Grif S.A.

name::
* McsEngl.Grif S.A.@cptIt,

Immeuble "Le Florestan"
2, boulevard Vauban
B.P. 266
F-78053 St. Quentin en Yvelines
France
Tel: +33 (1) 30-12-14-30
Fax: +33 (1) 30-64-06-46
Email: grif@grif.fr
URL: http://www.grif.fr/

* Grif SGML ActiveViews (Electronic delivery)
* Grif SGML Editor (Text editors)
* Grif SGML Notes (Text editors)

HaL Software Systems; Inc.

name::
* McsEngl.HaL Software Systems; Inc.@cptIt,

3006A Longhorn Blvd., Suite 113
Austin, TX 78758
USA
Tel: +1 (512) 834-9962
Fax: +1 (512) 834-9963
Email: jps@hal.com

* OLIAS Browser (Electronic delivery)

IBM Corp.

name::
* McsEngl.IBM Corp.@cptIt,

400 Columbus Avenue
Valhalla, NY 10595
USA
Tel: +1 (914) 749-3409

* IBM SGML Translator (Parsers/SGML Engines)

InContext Systems

2 St. Clair Ave. West, 16th Floor
Toronto, Ontario
M4V IL5
Canada
Tel: (800) 263-0127
Tel: +1 (416) 922-0087
Fax: +1 (416) 922-6489
Email: sales@incontext.ca
URL: http://www.incontext.ca

* InContext (Text editors)

InfoAccess Inc.

name::
* McsEngl.InfoAccess Inc.@cptIt,

2800 156th Avenue SE
Bellevue
WA 98007
USA
Tel: (800) 344-9373
Tel: +1 (206) 747-3203
Fax: +1 (206) 641-9367
Email: info@infoaccess.com
URL: http://www.infoaccess.com/

* Guide Professional Publisher (Electronic delivery)

InfoDesign Corporation

Waterpark Place
10 Bay Street, Suite 610
Toronto, Ontario
M5J 2R8
Canada
Tel: +1 (416) 369-9125
Fax: +1 (416) 369-0042
Email: info@idc.com

* WorkSMART (Document management)

Inforium - The Information Attrium Inc.

name::
* McsEngl.Inforium - The Information Attrium Inc.@cptIt,

158 University Avenue West
Waterloo, Ontario
N2L 3E9
Canada
Tel: +1 (519) 885-2181
Fax: +1 (519) 746-7362
Email: info@inforium.com
URL: http://www.inforium.com/inforium.htm

* LivePAGE (Databases)
* LivePAGE Browser/Updater (Electronic delivery)

Information Dimensions Inc.

name::
* McsEngl.Information Dimensions Inc.@cptIt,

5080 Tuttle Crossing Blvd
Dublin, OH 43017-3569
USA
Tel: +1 (614) 761-8083
Fax: +1 (614) 761-7290

* Basis SGMLserver (Databases)

Infrastructures for Information Inc.

name::
* McsEngl.Infrastructures for Information Inc.@cptIt,

330 Dupont, Suite 302
Toronto, Ontario
M5R 1V9
Canada
Tel: +1 (416) 920-6489
Fax: +1 (416) 920-6493
Email: i4i@i4i.org
URL: http://www.i4i.org/

* S4 (Standard SGML Support System) (Parsers/SGML Engines)
* S4-Browser (Electronic delivery)
* S4-DB (Databases)
* S4-Editor (Text editors)
* S4-pdf (Electronic delivery)
* VISion Servers (Document management)

Interleaf; Inc.

name::
* McsEngl.Interleaf; Inc.@cptIt,

Prospect Place
9 Hillside Avenue
Waltham, MA 02154
USA
Tel: (800) 955-5323
Tel: +1 (617) 290-0710
Fax: +1 (617) 290-4943
URL: http://www.ileaf.com/

* Interleaf 6 SGML (Page layout software)
* WorldView (Electronic delivery)

Jouve Software Incorporated

17671 Cowan Avenue
Suite 200-A
Irvine, CA 92714
USA
Tel: +1 (714) 757-0500
Fax: +1 (714) 757-0515
Email: GTIPub@Jouve.fr

* GTI Publisher (Electronic delivery)

Lexicon Systems; Inc.

name::
* McsEngl.Lexicon Systems; Inc.@cptIt,

6165 Lehman Drive, Suite 204
Colorado Springs
CO 80918
USA
Tel: (800) 700-2712
Tel: +1 (719) 593-8971
Fax: +1 (719) 593-9268

* Extended SGML Structured Editor (Text editors)

LSC Consulting

Concept House
Tamworth
Staffs. B79 7HL
UK
Tel: +44-1827-50151
Fax: +44-1827-63128
Email: group@lsc.co.uk
URL: http://www.lsc.co.uk

* Module Master (Databases) »»

Microsoft Corp.

name::
* McsEngl.Microsoft Corp.@cptIt,

One Microsoft Way
Redmond
WA 98052-6399
USA
Tel: +1 (206) 936 7407
Fax: +1 (206) 936 7329
Email: johnva@microsoft.com
URL: http://www.microsoft.com/

* SGML Author for Word (Text editors)

Microstar Software Ltd.

name::
* McsEngl.Microstar Software Ltd.@cptIt,

3775 Richmond Road
Nepean, Ontario
K2H 5B7
Canada
Tel: (800) 267-9975
Tel: +1 (613) 596-2233
Fax: +1 (613) 596-5934
Email: cade@microstar.com
URL: http://www.microstar.com

* CADE Groupware (Document analysis/design tools)
* NEAR & FAR (Document analysis/design tools)
* NEAR & FAR Author for Microsoft Word 6.0 (Text editors)
* NEAR & FAR Lite (Document analysis/design tools)

MID Information Logistics Group

Ringstrasse 19
D-69115 Heidelberg
Germany
Tel: +49 6221-166091
Fax: +49 6221-23921
Email: post@mid-heidelberg.de
URL: http://www.mid-heidelberg.de/

* i2c (ISO/CALS table conversion) (Conversion/Transformation software)
* MetaMorphosis (Conversion/Transformation software) »»
* SGML Editorial System (Document management)
* SGML Exportfilter for FrameBuilder (Conversion/Transformation
software)

Miles 33 Ltd.

name::
* McsEngl.Miles 33 Ltd.@cptIt,

Miles House
Old Bracknell Lane West
Bracknell
Berkshire RG12 7AE
UK
Tel: +44 (1344) 861133
Fax: +44 (1344) 860224
Email: info@miles33.co.uk
URL: http://www.miles33.co.uk/

* Genera (Page layout software)

NICE Technologies

2121 41st Avenue, Suite 303
Capitola, CA 95010
USA
Tel: +1 (408) 476 7850
Fax: +1 (408) 476 0910
Email: nicetech@netcom.com
URL: http://ourworld.compuserve.com/homepages/nice/

* AAP2ISO (Conversion/Transformation software)
* SGML Tag Wizard (Text editors)

Ntergaid; Inc.

name::
* McsEngl.Ntergaid; Inc.@cptIt,

60 Commerce Park
Milford, CT 06460
USA
Tel: +1 (203) 783-1280
Fax: +1 (203) 882-0850
Email: p00869@psilink.com

* HyperWriter for SGML (Electronic delivery)

OCLC Online Computer Library Center

6565 Frantz Road
Dublin
OH 43017-3395
USA
Tel: +1 (614) 761-5049
Email: shafer@oclc.org
URL: http://www.oclc.org/fred/

* Fred (Document analysis/design tools)

Open Text Corp.

name::
* McsEngl.Open Text Corp.@cptIt,

180 Columbia Street West, Suite 2110
Waterloo, Ontario
N2L 3L3
Canada
Tel: +1 (519) 888-7111
Fax: +1 (519) 888-0741
Email: info@opentext.com
URL: http://www.opentext.com/

* Lector (Electronic delivery)
* PAT (Databases)

Oxford University Press

Walton Street
Oxford
OX2 6DP
UK
Tel: +44 (865) 267979
Fax: +44 (865) 267990

* SGML Tagger (Text editors)

Passage Systems; Inc.

name::
* McsEngl.Passage Systems; Inc.@cptIt,

10596 N. Tantau Ave.
Cupertino, CA 95014-3535
USA
Tel: +1 (408) 366-0300
Fax: +1 (408) 366-0320

* PassagePRO (Document management)

Penta Software; Inc.

name::
* McsEngl.Penta Software; Inc.@cptIt,

107 Lakefront Drive
Hunt Valley, MD 21030
USA
Tel: +1 (410) 771-8973
Fax: +1 (410) 771-4020
Email: sales@penta.com

* DeskTopPro/SGMLToolKit (Page layout software)

Public Domain/Freely Distributable

ftp://ftp.ifi.uio.no/pub/SGML/
ftp://info.ex.ac.uk/pub/SGML/
ftp://ftp.th-darmstadt.de/pub/text/sgml/

* Amsterdam Parser (Parsers/SGML Engines)
* ARC-SGML (Parsers/SGML Engines)
* CoST: Copenhagen SGML Tool (Conversion/Transformation software) »»
* CTI/Sema harmonised test suite (Various)
* DTD-fragments (Page layout software) »»
* DTD2HTML (Document analysis/design tools) »»
* EasyDTD (Document analysis/design tools)
* Inside & Out (Document analysis/design tools) »»
* Integrated Chameleon Architecture (Conversion/Transformation software)
* nsgmls (Parsers/SGML Engines) »»
* perlSGML (Conversion/Transformation software) »»
* PSGML (emacs mode) (Text editors) »»
* qwertz/FORMAT (Conversion/Transformation software)
* Rainbow-makers (Conversion/Transformation software) »»
* SENG Transformation Engine (Conversion/Transformation software) »»
* SGML2TeX (Conversion/Transformation software)
* sgmls (Parsers/SGML Engines)
* SGMLS.pm (Conversion/Transformation software) »»
* SP (Parsers/SGML Engines) »»
* STIL: SGML Transformations In Lisp (Conversion/Transformation
software) »»
* YASP (Yorktown SGML Parser) (Parsers/SGML Engines)

Publishing Development AB

Torpvagen 10
S-175 43 Jarfalla
Sweden
Tel: +46 (8) 580-37579
Fax: +46 (8) 580-37579
Email: sales@pubdev.se
URL: http://www.pi.se/pubdev/pubdev.html

* SGML Companion (Document analysis/design tools)

Sema Group Belgium

rue de Stalle, 96
B-1180 Bruxelles
Belgium
Tel: +32 2 333 5258
Fax: +32 2 333 5522
Email: veronique.bertrand@sema.be

* Mark-It (Parsers/SGML Engines)
* Write-It (Text editors)

SGML Systems Engineering

Banwell House
Banwell, Avon
BS24 6DG
UK
Tel: +44 (1934) 822911
Fax: +44 (1934) 822994
Email: bruce@sgml.dircon.co.uk

* SGMLC (Conversion/Transformation software)

SoftQuad Inc.

name::
* McsEngl.SoftQuad Inc.@cptIt,

56 Aberfoyle Crescent, 5th Floor
Toronto, Ontario
M8X 2W4
Canada
Tel: (800) 387-2777
Tel: +1 (416) 239-4801
Fax: +1 (416) 239-7105
Email: mail@sq.com
URL: http://www.sq.com/

* Author/Editor (Text editors)
* DTDocumenter (Document analysis/design tools)
* RulesBuilder (Document analysis/design tools)
* SGML Enabler QuarkXTension (Page layout software)
* SGML World Tour (Various)
* SoftQuad Explorer (Electronic delivery)
* SoftQuad Panorama (Electronic delivery)

STEP

Technologiepark Wurzburg-Rimpar
Kettelerstrasse
D-97222 Rimpar
Germany
Tel: +49-9365/8062-0
Fax: +49-9365/8062-66
Email: step@step.de

* DocMan (Document management)
* SINDA (Databases)

Stilo Associates

Empire House
Mount Stuart Square
Cardiff Bay
Cardiff CF1 6DN
UK
Tel: +44-1222 483530
Fax: +44-1222 483530
Email: info@stilo.demon.co.uk
URL: http://www.demon.co.uk/stilo/

* Stilo (Text editors)

Synex Information AB

Stora Nygatan 20
S-111 27 Stockholm
Sweden
Tel: +46 8 791 88 81
Fax: +46 8 751 88 89
Email: sales@synex.se
URL: http://www.synex.se/

* SGML Darc (Electronic delivery)
* Synex ViewPort (Electronic delivery)

T.I.M.E. LUX sarl

name::
* McsEngl.T.I.M.E. LUX sarl@cptIt,

61 avenue de la Gare
L-1611 Luxembourg
Luxembourg
Tel: +352 40 53 221
Fax: +352 40 50 09
Email: timelux@mail.interpac.be

* EditTime (Text editors)

TechnoTeacher; Inc.

name::
* McsEngl.TechnoTeacher; Inc.@cptIt,

P.O.Box 23795
3800 Monroe Avenue, Pittsford, NY
Rochester
New York 14692-3795
USA
Tel: +1 (716) 389-0961
Fax: +1 (716) 389-0960
Email: hyminder@techno.com
URL: http://www.techno.com

* HyMinder (HyTime engines)
* MarkMinder (Parsers/SGML Engines)

TetraSys

26 avenue de Tourville
F-75 007 Paris
France
Tel: +33 (1) 45-56-99-22
Fax: +33 (1) 45-56-98-77

* EasyTag (Conversion/Transformation software)
* HyperTag (Electronic delivery)

Texcel (UK) Ltd.

name::
* McsEngl.Texcel (UK) Ltd.@cptIt,

Fountain Court
28-32 Frances Road
Windsor
Berkshire SL4 3AA
United Kingdom
Tel: +44-1753-833111
Fax: +44-1753-854090
Email: sales@texcel.no

* ERiC (Document management)
* Information Manager (Document management)

Unifilt Co.

name::
* McsEngl.Unifilt Co.@cptIt,

P.O.Box 2528
Edison, NJ 08817
USA
Tel: +1 (908) 225-2243
Fax: +1 (908) 225-2248

* TableTAG (Conversion/Transformation software)

WordPerfect Corp.

name::
* McsEngl.WordPerfect Corp.@cptIt,

1555 N. Technology Way
Orem, UT 84057-2399
USA
Tel: (800) 451-5151
Tel: +1 (801) 228-5006
Fax: +1 (801) 222-5077
Email: dallas@wordperfect.com
URL: http://www.wordperfect.com/

* Intellitag (Text editors)
* WordPerfect SGML Edition (Text editors)

XSoft; A Division of Xerox

3400 Hillview Avenue
Palo Alto, CA 94304
USA
Tel: (800) 428-2995
Tel: +1 (415) 424 0111
Email: info@xsoft.xerom.com
URL: http://www.xerox.com/XSoft/XSoftHome.html

* Astoria (Document management)
* CAPS (Page layout software)

XyVision Inc.

name::
* McsEngl.XyVision Inc.@cptIt,

101 Edgewater Drive
Wakefield, MA 01880
USA
Tel: +1 (617) 245-4100
Fax: +1 (617) 246-5308
Email: judy.cox@xyvision.com
URL: http://www.xyvision.com/

* Parlance Document Manager (Document management)
* Parlance Publisher (Page layout software)

Zandar Corporation

R.R.2 Box 962 (Hanley Lane)
PO Box 467
Jericho, VT 05465
USA
Tel: +1 (802) 899-1058

* Alchemy (Conversion/Transformation software)
* TagWrite (Conversion/Transformation software)

ZIFTech Computer Systems; Inc.

name::
* McsEngl.ZIFTech Computer Systems; Inc.@cptIt,

120 Herchmer Crescent
Kingston, Ontario
K7M 2V9
Canada
Tel: +1 (613) 531-9226
Fax: +1 (613) 531-8003
Email: 70444.126@compuserve.com

* DTD Viewer (Document analysis/design tools)

sgml'TRANSFORMATION

name::
* McsEngl.sgml'TRANSFORMATION@cptIt,

A transformation takes an SGML document and transforms it into a different SGML document. More than one document can be used as input or produced as output.

A transformation consists of three processes:
-- the grove builder takes an SGML document as input and produces a grove;
-- the transformer takes the constructed grove, applies the associations from the transformation specification and produces one (or more) result groves;
-- the SGML generator verifies each result grove to see if it is valid; if this is the case, it generates an SGML document or subdocument.

association
Within a transformation specification, associations indicate how a source grove is to be transformed in one or more result groves.
An association consists of a query expression and a transform expression, with optionally a priority expression as a third part.
The query expression is evaluated and returns a (possibly empty) list of nodes in the source grove, to which the transform expression can be applied. If a given node is a candidate for transformation by more than one association, only the one with the highest priority is actually applied.

sgml'WHITE'SPACE

name::
* McsEngl.sgml'WHITE'SPACE@cptIt,

_DEFINITION:
Components of the declaration are separated by white space, that is one or more blanks, tabs or newlines.
[TEI Introduction]

sgml'ENVIRONMENT#cptCore756#

name::
* McsEngl.sgml'ENVIRONMENT@cptIt,

What's the difference between SGML and HTML?

name::
* McsEngl.What's the difference between SGML and HTML?@cptIt,

ANSWER: HTML is an SGML application (a DTD and a set of processing conventions). Most HTML browsers do not support some basic SGML constructions, like arbitrary entities, but nearly all SGML authoring tools are capable of producing good HTML documents.
For more information on HTML, see the HTML entry at Robin Cover's SGML Web Site, above.
[SOURCE: David Megginson <dmeggins@uottawa.ca> FAQ Version: 0.6 1997/05/04]

What's the difference between SGML and XML?

name::
* McsEngl.What's the difference between SGML and XML?@cptIt,

ANSWER:
Unlike HTML, XML is not an SGML application -- instead, it's a set of simple conventions for using SGML without some of the more esoteric features. It's still SGML, though.
For more information on XML, see the XML entry at Robin Cover's SGML Web Site, above.
[SOURCE: David Megginson <dmeggins@uottawa.ca> FAQ Version: 0.6 1997/05/04]

sgml.SPECIFIC

name::
* McsEngl.sgml.SPECIFIC@cptIt,


DSSSL (ISO/IEC 10179:1996)#cptItsoft1018: attSpe#
HyTime-(ISO-10744:-1992)#cptItsoft1017: attSpe#
 SMSL#cptItsoft1021: attSpe#
HTML#cptItsoft1014: attSpe#
XML#cptIt439: attSpe#
 CML
 MathML#cptIt441: attSpe#

lagCmr.Structure

name::
* McsEngl.lagCmr.Structure@cptIt,
* McsEngl.conceptIt501.11,
* McsEngl.data-structure-format-language@cptIt501.11,
* McsEngl.methodDataStructure@cptIt501.11, {2011-09-07}
* McsEngl.structure-representation-method@cptIt501.11, {2011-08-31}

_SPECIFIC:
* JSON#ql:json_data_format@cptIt554.6#
* SDL
* XML

lagCmr.STYLE (slrm)

name::
* McsEngl.lagCmr.STYLE (slrm)@cptIt,
* McsEngl.concept-501.10,
* McsEngl.methodDataStyle@cptIt501.10, {2011-09-07}
* McsEngl.slrm@cptIt501.10, {2011-08-31}
* McsEngl.style-representation-method@cptIt501.10,
* McsEngl.style-sheet-language@cptIt501.10,
* McsEngl.stylesheet-language@cptIt501.10,
* McsEngl.style-sheet-cpl@cptIt501.10,
* McsEngl.formated-language@cptIt501.10, {2011-08-31}
* McsEngl.formated-text-language@cptIt501.10,

_GENERIC:
* drm

_DESCRIPTION:
A style sheet language is a computer language used to describe the presentation of structured documents. A structured document is a document whose sections are clearly defined and categorized. A program presenting the document can present it in different styles because the content has been categorized. One modern style sheet language with widespread use is CSS (Cascading Style Sheets), which is used to style documents written in HTML, XHTML, SVG, XUL, and other markup languages. One of the most attractive features of structured documents is that the content can be reused in many contexts and presented in various ways. Different style sheets can be attached to the logical structure to produce different presentations.

In order for content in structured documents to be presented, a set of stylistic rules – describing for example, colors, fonts and layout – must be applied. A collection of stylistic rules is called a style sheet. Style sheets in the form of written documents have a long history of use by editors and typographers to ensure consistency of presentation, spelling and punctuation. In electronic publishing, style sheet languages are mostly used in the context of visual presentation rather than spelling and punctuation.

Components
In order to present structured documents, style sheet languages need expressive power. All style sheet languages offer functionality in these areas:

Syntax
A style sheet language needs a syntax in order to be expressed in a machine-readable manner. For example, here is a simple style sheet written in the CSS syntax:
h1 { font-size: 1.5em }

Selectors
Selectors specify which elements are to be influenced by the style rule. As such, selectors are the glue between the structure of the document and the stylistic rules in the style sheets. In the example above, the "h1" selector selects all h1 elements. More complex selectors can select elements based on, e.g., their context, attributes and content.
Properties
All style sheet languages have some concept of properties that can be given values to change one aspect of rendering an element. The "font-size" property of CSS is used in the above example. Common style sheet languages typically have around 50 properties to describe the presentation of documents
Values and units
properties change the rendering of an element by being assigned a certain value. The value can be a string, a keyword, a number, or a number with a unit identifier. Also, values can be lists or expressions involving several of the aforementioned values. A typical value in a visual style sheet is a length; for example, "1.5em" which consists of a number (1.5) and a unit (em). The "em" value in CSS refers to the font size of the surrounding text. Common style sheet languages have around ten different units.
Value propagation mechanism
To avoid having to specify explicitly all values for all properties on all elements, style sheet languages have mechanisms to propagate values automatically. The main benefit of value propagation is less-verbose style sheets. In the example above, only the font size is specified; other values will be found through value propagation mechanisms. Inheritance, initial values and cascading are examples of value propagation mechanisms.
Formatting model
All style sheet languages support some kind of formatting model. Most style sheet languages have a visual formatting model that describes, in some detail, how text and other content is laid out in the final presentation. For example, the CSS formatting model specifies that block-level elements (of which "h1" is an example) extends to fill the width of the parent element. Some style sheet languages also have an aural formatting model.
[http://en.wikipedia.org/wiki/Stylesheet_language]

slrm'Methodology

name::
* McsEngl.slrm'Methodology@cptIt,

Markup is the usual codes used to represent it.
[KasNik, 2007-12-24]

slrm'Resource

name::
* McsEngl.slrm'Resource@cptIt,

Individual styles are created by the user and may include a wide variety of commands that dictate how a selected portion of text is formatted:
* Typeface or font
* Boldfacing
* Italicizing
* Underlining
* Justification (left, right, center, justify, force justify)
* Space before and after paragraphs
* Tab stops and indentation
* Type size
* Leading
* Kerning
* Tracking
* Color
* Borders or strokes
* Superscript or subscript
* Dropcaps
* Letter case
* Strike through
* Outline font style
[http://en.wikipedia.org/wiki/Style_sheet_%28desktop_publishing%29]

DEFINITION

TeX (pron.: /'t?x/ as in Greek, but often pronounced /'t?k/ in English) is a typesetting system designed and mostly written by Donald Knuth[1] and released in 1978. Within the typesetting system, its name is formatted as TEX.
Together with the Metafont language for font description and the Computer Modern family of typefaces, TeX was designed with two main goals in mind: to allow anybody to produce high-quality books using a reasonably minimal amount of effort, and to provide a system that would give exactly the same results on all computers, now and in the future.[2]
TeX is a popular means by which to typeset complex mathematical formulae; it has been noted as one of the most sophisticated digital typographical systems in the world.[3] TeX is popular in academia, especially in mathematics, computer science, economics, engineering, physics, statistics, and quantitative psychology. It has largely displaced Unix troff, the other favored formatter, in many Unix installations, which use both for different purposes. It is now also being used for many other typesetting tasks, especially in the form of LaTeX and other template packages.
The widely used MIME type for TeX is application/x-tex. TeX is free software.
[http://en.wikipedia.org/wiki/TeX]

TeX
(The 'X' is pronounced as a hard 'H' or 'KH' as in Russian or Greek.) A batch-style typesetting system developed by Donald Knuth for creating beautiful books, especially books containing a lot of mathematics. TeX is a full-blown macro language where, in contrast with SGML, formatting commands are interspersed textual data.

tex'GENERIC

_GENERIC:
* language.computer.representation#cptItsoft501#

tex'Code

name::
* McsEngl.tex'Code@cptIt,

tex'Delta:
* Δ

tex'pm:
* plus minus.

tex'over:

tex'sqrt:

lagCmr.XML (lagXml0)#conceptIt439#

NAME

name::
* McsEngl.lagXml0@cptIt,
* McsEngl.computer-language.XML@cptIt,
* McsEngl.Extensible-Markup-Language@cptIt,
* McsEngl.language.markup.extensible@cptIt,
* McsEngl.XML@cptIt,
* XML@cptIt439,
* McsEngl.lmx@cptIt, {2016-05-27}
* McsEngl.lmx@cptIt,

xml'DEFINITION

More precisely, XML is a general-purpose specification for creating custom markup languages.
[http://en.wikipedia.org/wiki/Xml#_note-0] 2007-12-04

XML, or Extensible Markup Language, is a very large SUBSET of SGML#cptIt133.1#. The purpose of XML is to specify an SGML subset that works very well for delivering SGML information over the Web. We believe, when the mainstream Web browsers, Microsoft Internet Explorer and Netscape Navigator, support XML, it's going to be very easy to publish SGML information on the Web.

SGML: Father to HTML and Brother to XML
SGML prescribes the rules for creating a specific markup language such as HTML. In other words, HTML is an application of SGML. HTML is a single set of tags, while SGML provides the capability for creating any desired set of tags. XML is similar to SGML in that it likewise provides the capability to create any tags.
[ArborText paper 1997]

Extensible Markup Language (XML) is an extremely simple dialect of SGML which is completely described in this document. The goal is to enable generic SGML to be served, received, and processed on the Web in the way that is now possible with HTML. XML has been designed for ease of implementation and for interoperability with both SGML and HTML.
[SOURCE: W3C WD Part1 1997jun30]

In short, the shift from strucutral HTML markup to semantic XML markup is a critical phase in the struggle to transform the Web from a global information space into a universal knowledge network.
[Khare-Fifkin 1997jul31]

What is XML?
XML stands for `Extensible Markup Language' (extensible because it is not a fixed format like HTML). It is designed to enable the use of SGML on the World-Wide Web.
A regular markup language defines what you can do (or what you have done) in the way of describing information for a fixed class of documents (like HTML). XML goes beyond this and allows you to define your own customized markup language. It can do this because it's an application profile of SGML. XML is thus a metalanguage, a language for describing languages.

XML is an abbreviated version of SGML, to make it easier for you to define your own document types, and to make it easier for programmers to write programs to handle them. It omits some more complex and some less-used parts in return for the benefits of being easier to write applications for, easier to understand, and more suited to delivery and interoperability over the Web. But it is still SGML, and XML files can be parsed and validated the same as any other SGML file
[SOURCE: FAQ 1997may]

From: Kay Michael <Michael.Kay@icl.com>
To: <xml-dev@ic.ac.uk> Subject:
RE: DOM Date: Πέμπτη, 1 Απριλίου 1999 7:03 μμ

> What exactly does DOM do and how does it work with XML parsers?
The DOM is an interface that allows an application to discover information about an XML document by walking around it, navigationally. Many XML parsers implement the DOM interface.

> What exactly does SAX do and how does it work with XML parsers?SAX is an interface that allows an application to discover information about an XML document by receiving notification of events as the document is serially read (for example, start and end of elements). Many XML parsers implement the SAX interface.

> What exactly does SAXON do and how does it work with XML parsers?SAXON is a Java class library that provides high-level application functions on top of DOM or SAX, for example it allows you to select the elements to be processed using XSL-compatible patterns (queries). SAXON also includes an XSL processor.

> What is the different between the above three tools?One important difference is that SAXON is a "product", SAX and DOM are interfaces. There are many parsers that implement SAX and/or DOM interfaces.SAX is a "lower-level" interface than DOM, it is more work for the application and less for the parser, but for some applications it uses less resources.

> Does a parser have to have DOM in order to work?No.

> Does a parser have to have SAX in order to work?No.

> What do you use in order to create an XML document programmatically?System.out.println()

> Please help me get started.
You're welcome.
Mike Kay
[xml-dev {1999-04-01}]

xml'syntthetic

name::
* McsEngl.xml'syntthetic@cptIt,

The Extensible Markup Language, abbreviated XML, describes a class of data objects called XML-documents#ql:xml'document# and partially describes the behavior of computer programs which process them.
[SOURCE: W3C WD-xml 1997aug07]

XML is a language to write XML-DOCUMENTS#ql:xml'document#.
[NIKOS {1997-09-18}]

The Extensible Markup Language (XML) describes a class of data objects called XML-documents#ql:xml'document# which are stored on computers, and partially describes the behavior of programs which process these objects.
[CGA intro 1997]

xml'ENVIRONMENT#cptCore756#

name::
* McsEngl.xml'ENVIRONMENT@cptIt,

xml'DOMAIN (SET)

name::
* McsEngl.xml'DOMAIN (SET)@cptIt,

xml'CODOMAIN (SET)

name::
* McsEngl.xml'CODOMAIN (SET)@cptIt,

* xml_document#ql:xml'document###

xml'INPUT (ORIGIN; one entity)

name::
* McsEngl.xml'INPUT (ORIGIN; one entity)@cptIt,

_DESCRIPTION:
# S: (n) beginning, origin, root, rootage, source (the place where something begins, where it springs into being) "the Italian beginning of the Renaissance"; "Jupiter was the origin of the radiation"; "Pittsburgh is the source of the Ohio_River"; "communism's Russian root"
[wn, 2007-12-05]

xml'OUTPUT (TARGET; one entity)

name::
* McsEngl.xml'OUTPUT (TARGET; one entity)@cptIt,

xml'ORGANIZATION#cptIt968#

name::
* McsEngl.xml'ORGANIZATION@cptIt,

W3C XML Working Group

XML WG comprised the following members:
Jon Bosak, Sun (Chair);
James Clark (Technical Lead);
Tim Bray, Textuality and Netscape (XML Co-editor);
Jean Paoli, Microsoft (XML Co-editor);
C. M. Sperberg-McQueen, U. of Ill. (XML Co-editor);
Steve DeRose, INSO; Dave Hollander, HP;
Eliot Kimber, Highland;
Tom Magliery, NCSA;
Eve Maler, ArborText;
Murray Maloney, Grif;
Peter Sharpe, SoftQuad;
[1997aug]

xml'human#cptCore401#

name::
* McsEngl.xml'human@cptIt,

For purposes of reference, here is a list of the Phase III W3C XML Working Groups and their chairs.
Jon Bosak Chair, W3C XML Coordination Group
========================================================================
XML Linking Working Group
Tim Bray, Textuality Bill Smith, Sun Microsystems W3C staff contact: Daniel Veillard
XML Schema Working Group
Dave Hollander, CommerceNet C. M. Sperberg-McQueen, W3C
XML Query Working Group
Paul Cotton, IBM W3C contact: Massimo Marchiori
XML Core Working Group
Paul Grosso, ArborText David Megginson, Megginson Technologies W3C contact: Dan Connolly
[{1999-09-19} xmldev]

BRAY.TIM:
* spec editor
* Textuality com
* email: tbray@textuality.com

DEROSE.STEVE:
** editor xlink
** (Inso Corp. and Brown University ) <sderose@eps.inso.com>

MALER.EVE
** editor xlink
** (ArborText) <elm@arbortext.com>

SPERBERG-MCQUEEN, C.M.:
* spec editor
* University of Illinois at Chicago
* email: cmsmcq@uic.edu

XML syntax vs. HTML syntax

name::
* McsEngl.XML syntax vs. HTML syntax@cptIt,
* McsEngl.xml'and'html@cptIt439i,
* McsEngl.html'and'xml@cptIt439i,

•Freely extensible
•Arbitrarily deep structure
•Optional validation
•Strong separation of content and presentation
[SOURCE: Overview: XML, HTML, and all that, Jon Bosak Sun Microsystems, {1997-04-11}]

XML differs from HTML in three major respects:
1.Information providers can define new tag and attribute names at will.
2.Document structures can be nested to any level of complexity.
3.Any XML document can contain an optional description of its grammar for use by applications that need to perform structural validation.
[SOURCE: Bosak {1997-03-10}]

XML vs. SGML

name::
* McsEngl.XML vs. SGML@cptIt,
* McsEngl.xml'and'sgml@cptIt439i,
* McsEngl.sgml'and'xml@cptIt439i,

XML is almost indistinguishable from SGML as practiced. XML has almost all of the capabilities of SGML that are widely supported. XML also lacks some important capabilities of SGML that primarily affect document creation, not document delivery. That's because XML was not designed to replace SGML in every respect. As you will see, SGML remains the appropriate technology for creating and storing information.
[ArborText paper 1997]

•Vastly simpler (a very small conforming subset of SGML)
•Vastly easier to implement
•Design is formal and concise ("Lexable and Yaccable")
•Retains most of SGML's power as a document delivery medium
•DTD is optional
•Can (and will) function as an authoring format, but functions best as a delivery format from databases (primary design goal)
[SOURCE: Overview: XML, HTML, and all that, Jon Bosak Sun Microsystems, {1997-04-11}]

An important difference between XML and SMGL is that elements in XML which do not have any contents (like IMG and BR of HTML) are written like this in XML: <IMG SRC="pamela.gif"/>. Note the slash before the final >. This means that a program can read the document without knowing the DTD (which is where it says that IMG does not have any contents) and still know that IMG does not have an end tag and that what comes after IMG is not inside the element.
[SOURCE: L.M. Garshol, XML INTRO, 1997aug14]

xml'Attribute-of-xmlelm

name::
* McsEngl.xml'Attribute-of-xmlelm@cptIt,
* McsEngl.attribute-xml@cptIt439,
* McsEngl.xml'attribute@cptIt,
* McsEngl.xmlatt@cptIt, {2013-01-15}

_DEFINITION ANALYTIC:
Attributes are used to associate name-value pairs with ELEMENTS#ql:xml'element#. Attributes may appear only within start-tags;
[SOURCE: W3C WD Part1 1997jun30]
===
Attributes are name-value pairs that occur inside tags after the element name.
[N.Walsh Introduction {1997-09-10}]
===
it uses ATTRIBUTES (for example, in <A HREF="http://www.xml.com/">, HREF is the attribute name, and http://www.xml.com/ is the attribute value) to encode extra document information.
[SOURCE: FAQ textuality 1997]

XML'EX.ATTRIBUTE:
For example, <div class="preface">
is the 'div' element with the attribute 'class' having the value 'preface'. In XML, all attribute values must be quoted.
[N.Walsh Introduction {1997-09-10}]

xml'ATTRIBUTE'DECLARATION

name::
* McsEngl.xml'ATTRIBUTE'DECLARATION@cptIt,
* McsEngl.xml'ATTRIBUTE'LIST'DECLARATION@cptIt,
* McsEngl.xml'DECLARATION.ATTRIBUTE@cptIt,

DEFINITION ANALYTIC:
Attribute-list declarations may be used:
- To define the set of attributes pertaining to a given ELEMENT#ql:xml'element# type.
- To establish a set of type constraints on these attributes.
- To provide default values for attributes.
Attribute-list declarations specify the name, data type, and default value (if any) of each attribute associated with a given element type:
[SOURCE: W3C WD Part1 1997jun30]

PRODUCTION:
Attribute list declaration:
[xmlnt52] xmlnt'AttlistDecl ::= '<!ATTLIST' S %Name S? %AttDef+ S? '>'
[xmlnt53] xmlnt'AttDef ::= S %Name S %AttType#ql:xmlnt'atttype# S %Default#ql:xmlnt'Default#
[SOURCE: W3C WD Part1 1997jun30]

xml'EX.attlist'declaration:
<!ATTLIST termdef
id ID#REQUIRED
name CDATA#IMPLIED>
<!ATTLIST list
type (bullets|ordered|glossary) "ordered">
<!ATTLIST form
method CDATA#FIXED "POST">
[SOURCE: W3C WD Part1 1997jun30]

<!ATTLIST PostURL HREF CDATA#REQUIRED>

<!ATTLIST Channel HREF CDATA#IMPLIED>

<!ATTLIST Channel IsClonable (YES | NO) "NO">

<!ATTLIST MinStorage VALUE CDATA "0">

<!ATTLIST UserSchedule VALUE (DAILY| WEEKLY| HOURLY)#REQUIRED>

xml'ATTRIBUTE'DEFAULT

name::
* McsEngl.xml'ATTRIBUTE'DEFAULT@cptIt,

PRODUCTION:
Attribute defaults:
[xmlnt62] xmlnt'Default ::= '#REQUIRED' | '#IMPLIED' [VC: Attribute Default Legal ]
| ((%'#FIXED' S)? %AttValue#ql:xmlnt'AttValue#)

Validity Constraint - Attribute Default Legal:
The declared default value must meet the constraints of the declared attribute type.
[SOURCE: W3C WD Part1 1997jun30]

There are four possible default values:

xml'REQUIRED:
#REQUIRED The attribute must have an explicitly specified value on every occurrence of the element in the document.
[N.Walsh Introduction {1997-09-10}]

xml'IMPLIED
#IMPLIED The attribute value is not required, and no default value is provided. If a value is not specified, the XML processor must proceed without one.
[N.Walsh Introduction {1997-09-10}]

"value"
An attribute can be given any legal value as a default. The attribute value is not required on each element in the document, but if it is not present, it will appear to be the specified default.
[N.Walsh Introduction {1997-09-10}]

xml'FIXED'ATTRIBUTE:
#FIXED "value" An attribute declaration may specify that an attribute has a fixed value. In this case, the attribute is not required, but if it occurs, it must have the specified value. One use for fixed attributes is to associate semantics with an element. A complete discussion is beyond the scope of this article, but you can find several examples of fixed attributes in the XLL specification.
[N.Walsh Introduction {1997-09-10}]
If the attribute is neither#REQUIRED nor#IMPLIED, then the AttValue value contains the declared default value. If the#FIXED is present, the document is invalid if the attribute is present with a different value from the default. If a default value is declared, when an XML processor encounters an omitted attribute, it is to behave as though the attribute were present with its value being the declared default value.
[SOURCE: W3C WD-xml 1997aug07]

xml'ATTRIBUTE'NAME

name::
* McsEngl.xml'ATTRIBUTE'NAME@cptIt,

The Name-AttValue-pairs#ql:xmlnt'attribute# are referred to as the attribute specifications of the element, with the Name referred to as the attribute name and the content of the AttValue (the characters between the ' or " delimiters) as the attribute value.
[SOURCE: W3C WD Part1 1997jun30]

xml'ATTRIBUTE'SPECIFICATIONS

name::
* McsEngl.xml'ATTRIBUTE'SPECIFICATIONS@cptIt,

The Name-AttValue-pairs#ql:xmlnt'attribute# are referred to as the attribute specifications of the element, with the Name referred to as the attribute name and the content of the AttValue (the characters between the ' or " delimiters) as the attribute value.
[SOURCE: W3C WD Part1 1997jun30]

xml'ATTRIBUTE'VALUE

name::
* McsEngl.xml'ATTRIBUTE'VALUE@cptIt,

The Name-AttValue-pairs#ql:xmlnt'attribute# are referred to as the attribute specifications of the element, with the Name referred to as the attribute name and the content of the AttValue (the characters between the ' or " delimiters) as the attribute value.
[SOURCE: W3C WD Part1 1997jun30]

XML'ATTRIBUTE'VALUE'NORMALIZATION:
Before the value of an attribute is passed to the application, the XML processor must normalize it as follows:
- Line-end characters (or, on some systems, record boundaries) must be replaced by single space (#x20) characters.
- Character references and references to internal text entities must be expanded. References to external entities are an error.
- If the attribute is not of type CDATA, all strings of white space must be normalized to single space characters (#x20), and leading and trailing white space must be removed.
- Values of type ID, IDREF, IDREFS, NMTOKEN, NMTOKENS, or of enumerated or notation types, must be folded to uppercase. If no DTD is present, attributes should be treated as CDATA.
[SOURCE: W3C WD-xml 1997aug07]

RELATION ATTRIBUTE AND ELEMENT

Ray Waldin writes:
> In other words, when should data be contained by elements?  Or > conversely, when should data be an attribute of an element instead > of contained by that element?
Here's a good, general distinction:
* use elements for structurally-significant information; and
* use attributes for meta-data.
[D. Megginson 1997dec21]

xml'ATTRIBUTE'SUBGENERAL

name::
* McsEngl.xml'ATTRIBUTE'SUBGENERAL@cptIt,
* McsEngl.xml'ATTRIBUTE'TYPE@cptIt,

_DEFINITION:
XML attribute types are of three kinds:
- a string type,
- a set of tokenized types, and
- enumerated types.
[SOURCE: W3C WD Part1 1997jun30]

PRODUCTION:
Attribute types:
[xmlnt54] xmlnt'AttType ::= StringType#ql:xmlnt'StringType# | TokenizedType | EnumeratedType#ql:xmlnt'enumeratedtype#
[SOURCE: W3C WD Part1 1997jun30]

If no DTD is present, attributes should be treated as CDATA.
[SOURCE: W3C WD Part1 1997jun30, 3.3.3]

xml'ATTRIBUTE.STRING

name::
* McsEngl.xml'ATTRIBUTE.STRING@cptIt,
* McsEngl.xml'CDATA'ATTRIBUTE@cptIt,

_DEFINITION:
The string type may take any literal string as a value;
[SOURCE: W3C WD Part1 1997jun30]
CDATA attributes are strings, any text is allowed. Don't confuse CDATA attributes with CDATA-sections#ql:xml'cdata'section#. In CDATA attributes, markup is recognized; specifically, entity references are expanded.
[N.Walsh Introduction {1997-09-10}]

PRODUCTION:
[xmlnt55] xmlnt'StringType ::= 'CDATA'
[SOURCE: W3C WD Part1 1997jun30]

xml'ATTRIBUTE'TOKENIZED

name::
* McsEngl.xml'ATTRIBUTE'TOKENIZED@cptIt,

_DEFINITION:
the tokenized types have varying lexical and semantic constraints, as noted:
[SOURCE: W3C WD Part1 1997jun30]

PRODUCTION:
[xmlnt56] xmlnt'TokenizedType ::= 'ID#ql:xml'id'attribute#' [VC: ID ]
| 'IDREF' [VC: Idref ]
| 'IDREFS' [VC: Idref ]
| 'ENTITY' [VC: Entity Name ]
| 'ENTITIES' [VC: Entity Name ]
| 'NMTOKEN' [VC: Name Token ]
| 'NMTOKENS' [VC: Name Token ]

Validity Constraint - ID:
Values of this type must be valid Name symbols. A name must not appear more than once in an XML document as a value of this type; i.e., ID values must uniquely identify the elements which bear them.

Validity Constraint - Idref: Values of this type must match the Name (for IDREFS, the Names) production; each Name must match the value of an ID attribute on some element in the XML document; i.e. IDREF values must match some ID.

Validity Constraint - Entity Name: Values of this type must match the production for Name (for ENTITIES, Names); each Name must exactly match the name of an external binary general entity declared in the DTD.

Validity Constraint - Name token: Values of this type must consist of a string matching the Nmtoken nonterminal (for NMTOKENS, the Nmtokens nonterminal) of the grammar defined in this specification.
[SOURCE: W3C WD Part1 1997jun30]

There are six possible types:

xml'ID'ATTRIBUTE:
The value of an ID attribute must be a name#ql:xmlnt'name# [Section 1.5, production 5]. All of the ID values used in a document must be different. IDs uniquely identify individual elements in a document. Elements can have only a single ID attribute.
[N.Walsh Introduction {1997-09-10}]

xml'IDREF'ATTRIBUTE:
An IDREF attribute's value must be the value of a single ID attribute on some element in the document.
[N.Walsh Introduction {1997-09-10}]

xml'IDREFS'ATTRIBUTE:
The value of an IDREFS attribute may contain multiple IDREF values separated by white space.
[N.Walsh Introduction {1997-09-10}]

xml'ENTITY'ATTRIBUTE:
An ENTITY attribute's value must be the name of a single entity (see the discussion of entity declarations below).
[N.Walsh Introduction {1997-09-10}]

xml'ENTITIES'ATTRIBUTE:
The value of an ENTITIES attribute may contain multiple ENTITY values separated by white space.
[N.Walsh Introduction {1997-09-10}]

xml'NMTOKEN'ATTRIBUTE:
Name token attributes are a restricted form of string attribute. In general, an NMTOKEN attribute must consist of a single word [Section 1.5, production 7], but there are no additional constraints on the word, it doesn't have to match another attribute or declaration.
[N.Walsh Introduction {1997-09-10}]

xml'NMTOKENS'ATTRIBUTE:
The value of an NMTOKENS attribute may contain multiple NMTOKEN values separated by white space.
[N.Walsh Introduction {1997-09-10}]

xml'ATTRIBUTE.ENUMERATED

name::
* McsEngl.xml'ATTRIBUTE.ENUMERATED@cptIt,

Enumerated attributes can take one of a list of values provided in the declaration; there are two types:
Enumerated attribute types:
[xmlnt57] xmlnt'EnumeratedType ::= NotationType | Enumeration
[xmlnt58] xmlnt'NotationType ::= %'NOTATION' S '(' S? %Ntoks (S? '|' S? %Ntoks)* S? ')'
[VC: Notation Attributes ]
[xmlnt59] xmlnt'Ntoks ::= %Name (S? '|' S? %Name)*
[xmlnt60] xmlnt'Enumeration ::= '(' S? %Etoks (S? '|' S? %Etoks)* S? ')' [VC: Enumeration ]
[xmlnt61] xmlnt'Etoks ::= %Nmtoken (S? '|' S? %Nmtoken)*

Validity Constraint - Notation Attributes:
The names in the declaration of NOTATION attributes must be names of declared notations (see the discussion of notations). Values of this type must match one of the notation names included in the declaration.

Validity Constraint - Enumeration:
Values of this type must match one of the Nmtoken tokens in the declaration. For interoperability, the same Nmtoken should not occur more than once in the enumerated attribute types of a single element type.
[SOURCE: W3C WD Part1 1997jun30]

A list of names
You can specify that the value of an attribute must be taken from a specific list of names. This is frequently called an enumerated type because each of the possible values is explicitly enumerated in the declaration.
Additionally, you can specify that the names must match a particular notation name (see the discussion of notation declarations below).
[N.Walsh Introduction {1997-09-10}]

xml'CASE'SENSITIVE'NAME

name::
* McsEngl.xml'CASE'SENSITIVE'NAME@cptIt,

Which parts of an XML document are case-sensitive?
The same as for HTML and many other SGML document types.

•Element names (start-tags and end-tags) are case-insensitive: you can use upper- or lower-case (or even <MiXeD>);
•Attribute names are also case-insensitive (NUM="7" val="7");
•Attribute values, however, may be case-sensitive, depending on context: you can specify which in a Document Type Definition (HRef="MyFile.SGML");
•All entity names (Á), and your data content (the text), are case-sensitive.
[SOURCE: FAQ 1997may]

xml'constant

name::
* McsEngl.xml'constant@cptIt,

_DESCRIPTION:
In XML, a constant is known as an Entity.
[http://www.rietta.com/firefox/Tutorial/locale]

xml'DECLARATION

name::
* McsEngl.xml'DECLARATION@cptIt,

DEFINITION ANALYTIC:
The logical-structure#ql:xml'doc'logical'structure# contains
- declarations,
- elements#ql:xml'element#,
- comments#ql:xml'comment#,
- character-references#ql:xml'character'reference#, and
- processing-instructions#ql:xml'processing'instruction#,
all of which are indicated in the document by explicit markup.
[SOURCE: W3C WD Part1 1997jun30]

More generally, declarations allow a document to communicate meta-information to the parser about its content. Meta-information includes the allowed sequence and nesting of tags, attribute values and their types and defaults, the names of external files that may be referenced and whether or not they contain XML, the formats of some external (non-XML) data that may be included, and entities that may be encountered.
[N.Walsh Introduction {1997-09-10}]

SUBGENERAL:
Attribute-list-Declaration#ql:xml'attribute'list'declaration#,
Document-Type-Declaration#ql:xml'document'type'declaration#,
Element-Declaration#ql:xml'element'declaration#,
Encoding-Declaration#ql:xml'encoding'declaration#,
Entity-Declaration#ql:xml'entity'declaration#,
Notation-Declaration#ql:xml'notation'declaration#,
XML-Declaration#ql:xml'doc'xml'declaration#,

There are four kinds of declarations in XML:
element declarations,
attribute list declarations,
entity declarations, and
notation declarations.
[N.Walsh Introduction {1997-09-10}]

xml'DOCUMENT

name::
* McsEngl.xml'DOCUMENT@cptIt,
* McsEngl.xml'file@cptIt,

DEFINITION SYNTHETIC:
A data object is an XML document if it is well-formed, as defined in this specification.
[SOURCE: W3C WD-xml 1997dec08]

A textual object is an XML document if it is either
- valid#ql:xml'doc.valid# or
- well-formed#ql:xml'doc.well'formed#,
as defined in this specification.
[SOURCE: W3C WD Part1 1997jun30]

DEFINITION SYNTHETIC:
XML documents are made up of storage units called entities#ql:xml'entity#, which contain either
- text or
- binary data.
Text is made up of characters, some of which form the character data in the document, and some of which form markup. Markup encodes a description of the document's storage layout and logical structure. XML provides a mechanism to impose constraints on the storage layout and logical structure.
...
The logical structure contains
- declarations,
- elements,
- comments,
- character references, and
- processing instructions,
all of which are indicated in the document by explicit markup.
[SOURCE: W3C WD Part1 1997jun30]

XML document:
[xmlnt23] xmlnt'document ::= prolog element#ql:xmlnt'element# Misc*
[xmlnt24] xmlnt'prolog ::= XMLDecl? Misc* (doctypedecl#ql:xmlnt'doctypedecl# Misc*)?
[xmlnt25] xmlnt'XMLDecl ::= '<?XML' VersionInfo EncodingDecl? RMDecl#ql:xmlnt'rmdecl#? S? '?>'
[xmlnt26] xmlnt'VersionInfo ::= S 'version' Eq ('"1.0"' | "'1.0'")
[xmlnt27] xmlnt'Misc ::= Comment | PI#ql:xmlnt'pi# | S#ql:xmlnt's#
[SOURCE: W3C WD Part1 1997jun30]

xml'DOC.EXAMPLE

name::
* McsEngl.xml'DOC.EXAMPLE@cptIt,
* McsEngl.xml'EX.document@cptIt,
* McsEngl.lagXml'DOCUMENT'EXAMPLE@cptIt,

XML documents can be very simple, with no formal document type declaration, and straightforward nested markup of your own design:
<?XML VERSION="1.0" RMD="NONE"?>
<conversation>
<greeting>Hello, world!</greeting>
<response>Stop the planet, I want to get off!</response>
</conversation>
[SOURCE: FAQ 1997may]

Defining your own markup language with XML is actually surprisingly simple. If you wanted to make a markup language for FAQs you might want it to be used like this: (note that this example is really too simple to be very useful)
<?XML VERSION="1.0" ENCODING="UTF-8" RMD="NONE"?>
<!DOCTYPE FAQ SYSTEM "FAQ.DTD">

<FAQ>
<INFO>
<SUBJECT> XML </SUBJECT>
<AUTHOR> Lars Marius Garshol</AUTHOR>
<EMAIL> larsga@ifi.uio.no </EMAIL>
<VERSION> 1.0 </VERSION>
<DATE> 20.jun.97 </DATE>
</INFO>

<PART NO="1">
<Q NO="1">
<QTEXT>What is XML?</QTEXT>
<A>SGML light.</A>
</Q>

<Q NO="2">
<QTEXT>What can I use it for?</QTEXT>
<A>Anything.</A>
</Q>
</PART>
</FAQ>
In XML, the markup language shown above (let's call it FAQML) had a DTD like this:
<!ELEMENT FAQ (INFO, PART+)>
<!ELEMENT INFO (SUBJECT, AUTHOR, EMAIL?, VERSION?, DATE?)>
<!ELEMENT SUBJECT (#PCDATA)>
<!ELEMENT AUTHOR (#PCDATA)>
<!ELEMENT EMAIL (#PCDATA)>
<!ELEMENT VERSION (#PCDATA)>
<!ELEMENT DATE (#PCDATA)>
<!ELEMENT PART (Q+)>
<!ELEMENT Q (QTEXT, A)>
<!ELEMENT QTEXT (#PCDATA)>
<!ELEMENT A (#PCDATA)>
<!ATTLIST PART
NO CDATA#IMPLIED
TITLE CDATA#IMPLIED>
<!ATTLIST Q NO CDATA#IMPLIED>
[SOURCE: L.M. Garshol, XML INTRO, 1997aug14]

xml'DOC'LOGICAL'STRUCTURE

name::
* McsEngl.xml'DOC'LOGICAL'STRUCTURE@cptIt,

The logical structure contains
- declarations#ql:xml'declaration#,
- elements#ql:xml'element#,
- comments#ql:xml'comment#,
- character-references#ql:xml'character'reference#, and
- processing-instructions#ql:xml'processing'instruction#,
all of which are indicated in the DOCUMENT#ql:xml'document# by explicit markup.
[SOURCE: W3C WD Part1 1997jun30]

xml'DOC'PROLOG

name::
* McsEngl.xml'DOC'PROLOG@cptIt,
* McsEngl.xml'PROLOG@cptIt,

DEFINITION ANALYTIC:
[23] document ::= prolog element#ql:xmlnt'element# Misc*
[SOURCE: W3C WD-xml 1997aug07]

PRODUCTION#ql:xmlnt'prolog#

xml'DOC'STRUCTURE

name::
* McsEngl.xml'DOC'STRUCTURE@cptIt,
* McsEngl.xml'DOCUMENT'STRUCTURE@cptIt,

An SGML or XML document has only two well-defined structures:
1) the logical (element/attribute/data) structure; and
2) the physical (entity) structure.
[David Megginson]

The logical and physical structures (elements and entities) in an XML document must be synchronous.
Tags and elements must each begin and end in the same entity, but may refer to other entities internally; comments, processing instructions, character references, and entity references must each be contained entirely within a single entity. Entities must each contain an integral number of elements, comments, processing instructions, and references, possibly together with character data not contained within any element in the entity, or else they must contain non-textual data, which by definition contains no elements.
[SOURCE: W3C WD-xml 1997aug07]

xml'DOC'XML'DECLARATION

name::
* McsEngl.xml'DOC'XML'DECLARATION@cptIt,
* McsEngl.xml'XML'DECLARATION@cptIt,
* McsEngl.xml'DECLARATION.XML@cptIt,
* McsEngl.xml'XML'MARKUP'DECLARATION@cptIt,

FUNCTION:
XML documents may, and should, begin with an XML declaration which specifies, among other things, the version of XML being used.
[SOURCE: W3C WD-xml 1997aug07]

PRODUCTION#ql:xmlnt'xmldecl#

xml'EX.XML'declaration with an RMD#ql:xml'rmd#:
<?XML version="1.0" RMD='INTERNAL'?>
[SOURCE: W3C WD Part1 1997jun30]

xml'ENCODING'DECLARATION

name::
* McsEngl.xml'ENCODING'DECLARATION@cptIt,

PRODUCTION:
Encoding declaration:
[xmlnt76] xmlnt'EncodingDecl ::= S 'encoding' Eq QEncoding
[WFC: Start of System Entity ]
[xmlnt77] xmlnt'EncodingPI ::= '<?XML' S 'encoding' Eq QEncoding S? '?>'
[xmlnt78] xmlnt'QEncoding ::= '"' Encoding '"' | "'" Encoding "'"
[xmlnt79] xmlnt'Encoding ::= LatinName
[xmlnt80] xmlnt'LatinName ::= [A-Za-z] ([A-Za-z0-9._] | '-')*
/*Name containing only Latin characters */

Well-Formedness Constraint - Start of System Entity:
An XML encoding declaration may occur at the beginning of a system entity; it must not occur within the body of any entity.
[SOURCE: W3C WD-xml 1997aug07]

xml'EX.encoding'declaration:
<?XML ENCODING='UTF-8'?>
<?XML ENCODING='EUC-JP'?>

xml'RMD

name::
* McsEngl.xml'RMD@cptIt,
* McsEngl.xml'REQUIRED'MARKUP'DECLARATION@cptIt,

DEFINITION ANALYTIC:
In some cases, an XML processor can read an XML document and accomplish useful tasks without having first processed the entire DTD. However, certain declarations can substantially affect the actions of an XML processor. It is desirable, therefore, to be able to specify whether a document contains any such declarations. A document author can communicate whether or not DTD processing is necessary using a required markup declaration (abbreviated RMD), which appears as a component of the XML declaration:

Required markup declaration:
[xmlnt32] xmlnt'RMDecl ::= S 'RMD' Eq#ql:xmlnt'eq# "'" ('NONE' | 'INTERNAL' | 'ALL') "'" | S 'RMD' Eq '"' ('NONE' | 'INTERNAL' | 'ALL') '"'

In an RMD,
- the value NONE indicates that an XML processor can parse the containing document correctly without first reading any part of the DTD.
- The value INTERNAL indicates that the XML processor must read and process the internal subset of the DTD, if provided, to parse the containing document correctly.
- The value ALL indicates that the XML processor must read and process the declarations in both the subsets of the DTD, if provided, to parse the containing document correctly.
[SOURCE: W3C WD Part1 1997jun30]

XML'EX.RMD:
<?XML version="1.0" RMD='INTERNAL'?>
[SOURCE: W3C WD-xml 1997aug07]

xml'DOC.VALID

name::
* McsEngl.xml'DOC.VALID@cptIt,
* McsEngl.xml'VALID'DOCUMENT@cptIt,

DEFINITION ANALYTIC:
An XML-document#ql:xml'document# is said to be valid
- if there is an associated document-type-declaration#ql:xml'document'type'declaration# and
- if the document complies with the constraints expressed in it.
[SOURCE: W3C WD Part1 1997jun30]

A well-formed XML document may in addition be valid if it meets certain further constraints.
[SOURCE: W3C WD-xml 1997dec08]

A well-formed-document#ql:xml'well'formed'document# is VALID only if it contains a proper document type declaration and if the document obeys the constraints of that declaration (element sequence and nesting is valid, required attributes are provided, attribute values are of the correct type, etc.). The XML specification identifies all of the criteria in detail.
[N.Walsh Introduction {1997-09-10}]

xml'ex.DOC.NOT'VALID:
For example, the following is a complete XML document, well-formed but not valid:
<?XML version="1.0"?>
<greeting>Hello, world!</greeting>

and so is this:
<greeting>Hello, world!</greeting>
[SOURCE: W3C WD-xml 1997aug07]

xml'DOC.WELL'FORMED

name::
* McsEngl.xml'DOC.WELL'FORMED@cptIt,
* McsEngl.xml'WELL'FORMED'DOCUMENT@cptIt,

DEFINITION ANALYTIC:
A textual object is a well-formed XML document if:
* Taken as a whole, it matches the production labeled document#ql:xmlnt'document#.
* It meets all the well-formedness constraints given in this specification.
* Each of its parsed entities is well-formed.
[SOURCE: W3C WD-xml 1997dec08]

A document#ql:xml'document# can only be well-formed [Section 2.2] if it obeys the syntax of XML.

In addition, the document must meet all of the following conditions (understanding some of these conditions may require experience with SGML):
- The document instance must conform to the grammar of XML documents. In particular, some markup constructs (parameter entity references, for example) are only allowed in specific places. The document is not well-formed if they occur elsewhere, even if the document is well-formed in all other ways.
-The replacement text for all parameter entities referenced inside a markup declaration consists of zero or more complete markup declarations. (No parameter entity used in the document may consist of only part of a markup declaration.)
No attribute may appear more than once on the same start-tag.
-String attribute values cannot contain references to external entities.
-Non-empty tags must be properly nested.
-Parameter entities must be declared before they are used.
-All entities except the following: amp, lt, gt, apos, and quot must be declared.
-A binary entity cannot be referenced in the flow of content, it can only be used in an attribute declared as ENTITY or ENTITIES.
-Neither text nor parameter entities are allowed to be recursive, directly or indirectly.

By definition, if a document is not well-formed, it is not XML.
[N.Walsh Introduction {1997-09-10}]

Can I create my own XML documents without explicitly defining a document type?
Yes, this is what the `well-formed' document class is there for:
<?XML VERSION="1.0" RMD="NONE"?>
<FAQ>
<Q><IMAGE XML-LINK="ques.gif"/>Can I create my own XML documents without a DTD?</Q>
<A>Yes. This is an example of a well-formed document, which can be parsed by any XML-compliant parser. However, it won't know how to display it unless you supply a stylesheet.</A>
</FAQ>
Properly balanced, nested elements; all start-tags and end-tags always present for elements which contain text data; a trailing slash on EMPTY elements (those containing no text data).
[SOURCE: FAQ 1997may]

xml'ELEMENT

name::
* McsEngl.xml'ELEMENT@cptIt,

DEFINITION ANALYTIC:
Each XML-document#ql:xml'document# contains one or more elements, the boundaries of which are either delimited by start-tags and end-tags, or, for empty elements, are those of the start-tag.
[SOURCE: W3C WD Part1 1997jun30]

Elements are the most common form of markup. Delimited by angle brackets, most elements identify the nature of the content they surround. Some elements may be empty, as seen above, in which case they have no content. If an element is not empty, it begins with a start-tag, <element>, and ends with an end-tag, </element>.
[N.Walsh Introduction {1997-09-10}]

xml'element'CONTENT

name::
* McsEngl.xml'element'CONTENT@cptIt,

DEFINITION ANALYTIC:
The text between the start-tag and end-tag [of an ELEMENT#ql:xml'element#] is called the element's content:

Content of elements:
[xmlnt37] xmlnt'content ::= (element | PCData#ql:xmlnt'PCData# | Reference#ql:xmlnt'reference# | CDSect#ql:xmlnt'CDSect# | PI#ql:xmlnt'PI# | Comment#ql:xmlnt'Comment#)* [VC: Content ]
[xmlnt38] xmlnt'element ::= EmptyElement#ql:xmlnt'EmptyElement# | STag#ql:xmlnt'STag# content ETag#ql:xmlnt'ETag# [WFC: GI Match ]
Validity Constraint - Content:
Each element type used must be declared. The content of an element instance must match the content model declared for that element type.

Well-Formedness Constraint - GI Match:
The Name in an element's end-tag must match that in the start-tag.
[SOURCE: W3C WD Part1 1997jun30]

XML'EX.ELEMENT'CONTENT:
<!ELEMENT spec (front, body, back?)>
<!ELEMENT div1 (head, (p | list | note)*, div2*)>
<!ELEMENT head (%head.content; | %head.misc;)*>
[SOURCE: W3C WD-xml 1997aug07]

xml'element'CONTENT.ELEMENT'CONTENT

name::
* McsEngl.xml'element'CONTENT.ELEMENT'CONTENT@cptIt,

_DEFINITION:
The content-of-an-element#ql:xml'element'content# can be categorized as element content or mixed content.
[SOURCE: W3C WD Part1 1997jun30]

An element type may be declared to have element content, which means that elements of that type may only contain other elements (no character data).
In this case, the constraint includes a content model, a simple grammar governing the allowed types of the child elements and the order in which they appear. The grammar is built on content particles (CPs), which consist of names, choice lists of content particles, or sequence lists of content particles:

Element-content models:
[xmlnt42] xmlnt'elements  ::= (choice | seq) ('?' | '*' | '+')?
[xmlnt43] xmlnt'cp  ::= (Name | choice | seq) ('?' | '*' | '+')?
[xmlnt44] xmlnt'cps  ::= S? %cp S?
[xmlnt45] xmlnt'choice  ::= '(' S? %ctokplus (S? '|' S? %ctoks)* S? ')'
[xmlnt46] xmlnt'ctokplus  ::= cps ('|' cps)+
[xmlnt47] xmlnt'ctoks  ::= cps ('|' cps)*
[xmlnt48] xmlnt'seq  ::= '(' S? %stoks (S? ',' S? %stoks)* S? ')'
[xmlnt49] xmlnt'stoks  ::= cps (',' cps)*

where each Name gives the type of an element which may appear as a child. Any content particle in a choice list may appear in the element content at the appropriate location; content particles occurring in a sequence list must each appear in the element content in the order given. The optional character following a name or list governs whether the element or the content particles in the list may occur one or more (+), zero or more (*), or zero or one times (?). The syntax and meaning are identical to those used in the productions in this specification.
The content of an element matches a content model if and only if it is possible to trace out a path through the content model, obeying the sequence, choice, and repetition operators and matching each element in the content against an element name in the content model. For compatibility reasons, it is an error if an element in the document can match more than one occurrence of an element name in the content model.
More formally: a finite state automaton may be constructed from the content model using the standard algorithms, e.g. algorithm 3.5 in section 3.9 of Aho, Sethi, and Ullman. In many such algorithms, a follow set is constructed for each position in the regular expression (i.e., each leaf node in the syntax tree for the regular expression); if any position has a follow set in which more than one following position is labeled with the same element type name, then the content model is in error and may be reported as an error. For more information, see the appendix on deterministic content models.

Examples of element-content models:
<!ELEMENT spec (front, body, back?)>
<!ELEMENT div1 (head, (p | list | note)*, div2*)>
<!ELEMENT head (%head.content; | %head.misc;)*>
[SOURCE: W3C WD Part1 1997jun30]

xml'element'CONTENT.MIXED'CONTENT

name::
* McsEngl.xml'element'CONTENT.MIXED'CONTENT@cptIt,

DEFINITION ANALYTIC:
The content-of-an-element#ql:xml'element'content# can be categorized as element content or mixed content.
[SOURCE: W3C WD Part1 1997jun30]

An element type may be declared to contain mixed content, that is, text comprising character data optionally interspersed with child elements. In this case, the types of the child elements are constrained, but not their order nor their number of occurrences:

Mixed-content declaration
[xmlnt50] xmlnt'Mixed ::= '(' S? %( %'#PCDATA' (S? '|' S? %Mtoks)* ) S? ')*'
| '(' S? %('#PCDATA#ql:xmlnt'PCDATA#') S? ')'
[xmlnt51] xmlnt'Mtoks ::= %Name#ql:xmlnt'Name# (S? '|' S? %Name)*

where the Names give the types of elements that may appear as children. The same name must not appear more than once in a single mixed-content declaration.
[SOURCE: W3C WD Part1 1997jun30]

XML'EX.ELEMENT'CONTENT.MIXED:
<!ELEMENT p (#PCDATA|a|ul|b|i|em)*>
<!ELEMENT p (#PCDATA | %font; | %phrase; | %special; | %form;)* >
<!ELEMENT b (#PCDATA)>
[SOURCE: W3C WD Part1 1997jun30]

xml'element'STRUCTURE

name::
* McsEngl.xml'element'STRUCTURE@cptIt,

_DEFINITION:
The element structure of an XML document may, for validation purposes, be constrained using element#ql:xml'element'declaration# and attribute-declarations#ql:xml'attribute'declaration#.
[SOURCE: W3C WD-xml 1997aug07]

xml'element'DECLARATION

name::
* McsEngl.xml'element'DECLARATION@cptIt,

PRODUCTION:
Element declaration:
[xmlnt40] xmlnt'elementdecl ::= '<!ELEMENT' S %Name S (%S S)? %contentspec S? '>' [VC: Unique Element Declaration ]
[xmlnt41] xmlnt'contentspec ::= 'EMPTY' | 'ANY' | Mixed#ql:xmlnt'Mixed# | elements#ql:xmlnt'elements#

Validity Constraint - Unique Element Declaration:
No element type may be declared more than once.
[SOURCE: W3C WD Part1 1997jun30]

XML'EMPTY'KEYWORD:
An element declared using the keyword EMPTY must be empty and may be tagged using an empty-element tag when it appears in the document.
[SOURCE: W3C WD-xml 1997aug07]

XML'ANY'KEYWORD:
If an element type is declared using the keyword ANY, then there are no validity constraints on its content: it may contain child elements of any type and number, interspersed with character data.
[SOURCE: W3C WD-xml 1997aug07]

xml'EX.element'declaration:
<!ELEMENT br EMPTY>
<!ELEMENT %name.para; %content.para; >
<!ELEMENT container ANY>
[SOURCE: W3C WD Part1 1997jun30]

<!ELEMENT Channel ( LastMod | Title | Abstract | Author | Publisher | Copyright | PublicationDate | Keywords | Category | Rating | Channel | Item | Schedule | IntroURI | Authorization | IsClonable | MinStorage | Tracking )* >

<!ELEMENT Schedule ( StartDate?, EndDate?, IntervalTime?, EarliestTime?, LatestTime? ) >

<!ELEMENT Email (Recipient, Sender, Date, Subject, TextBody) >

<!ELEMENT Sender (#PCDATA) >

<!ELEMENT TextBody (p)+ >

<!ELEMENT p (#PCDATA|Name)* >: contains 'pcdata' and 'name' in any order zero or many times.


At 11:06 AM 30/09/97 -0400, Tyler Baker wrote: > I am a little perplexed >about an element declaration of the form:

<!ELEMENT Foo (bar1 | bar2 | bar3)*>
any number of bar1, bar2, and bar3 elements in any order
<!ELEMENT Foo (bar1|bar2|bar3)>
one child element, either bar1, bar2, or bar3
<!ELEMENT Foo (bar1, bar2, bar3)*>
0 or more bar1, bar2, bar3 sequences.
<!ELEMENT Foo (bar1?, bar2?, bar3?)>
any of: bar1 bar2 bar3 bar1 bar2 bar1 bar3 bar2 bar3 bar1 bar2 bar3
I agree that the semantic of '|' is not as it is in some other systems. -Tim Bray

xml'element'TYPE

name::
* McsEngl.xml'element'TYPE@cptIt,
* McsEngl.xml'element'GENERIC'IDENTIFIER@cptIt,
* McsEngl.xml'element'GI@cptIt,

_DEFINITION:
Each element#ql:xml'element# has a type, identified by name (sometimes called its generic identifier or GI), and may have a set of attributes.

The Name#ql:xmlnt'stag# in the start-#ql:xmlnt'stag# and end-tags gives the element's type.
[SOURCE: W3C WD Part1 1997jun30]

xml'element.CHILD

name::
* McsEngl.xml'element.CHILD@cptIt,
* McsEngl.xml'CHILD'ELEMENT@cptIt,

_DEFINITION:
for each non-root element C in the document, there is one other element P in the document such that C is in the content of P, but is not in the content of any other element that is in the content of P. Then P is referred to as the parent of C, and C as a child of P.
[SOURCE: W3C WD-xml 1997aug07]

ELEMENT-EMPTY#ql:xml'empty'element#

xml'element.PARENT

name::
* McsEngl.xml'element.PARENT@cptIt,
* McsEngl.xml'PARENT'ELEMENT@cptIt,

_DEFINITION:
for each non-root element C in the document, there is one other element P in the document such that C is in the content of P, but is not in the content of any other element that is in the content of P. Then P is referred to as the parent of C, and C as a child of P.
[SOURCE: W3C WD-xml 1997aug07]

xml'element.ROOT

name::
* McsEngl.xml'element.ROOT@cptIt,
* McsEngl.xml'element.DOCUMENT@cptIt,

There is exactly one element, called the root, or document element, for which neither the start-tag nor the end-tag is in the content of any other element. For all other elements, if the start-tag is in the content of another element, the end-tag is in the content of the same element. More simply stated, the elements, delimited by start- and end-tags, nest within each other.
[SOURCE: W3C WD Part1 1997jun30]

xml'ENTITY

name::
* McsEngl.xml'ENTITY@cptIt,
* McsEngl.xml'DOC'ENTITY@cptIt,

DEFINITION ANALYTIC:
XML-DOCUMENTS#ql:xml'document# are made up of storage units called entities, which contain either text or binary data.

Physically, the DOCUMENT#ql:xml'document# is composed of units called entities. An entity may refer to other entities to cause their inclusion in the document. A document begins in a "root" or document entity.

An XML-document#ql:xml'document# may consist of one or many virtual storage units. These are called entities; they are identified by name and have content. An entity may be stored in, but need not comprise the whole of, a single physical storage object such as a file or database field. Each XML document has one entity called the document entity, which serves as the starting point for the XML processor (and may contain the whole document).
[SOURCE: W3C WD Part1 1997jun30]

DEFINITION SYNTHETIC:
... entities, which contain either parsed or unparsed data. Parsed data is made up of characters, some of which form the character-data#ql:xml'character'data# in the document, and some of which form markup#ql:xml'markup#.
[SOURCE: W3C WD-xml 1997dec08]

Entities may be either binary#ql:xml'binary# or text#ql:xml'text#.
A text entity contains text data which is considered as an integral part of the document.
A binary entity contains binary data with an associated notation. Only text entities may be referred to using entity references; only the names of binary entities may be given as the value of ENTITY attributes.
[SOURCE: W3C WD Part1 1997jun30]

SUBGENERAL:
There are three kinds of entities:
Internal Entities
External Entities
Parameter Entities
[N.Walsh Introduction {1997-09-10}]

xml'ENTITY'DECLARATION

name::
* McsEngl.xml'ENTITY'DECLARATION@cptIt,

PRODUCTION:
Entity declaration
[xmlnt71] xmlnt'EntityDecl ::= '<!ENTITY' S %Name S %EntityDef S? '>'
/*General entities */
| '<!ENTITY' S '%' S %Name S %EntityDef S? '>'
/*Parameter entities */
[xmlnt72] xmlnt'EntityDef ::= EntityValue#ql:xmlnt'EntityValue# | ExternalDef#ql:xmlnt'ExternalDef#

The Name is that by which the entity is invoked by exact match in an entity-reference#ql:xml'entity'reference#. If the same entity is declared more than once, the first declaration encountered is binding; at user option, an XML processor may issue a warning if entities are declared multiple times.
[SOURCE: W3C WD-xml 1997aug07]

xml'entity.TEXT

name::
* McsEngl.xml'entity.TEXT@cptIt,
* McsEngl.xml'TEXT@cptIt,
* McsEngl.xml'ENTITY'TEXT@cptIt,

DEFINITION ANALYTIC:
XML documents are made up of storage units called ENTITIES#ql:xml'entity#, which contain either
- text or
- binary-data#ql:xml'binary#.
[SOURCE: W3C WD Part1 1997jun30]

DEFINITION SYNTHETIC:
XML text data is a sequence of characters#ql:xmlnt'char#.
[SOURCE: W3C WD-xml 1997aug07]

XML text consists of intermingled character data and markup.
[SOURCE: W3C WD-xml 1997aug07]

XML text consists of intermingled
- character-data#ql:xml'character'data# and
- markup#ql:xml'markup#.
[SOURCE: W3C WD Part1 1997jun30]

xml'CHARACTER

name::
* McsEngl.xml'CHARACTER@cptIt,

_DEFINITION:
TEXT#ql:xml'text# is made up of characters, some of which form the character data in the document, and some of which form markup.

A character is an atomic unit of text; valid characters are specified by ISO/IEC 10646.

All XML processors must accept the UTF-8 and UCS-2 encodings of 10646;

Legal characters are tab, carriage return, line feed, and the legal graphic characters of Unicode and ISO/IEC 10646.

Legal characters are tab, carriage return, line feed, and the legal graphic characters of Unicode and ISO/IEC 10646.

Character range
[xmlnt2]  xmlnt'Char ::=#x9 |#xA |#xD | [#x20-#xFFFD] | [#x00010000-#x7FFFFFFF]
/* any ISO/IEC 10646 UCS-4 code, FFFE and FFFF excluded */

Characters are classified for convenience as letters, digits, or other characters. Letters consist of an alphabetic or syllabic base character possibly followed by one or more combining characters, or of an ideographic character. Certain layout and format-control characters defined by ISO/IEC 10646 should be ignored when recognizing identifiers; these are defined by the classes Ignorable and Extender. Full definitions of the specific characters in each class are given in the appendix on character classes.
A Name is a token beginning with a letter or underscore character and continuing with letters, digits, hyphens, underscores, or full stops (together known as name characters). Names beginning with the string XML are reserved for standardization in this or future versions of this specification.
Note: the colon character is also allowed within XML names; it is reserved for experimentation with name spaces and schema scoping. Its meaning is expected to be standardized at some future point, at which point those documents using colon for experimental purposes will need to be updated. (Note: there is no guarantee that any name-space mechanism adopted for XML will in fact use colon as a name-space delimiter.) In practice, this means that authors should not use colon in XML names except as part of name-space experiments, but that implementors should accept colon as a name character.
An Nmtoken (name token) is any mixture of name characters.

Names and tokens
[xmlnt3]  xmlnt'MiscName  ::= '.' | '-' | '_' | ':' | CombiningChar#ql:xmlnt'CombiningChar# | Ignorable#ql:xmlnt'Ignorable# | Extender#ql:xmlnt'Extender#
[xmlnt4]  xmlnt'NameChar  ::= Letter#ql:xmlnt'Letter# | Digit#ql:xmlnt'Digit# | MiscName
[xmlnt5]  xmlnt'Name    ::= (Letter | '_' | ':') (NameChar)*
[xmlnt6]  xmlnt'Names    ::= Name (S Name)*
[xmlnt7]  xmlnt'Nmtoken    ::= (NameChar)+
[xmlnt8]  xmlnt'Nmtokens  ::= Nmtoken (S Nmtoken)*

Literal data [xml'literal] is any quoted string not containing the quotation mark used as a delimiter for that string; different forms of literal data may or may not contain angle brackets, entity references, and character references. Literals are used for specifying the replacement text of internal entities (EntityValue), the values of attributes (AttValue), and external identifiers (SystemLiteral); for some purposes, the entire literal can be skipped without scanning for markup within it (SkipLit):

Literals
[xmlnt9]  xmlnt'EntityValue ::= '"' ([^%&"] | PEReference#ql:xmlnt'PEReference# | Reference)* '"'
|  "'" ([^%&'] | PEReference | Reference)* "'"
[xmlnt10]  xmlnt'AttValue ::= '"' ([^<&"] | Reference#ql:xmlnt'Reference#)* '"' |  "'" ([^<&'] | Reference)* "'"
[xmlnt11]  xmlnt'SystemLiteral ::= '"' URLchar* ' " ' | " ' " (URLchar - "'")* "'"
[xmlnt12]  xmlnt'URLchar ::= /* See RFC 1738 and 1808 */
[xmlnt13]  xmlnt'PubidLiteral ::= '"' PubidChar* '"' | "'" (PubidChar - "'")* "'"
[xmlnt14]  xmlnt'PubidChar ::=#x20 |#x9 |#xd |#xa |#x3000 | [a-zA-Z0-9]
| [-'()+,./:=?]
[xmlnt15]  xmlnt'SkipLit ::= ('"' [^"]* '"') | ("'" [^']* "'")

Note that entity references and character references are recognized and processed within EntityValue and AttValue, but not within SystemLiteral.
[SOURCE: W3C WD-xml 1997aug07]

_ADDRESS.WPG:
* https://www.oasis-open.org/docbook/specs/wd-docbook-xmlcharent-0.3.html,

xml'CHARACTER'DATA

name::
* McsEngl.xml'CHARACTER'DATA@cptIt,
* McsEngl.xml'CONTENT@cptIt,
* McsEngl.xml'PCDATA@cptIt,

DEFINITION ANALYTIC:
TEXT#ql:xml'text# is made up of characters,
- some of which form the character data in the document, and
- some of which form markup.

All TEXT#ql:xml'text# that is not markup#ql:xml'markup# constitutes the character-data of the document.
[SOURCE: W3C WD Part1 1997jun30]

XML-documents#ql:xml'document# are composed of markup and content.
[N.Walsh Introduction {1997-09-10}]

In addition to element names, the special symbol #PCDATA is reserved to indicate character data. The moniker PCDATA stands for “parseable character data”.
[N.Walsh Introduction {1997-09-10}]

PRODUCTION:
Character data
[xmlnt16]  xmlnt'PCData ::= [^<&]*
[SOURCE: W3C WD-xml 1997aug07]

xml'Character-Classes

name::
* McsEngl.xml'Character-Classes@cptIt,

Following the characteristics defined in the Unicode standard, characters are classed as base characters (among others, these contain the alphabetic characters of the Latin alphabet, without diacritics), ideographic characters, combining characters (among others, this class contains most diacritics); these classes combine to form the class of letters.
Digits, extenders, and characters which should be ignored for purposes of recognizing identifiers are also distinguished.

Characters
[xmlnt82]  xmlnt'BaseChar ::= [#x41-#x5A] | [#x61-#x7A] /* Latin 1 upper and lowercase */ | #xAA | #xB5 | #xBA | [#xC0-#xD6] | [#xD8-#xF6] | [#xF8-#xFF] /* Latin 1 supplementary */ | [#x0100-#x017F] | [#x0180-#x01F5] | [#x01FA-#x0217] /* Extended Latin-A and B */ | [#x0250-#x02A8] /* IPA Extensions */ | [#x02B0-#x02B8] | [#x02BB-#x02C1] | [#x02E0-#x02E4] /* Spacing Modifiers */ | #x037A | #x0386 | [#x0388-#x038A] | #x038C | [#x038E-#x03A1] | [#x03A3-#x03CE] | [#x03D0-#x03D6] | #x03DA | #x03DC | #x03DE | #x03E0 | [#x03E2-#x03F3] /* Greek and Coptic */ | [#x0401-#x040C] | [#x040E-#x044F] | [#x0451-#x045C] | [#x045E-#x0481] | [#x0490-#x04C4] | [#x04C7-#x04C8] | [#x04CB-#x04CC] | [#x04D0-#x04EB] | [#x04EE-#x04F5] | [#x04F8-#x04F9] /* Cyrillic */ | [#x0531-#x0556] | #x0559 | [#x0561-#x0587] /* Armenian */ | [#x05D0-#x05EA] | [#x05F0-#x05F2] /* Hebrew */ | [#x0621-#x063A] | [#x0641-#x064A] | [#x0671-#x06B7] | [#x06BA-#x06BE] | [#x06C0-#x06CE] | [#x06D0-#x06D3] | #x06D5 | [#x06E5-#x06E6] /* Arabic */ | [#x0905-#x0939] | #x093D | [#x0958-#x0961] /* Devanagari */ | [#x0985-#x098C] | [#x098F-#x0990] | [#x0993-#x09A8] | [#x09AA-#x09B0] | #x09B2 | [#x09B6-#x09B9] | [#x09DC-#x09DD] | [#x09DF-#x09E1] | [#x09F0-#x09F1] /* Bengali */ | [#x0A05-#x0A0A] | [#x0A0F-#x0A10] | [#x0A13-#x0A28] | [#x0A2A-#x0A30] | [#x0A32-#x0A33] | [#x0A35-#x0A36] | [#x0A38-#x0A39] | [#x0A59-#x0A5C] | #x0A5E | [#x0A72-#x0A74] | [#x0A85-#x0A8B] | #x0A8D /* Gurmukhi */ | [#x0A8F-#x0A91] | [#x0A93-#x0AA8] | [#x0AAA-#x0AB0] | [#x0AB2-#x0AB3] | [#x0AB5-#x0AB9] | #x0ABD | #x0AE0 /* Gujarati */ | [#x0B05-#x0B0C] | [#x0B0F-#x0B10] | [#x0B13-#x0B28] | [#x0B2A-#x0B30] | [#x0B32-#x0B33] | [#x0B36-#x0B39] | #x0B3D | [#x0B5C-#x0B5D] | [#x0B5F-#x0B61] /* Oriya */ | [#x0B85-#x0B8A] | [#x0B8E-#x0B90] | [#x0B92-#x0B95] | [#x0B99-#x0B9A] | #x0B9C | [#x0B9E-#x0B9F] | [#x0BA3-#x0BA4] | [#x0BA8-#x0BAA] | [#x0BAE-#x0BB5] | [#x0BB7-#x0BB9] /* Tamil */ | [#x0C05-#x0C0C] | [#x0C0E-#x0C10] | [#x0C12-#x0C28] | [#x0C2A-#x0C33] | [#x0C35-#x0C39] | [#x0C60-#x0C61] /* Telugu */ | [#x0C85-#x0C8C] | [#x0C8E-#x0C90] | [#x0C92-#x0CA8] | [#x0CAA-#x0CB3] | [#x0CB5-#x0CB9] | #x0CDE | [#x0CE0-#x0CE1] /* Kannada */ | [#x0D05-#x0D0C] | [#x0D0E-#x0D10] | [#x0D12-#x0D28] | [#x0D2A-#x0D39] | [#x0D60-#x0D61] /* Malayalam */ | [#x0E01-#x0E2E] | #x0E30 | [#x0E32-#x0E33] | [#x0E40-#x0E45] /* Thai */ | [#x0E81-#x0E82] | #x0E84 | [#x0E87-#x0E88] | #x0E8A | #x0E8D | [#x0E94-#x0E97] | [#x0E99-#x0E9F] | [#x0EA1-#x0EA3] | #x0EA5 | #x0EA7 | [#x0EAA-#x0EAB] | [#x0EAD-#x0EAE] | #x0EB0 | [#x0EB2-#x0EB3] | #x0EBD | [#x0EC0-#x0EC4] | [#x0EDC-#x0EDD] /* Lao */ | [#x0F40-#x0F47] | [#x0F49-#x0F69] /* Tibetan */ | [#x10A0-#x10C5] | [#x10D0-#x10F6] /* Georgian */ | [#x1100-#x1159] | [#x115F-#x11A2] | [#x11A8-#x11F9] /* Hangul Jamo */ | [#x1E00-#x1E9B] | [#x1EA0-#x1EF9] /* Add'l Extended Latin */ | [#x1F00-#x1F15] | [#x1F18-#x1F1D] | [#x1F20-#x1F45] | [#x1F48-#x1F4D] | [#x1F50-#x1F57] | #x1F59 | #x1F5B | #x1F5D | [#x1F5F-#x1F7D] | [#x1F80-#x1FB4] | [#x1FB6-#x1FBC] | #x1FBE | [#x1FC2-#x1FC4] | [#x1FC6-#x1FCC] | [#x1FD0-#x1FD3] | [#x1FD6-#x1FDB] | [#x1FE0-#x1FEC] | [#x1FF2-#x1FF4] | [#x1FF6-#x1FFC] /* Greek Extensions */ | #x207F /* Super-, subscripts */ | #x2102 | #x2107 | [#x210A-#x2113] | #x2115 | [#x2118-#x211D] | #x2124 | #x2126 | #x2128 | [#x212A-#x2131] | [#x2133-#x2138] /* Letterlike Symbols */ | [#x2160-#x2182] /* Number forms */ | [#x3041-#x3094] /* Hiragana */ | [#x30A1-#x30FA] /* Katakana */ | [#x3105-#x312C] /* Bopomofo */ | [#x3131-#x318E] /* Hangul Jamo */ | [#xAC00-#xD7A3] /* Hangul syllables */ | [#xFB00-#xFB06] | [#xFB13-#xFB17] | [#xFB1F-#xFB28] | [#xFB2A-#xFB36] | [#xFB38-#xFB3C] | #xFB3E | [#xFB40-#xFB41] | [#xFB43-#xFB44] | [#xFB46-#xFB4F] /* Alphabetic presentation forms */ | [#xFB50-#xFBB1] | [#xFBD3-#xFD3D] | [#xFD50-#xFD8F] | [#xFD92-#xFDC7] | [#xFDF0-#xFDFB] | [#xFE70-#xFE72] | #xFE74 | [#xFE76-#xFEFC] /* Arabic presentation forms */ | [#xFF21-#xFF3A] | [#xFF41-#xFF5A] | [#xFF66-#xFF6F] | [#xFE71-#xFF9D] | [#xFFA0-#xFFBE] | [#xFFC2-#xFFC7] | [#xFFCA-#xFFCF] | [#xFFD2-#xFFD7] | [#xFFDA-#xFFDC] /* Half- and fullwidth forms */

[xmlnt83]  xmlnt'Ideographic ::= [#x4E00-#x9FA5] | [#xF900-#xFA2D] | #x3007 | [#x3021-#x3029]

[xmlnt84]  xmlnt'CombiningChar ::= [#x0300-#x0345] | [#x0360-#x0361] | [#x0483-#x0486] | [#x0591-#x05A1] | [#x05A3-#x05B9] | [#x05BB-#x05BD] | #x05BF | [#x05C1-#x05C2] | #x05C4 | [#x064B-#x0652] | #x0670 | [#x06D6-#x06DC] | [#x06DD-#x06DF] | [#x06E0-#x06E4] | [#x06E7-#x06E8] | [#x06EA-#x06ED] | [#x0901-#x0903] | #x093C | [#x093E-#x094C] | #x094D | [#x0951-#x0954] | [#x0962-#x0963] | [#x0981-#x0983] | #x09BC | #x09BE | #x09BF | [#x09C0-#x09C4] | [#x09C7-#x09C8] | [#x09CB-#x09CD] | #x09D7 | [#x09E2-#x09E3] | #x0A02 | #x0A3C | #x0A3E | #x0A3F | [#x0A40-#x0A42] | [#x0A47-#x0A48] | [#x0A4B-#x0A4D] | [#x0A70-#x0A71] | [#x0A81-#x0A83] | #x0ABC | [#x0ABE-#x0AC5] | [#x0AC7-#x0AC9] | [#x0ACB-#x0ACD] | [#x0B01-#x0B03] | #x0B3C | [#x0B3E-#x0B43] | [#x0B47-#x0B48] | [#x0B4B-#x0B4D] | [#x0B56-#x0B57] | [#x0B82-#x0B83] | [#x0BBE-#x0BC2] | [#x0BC6-#x0BC8] | [#x0BCA-#x0BCD] | #x0BD7 | [#x0C01-#x0C03] | [#x0C3E-#x0C44] | [#x0C46-#x0C48] | [#x0C4A-#x0C4D] | [#x0C55-#x0C56] | [#x0C82-#x0C83] | [#x0CBE-#x0CC4] | [#x0CC6-#x0CC8] | [#x0CCA-#x0CCD] | [#x0CD5-#x0CD6] | [#x0D02-#x0D03] | [#x0D3E-#x0D43] | [#x0D46-#x0D48] | [#x0D4A-#x0D4D] | #x0D57 | #x0E31 | [#x0E34-#x0E3A] | [#x0E47-#x0E4E] | #x0EB1 | [#x0EB4-#x0EB9] | [#x0EBB-#x0EBC] | [#x0EC8-#x0ECD] | [#x0F18-#x0F19] | #x0F35 | #x0F37 | #x0F39 | #x0F3E | #x0F3F | [#x0F71-#x0F84] | [#x0F86-#x0F8B] | [#x0F90-#x0F95] | #x0F97 | [#x0F99-#x0FAD] | [#x0FB1-#x0FB7] | #x0FB9 | [#x20D0-#x20DC] | #x20E1 | [#x302A-#x302F] | #x3099 | #x309A | #xFB1E | [#xFE20-#xFE23]

[xmlnt85]  xmlnt'Letter ::= BaseChar#ql:xmlnt'BaseChar# | Ideographic#ql:xmlnt'Ideographic#

[xmlnt86]  xmlnt'Digit ::= [#x30-#x39] /* ISO 646 digits */ | [#x0660-#x0669] /* Arabic-Indic digits */ | [#x06F0-#x06F9] /* Eastern Arabic-Indic digits */ | [#x0966-#x096F] /* Devanagari digits */ | [#x09E6-#x09EF] /* Bengali digits */ | [#x0A66-#x0A6F] /* Gurmukhi digits */ | [#x0AE6-#x0AEF] /* Gujarati digits */ | [#x0B66-#x0B6F] /* Oriya digits */ | [#x0BE7-#x0BEF] /* Tamil digits (no zero) */ | [#x0C66-#x0C6F] /* Telugu digits */ | [#x0CE6-#x0CEF] /* Kannada digits */ | [#x0D66-#x0D6F] /* Malayalam digits */ | [#x0E50-#x0E59] /* Thai digits */ | [#x0ED0-#x0ED9] /* Lao digits */ | [#x0F20-#x0F29] /* Tibetan digits */ | [#xFF10-#xFF19] /* Fullwidth digits */

[xmlnt87]  xmlnt'Ignorable ::= [#x200C-#x200F] /* zw layout */ | [#x202A-#x202E] /* bidi formatting */ | [#x206A-#x206F] /* alt formatting */ | #xFEFF /* zw nonbreak space */

[xmlnt88]  xmlnt'Extender ::=#xB7 | #x02D0 | #x02D1 | #x0387 | #x0640 | #x0E46 | #x0EC6 | #x3005 | [#x3031-#x3035] | [#x309B-#x309E] | [#x30FC-#x30FE] | #xFF70 | #xFF9E | #xFF9F
[SOURCE: W3C WD-xml 1997aug07]

xml'CHARACTER'ENCODING

name::
* McsEngl.xml'CHARACTER'ENCODING@cptIt,

The XML specification refers to ISO 10646 and Unicode and states that processors need to support at least the UCS-2 and UTF-8 encodings. This document is intended to provide a brief overview of what this all means.
The information is drawn from the XML-LANG spec of 31-Mar-97 and from the Unicode 2.0 standard. Readers should refer to those documents for authoritative information.

The Unicode standard, like ASCII, is an encoding scheme that specifies a name and a numerical value for a set of characters. But whereas ASCII uses 7 bits to encode its characters (thereby limited to 128 in number), Unicode uses 16 bits allowing for an international repertoire taken from major scripts of the world.

ISO/IEC 10646 allows for an even larger repertoire of 2^31 code positions by using 31-bit encoding. These code positions are divided into 128 groups of 256 planes. At present characters have only been assigned to the very first plane, the Basic Multilingual Plane (BMP). This has been done in such a way that both the character repertoire and the encoding assignments of the BMP match the Unicode Standard.

ISO/IEC 10646 defines two forms of expressing a character:
- UCS-4 (Universal Character Set coded in 4 bytes) that uses the full 31-bit encoding.
- UCS-2 (Universal Character Set coded in 2 bytes) that uses 16 bits to identify characters from BMP.

The character code values of ISO/IEC 10646 UCS-2 match those of Unicode 1.1 and the values of ISO/IEC 10646-1:1993 UCS-2 match those of Unicode 2.0

UTF-8 (UCS Transformation Format, 8-bit form) provides a variable-width encoding of UCS-2 such that:
•Those characters in the ASCII repertoire take up only one byte with the same value as the character would have in ASCII.
•If a byte in UTF-8 could be ASCII (ie 0-127) then it is ASCII.
To achieve this, the following transformation takes place:
Unicode value  1st Byte UTF-8  2nd Byte UTF-8  3rd Byte UTF-8
000000000xxxxxxx  0xxxxxxx  -      -
00000yyyyyxxxxxx  110yyyyy  10xxxxxx    -
zzzzyyyyyyxxxxxx  1110zzzz  10yyyyyy    10xxxxxx
[http://www.jtauber.com/xml/notes/charencoding.html 1997may31]

xml'entity.BINARY

name::
* McsEngl.xml'entity.BINARY@cptIt,
* McsEngl.xml'BINARY@cptIt,
* McsEngl.xml'ENTITY'BINARY@cptIt,

DEFINITION ANALYTIC:
XML documents are made up of storage units called entities#ql:xml'entity#, which contain either
- text or
- binary data.

A binary entity contains binary data with an associated notation. Only text entities may be referred to using entity references; only the names of binary entities may be given as the value of ENTITY attributes.
[SOURCE: W3C WD Part1 1997jun30]

xml'NOTATION'DECLARATION

name::
* McsEngl.xml'NOTATION'DECLARATION@cptIt,
* McsEngl.xml'DECLARATION.NOTATION@cptIt,
* McsEngl.xml'NOTATION@cptIt,

_DEFINITION:
Notation declarations [Section 4.6] identify specific types of external binary data. This information is passed to the processing application, which may make whatever use of it it wishes.
[N.Walsh Introduction {1997-09-10}]

Notations identify by name the format of external binary entities, or the application to which processing instructions are addressed.
Notation declarations provide a name for the notation, for use in entity and attribute-list declarations and in attribute-value specifications, and an external identifier for the notation which may allow an XML processor or its client application to locate a helper application capable of processing data in the given notation.

Notation declarations:
[81] NotationDecl ::= '<!NOTATION' S %Name S %ExternalID#ql:xmlnt'ExternalID# S? '>'
[SOURCE: W3C WD-xml 1997aug07]

XML'EX.NOTATION'DECLARATION:
A typical notation declaration is:
<!NOTATION GIF87A SYSTEM "GIF">
[N.Walsh Introduction {1997-09-10}]

xml'ENTITY.DOCUMENT

name::
* McsEngl.xml'ENTITY.DOCUMENT@cptIt,
* McsEngl.xml'DOCUMENT'ENTITY@cptIt,
* McsEngl.xml'ROOT@cptIt,

_DEFINITION:
Each XML document has one ENTITY#ql:xml'entity# called the document entity, which serves as the starting point for the XML processor (and may contain the whole document).
[SOURCE: W3C WD-xml 1997aug07]

The document entity serves as the root of the entity tree and a starting-point for an XML processor. This specification does not specify how the document entity is to be located by an XML processor; unlike other entities, the document entity might well appear on an input stream of the processor without any identification at all.
[SOURCE: W3C WD Part1 1997jun30]

xml'ENTITY.EXTERNAL

name::
* McsEngl.xml'ENTITY.EXTERNAL@cptIt,
* McsEngl.xml'EXTERNAL'ENTITY@cptIt,

_DEFINITION:
If the entity is not internal#ql:xml'entity.internal#, it is an external entity,
[SOURCE: W3C WD Part1 1997jun30]

PRODUCTION:
External entity declaration:
[xmlnt73] xmlnt'ExternalDef ::= ExternalID %NDataDecl?
[xmlnt74] xmlnt'ExternalID ::= 'SYSTEM' S SystemLiteral#ql:xmlnt'SystemLiteral#
| 'PUBLIC' S PubidLiteral#ql:xmlnt'PubidLiteral# S SystemLiteral#ql:xmlnt'SystemLiteral#
[xmlnt75] xmlnt'NDataDecl ::= S %'NDATA' S %Name [VC: Notation Declared ]
[SOURCE: W3C WD Part1 1997jun30]

SYSTEM'IDENTIFIER:
The SystemLiteral that follows the keyword SYSTEM is called the entity's system identifier. It is a URL, which may be used to retrieve the entity.
[SOURCE: W3C WD-xml 1997aug07]

xml'SYSTEM'KEYWORD:
The SystemLiteral that follows the keyword SYSTEM is called the entity's system identifier. It is a URL, which may be used to retrieve the entity. Unless otherwise provided by information outside the scope of this specification (e.g. a special XML element defined by a particular DTD, or a processing instruction defined by a particular application specification), relative URLs are relative to the location of the entity or file within which the entity declaration occurs. Relative URLs in entity declarations within the internal DTD subset are thus relative to the location of the document; those in entity declarations in the external subset are relative to the location of the files containing the external subset.
[SOURCE: W3C WD-xml 1997aug07]

xml'PUBLIC'KEYWORD:

xml'NDATA'KEYWORD:
the entity is external, non-XML data.
[Zlfred parser]

xml'ex.EXTERNAL'ENTITY:
Examples of external entity declarations:
<!ENTITY open-hatch
SYSTEM "http://www.textuality.com/boilerplate/OpenHatch.xml">
<!ENTITY open-hatch
PUBLIC "-//Textuality//TEXT Standard open-hatch boilerplate//EN"
"http://www.textuality.com/boilerplate/OpenHatch.xml">
<!ENTITY hatch-pic
SYSTEM "../grafix/OpenHatch.gif"
NDATA gif >
[SOURCE: W3C WD-xml 1997aug07]

xml'ENTITY.INTERNAL

name::
* McsEngl.xml'ENTITY.INTERNAL@cptIt,
* McsEngl.xml'INTERNAL'ENTITY@cptIt,

_DEFINITION:
If the entity-definition#ql:xmlnt'entitydef# is an EntityValue#ql:xmlnt'EntityValue#, the defined entity is called an internal entity. There is no separate physical storage object, and the replacement text of the entity is given in the declaration. Within the EntityValue, parameter-entity references and character references are recognized and expanded immediately. General-entity references within the replacement text are not recognized at the time the entity declaration is parsed, though they may be recognized when the entity itself is referred to.
An internal entity is a text-entity#ql:xml'entity.text#.
[SOURCE: W3C WD-xml 1997aug07]

Internal entities can include references to other internal entities, but it is an error for them to be recursive.
[N.Walsh Introduction {1997-09-10}]

The XML specification predefines five internal entities:
< produces the left angle bracket, <
> produces the right angle bracket, >
& produces the ampersand, &
' produces a single quote character (an apostrophe), '
" produces a double quote character, "
[N.Walsh Introduction {1997-09-10}]

XML'EX.INTERNAL'ENTITY'DECLARATION:
<!ENTITY Pub-Status "This is a pre-release of the specification.">
[SOURCE: W3C WD-xml 1997aug07]

xml'ENTITY.PARAMETER

name::
* McsEngl.xml'ENTITY.PARAMETER@cptIt,
* McsEngl.xml'PARAMETER'ENTITY@cptIt,

Parameter entities are text-entities#ql:xml'text# for use within the DTD, or to control processing of conditional sections; references to them use percent-sign (%) and semicolon (;) as delimiters.
[SOURCE: W3C WD Part1 1997jun30]

Parameter entities can ONLY occur in the document type declaration. A parameter entity is identified by placing “%” (percent-space) in front of its name in the declaration. The percent sign is also used in references to parameter entities, instead of the ampersand. Parameter entity references are immediately expanded in the document type declaration and their replacement text is part of the declaration, whereas normal entity references are not expanded
[N.Walsh Introduction {1997-09-10}]

xml'PARAMETER'ENTITY'REFERENCE

name::
* McsEngl.xml'PARAMETER'ENTITY'REFERENCE@cptIt,
* McsEngl.xml'REFERENCE.PARAMETER'ENTITY@cptIt,

_DEFINITION:
Parameter entities are text entities for use within the DTD, or to control processing of conditional sections;
references to them use percent-sign (%) and semicolon (;) as delimiters.
[SOURCE: W3C WD-xml 1997aug07]

PRODUCTION#ql:xmlnt'pereference#

xml'EX.parameter'entity'reference:
<!ENTITY % ISOLat2 SYSTEM "http://www.xml.com/iso/isolat2-xml.entities" >
%ISOLat2;

xml'ENTITY.PREDEFINED

name::
* McsEngl.xml'ENTITY.PREDEFINED@cptIt,

the characters used as markup delimiters by XML may all be escaped using entity references (for the entities amp, lt, gt, apos, quot).
All XML processors must recognize these entities whether they are declared or not. Valid XML documents must declare these entities, like any others, before using them.
If the entities in question are declared, they must be declared as internal entities whose replacement text is the single character being escaped, as shown below.
<!ENTITY lt "<">
<!ENTITY gt ">">
<!ENTITY amp "&">
<!ENTITY apos "'">
<!ENTITY quot '"'>
[SOURCE: W3C WD-xml 1997aug07]

xml'EVALUATION#cptCore546.107#

name::
* McsEngl.xml'EVALUATION@cptIt,

OO is good because it does data hiding, which is what you need when the data is owned by one application. XML is good because it doesn't do data hiding, which is what you need in order to communicate data beween multiple applications.
OO and traditional database technology are focused on information storage; XML is focused on information interchange: hence the difference.
--Michael Kay on the xml-dev mailing list [2001.12]

XML AS OBJECTS

{1998-03-11}

This was posted on xml-dev@ic.ac.uk.

It pretty much duplicates my Coins proposal.


Bill

(html and text versions included)                                          "Wouldn't it be nice if one could simply tell an object to serialize to XML, and then deserialize back into an object?"
As programmers do you long for the old days when data was data and code was code? Do you buy into the idea that the behavior associated with data should be embedded within the application so as to restrict reuse of that data? Ah, the good old days of relational databases! In its current usage XML is enabling you to revisit those days again... but don't be persuaded by the dark force! Put on your OO glasses and see the light!


Sure, XML provides incredible potential, and I am all for it. But in their current form, XML documents are nothing more than mobile semi-structured non-object databases (this is pretty cool, but not OO). Why is it that programmers have suddenly forgotten all about objects just so they could write XML? Is a return to relational databases that enticing? (Bleech!) The only practical reasoning behind such an approach is that programmers want to keep their data private. They don't want other applications to have the ability to reuse that data. They accomplish this feat by embedding all of the code associated with that data (formally called "behaviors" in the OO era) in their own applications. [Who's running this show anyway? Is XML some kind of conspiracy to kill OO?]
Here's a simple example. You write an application that converts unformatted poems into composite poem objects rich with behavior. You want to store these poems, and share them with other applications that want to do things with poems (whatever it is you do with poems). You define an XML structure and start generating XML documents as a means to store and share the poems. Every application (including yours) that reads in your poems using an XML parser will see the poem as something similar to:
[This XML document was taken from an example accessible at the Microstar website (distributors of the AElfred XML parser).  The file name is donne.xml. Below is the parse tree for this document.]
root |-> Element |-> Element |-> Element                  |           |-> Element                  |           |-> Element |-> Element                  |                  |-> Element |-> Element                              |-> Element                              |-> Element                              |-> Element
Pretty impressive right? It sure doesn't look like a poem object does it? Once this structure has been generated every single application will need to supply its own code to understand how to navigate and interpret this structure, and provide behavior for it. This is typical if you are a C programmer, but be clear, this isn't OO. And, while DOM takes us a bit farther, you still won't get the parser to produce a poem object and its poem-specific behaviors from the XML document (but we still want DOM!).


The process of generating XML strips the behavior out of the objects; or, saying it differently, XML and related standards do not describe a mechanism by which one can attach behavior to XML documents. The parser, in turn, cannot therefore work miracles when it reads the data (which are no longer objects) back into the application. Or can it? Why can't we view XML as a serialized object representation? If we agree that this is not too far fetched, then why can't parsers deserialize or objectify the objects contained in the XML documents, rather than simply handing us data and making the applications do all of the work?  What if the parsers generated real classes (with behavior!) instead of generic Element classes? The poem above would instead look like this: (perhaps if we talked about XML documents as orders (or anything else) instead of poems it might be more motivating?)
root |-> poem    |-> front   |-> title                  |           |-> author                  |           |-> revision-history |-> item                  |                  |-> body    |-> stanza                              |-> stanza                              |-> stanza                              |-> stanza
Oh, but could it be that simple? (The answer is "yes.") Would having a parser output objects with type-specific behavior be useful? (Hmm...) Would programmers really want to share their objects if they could? (The answer should be "yes.") Even if they didn't want to share their objects, or if nobody wanted their objects, why violate the principles of OO and make the programmers' lives more difficult? Wouldn't it be nice if one could simply tell an object to serialize to XML, and then deserialize back into an object?


With some VERY simple extensions to current parsers this can occur, and already has -- we've created an extended version of the Lark XML parser which provides this capability. Our input to this extended parser is the XML document and the type-specific classes (like poem) extended with the basic ability to deserialize themselves.

  ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
                                                                                       XML Documents Are Objects!


                                                                                                   or
                                                                                       Killing OO Softly With XML
                                                                                              Paul Pazandak                                                                                   Object Services and Consulting, Inc.


  --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Introduction
XML documents are indeed objects, or at least they could be. If we simply associate behavior with the data structures defined within the XML documents we could have normal, living, breathing objects... like we're used to in the programming world. Instead of enabling the parser breathe life back into our objects, as part of the deserializing or re-objectifying the object, we are forced to do this within our applications. Simply put, parsers aren't doing enough for us.


XML parsers currently support non-portable object specifications. While the XML documents themselves are portable by virtue of being written in XML, the objects represented by those documents are cannot be objectified without an accompanying document-specific application which interacts with the parser.


Current XML parsers provide the ability to parse an XML document, and perhaps generate a generic object structure (parse tree) corresponding to the document. However, XML documents could potentially represent more than simple structured documents, they could describe complex objects with behavior. Common (simple) examples of XML documents include address lists. But making use of this information requires each application which desires to consume address lists to write parser-related code, as well as code to implement the behaviors of the address lists and their entries. We propose a simple extension to parsers which would all but eliminate application-parser interaction and the need for document handlers (which do not migrate with the XML document), and would facilitate objectifying XML documents into type-specific objects (like we're used to having in the programming world) having all related behaviors intact.



Background
Current XML parsers generate generic parse trees (most do anyway). These trees represent the structure of the data that was parsed. But what is missing is the behavior associated with this data. While there are methods associated with the generic parse tree elements, these are not data-specific but rather generic methods (see the sample code). This approach places the burden on the application to deserialize the document back into objects using the generic calls and a lot of validating code. This is true of all current XML parsers (which support parse tree generation).


Once the XML document is parsed the information needs to be retrieved by the application, so it must access it from the parse tree (if one was generated -- see the note on problems with event-based parsing). In general, the consuming application may proceed in one of two ways to accomplish this:
   * Simple Extraction.

     The application will march down the structure, extracting out and consuming the data as it goes. This requires making calls using the generic parse tree methods (parser-specific -- SAX doesn't      support a parse tree API).


   * Tree Transformation / Mapping      The application copies the data out of the generic parse tree into type-specific structures (e.g. Java objects) which contain type-specific definitions. The data is then accessed by the      application using the type-specific API of these new structures.


In both cases, the application embeds the intelligence of how to access the data within itself. This is not unlike the approach used by relational database applications which separates the data from its behavior. If another application wishes to access this data, it must define its own behavior for that data.



An Example
Here's an example to illustrate this. This XML document was taken from an example accessible at the Microstar website (distributors of the AElfred XML parser).  The file name is donne.xml. When an XML parser generates a parse tree for this document, the resulting (informative) tree will look like the following in Lark (and similar in the other parsers as well):
root |-> Element |-> Element |-> Element                  |           |-> Element                  |           |-> Element |-> Element                  |                  |-> Element |-> Element                              |-> Element                              |-> Element                              |-> Element
The Element entries are the objects created by XML parser corresponding to the Element Declarations in the XML document. To determine what each element is, the application must navigate the structure and inspect each Element object using a generic API. This requires that the knowledge of how to navigate the structure is embedded within the application. The interface of this object must be embedded within the application as well which really violates the object-oriented paradigm -- yes, the data is stored in objects, but the associated type-specific behavior is stored someplace else. While this may appear similar to how objects are serialized today (without code), the distinction is that any other application that wants to access this object will not have access to the code since it is buried in the application which created it. All other applications will have to provide their own code (this, again, is how applications for relational databases are written).


There are several other problems with this approach, not the least of which is that the application should not be responsible for doing this. Furthermore, the parser-related code required to walk a complex structure is complex itself (not quite as complex as code used for event-based parsing of complex structures however), and is more difficult to maintain. Finally, the application is forced to do what the parser has already done, that is understand and navigate the structure of the document. The parser has already gone through the entire document and generated a structured instantiation of objects. The crux of the problem is that the parser generates generic objects which forces all of this additional work on the application. Worse yet, there is no reason this has to occur -- nor does the (tree-generating) parser have to be significantly modified.



Event-based parsing
An alternative to tree generation is simply to consume the structure on-the-fly as it is parsed. This requires writing an XML structure-specific handler (a document handler in SAX terms) which describes what should happen for each XML declaration that is encountered; no structure is automatically generated, so if objectification of the XML document is desired the handler is responsible for this. Using event-based parsing the application could adopt either of the above two approaches, the first being simple consumption and the latter which would cause the construction of some structure corresponding to the XML document. In both cases, at least for complex XML structures, there would be a lot of conditional segmented code which is more difficult to write and modify when changes in the XML structure occur. Using the extension proposed the majority of the work is done by the tree-generating parser, empowering the application to see XML documents as objects and alleviating their burden of using event-based parsing.


Granted, when an application will only encounter one kind of XML structure, event-based parsing might be a reasonable approach from the standpoint that only one handler would need to be written. But it still suffers from some of the same problems as generic parse tree generation (see the summary section).



XML Parsers Extended
What if the output of the parser was a type-specific structure which coincided with the definition of the structure in the XML document? And, what if that resulting objects contained the type-specific behavior for the specific element type parsed? What if the resulting parse tree for the example above instead looked like:
root |-> poem    |-> front   |-> title                  |           |-> author                  |           |-> revision-history |-> item                  |                  |-> body    |-> stanza                              |-> stanza                              |-> stanza                              |-> stanza
where poem, front, body, title, author, revision-history, and stanza were all classes with type-specific behavior? Instead of writing something like the following to retrieve the title of the poem:
Element front = null; Vector v = root.chilren(); if (v != null) {     Element front = v.elementAt(0); // v(0) "should" be the front element, we hope     if (front != null)         v = front.children();         for (i=0; i < front.size(); i++) {             Element child = v.elementAt(i);             if child.type().equals("title")                 return child.content();         }      } } return null;

one could simply write:
poem.getTitle();
More importantly, all of the behaviors that should be associated with each of these object types would be defined as part of the object interfaces themselves rather than embedded within the application.


Granted, an application can generate this same structure using the transformation / mapping technique above. However, this is partially a duplication of effort since it requires the application to navigate the structure generated by the parse tree, and then generate a new structure which mirrors the parse tree. The extension to Lark eliminates the need to do this because it instantiates the correct type-specific parse tree the first time. Note that this is an extension to Lark, and therefore applicable to any XML document.



Details
What occurs in the underlying implementation of an XML parser is rather straightforward. When it sees an XML element declaration, it instantiates a generic Element object (with Element only related methods). The extension to Lark simply extends the behavior of the parser so that instead of instantiating generic Element objects, it instantiates type-specific ones.


So when the parser encounters a new element declaration, it looks for a class declaration which identifies which class to instantiate in lieu of a generic Element class object (where it looks is described below). For example, when the parser identifies the "poem" element declaration, it looks for a class declaration for poem. If it finds one, it instantiates an object of that class rather than a generic Element object. The poem class extends the interface of the Lark Element class, but in addition, adds type-specific methods relevant to a poem object.


Within a type-specific parse tree class, like poem, is code which understands how to extract the parsed information. In effect, the object understands how to investigate itself. This code is provided by the object type creator. It will travel with the object as a means to facilitate re-objectifying the XML back into an object. This enables reuse of the object by any application. Of course, as stated above, the poem class will also provide a poem-specific interface.


A method I have added to the Element class is process(). It can be called once an element has been parsed. In each implementation, for example within the poem class, the process() code handles extracting the data from the inherited generic structures of the Element class. Alternatively, poem methods could simply be written that do this directly. But, it is important to note that the object itself is doing this, and further, that no other parse trees or duplicate structures are being constructed.


The location of the class declaration is not hard-coded. It could be within the XML file itself, in a DTD, in a stylesheet, or in a remote repository, for example. In addition, local class declarations may be used to override default class declarations. In the implementation of the Lark extension, I have simply embedded them in the DTD file along with the declaration of the structure of the XML file. In its current form the class declaration would look like the following for the poem example above, although there would be many ways to accomplish this:
<!ENTITY Poem-Class "http://www.objs.com/xml/poem/com.objs.ia.specification.xml.poem"> <!ENTITY Front-Class "http://www.objs.com/xml/poem/com.objs.ia.specification.xml.front"> <!ENTITY Body-Class "http://www.objs.com/xml/poem/com.objs.ia.specification.xml.body"> ...

<!ENTITY ClassSuffix "-Class">
The ClassSuffix is used to avoid possible naming collisions (which may be solved otherwise using the XML namespaces proposal).  So, when a new element declaration is identified by Lark it inspects this list looking for an entry matching the pattern <element type><ClassSuffix>, or in the case of the poem element declaration, "Poem-Class".



Cavaet Language?


Is this a language-specific extension? Not really. The class declarations could be (for example) written in Active-X I suppose, or even wrapped in CORBA, thereby enabling any language to take advantage of the idea of XML documents as objects. It would up to the parser to find the correct class declaration and objectify accordingly.



Implementation Experience
My experience with XML parsers began last year. As part of a DARPA-funded project I am implementing an architecture to demonstrate scalable object service architectures. I started using event-based parsing as a means to import object service specifications. These XML specifications represent real (Java and CORBA) services that are invoked by the architecture.


I noticed that by adopting an event-based approach to parsing I would have to write a lot of code which would be difficult to maintain should I have changes in the future. In addition, this code would be hard for someone else to understand since each parser callback method would include conditional statements for several types of elements, and the code would be spread across several methods. I prefer a clean separation of code whenever possible, and this didn't seem very clean.


I decided that tree parsing was a more practical route. The parser would automatically generate a structure for me. But, then I realized that I had to write all of the code to navigate this generic object structure, pull out the information I wanted, and then copy it into service specification objects having the behavior I wanted.


Since the parser was already generating classes, why not just tell it to generate the real classes to begin with?  The classes themselves would handle deserialization.  Sounds like OO to me! With modest changes to Lark, when it sees an XML service specification document it will generate service specification objects right away. This extension will work for any XML document which defines specializations of the Element class and makes them available to the parser. Besides asking Lark to parse the document, my application has no other parser-related code. Furthermmore, any other application can use my XML service specification documents, and load them in as service specification objects with only a few lines of code.



Summary
In summary, an extension has been presented which extends the capabilities of Lark, but which could be applied to all tree-generating XML parsers. It enables type-specific composite object construction to occur within the parser which is a significant improvement over generic parse tree construction because:
   * We can attach behavior to XML documents.

   * We can therefore treat XML documents as objects.

   * It eliminates most of the neccessity of the application to understand SAX, or parser-specific structures, as well as reducing the amount of direct interaction between the application and the      parser. To a certain extent DOM will accomplish this, but the extension proposed here augments this by enabling the generation of type-specific interfaces.

   * The application is then free to interact with the generated objects as "real" objects having type-specific structure and behavior.

   * More importantly, the XML documents can roam freely (likened to serialized objects) which can be objectified again by any application. This would not be possible with generic tree parsing or with      event-based parsing (which requires specialized structure-specific parsing handlers).


If we view XML as a means to serialize an object, we should view the parser as the mechanism to deserialize (or objectify) it. Once we convert an object to an XML representation, it simply doesn't make sense to throw away its behavior or the code which understands how it should be deserialized. Embedding this knowledge within an external application is just revisiting the relational DBMS experience and ignores the principal benefits of object technology.


If this proposed extension were adopted it would benefit significantly from a standardization of the Element interface (something that will happen with DOM). In this way, the associated class files would not be parser-specific, and therefore any XML document could be objectified by any tree-generating parser.



Status
I anticipate that the extensions I have made to Lark will be incorporated into a next version of Lark (I assume this from previous dialogues I have had with Tim Bray). If not, and in the meantime, the enhanced version of Lark is freely available on request.


References & Acknowledgements
Related work in this area is described in Towards a Web Object Model by Frank Manola, Object Services and Consulting, Inc. Thanks to Frank Manola (OBJS, Inc.) and Tim Bray (Textuality, Inc.) for their useful feedback.


  --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- This research is sponsored by the Defense Advanced Research Projects Agency and managed by the U.S. Army Research Laboratory under contract DAAL01-95-C-0112. The views and conclusions contained in this document are those of the authors and should not be interpreted as necessarily representing the official policies, either expressed or implied of the Defense Advanced Research Projects Agency, U.S. Army Research Laboratory, or the United States Government.


© Copyright 1998 Object Services and Consulting, Inc. Permission is granted to copy this document provided this copyright statement is retained in all copies. Disclaimer: OBJS does not warrant the accuracy or completeness of the information in this document.



xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@ic.ac.uk Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ To (un)subscribe, mailto:majordomo@ic.ac.uk the following message; (un)subscribe xml-dev To subscribe to the digests, mailto:majordomo@ic.ac.uk the following message; subscribe xml-dev-digest List coordinator, Henry Rzepa (mailto:rzepa@ic.ac.uk)

xml'FILE-EXTENSION

name::
* McsEngl.xml'FILE-EXTENSION@cptIt,

.xml

xml'GRAMMAR

name::
* McsEngl.xml'GRAMMAR@cptIt,

LOOK-THAT: search for xmlnt'something for a rule in the xml-grammar.
Start from the outermost compound entity: document#ql:xmlnt'document#.

The formal grammar of XML is given using a simple Extended Backus-Naur Form (EBNF#ql:bnf'notation_it516#) notation. Each rule in the grammar defines one symbol, in the form
symbol ::= expression
[SOURCE: W3C WD Part1 1997jun30]

Within the expression on the right-hand side of a rule, the meaning of symbols is as shown below.
#xN where N is a hexadecimal integer, the expression represents the character in ISO/IEC 10646 whose canonical (UCS-4) bit string, when interpreted as an unsigned binary number, has the value indicated. The number of leading zeroes in the#xN form is insignificant; the number of leading zeroes in the corresponding bit string is governed by the character encoding in use and is not significant for XML.

[a-zA-Z], [#xN-#xN] represents any character with a value in the range(s) indicated (inclusive).

[^a-z], [^#xN-#xN] represents any character with a value outside the range indicated.

[^abc], [^#xN#xN#xN] represents any character with a value not among the characters given.

"string" represents a literal string matching that given inside the double quotes.

'string' represents a literal string matching that given inside the single quotes.

a b a followed by b.

a | b a or b but not both.

a - b the set of strings represented by a but not represented by b

a? one or nothing; optional a.

a+ one or more occurrences of a.

a* zero or more occurrences of a.

%a specifies that in the external DTD subset a parameter entity may occur in the text at the position where a may occur; if so, its replacement text must match S? a S?. If the expression a is governed by a suffix operator, then the suffix operator determines both the maximum number of parameter-entity references allowed and the number of occurrences of a in the replacement text of the parameter entities: %a* means that a must occur zero or more times, and that some of its occurrences may be replaced by references to parameter entities whose replacement text must contain zero or more occurrences of a; it is thus a more compact way of writing %(a*)*. Similarly, %a+ means that a must occur one or more times, and may be replaced by parameter entities with replacement text matching S? (a S?)+. The recognition of parameter entities in the internal subset is much more highly constrained.

(expression) expression is treated as a unit, and may carry the % prefix operator, or a suffix operator: ?, *, or +.

/* ... */ comment.

[ WFC: ... ] Well-formedness check; this identifies by name a check for well-formedness associated with a production.

[ VC: ... ] Validity check; this identifies by name a check for validity associated with a production.
[SOURCE: W3C WD-xml 1997aug07]

xml'EBNF

name::
* McsEngl.xml'EBNF@cptIt,
* McsEngl.Extended-Backus-Naur-Form@cptIt,

One of the most significant design improvements in XML is to make it easy to use with modern compiler tools. Part of this improvement involves making it possible to express the syntax of XML in Extended Backus-Naur Form (EBNF) [Section 1.4]. If you've never seen EBNF before, think of it this way:
-EBNF is a set of rules, called “productions”
-Every rule describes a specific fragment of syntax
-A document is valid if it can be reduced to a single, specific rule, with no input left, by repeated application of the rules.

XML is defined by an EBNF grammar of about 80 rules.

In very general terms, that's all there is to it. You'll find all the details about EBNF in Compilers: Principles, Techniques, and Tools by Aho, Sethi, and Ullman or in any modern compiler text book.
While EBNF isn't an efficient way to represent syntax for human consumption, there are programs that can automatically turn EBNF into a parser. This makes it a particularly efficient way to represent the syntax for a language that will be parsed by a computer.
[N.Walsh Introduction {1997-09-10}]

xml'LAYOUT

name::
* McsEngl.xml'LAYOUT@cptIt,

There is actually already an SGML standard for this as well, and it's called DSSSL, and isn't very simple, either. The SGML Working Group has therefore decided to make a simplified version of DSSSL as well. So far, the only thing that's been done is a list describing which features of DSSSL that are likely to be included.
[SOURCE: L.M. Garshol, XML INTRO, 1997aug14]

xml'MARKUP

name::
* McsEngl.xml'MARKUP@cptIt,

DEFINITION ANALYTIC:
XML-TEXT#ql:xml'text# consists of intermingled
- character-data#ql:xml'character'data# and
- markup.
[SOURCE: W3C WD Part1 1997jun30]

XML-documents#ql:xml'document# are composed of markup and content.
[N.Walsh Introduction {1997-09-10}]

FUNCTION:
Markup encodes a description of the document's storage layout and logical structure.
[SOURCE: W3C WD Part1 1997jun30]

SUBGENERAL:
Markup takes the form of
- start-tags#ql:xml'start'tag#,
- end-tags#ql:xml'end'tag#,
- empty-elements#ql:xml'empty'element#,
- entity-references#ql:xml'entity'reference#,
- character-references#ql:xml'character'reference#,
- comments#ql:xml'comment#,
- CDATA-sections#ql:xml'cdata'section#,
- document-type-declarations#ql:xml'document'type'declaration#, and
- processing-instructions#ql:xml'processing'instruction#.
[SOURCE: W3C WD Part1 1997jun30]

There are six kinds of markup that can occur in an XML document:
elements,
entity references,
comments,
processing instructions,
marked sections, and
document type declarations.
[N.Walsh Introduction {1997-09-10}]

xml'CDATA-SECTION

name::
* McsEngl.xml'CDATA-SECTION@cptIt,
* McsEngl.CDATA@cptIt,
* McsEngl.xml'cdata'section@cptIt,

DEFINITION ANALYTIC:
MARKUP#ql:xml'markup# takes the form of
- start-tags#ql:xml'start'tag#,
- end-tags#ql:xml'end'tag#,
- empty-elements#ql:xml'empty'element#,
- entity-references#ql:xml'entity'reference#,
- character-references#ql:xml'character'reference#,
- comments#ql:xml'comment#,
- CDATA-sections#ql:xml'cdata'section#,
- document-type-declarations#ql:xml'document'type'declaration#, and
- processing-instructions#ql:xml'processing'instruction#.
[SOURCE: W3C WD Part1 1997jun30]
===
* CDATA section, the mechanism for including non-markup text in XML
[http://en.wikipedia.org/wiki/XML]
===
CDATA sections can occur anywhere CHARACTER-DATA#ql:xml'character'data# may occur; they are used to escape blocks of text containing characters which would otherwise be recognized as markup. CDATA sections begin with the string <![CDATA[ and end with the string ]]>:

CDATA sections
[xmlnt19] xmlnt'CDSect ::= CDStart CData CDEnd
[xmlnt20] xmlnt'CDStart ::= '<![CDATA['
[xmlnt21] xmlnt'CData ::= (Char* - (Char* ']]>' Char*))
[xmlnt22] xmlnt'CDEnd ::= ']]>'

Within a CDATA section, only the CDEnd string is recognized, so that left angle brackets and ampersands may occur in their literal form; they need not (and cannot) be escaped using < and &. CDATA sections cannot nest.
[SOURCE: W3C WD Part1 1997jun30]

XML'EX.CDATA'SECTION:
<![CDATA[<greeting>Hello, world!</greeting>]]>
[SOURCE: W3C WD Part1 1997jun30]

CHARACTERS INCLUNDED:
The only string that cannot occur in a CDATA section is “]]>”. Note: comments are not recognized in a CDATA section. If present, the literal text “<!--comment-->” will be passed directly to the application.
[N.Walsh Introduction {1997-09-10}]

xml'EX.cdata'section:
<![CDATA[
*p = &q;
b = (i <= 3);
]]>
[N.Walsh Introduction {1997-09-10}]

xml'CHARACTER'REFERENCE

name::
* McsEngl.xml'CHARACTER'REFERENCE@cptIt,
* McsEngl.xml'REFERENCE.CHARACTER@cptIt,

DEFINITION ANALYTIC:
MARKUP#ql:xml'markup# takes the form of
- start-tags#ql:xml'start'tag#,
- end-tags#ql:xml'end'tag#,
- empty-elements#ql:xml'empty'element#,
- entity-references#ql:xml'entity'reference#,
- character-references#ql:xml'character'reference#,
- comments#ql:xml'comment#,
- CDATA-sections#ql:xml'cdata'section#,
- document-type-declarations#ql:xml'document'type'declaration#, and
- processing-instructions#ql:xml'processing'instruction#.
[SOURCE: W3C WD Part1 1997jun30]

A character reference refers to a specific character in the ISO/IEC 10646 character set, e.g. one not directly accessible from available input devices:
Character reference
[xmlnt67] xmlnt'CharRef ::= '&#' [0-9]+ ';'
| '&#x' [0-9a-fA-F]+ ';'
[SOURCE: W3C WD Part1 1997jun30]

xml'EX.character'referece:
Type <key>less-than</key> (<) to save options.
[SOURCE: W3C WD-xml 1997aug07]

xml'COMMENT

name::
* McsEngl.xml'COMMENT@cptIt,

DEFINITION ANALYTIC:
MARKUP#ql:xml'markup# takes the form of
- start-tags#ql:xml'start'tag#,
- end-tags#ql:xml'end'tag#,
- empty-elements#ql:xml'empty'element#,
- entity-references#ql:xml'entity'reference#,
- character-references#ql:xml'character'reference#,
- comments#ql:xml'comment#,
- CDATA-sections#ql:xml'cdata'section#,
- document-type-declarations#ql:xml'document'type'declaration#, and
- processing-instructions#ql:xml'processing'instruction#.
[SOURCE: W3C WD Part1 1997jun30]

PRODUCTION:
Comments
[xmlnt17]  xmlnt'Comment ::= '<!--' (Char#ql:xmlnt'char#* - (Char* '--' Char*)) '-->'
[SOURCE: W3C WD-xml 1997aug07]

APPEARANCE:
Comments may appear anywhere except in a CDATA-section#ql:xml'cdata'section#, i.e. within element content, in mixed content, or in a DTD. They must not occur within declarations or tags. They are not part of the document's character data; an XML processor may, but need not, make it possible for an application to retrieve the text of comments. For compatibility, the string -- (double-hyphen) must not occur within comments.
[SOURCE: W3C WD Part1 1997jun30]

XML'EX.COMMENT:
<!-- declarations for <head> & <body> -->
[SOURCE: W3C WD Part1 1997jun30]

_ILLEGAL:
Example of illegal comments:

view plainprint?
<!-- Comments cannot contain the --
character sequence -->
<!-- Comments cannot end with a hyphen --->
<!-- Comments cannot <!-- be nested --> -->
[http://www.w3resource.com/xml/processing-instructions-comments-whitespace.php]

xml'EMPTY'ELEMENT

name::
* McsEngl.xml'EMPTY'ELEMENT@cptIt,
* McsEngl.xml'ELEMENT.EMPTY@cptIt,

DEFINITION ANALYTIC:
MARKUP#ql:xml'markup# takes the form of
- start-tags#ql:xml'start'tag#,
- end-tags#ql:xml'end'tag#,
- empty-elements#ql:xml'empty'element#,
- entity-references#ql:xml'entity'reference#,
- character-references#ql:xml'character'reference#,
- comments#ql:xml'comment#,
- CDATA-sections#ql:xml'cdata'section#,
- document-type-declarations#ql:xml'document'type'declaration#, and
- processing-instructions#ql:xml'processing'instruction#.
[SOURCE: W3C WD Part1 1997jun30]

If an element#ql:xml'element# is empty, the start-tag constitutes the whole element. An empty element takes a special form:

Tags for empty elements
[xmlnt39] xmlnt'EmptyElement ::= '<' Name#ql:xmlnt'Name# (S Attribute#ql:xmlnt'Attribute#)* S? '/>'
[SOURCE: W3C WD Part1 1997jun30]

DECLARATION:
An element declared using the keyword EMPTY must be empty and may be tagged using an empty-element tag when it appears in the document.
[SOURCE: W3C WD-xml 1997aug07]

XML'EX.element.empty:
<IMG align="left"  src="http://www.w3.org/Icons/WWW/w3c_home" />
<br></br>
<br/>
[SOURCE: W3C WD-xml 1997aug07]

xml'ENTITY-REFERENCE

name::
* McsEngl.xml'ENTITY-REFERENCE@cptIt,
* McsEngl.xml'entity'reference@cptIt,
* McsEngl.xml'REFERENCE.ENTITY@cptIt,

DEFINITION ANALYTIC:
MARKUP#ql:xml'markup# takes the form of
- start-tags#ql:xml'start'tag#,
- end-tags#ql:xml'end'tag#,
- empty-elements#ql:xml'empty'element#,
- entity-references#ql:xml'entity'reference#,
- character-references#ql:xml'character'reference#,
- comments#ql:xml'comment#,
- CDATA-sections#ql:xml'cdata'section#,
- document-type-declarations#ql:xml'document'type'declaration#, and
- processing-instructions#ql:xml'processing'instruction#.
[SOURCE: W3C WD Part1 1997jun30]

An entity reference refers to the content of a named entity.

General entities are text entities for use within the document itself; references to them use ampersand (&) and semicolon (;) as delimiters. In this specification, general entities are sometimes referred to with the unqualified term entity when this leads to no ambiguity.

Entity reference:
[xmlnt68] xmlnt'Reference ::= EntityRef | CharRef#ql:xmlnt'CharRef#
[xmlnt69] xmlnt'EntityRef ::= '&' Name ';' [WFC: Entity Declared ]
[WFC: Text Entity ]
[WFC: No Recursion ]
[xmlnt70] xmlnt'PEReference ::= '%' Name#ql:xmlnt'Name# ';' [WFC: Entity Declared ]
[WFC: Text Entity ]
[WFC: No Recursion ]
[WFC: In DTD ]

Well-Formedness Constraint - Entity Declared:
The Name given in the entity reference must exactly match the name given in the declaration of the entity, except that well-formed documents need not declare any of the following entities: amp, lt, gt, apos, quot. In valid documents, these entities must be declared, in the form specified in the section on predefined entities. In the case of parameter entities, the declaration must precede the reference.

Well-Formedness Constraint - Text Entity:
An entity reference must not contain the name of a binary entity. Binary entities may be referred to only in attribute values declared to be of type ENTITY or ENTITIES.

Well-Formedness Constraint - No Recursion:
A text or parameter entity must not contain a recursive reference to itself, either directly or indirectly.

Well-Formedness Constraint - In DTD:
In the external DTD subset, a parameter-entity reference is recognized only at the locations where the nonterminal PEReference or the special operator % appears in a production of the grammar. In the internal subset, parameter-entity references are recognized only when they match the InternalPERef non-terminal in the production for markupdecl.
[SOURCE: W3C WD-xml 1997aug07]

xml'EX.entity'reference:
This document was prepared on &docdate; and is classified &security-level;.
[SOURCE: W3C WD-xml 1997aug07]

xml'DOCUMENT'TYPE'DECLARATION

name::
* McsEngl.xml'DOCUMENT'TYPE'DECLARATION@cptIt,
* McsEngl.xml'DECLARATION.DOCUMENT'TYPE@cptIt,

DEFINITION ANALYTIC:
MARKUP#ql:xml'markup# takes the form of
- start-tags#ql:xml'start'tag#,
- end-tags#ql:xml'end'tag#,
- empty-elements#ql:xml'empty'element#,
- entity-references#ql:xml'entity'reference#,
- character-references#ql:xml'character'reference#,
- comments#ql:xml'comment#,
- CDATA-sections#ql:xml'cdata'section#,
- document-type-declarations#ql:xml'document'type'declaration#, and
- processing-instructions#ql:xml'processing'instruction#.
[SOURCE: W3C WD Part1 1997jun30]

XML provides a MECHANISM, the document type declaration, to define constraints on that logical structure and to support the use of predefined storage units.
[SOURCE: W3C WD-xml 1997aug07]

The XML document type declaration
- may include a pointer to an external entity containing a subset of the necessary markup declarations, and
- may also directly include another, internal, subset.
[SOURCE: W3C WD Part1 1997jun30]

APPEARANCE:
The document type declaration must appear before the first start-tag in the document.
[SOURCE: W3C WD Part1 1997jun30]

PRODUCTION:
Document type definition:
[xmlnt28] xmlnt'doctypedecl ::= '<!DOCTYPE' S#ql:xmlnt's# Name#ql:xmlnt'name# (S ExternalID#ql:xmlnt'ExternalID#)? S?
('[' %markupdecl* ']' S?)? '>'
[VC: Root Element Type ]
[VC: Non-null DTD ]
[xmlnt29] xmlnt'markupdecl ::= ( %elementdecl#ql:xmlnt'elementdecl# | %AttlistDecl | %EntityDecl | %NotationDecl
| %PI | %S | %Comment | InternalPERef )*
[xmlnt30] xmlnt'InternalPERef ::= PEReference [ WFC: Integral Declarations ]

Validity Constraint - Root Element Type:
The Name in the document-type declaration must match the element type of the root element.

Validity Constraint - Non-null DTD:
The internal and external subsets of the DTD must not both be empty.

Well-Formedness Constraint - Integral Declarations:
A parameter-entity reference recognized in this context must have replacement text consisting of zero or more complete declarations, i.e. matching the production for the non-terminal markupdecl.
[SOURCE: W3C WD-xml 1997aug07]

xml'EX.document'type'declaration:
<?XML version="1.0"?>
<!DOCTYPE greeting SYSTEM "hello.dtd">
<greeting>Hello, world!</greeting>
[SOURCE: W3C WD-xml 1997aug07]

xml'EX.document'type'declaration:
<?XML version="1.0" encoding="UTF-8" ?>
<!DOCTYPE greeting [
  <!ELEMENT greeting (#PCDATA)>
]>
<greeting>Hello, world!</greeting>
[SOURCE: W3C WD-xml 1997aug07]

xml'CONDITIONAL'SECTION

name::
* McsEngl.xml'CONDITIONAL'SECTION@cptIt,

_DEFINITION:
Conditional sections are portions of the DOCUMENT-TYPE-DECLARATION#ql:xml'document'type'declaration# external subset which are included in, or excluded from, the logical structure of the DTD based on the keyword which governs them.

Conditional section:
[xmlnt63] xmlnt'conditionalSect ::= includeSect | ignoreSect
[xmlnt64] xmlnt'includeSect ::= '<![' %'INCLUDE' '[' (%markupdecl*)* ']]>'
[xmlnt65] xmlnt'ignoreSect ::= '<![' %'IGNORE' '[' ignoreSectContents* ']]>'
[xmlnt66] xmlnt'ignoreSectContents ::= ((SkipLit | Comment | PI) - (Char* ']]>' Char*))
| ('<![' ignoreSectContents* ']]>')
| (Char - (']' | [<'"]))
| ('<!' (Char - ('-' | '[')))
[SOURCE: W3C WD-xml 1997aug07]

xml'EX.conditional'section:
<!ENTITY % draft 'INCLUDE' >
<!ENTITY % final 'IGNORE' >

<![%draft;[
<!ELEMENT book (comments*, title, body, supplements?)>
]]>
<![%final;[
<!ELEMENT book (title, body, supplements?)>
]]>
[SOURCE: W3C WD-xml 1997aug07]

xml'DTD

name::
* McsEngl.xml'DTD@cptIt,
* McsEngl.xml'DOCUMENT'TYPE'DEFINITION@cptIt,

_DEFINITION:
The XML-document-type-declaration#ql:xml'document'type'declaration# may include a pointer to an external entity containing a subset of the necessary markup declarations, and may also directly include another, internal, subset.
These two subsets make up the document type definition, abbreviated DTD. The DTD, in effect, provides a grammar which defines a class of documents. Properly speaking, the DTD consists of both subsets taken together, but it is a common practice for the bulk of the markup declarations to appear in the external subset, and for this subset, usually contained in a file, to be referred to as "the DTD" for a class of documents.
[SOURCE: W3C WD Part1 1997jun30]

PRODUCTION:
External subset:
[xmlnt31] xmlnt'extSubset ::= ( %markupdecl#ql:xmlnt'markupdecl# | %conditionalSect#ql:xmlnt'conditionalSect# )*
[SOURCE: W3C WD Part1 1997jun30]

What's a Document Type Definition (DTD) and where do I get one?
A DTD is usually a file (or several files together) which contains a formal definition of a particular type of document. This sets out what names can be used for elements, where they may occur (for example, <ITEM> might only be meaningful inside <LIST>), and how they all fit together. It lets processors parse a document and identify where each element comes, so that stylesheets, navigators, search engines, and other applications can be used.
There are thousands of DTDs already in existence in all kinds of areas (see the SGML Web pages for examples). Many of them can be downloaded and used freely; or you can write your own. As with any language, you need to learn some of it [SGML] to do this: but XML is much simpler, see the list of restrictions which shows what has been cut out.
DTDs specifically for use on the Web may become commonplace, and people in different areas of interest may write their own for their own purposes: this is what XML is for.
Examples of DTDs (note they are still SGML ones, not XML ones) can be retrieved at http://www.ucc.ie/cgi-bin/PUBLIC.
[SOURCE: FAQ 1997may]

Symbol Interpretation (check it):
?  0 or 1
*  0 or more
+  1 or more
[nikos]

xml'ex.DTD:
<!-- DTD for Shakespeare J. Bosak 1994-03-01, 1997-01-02 -->
<!-- Revised for case sensitivity 1997-09-10 -->
<!-- Revised for XML 1.0 conformity 1998-01-27 (thanks to Eve Maler) -->
<!-- <!ENTITY amp "&#38;"> -->
<!ELEMENT PLAY (TITLE, FM, PERSONAE, SCNDESCR, PLAYSUBT, INDUCT?,         PROLOGUE?, ACT+, EPILOGUE?)>
<!ELEMENT TITLE (#PCDATA)>
<!ELEMENT FM (P+)>
<!ELEMENT P (#PCDATA)>
<!ELEMENT PERSONAE (TITLE, (PERSONA | PGROUP)+)>
<!ELEMENT PGROUP (PERSONA+, GRPDESCR)>
<!ELEMENT PERSONA (#PCDATA)>
<!ELEMENT GRPDESCR (#PCDATA)>
<!ELEMENT SCNDESCR (#PCDATA)>
<!ELEMENT PLAYSUBT (#PCDATA)>
<!ELEMENT INDUCT (TITLE, SUBTITLE*, (SCENE+| (SPEECH| STAGEDIR|            SUBHEAD)+ ) )>
<!ELEMENT ACT (TITLE, SUBTITLE*, PROLOGUE?, SCENE+, EPILOGUE?)>
<!ELEMENT SCENE (TITLE, SUBTITLE*, (SPEECH | STAGEDIR | SUBHEAD)+)>
<!ELEMENT PROLOGUE (TITLE, SUBTITLE*, (STAGEDIR | SPEECH)+)>
<!ELEMENT EPILOGUE (TITLE, SUBTITLE*, (STAGEDIR | SPEECH)+)>
<!ELEMENT SPEECH (SPEAKER+, (LINE | STAGEDIR | SUBHEAD)+)>
<!ELEMENT SPEAKER (#PCDATA)>
<!ELEMENT LINE (#PCDATA | STAGEDIR)*>
<!ELEMENT STAGEDIR (#PCDATA)>
<!ELEMENT SUBTITLE (#PCDATA)>
<!ELEMENT SUBHEAD (#PCDATA)>

<!ELEMENT FAQ (INFO, PART+)>
<!ELEMENT INFO (SUBJECT, AUTHOR, EMAIL?, VERSION?, DATE?)>
<!ELEMENT SUBJECT (#PCDATA)>
<!ELEMENT AUTHOR (#PCDATA)>
<!ELEMENT EMAIL (#PCDATA)>
<!ELEMENT VERSION (#PCDATA)>
<!ELEMENT DATE (#PCDATA)>
<!ELEMENT PART (Q+)>
<!ELEMENT Q (QTEXT, A)>
<!ELEMENT QTEXT (#PCDATA)>
<!ELEMENT A (#PCDATA)>
<!ATTLIST PART
NO CDATA#IMPLIED
TITLE CDATA#IMPLIED>
<!ATTLIST Q NO CDATA#IMPLIED>
[SOURCE: L.M. Garshol, XML INTRO, 1997aug14]

xml'DTD.inline

name::
* McsEngl.xml'DTD.inline@cptIt,

There are two criteria for XML-document: well-form and validity. While well-form criteria reflects correct XML-syntax only, validity verifies data described in XML.

In order to check where a document is valid or not it must be bound to a Document Type Definition (DTD) or XML Schema.

Example below shows DTD for our sample XML:

<!-- file: sample.xml -->
<?xml version="1.0"?>

<!DOCTYPE purchase-order [
 <!-- declaration of the root element and its attributes -->
 <!ELEMENT purchase-order (purchased-by, order-items)>
 <!ATTLIST purchase-order
   date CDATA#REQUIRED
   number CDATA#REQUIRED
 >

<!ELEMENT purchased-by (address)>
 <!ATTLIST purchased-by
  name CDATA#REQUIRED
 >
 <!ELEMENT address (#PCDATA)>

 <!-- order-items can contains at least on item -->
<!ELEMENT order-items (item+)>
 <!ELEMENT item EMPTY>
 <!ATTLIST item
   code CDATA#REQUIRED
   type CDATA#REQUIRED
   label CDATA#REQUIRED
 >
]>

<!--
 In order to constrain the contents of XML-document
 a DTD-definition may be used.
 The DTD-definition can be inserted immediately into
 the caption of target XML-file.
-->

<purchase-order date="2005-10-31" number="12345">

 <purchased-by name="My name">
   <address>My address</address>
 </purchased-by>

 <order-items>
   <!--
     here is an example of empty element
     i.e. containing no nested elements
   -->
   <item code="687" type="CD" label="Some music" />
   <item code="129851" type="DVD" label="Some video"/>
 </order-items>

</purchase-order>

lagXml'PROCESSING'INSTRUCTION

name::
* McsEngl.lagXml'PROCESSING'INSTRUCTION@cptIt,
* McsEngl.xml'PI@cptIt,

DEFINITION ANALYTIC:
MARKUP#ql:xml'markup# takes the form of
- start-tags#ql:xml'start'tag#,
- end-tags#ql:xml'end'tag#,
- empty-elements#ql:xml'empty'element#,
- entity-references#ql:xml'entity'reference#,
- character-references#ql:xml'character'reference#,
- comments#ql:xml'comment#,
- CDATA-sections#ql:xml'cdata'section#,
- document-type-declarations#ql:xml'document'type'declaration#, and
- processing-instructions#ql:xml'processing'instruction#.
[SOURCE: W3C WD Part1 1997jun30]
===
Processing instructions (PIs) allow documents to contain instructions for applications.
[SOURCE: W3C WD Part1 1997jun30]

PRODUCTION:
Processing Instructions
[17]  xmlnt'PI ::= '<?' PITarget (S (Char* - (Char* '?>' Char*)))? '?>'
[18]  xmlnt'PITarget ::= Name - (('X' | 'x') ('M' | 'm') ('L' | 'l'))
[SOURCE: W3C WD-xml 1997dec08]

Processing instructions
[xmlnt18] xmlnt'PI ::= '<?' Name S (Char* - (Char* '?>' Char*)) '?>'
PIs are not part of the document's character data, but must be passed through to the application. The Name is called the PI target; it is used to identify the application to which the instruction is directed. XML provides an optional mechanism, NOTATION, for formal declaration of such names. PI targets with names beginning with the string "XML" are reserved for standardization in this or future versions of this specification.
[SOURCE: W3C WD Part1 1997jun30]

_EXAMPLE:
<?xml-stylesheet type="text/xml" href="test.xsl"?>
The example above shows an XSL processing instruction; its target is xsl-stylesheet and its data is type="text/xml" href="test.xsl".
[http://reference.sitepoint.com/javascript/ProcessingInstruction]

STRUCTURE:
As you can see, processing instructions always begin with <? and end with ?>.
[PC-MAG 1998may26]

xml'TAG

name::
* McsEngl.xml'TAG@cptIt,

_DEFINITION: MARKUP#ql:xml'markup# takes the form of
- start-tags#ql:xml'start'tag#,
- end-tags#ql:xml'end'tag#,
- empty-elements#ql:xml'empty'element#,
- entity-references#ql:xml'entity'reference#,
- character-references#ql:xml'character'reference#,
- comments#ql:xml'comment#,
- CDATA-sections#ql:xml'cdata'section#,
- document-type-declarations#ql:xml'document'type'declaration#, and
- processing-instructions#ql:xml'processing'instruction#.
[SOURCE: W3C WD Part1 1997jun30]

XML uses tags (for example <em>emphasis</em> for emphasis), to distinguish document structures
[SOURCE: FAQ textuality]

xml'START'TAG

name::
* McsEngl.xml'START'TAG@cptIt,

PRODUCTION:
Start-tag
[xmlnt33] xmlnt'STag ::= '<' Name (S Attribute)* S? '>' [WFC: Unique Att Spec ]
[xmlnt34] xmlnt'Attribute ::= Name Eq AttValue#ql:xmlnt'AttValue# [VC: Attribute Value Type ]
[WFC: No External Entity References]
[xmlnt35] xmlnt'Eq ::= S? '=' S?

Validity Constraint - Unique Att Spec:
No attribute may appear more than once in the same start-tag or empty-element tag.

Validity Constraint - Attribute Value Type:
The attribute must have been declared; the value must be of the type declared for it. (For attribute types, see the discussion of attribute declarations.)

Well-Formedness Constraint - No External Entity References:
Attribute values cannot contain entity references to external entities.
[SOURCE: W3C WD-xml 1997aug07]

XML'EX.START'TAG:
<termdef id="dt-dog" term="dog">
[SOURCE: W3C WD-xml 1997aug07]

xml'END'TAG

name::
* McsEngl.xml'END'TAG@cptIt,

_DEFINITION:
The end of every element which is not empty is marked by an end-tag containing a name that echoes the element's type as given in the start-tag:

End-tag:
[xmlnt36] xmlnt'ETag ::= '</' Name S? '>'
[SOURCE: W3C WD Part1 1997jun30]

XML'EX.END'TAG:
</termdef>
[SOURCE: W3C WD-xml 1997aug07]

xml'Program

name::
* McsEngl.xml'Program@cptIt,
* McsEngl.xml-tool@cptIt439i,
* McsEngl.xml-implementation-tool@cptIt439i,

The HCRC Language Technology Group is pleased to announce a new release of LT XML, the first high-performance publicly available XML toolset written in C.
For further information and access to the software distribution, see
http://www.ltg.ed.ac.uk/software/xml/
The LT XML tool-kit includes stand-alone tools for a wide range of processing of well-formed XML documents, including searching and extracting, down-translation (e.g. report generation, formatting), tokenising and sorting. If you've been waiting for high throughput XML tools with simple command-line interfaces to explore the potential of XML, LT XML is just what you need to get started. Basic throughput is under 3 seconds/megabyte on a Pentium 133, fast enough to make processing substantial XML datasets feasible.
LT XML is an integrated set of XML tools and a developers' tool-kit, including a C-based API. As well as sources, this release includes executable images for a range of platforms, including Windows 95 and Windows NT, FreeBSD, Linux and Solaris. A preliminary partial Macintosh version is also available. This release is restricted to 8-bit character input/output, and does NOT do validation, although it does process and make use of DTDs in documents which include them.
Sequences of LT XML tool applications can be pipelined together to achieve complex results. Tools included in this release include:
* sggrep -- extract sub-parts of XML documents, using patterns over element structure and text content;
* textonly -- extract text content only;
* sgsort -- reorder sub-elements within specified elements
* sgmltrans -- pattern+action downtranslation tool
* sgrpg -- Structure-based transformation tool
* simple, simpleq -- event- and fragment-based examples of API use
For special purposes beyond what the pre-constructed tools can achieve, extending their functionality and/or creating new tools is easy using the LT XML API, which provides both event-oriented and tree-fragment oriented access to the input document stream. Minimal applications require less than one-half page of C code to express.
LT XML is available to anyone free of charge for non-commercial purposes.
[internet {1997-09-01}]

You can find it at
http://www.geocities.com/SiliconValley/Haven/2638/ezDTD.htm
[1998jan30]

AbiWord is another (the third?) open source word processor that will use an XML document type for its ntaive format. One interesting thing about this one is that it is intended to be portable between Unix and Windows.That means that it is at least theoretically possible that a large, heterogeneous corporation could standardize on it.
http://www.abisource.com
[xmldev {1999-03-29}]

We would like to announce the release of XMill, a compressor for XML data. XMill typically compresses twice as good as gzip, at about the same speed.
XMill is written in C++, and its distribution site is:
http://www.research.att.com/sw/tools/xmill
[1999dec19]

You can download a copy of XMLZip for free at: http://www.xmls.com/products/xmlzip/xmlzipPricing.html
John Evdemon Chief Architect XML Solutions http://www.xmls.com
[{2000-03-17}]

xml'EDITOR

name::
* McsEngl.xml'EDITOR@cptIt,

_DEFINITION:
An XML editor is a markup language editor with added functionality to facilitate the editing of XML. This could be done in plain text in a text editor, with all the code visible. Specific XML editors, however, have facilities like word completion and menus and buttons for tasks that are common in XML editing, based on data supplied with Document Type Definition (DTD).

There are also graphical XML editors that hide the code in the background and present the content to the user in a more user-friendly format, approximating the rendered version. This is helpful for situations where people who are not fluent in XML code need to enter information in XML based documents such as time sheets and expenditure reports. And even if the user is familiar with XML, use of such editors, that take care of syntax details, is often faster and more convenient. These are often called WYSIWYG ("What You See Is What You Get") editors, but not all of them are WYSIWYG: graphical XML editors can be WYSIWYG when they try to display the final rendering or WYSIWYM ("What You See Is What You Mean") when they try to display the actual meaning of XML elements.
[http://en.wikipedia.org/wiki/XML_editor]

xml'APPLICATION

name::
* McsEngl.xml'APPLICATION@cptIt,

A software module called an XML processor is used to read XML documents and provide access to their content and structure. It is assumed that an XML processor is doing its work on behalf of another module, referred to as the application. This specification describes the required behavior of an XML processor in terms of how it must read XML data and the information it must provide to the application.
[SOURCE: W3C WD Part1 1997jun30]

xml'BROWSER

name::
* McsEngl.xml'BROWSER@cptIt,

Fujitsu's "HyBrick" SGML/XML Browser HyBrick Version 0.82 with XLink/XPointer Support is Now Available for Download. The distribution is an ~ 1.3 MB self-extracting WinZip file for Windows 95 and NT.
Overview
"HyBrick" is an advanced SGML/XML browser developed by Fujitsu Laboratories, the research arm of Fujitsu. "HyBrick" is based on an architecture that supports advanced linking and formatting capabilities. HyBrick includes a DSSSL renderer and XLink/XPointer engine running on top of James Clark's SP and Jade.
[http://www.fsc.fujitsu.com/hybrick/] 1999feb26

Where can I get an XML browser?
There are already some browsers emerging (see below), but the XML specification is still under development. As with HTML, there won't be just one browser, but many. However, because the potential number of different XML applications is not limited, no single browser should be expected to handle 100% of everything.
Expect to see the generic parts of XML (eg parsing, tree management, searching, formatting, and the use of architectural forms) combined into a general-purpose browser library or toolkit to make it easier for developers to take a consistent line when writing XML applications. Such applications could then be customized by adding semantics for specific markets, or using languages like Java to develop plugins for generic browsers and have the specialist modules delivered transparently over the Web.

•JUMBO is a prototype GUI browser/editor/search/rendering tool for the output of XML parsers. It displays the abstract document tree which can be queried and edited in limited fashion. Java classes can be dynamically loaded for the current DTD and allow complex transformation and rendering. The emphasis is on the import of legacy files into structured documents, and the management of non-textual data, including common data structures (trees, tables, lists, etc). Currently JUMBO parses a subset of XML files (ie only elements and their attributes) and will be grafted onto other parsers as soon as possible. The software and a wide range of XML demo files, including Jon Bosak's PLAY, can be downloaded for any Java-enabled browser from http://www.venus.co.uk/omf/cml/

• The DynaWeb server from Inso Corporation (formerly EBT) can serve other forms of SGML translated on-the-fly to XML (demonstrated at the GCA's XML Conference in San Diego, March 1997). Sun Microsystems are currently serving XML using this software on an experimental basis (message to the xml-dev mailing list dated Mon, 17 Mar 1997 16:49:42 -0800 from Jon Bosak).

• Microsoft are defining their proposed Channel Definition Format (CDF) as an application of XML.
[SOURCE: FAQ 1997may]

xml'INDEX'TOOL

name::
* McsEngl.xml'INDEX'TOOL@cptIt,

I am very pleaed to announce that XPERT 0.1 is available now at www.futurexpert.com
XPERT (XPath based query language Evaluation and Retrieval Tool) is a Java software that indexes and retrieves XML documents efficiently.
Some of main features are: (1) Index mutiple types of files and save the indices into disks with compressed form - You can index heterogeneous (different DTD or Schema) XML files together (2) Retrieve elements with XPath based query language efficiently (3) phrase and wild card ("*") is supported in retrieval - It is an extension of "contains" function (4) Customized stemming and stopwords are allowed - You can use your own stemming function and stop word list
The use of the software is very easy. I hope you enjoy the functionalities that XPERT provides.
Dongwook 2000jul

xml'JAVA'LIBRARY

name::
* McsEngl.xml'JAVA'LIBRARY@cptIt,

SAXON#cptIt529#

xml'PROCESSOR

name::
* McsEngl.xml'PROCESSOR@cptIt,

A software module called an XML processor is used to read XML documents and provide access to their content and structure. It is assumed that an XML processor is doing its work on behalf of another module, referred to as the application.
[SOURCE: W3C WD Part1 1997jun30]

Hiho,
I'm just now getting around to announcing docproc 2, an XML + XSL document processor.  This is a beta release, and I welcome feedback. docproc is currently installed on javalab.uoregon.edu and is functioning as a Servlet.
The URL for the docproc documentation and distribution site is:
      http://javalab.uoregon.edu/ser/software/docproc_2/docs/index.xml
There are several pages on Javalab which have been XML-ized, as test cases.  I have spent most of my time working on the docproc package, and the style sheets for most of these pages are not particularly clever.The "document" style sheet is, however, rather complex, and it is this stylesheet which the docproc documentation page uses.  One test page URL, which will lead you to other test pages, is:
     http://javalab.uoregon.edu/vlab/select.xml
To retrieve and view the XML source of any given XML page on javalab, replace "javalab" in the URL with "jersey."  Jersey is running Apache, without docproc, and has NFS access to the same documents as Javalab.
Please be aware that Javalab is a testbed, and that you may experience delays or periods of downtime.  In particular, the JavaWebServer on Javalab has been having problems processing delivering non-XML documents.  This has nothing to do with docproc.
Thank you, and again, please send me your feedback.
--- Sean Russel ser@javalab.uoregon.edu
[{1997-11-22}]

xml'LARK

name::
* McsEngl.xml'LARK@cptIt,

Lark is a non-validating XML processor implemented in the Java language; it attempts to achieve good trade-offs among compactness, completeness, and performance. This report gives an overview of the motivations for, facilities offered by, and usage of, the Lark processor. This document and the Lark software are copyright © 1997 by Tim Bray. All rights reserved. However, Lark is available on the Internet for general public use.
[SOURCE: Bray 1997jun24]

CLASSES:
Attribute.class
Element.class
Entity.class
Handler.class
Lark.class
Namer.class
Segment.class
Text.class
XmlInputStream.class

xml'PARSER

name::
* McsEngl.xml'PARSER@cptIt,

There are already three XML parsers (written in Java) which can be used to check that your files conform to the Draft XML Specification:
•Norbert Mikula's NXP at http://www.edu.uni-klu.ac.at/~nmikula/NXP/
•Tim Bray's Lark at http://www.textuality.com/Lark/
•Sean Russell's kernel at http://jersey.uoregon.edu/ser/software/XML.tar.gz
[SOURCE: FAQ 1997may]

Sean Mc Grath writes:
> The real truth behind XML's simplicity and ease of implementaton is being badly > let down by the haziness with with parsers are classified:- > > Well Formed > Valid > Type Valid (In the DOM level 1 spec.) > Tag Valid (ditto) > DTD Aware (Aelfred)
I'd suggest that there at least three logically-separate realms of here, all of which we've been overloading onto the same single set of terminology.  Here's what I suggest:
Realm#1: Functionality
a) Scanning      This type of parser simply skips the DOCTYPE declaration (using    regular expressions) and parses the markup in the document    instances.  It is not required to handle any but the built-in    entities, and as a result, does not include any external entities.   For the purposes of whitespace handling, it assumes that all    specified attributes are CDATA and that all elements have mixed    content.     Optionally, a scanning parser may attempt to extract some    information from the DOCTYPE declaration, such as entity    declarations and attribute default values.
b) DTD-driven      This type of parser reads the DTD (both internal and external    subsets) to obtain entity declarations, attribute declarations, and    element-type declarations.  It handles any entities declared in the    DTD (internal or external), and provides default values when    attributes are not specified.  For the purposes of whitespace    handling, it uses the declared type for each attribute, and    distinguishes between element types with element content and    elements with mixed content.

Realm#2: Validation
a) Non-validating      This type of parser assumes that its input document is both    well-formed and valid, and is not required to report any errors at    all.     Optionally, a non-validating parser may report some lexical or    DTD-related errors, but it does not qualify as a well-formed or    validating parser unless it reports _all_ relevant errors.
b) Well-formed      This type of parser reports any lexical errors in an XML document    (including well-formedness constraints in the spec), but is not    required to report DTD-related errors (such as attribute-type    mismatches, elements out of context, etc.).  A well-formed parser    must report an error for all 141 tests in James Clark's test suite.     Optionally, a well-formed parser may report some DTD-related    errors, but it does not qualify as a validating parser unless it    reports _all_ DTD-related errors.
c) Validating      A validating parser must report all of the errors reported by a    well-formed parser, together with all DTD-related errors ("validity    constraints" in the spec), such as elements in contexts not allowed    by the current content model, attempts to change#FIXED attributes,    failure to specify#REQUIRED attributes, unresolved IDREFS, and    attribute-type-mismatches.     Validating parsers must provide DTD-driven functionality.

Realm#3: Interface
a) Event-based      An event parser returns a series of XML document events, such as character data or the start or end of an element, usually through call-backs to user-defined handlers.  Events are returned in the order that they occur in the XML source document.
b) Tree-based      A tree-based parser builds an in-memory tree of an entire  document, then provides some means for the user to navigate the  tree.  The user is not constrained to navigating the tree in the    order that it was parser.  Tree-based parsers are often built on top of an event-based layer.

According to this classification, Ζlfred is a DTD-driven, non-validating, event-based XML parser.
There are other realms, including the type of information delivered by a parser (simple ESIS-like production information, or full information for an XML editor, such as comments, ignored whitespace, etc.), but I think that we would be best standardise a few basic terms first.

All the best,

David
-- David Megginson                 ak117@freenet.carleton.ca Microstar Software Ltd.         dmeggins@microstar.com       http://home.sprynet.com/sprynet/dmeggins/
xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@ic.ac.uk Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ To (un)subscribe, mailto:majordomo@ic.ac.uk the following message; (un)subscribe xml-dev To subscribe to the digests, mailto:majordomo@ic.ac.uk the following message; subscribe xml-dev-digest List coordinator, Henry Rzepa (mailto:rzepa@ic.ac.uk)
[1997dec14]

Silfide (java)

Silfide XML Parser 0.85 Release is now available at:
http://www.loria.fr/projets/XSilfide/EN/sxp/
Changes from last revision:
- SXP provides now a DocumentLoader (was XDOM) generic class to load a DOM Document from a String, an URL, an InputStream or even a SAX InputSource. From an instance of the DocumentLoader it is possible to configure the parser (validating, handle cross-references ID/IDREF, set a NamespaceHandler, etc...).


- A new package fr.loria.xml.ns for XML Namespace handler with generic interfaces and default implementations.


- A lot of bugs has been fixed (thanks for your bug reports)

Java source files, java classes, some samples and documentation are freely available here:
http://www.loria.fr/projets/XSilfide/EN/sxp/
Pat.


-- ============================================================== bonhomme@loria.fr | Office : B.228 http://www.loria.fr/~bonhomme | Phone : 03 83 59 30 52 -------------------------------------------------------------- * Serveur Silfide : http://www.loria.fr/projets/Silfide ==============================================================

Zlfred

I've been pointing to David Brownell's upgraded distribution, at: http://home.pacbell.net/david-b/xml/
[{2000-03-08}]

Microstar Software Ltd. is happy to announce Ζlfred (AElfred), a small, fast, DTD-aware Java-based XML parser, especially suitable for use in Java applets.
We've designed Ζlfred for Java programmers who want to add XML support to their applets and applications without doubling their size: Ζlfred consists of only two class files, with a total size of approximately 24K, and requires very little memory to run.  Ζlfred also implements Java's java.lang.Runnable interface and a zero-argument constructor, so it's easy to start Ζlfred as a separate thread or to adapt it for use as a JavaBean.
Ζlfred is free for both commercial and non-commercial use, and COMES WITH NO WARRANTEE.  You can download a copy of version 1.0 (with source code) from the following URL:
  http://www.microstar.com/XML/index.htm
There is also an applet to let you try Ζlfred online in your own browser before download it.

***************** DESIGN PRINCIPLES *****************
1. Ζlfred must be as small as possible, so that it doesn't add too    much to your applet's download time.
   STATUS: Ζlfred is currently about 24K in total, and we're still     looking for ways to shrink it further.
2. Ζlfred must use as few class files as possible, to minimize the number    of HTTP connections necessary for applets.
   STATUS: Ζlfred consists of only two class files, the main parser     class (XmlParser.class) and a small interface for your own program     to implement (XmlProcessor.class).  All other classes in the     distribution are just demonstrations.
3. Ζlfred must be compatible with most or all Java implementations    and platforms.
   STATUS: Ζlfred uses only JDK 1.0.2 features, and we have tested it     successfully with the following Java implementations: JDK 1.1.1     (Linux), jview (Windows NT), Netscape 4 (Linux and Windows NT),     Internet Explorer 3 (Windows NT), and Internet Explorer 4 (Windows     NT).
4. Ζlfred must use as little memory as possible, so that it does not take    away resources from the rest of your program.
   STATUS: On a P75 Linux system, using JDK 1.1.1, running Ζlfred     (with a 4MB XML document) takes only 2MB more memory than running     a simple "Hello world" Java application.  Because Ζlfred does not     build an in-memory parse tree, you can run it on very large input     files using little or no extra memory.
5. Ζlfred must run as fast as possible, so that it does not slow down    the rest of your program.
   STATUS: On a P75 Linux system, using JDK 1.1.1 (without a JIT     compiler), Ζlfred parses XML test files at about 50K/second.  On a     P166 NT workstation, using jview, Ζlfred parses XML test files at     about 1MB/second.
6. Ζlfred must produce correct output for well-formed and valid    documents, but need not reject every document that is not valid or    not well-formed.
   STATUS: Ζlfred is DTD-aware, and handles all current XML features,     including CDATA and INCLUDE/IGNORE marked sections, internal and     external entities, proper whitespace treatment in element content,     and default attribute values.  It will sometimes accept input that     is technically incorrect, however, without reporting an error (see     README), since full error reporting would make the parser much     larger.
7. Ζlfred must provide full internationalisation from the first release.
   STATUS: Ζlfred supports Unicode to the fullest extent possible in     Java.  It correctly handles XML documents encoded using UTF-8,     UTF-16, ISO-10646-UCS-2, ISO-10646-UCS-4 (as far as surrogates     allow), and ISO-8859-1 (ISO Latin 1/Windows).  With these     character sets, Ζlfred can handle all of the world's major (and     most of its minor) languages.

*********************** ABOUT THE NAME "Ζlfred" ***********************
Ζlfred the Great (AElfred in ASCII) was king of Wessex, and at least nominally of all England, at the time of his death in 899AD.  Ζlfred introduced a wide-spread literacy program in the hope that his people would learn to read English, at least, if Latin was too difficult for them.  This Ζlfred hopes to bring another sort of literacy to Java, using XML, at least, if full SGML is too difficult.
The initial "Ζ" (AE ligature) is also a reminder that XML is not limited to ASCII.

Enjoy!

David
--- David Megginson                 ak117@freenet.carleton.ca Microstar Software Ltd.         dmeggins@microstar.com       http://home.sprynet.com/sprynet/dmeggins/
xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@ic.ac.uk Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ To (un)subscribe, mailto:majordomo@ic.ac.uk the following message; (un)subscribe xml-dev To subscribe to the digests, mailto:majordomo@ic.ac.uk the following message; subscribe xml-dev-digest List coordinator, Henry Rzepa (mailto:rzepa@ic.ac.uk)
[1997dec10]

LT XML

Thank you for submitting a licence request for LT XML.
The software is available for anonymous ftp from
ftp://ftp.cogsci.ed.ac.uk/pub/XML/ltxml-0.9.5.tar.gz (the source code, available as a compressed tar file)
ftp://ftp.cogsci.ed.ac.uk/pub/XML/ltxml-0.9.5-bin-freebsd.tar.gz (the binaries for Free BSD)
ftp://ftp.cogsci.ed.ac.uk/pub/XML/ltxml-0.9.5-bin-linux.tar.gz (the binaries for Linux)
ftp://ftp.cogsci.ed.ac.uk/pub/XML/ltxml-0.9.5-bin-solaris.tar.gz (the binaries for Solaris)
ftp://ftp.cogsci.ed.ac.uk/pub/XML/ltxml-0.9.5-bin-sunos4.tar.gz (the binaries for Sunos)
ftp://ftp.cogsci.ed.ac.uk/pub/XML/ltxml-0.9.5-bin-win32.tar.gz ftp://ftp.cogsci.ed.ac.uk/pub/XML/ltxml-0.9.5-bin-win32.zip (the binaries for Windows 95 and Windows NT, as compressed tar file or in WinZip 6.2 format)
ftp://ftp.cogsci.ed.ac.uk/pub/XML/ltxml-0.9.5-bin-mac.sea.hqx ftp://ftp.cogsci.ed.ac.uk/pub/XML/ltxml-0.9.5-bin-mac.tar.gz (the binaries for Macintosh, in BinHex and compressed tar format)
Note that if you use ftp directly, you will not be able to see the tar files with ls, but they are there.

SERIAL ACCESS MECHANISM WITH SAX

on the event-driven, serial-access mechanism for accessing XML documents, SAX. This is the protocol that most servlets and network-oriented programs will want to use to transmit and receive XML documents, because it's
- the fastest and
- least memory-intensive mechanism that is currently available for dealing with XML documents.
On the other hand, the SAX protocol requires a lot more programming than the Document Object Model (DOM). It's also a bit harder to visualize, because it is an event-driven model. (You provide the callback methods, and the parser invokes them as it reads the XML data.) Finally, you can't "back up" to an earlier part of the document, or rearrange it, any more than you can back up a serial data stream or rearrange characters you have read from that stream.
[jaxp tutorial 2.5, 2000jul]

TREE-STRUCTURE ACCESS MECHANISM WITH DOM#ql:xml'dom#

A Document Object Model is a garden-variety tree structure, where each node contains one of the components from an XML structure. The two most common types of nodes are element nodes and text nodes. Using DOM functions lets you create nodes, remove nodes, change their contents, and traverse the node hierarchy.

The Document Object Model (DOM) provides APIs that let you create nodes, modify them, delete and rearrange them. So it is relatively easy to create a DOM.
However, the Level 1 DOM specification is silent on the subject of how to input and output. It tells you how a DOM has to operate, but does not cover methods for for reading or writing XML. As a result, you can't create a DOM from an existing XML file without going outside the DOM Level 1 specification.
[jaxp tutorial 2.5, 2000jul]

CREATE A DOM (org.w3c.dom.Document)

name::
* McsEngl.CREATE A DOM (org.w3c.dom.Document)@cptIt,

import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.FactoryConfigurationError;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.parsers.DocumentBuilder;
import org.xml.sax.SAXException;
import org.xml.sax.SAXParseException;
import java.io.File;
import java.io.IOException;

public class DomEcho {
static Document document;

public static void main (String argv []) {
if (argv.length != 1) {
System.err.println ("Usage: java DomEcho filename");
System.exit (1);
}
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
try {
DocumentBuilder builder = factory.newDocumentBuilder();
document = builder.parse( new File(argv[0]) );
}
catch (SAXParseException spe)
{ // Error generated by the parser
System.out.println ("\n** Parsing error"
+ ", line " + spe.getLineNumber ()
+ ", uri " + spe.getSystemId ());
System.out.println(" " + spe.getMessage() );
// Use the contained exception, if any
Exception x = spe;
if (spe.getException() != null)
x = spe.getException();
x.printStackTrace();
}
catch (SAXException sxe)
{ // Error generated by this application // (or a parser-initialization error)
Exception x = sxe;
if (sxe.getException() != null)
x = sxe.getException();
x.printStackTrace();
}
catch (ParserConfigurationException pce) { // Parser with specified options can't be built pce.printStackTrace();
}
catch (IOException ioe)
{ // I/O error
ioe.printStackTrace();
}
}// main

WRITE OUT THE XML

you write out the DOM as an XML document using the XmlDocument write method.

 XmlDocument xdoc = (XmlDocument) document;
 xdoc.write (System.out);

WRITE OUT THE DOM AS JTREE
MODIFY A DOM

Removing and Changing Nodes:
To remove a node, you use its parent Node's removeChild method. To change it, you can either use the parent node's replaceChild operation or the node's setNodeValue operation.

xml'Schema

name::
* McsEngl.xml'Schema@cptIt,
* McsEngl.xml'schema@cptIt439i,

An XML schema is a description of a type of XML document, typically expressed in terms of constraints on the structure and content of documents of that type, above and beyond the basic syntax constraints imposed by XML itself. An XML schema provides a view of the document type at a relatively high level of abstraction.

There are languages developed specifically to express XML schemas. The Document Type Definition (DTD) language, which is native to the XML specification, is a schema language that is of relatively limited capability, but that also has other uses in XML aside from the expression of schemas. Two other very popular, more expressive XML schema languages are XML Schema (W3C) and RELAX NG.

The mechanism for associating an XML document with a schema varies according to the schema language. The association may be achieved via markup within the XML document itself, or via some external means.
[http://en.wikipedia.org/wiki/XML_schema]

_SPECIFIC:
* DSD
* DTD
* RELAX_NG
* W3C_XML_SCHEMA

xml'schema.DSD

name::
* McsEngl.xml'schema.DSD@cptIt,
* McsEngl.dsd@cptIt439i,

Document Structure Description, or DSD, is a schema language for XML, that is, a language for describing valid XML documents. It's an alternative to DTD or the W3C XML Schema.

An example of DSD in its simplest form:

<dsd xmlns="http://www.brics.dk/DSD/2.0"
xmlns:my="http://example.com">

<if><element name="my:foo"/>
<declare>
<attribute name="first"/>
<attribute name="second"/>
<contents>
<element name="my:bar"/>
</contents>
</declare>
</if>

<if><element name="my:bar"/>
<declare>
<contents>
</contents>
</declare>
</if>

</dsd>

This says that element named "foo" in the XML namespace "http://example.com" may have two attributes, named "first" and "second". A "foo" element may not have any character data. It must contain one subelement, named "bar", also in the "http://example.com" namespace. A "bar" element is not allowed any attributes, character data or subelements.

One XML document that would be valid according to the above DSD would be:

<foo xmlns="http://example.com" second="2">
<bar/>
</foo>
[http://en.wikipedia.org/wiki/Document_Structure_Description]

xml'Specification

name::
* McsEngl.xml'Specification@cptIt,
* McsEngl.xml'spec@cptIt439i,

_EVOLUINO:
2006-08-16: XML 1.0 fourth-edition. XML 1.1 second-edition
- http://www.w3.org/TR/2006/REC-xml-20060816/
- http://www.w3.org/TR/2006/REC-xml11-20060816//
2004-02-04: XML 1.0 third-edition. XML 1.1 initial-edition
1998: XML 1.0


There are two current versions of XML.
The first, XML 1.0, was initially defined in 1998. It has undergone minor revisions since then, without being given a new version number, and is currently in its fourth edition, as published on 2006-08-16. It is widely implemented and still recommended for general use.
The second, XML 1.1, was initially published on 2004-02-04, the same day as XML 1.0 Third Edition, and is currently in its second edition, as published on 2006-08-16. It contains features — some contentious — that are intended to make XML easier to use in certain cases[13] - mainly enabling the use of line-ending characters used on EBCDIC platforms, and the use of scripts and characters absent from Unicode 2.0. XML 1.1 is not very widely implemented and is recommended for use only by those who need its unique features. [14]
[http://en.wikipedia.org/wiki/Xml]

Last version:
http://www.w3.org/TR/WD-xml-970807

Previous versions:
http://www.w3.org/TR/WD-xml-lang-970630
http://www.w3.org/TR/WD-xml-lang-970331
http://www.w3.org/TR/WD-xml-961114

xml'Standard

name::
* McsEngl.xml'Standard@cptIt,

New Languages for Science
XML offers a particularly convenient way for scientists to exchange theories, calculations and experimental results. Mathematicians, among others, have long been frustrated by Web browsers' ablity to display mathematical expressions only as pictures. MathML now allows them to insert equations into their Web pages with a few lines of simple text. Readers can then paste those expressions directly into algebra software for calculation or graphing.
Chemists have gone a step further, developing new browser programs for their XML-based Chemical Markup Language (CML) that graphically render the molecular structure of compounds described in CML Web pages. Both CML and Astronomy Markup Language will help researchers sift quickly through reams of journal citations to find just the papers that apply to the object of their study. Astronomers, for example, can enter the sky coordinates of a galaxy to pull up a list of images, research papers and instrument data about that heavenly body.
XML will be helpful for running experiments as well as analyzing their results. National Aeronautics and Space Administration engineers began work last year on Astronomical Instrument ML (AIML) as a way to enable scientists on the ground to control the SOFIA infrared telescope as it flies on a Boeing 747. AIML should eventually allow astronomers all over the world to control telescopes and perhaps even satellites through straightforward Internet browser software.
Geneticists may soon be using Biosequence ML (BSML) to exchange and manipulate the flood of information produced by gene-mapping and gene-sequencing projects. A BSML browser built and distributed free by Visual Genomics in Columbus, Ohio, lets researchers search through vast databases of genetic code and display the resulting snippets as meaningful maps and charts rather than as obtuse strings of letters.
[http://www.sciam.com/1999/0599issue/0599bosakbox4.html] 1999may12

xml'ARCHITECTURAL'FORM

name::
* McsEngl.xml'ARCHITECTURAL'FORM@cptIt,

I don't remember seeing an announcement here (apologies if I'm mistaken), but Eliot Kimber and James Clark have announced on comp.text.sgml a proposed ammendment to ISO 10744 that will make it possible to use Architectural Forms in XML.  You can find the text of the ammendment at the following URL:
  http://www.ornl.gov/sgml/wg8/document/1957.htm
Here's Eliot's example of a simple, well-formed XML document that uses the base architecture "isobase":
  <?XML version="1.0" ?>   <?IS10744:arch isobase ?>   <mydoc isobase="isogen-document"/>
This is very exciting, because if accepted, the ammendment will make it possible to solve the XML namespace problem with an International Standard, instead of forcing the W3C to throw together a consortium standard.  Base architectures also provide a simple and elegant solution to multiple inheritance; for example, here's Eliot's example modified to implement _two_ base architectures:
  <?XML version="1.0" ?>   <?IS10744:arch isobase ?>   <?IS10744:arch mslbase ?>   <mydoc isobase="isogen-document" mslbase="microstar-document"/>
The element <mydoc> corresponds to <isogen-document> in the isobase namespace and to <microstar-document> in the mslbase namespace at the same time.
Even more interesting is the ability to embed the architectural attributes in a DTD, so that they do not appear in the document instance at all.  For example, you can create an external DTD like this:
  <?IS10744:arch isobase ?>   <?IS10744:arch mslbase ?>   <!ELEMENT mydoc EMPTY>   <!ATTLIST mydoc     isobase NMTOKEN#FIXED "isogen-document"     mslbase NMTOKEN#FIXED "microstar-document">
Now, every XML document that uses this DTD will implement the two architectures automatically, with no additional markup required:
  <?XML version="1.0" ?>   <!DOCTYPE mydoc SYSTEM "mydoc.dtd">   <mydoc/>
Authors won't even have to know that they're using architectural forms.
Congratulations are due to Eliot and James for taking the time to start this process.


David
-- David Megginson                 ak117@freenet.carleton.ca Microstar Software Ltd.         dmeggins@microstar.com       http://home.sprynet.com/sprynet/dmeggins/
xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@ic.ac.uk Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ To (un)subscribe, mailto:majordomo@ic.ac.uk the following message; (un)subscribe xml-dev To subscribe to the digests, mailto:majordomo@ic.ac.uk the following message; subscribe xml-dev-digest List coordinator, Henry Rzepa (mailto:rzepa@ic.ac.uk)
[1997dec14]

Architectural forms are defined in annex A to ISO 10744: see
  http://www.ornl.gov/sgml/wg8/document/1957.htm
for the XML-specific syntax, and
  http://www.ornl.gov/sgml/wg8/docs/n1920/html/clause-A.3.html
for all the gory details.  Eliot Kimber has posted the URL for a simpler tutorial, but I don't have it on hand right now.
[1998jan22]

xml'DOM

name::
* McsEngl.xml'DOM@cptIt,

\XML\DOM\API\org\w3c\dom\package-summary.html

_DEFINITION:
What is the XML DOM?
The XML DOM defines the objects and properties of all XML elements, and the methods (interface) to access them.
[http://www.w3schools.com/htmldom/dom_intro.asp]

_WHOLE:
* DOM#cptItsoft579#

Package

org.w3c.dom

Interface

Summary
Attr
The Attr interface represents an attribute in an Element object.
CDATASection CDATA sections are used to escape blocks of text containing characters that would otherwise be regarded as markup.
CharacterData The CharacterData interface extends Node with a set of attributes and methods for accessing character data in the DOM. For clarity this set is defined here rather than on each object that uses these attributes and methods.
Comment This represents the content of a comment, i.e.
DocumentFragment DocumentFragment is a "lightweight" or "minimal" Document Object.
Document The Document interface represents the entire HTML or XML document.
DocumentType Each Document has a doctype attribute whose value is either null or a DocumentType object.
DOMImplementation The DOMImplementation interface provides a number of methods for performing operations that are independent of any particular instance of the document object model.
Element By far the vast majority of objects (apart from text) that authors encounter when traversing a document are Element nodes.
Entity This interface represents an entity, either parsed or unparsed, in an XML document.
EntityReference EntityReference objects may be inserted into the structure model when an entity reference is in the source document, or when the user wishes to insert an entity reference.
NamedNodeMap Objects implementing the NamedNodeMap interface are used to represent collections of nodes that can be accessed by name.
NodeList The NodeList interface provides the abstraction of an ordered collection of nodes, without defining or constraining how this collection is implemented.
Node The Node interface is the primary datatype for the entire Document Object Model.
Notation This interface represents a notation declared in the DTD. A notation either declares, by name, the format of an unparsed entity (see section 4.7 of the XML 1.0 specification), or is used for formal declaration of Processing Instruction targets (see section 2.6 of the XML 1.0 specification).
ProcessingInstruction The ProcessingInstruction interface represents a "processing instruction", used in XML as a way to keep processor-specific information in the text of the document.
Text The Text interface represents the textual content (termed character data in XML) of an Element or Attr.

Exception

Summary
DOMException DOM operations only raise exceptions in "exceptional" circumstances, i.e

xml'HYPERLINKING#cptIt528#

name::
* McsEngl.xml'HYPERLINKING@cptIt,

xml'NAMESPACE

name::
* McsEngl.xml'NAMESPACE@cptIt,
* McsEngl.xmlns@cptIt,

xmlns'DECLARATION

name::
* McsEngl.xmlns'DECLARATION@cptIt,

Namespace declaration

A namespace is declared using the reserved XML attribute xmlns, the value of which must be an Internationalized Resource Identifier (IRI), usually a Uniform Resource Identifier (URI) reference.

For example:
xmlns="http://www.w3.org/1999/xhtml"

Note, however, that the namespace specification does not require nor suggest that the namespace URI be used to retrieve information; it is simply treated by an XML parser as a string. For example, the document at http://www.w3.org/1999/xhtml itself does not contain any code. It simply describes the XHTML namespace to human readers. Using a URI (such as "http://www.w3.org/1999/xhtml") to identify a namespace, rather than a simple string (such as "xhtml"), reduces the possibility of different namespaces using duplicate identifiers.

It is also possible to map namespaces to prefixes in namespace declarations. For example:

xmlns:xhtml="http://www.w3.org/1999/xhtml"

In this case, any element or attribute names that start with the prefix "xhtml:" are considered to be in the XHTML namespace.
[http://en.wikipedia.org/wiki/XML_namespace] 2010-10-04

xmlns'NAME

name::
* McsEngl.xmlns'NAME@cptIt,

What Do Namespace Names Point At?

One of the confusing things about all this is that namespace names are URLs; it's easy to assume that since they're Web addresses, they must be the address of something. They're not; these are URLs, but the namespace draft doesn't care what (if anything) they point at. Think about the example of the XML.com programmer looking for book titles; that works fine without the namespace name pointing at anything.

The reason that the W3C decided to use URLs as namespace names is that they contain domain names (e.g. www.xml.com), which work globally across the Internet.
[http://www.xml.com/pub/a/1999/01/namespaces.html]

xmlns'notation

name::
* McsEngl.xmlns'notation@cptIt,

_XML:
* xlink:item

_FOLIOVIEWS:
* xlink'ns'item [2013-03-19]

xmlns'SPECIFICATION

name::
* McsEngl.xmlns'SPECIFICATION@cptIt,

In XML, the XML namespace specification enables the names of elements and attributes in an XML document to be unique, similar to the role of namespaces in a programming language. Using XML namespaces, XML documents may contain element or attribute names from more than one XML vocabulary.
[http://en.wikipedia.org/wiki/Namespace_(computer_science)]

An XML namespace is a W3C recommendation for providing uniquely named elements and attributes in an XML instance. An XML instance may contain element or attribute names from more than one XML vocabulary. If each vocabulary is given a namespace then the ambiguity between identically named elements or attributes can be resolved.

All element names within a namespace must be unique.

A simple example would be to consider an XML instance that contained references to a customer and an ordered product. Both the customer element and the product element could have a child element "ID_number". References to the element ID_number would therefore be ambiguous unless the two identically named but semantically different elements were brought under namespaces that would differentiate them.

[edit] Namespace declaration

A namespace is declared using the reserved XML attribute xmlns, the value of which must be a URI (Uniform Resource Identifier) reference.

For example:

xmlns="http://www.w3.org/1999/xhtml"

Note, however, that the URI is not actually read as an online address; it is simply treated by an XML parser as a string. For example, http://www.w3.org/1999/xhtml itself does not contain any code, it simply describes the xhtml namespace to human readers. Using a URL (such as "http://www.w3.org/1999/xhtml") to identify a namespace, rather than a simple string (such as "xhtml"), reduces the possibility of different namespaces using duplicate identifiers. Namespace identifiers need not follow the conventions of web addresses, though they often do.

The declaration can also include a short prefix with which elements and attributes can be identified, e.g.:

xmlns:xhtml="http://www.w3.org/1999/xhtml"

An XML namespace does not require that its vocabulary be defined, though it is fairly common practice to place either a Document Type Definition (DTD) or an XML Schema defining the precise data structure at the location of the namespace's URI.
[http://en.wikipedia.org/wiki/XML_Namespace]

The namespace standard lets you write an XML document that uses two or more sets of XML tags in modular fashion. Suppose for example that you created an XML-based parts list that uses XML descriptions of parts supplied by other manufacturers (online!). The "price" data supplied by the subcomponents would be amounts you want to total up, while the "price" data for the structure as a whole would be something you want to display. The namespace specification defines mechanisms for qualifying the names so as to eliminate ambiguity. That lets you write programs that use information from other sources and do the right things with it.
The latest information on namespaces can be found at http://www.w3.org/TR/REC-xml-names.
[jaxp tutorial 2.5, 2000jul13]

Namespaces in XML 1.0 (Second Edition)
W3C Recommendation 16 August 2006
This version:
http://www.w3.org/TR/2006/REC-xml-names-20060816
Latest version:
http://www.w3.org/TR/xml-names
Previous version:
http://www.w3.org/TR/2006/PER-xml-names-20060614
Editors:
Tim Bray, Textuality <tbray@textuality.com>
Dave Hollander, Contivo, Inc. <dmh@contivo.com>
Andrew Layman, Microsoft <andrewl@microsoft.com>
Richard Tobin, University of Edinburgh and Markup Technology Ltd <richard@cogsci.ed.ac.uk>

TYPE_OF_NAMES:
The names in a namespace form a collection:
* sometimes it is a collection of element names (DocBook and XHTML, for example)
* sometimes it is a collection of attribute names (XLink, for example)
* sometimes it is a collection of functions (XQuery 1.0 and XPath 2.0 Data Model)
* sometimes it is a collection of properties (FOAF)
* sometimes it is a collection of concepts (WordNet), and many other uses are likely to arise.
There's no requirement that the names in a namespace only identify items of a single type; elements and attributes can both come from the same namespace as could functions and concepts or any other homogeneous or heterogeneous collection you can imagine. The names in a namespace can, in theory at least, be defined to identify any thing or any number of things..." [Associating Resources with Namespaces]
[http://xml.coverpages.org/namespaces.html]

xmlns'USAGE

name::
* McsEngl.xmlns'USAGE@cptIt,

That's more or less all there is to it. The only purpose of namespaces is to give programmers a helping hand, enabling them to process the tags and attributes they care about and ignore those that don't matter to them.

Quite a few people, after reading earlier drafts of the Namespace Recommendation, decided that namespaces were actually a facility for modular DTDs, or were trying to duplicate the function of SGML's "Architectural Forms". None of these theories are true. The only reason namespaces exist, once again, is to give elements and attributes programmer-friendly names that will be unique across the whole Internet.

Namespaces are a simple, straightforward, unglamorous piece of syntax. But they are crucial for the future of XML programming.
[http://www.xml.com/pub/a/1999/01/namespaces.html]

SPECIFIC

name::
* McsEngl.xmlns.specific@cptIt,

_SPECIFIC: xmlns.alphabetically:
* xmlns.ix    http://www.xbrl.org/2008/inlineXBRL
* xmlns.ixt  http://www.xbrl.org/inlineXBRL/transformation/2010-04-20
* xmlns.link  http://www.xbrl.org/2003/linkbase
* xmlns.org.ifrs
* xmlns.org.w3
* xmlns.org.xbrl
* xmlns.standard.xbrl#ql:xbrl'namespace#
* xmlns.xbrldt  http://xbrl.org/2005/xbrldt
* xmlns.xbrli  http://www.xbrl.org/2003/instance
* xmlns.xl    http://www.xbrl.org/2003/XLink
* xmlns.xlink  http://www.w3.org/1999/xlink
* xmlns.xml  http://www.w3.org/XML/1998/namespace
* xmlns.xsd  http://www.w3.org/2001/XMLSchema
* xmlns.xsi  http://www.w3.org/2001/XMLSchema-instance
===

xmlns.EXAMPLE

name::
* McsEngl.xmlns.EXAMPLE@cptIt,

So let's set up a scenario: suppose XML.com wanted to start publishing reviews of XML books. We'd want to mark the info up with XML, of course, but we'd also like to use HTML to help beautify the display. Here's a tiny sample of what we might do:

<h:html xmlns:xdc="http://www.xml.com/books"
xmlns:h="http://www.w3.org/HTML/1998/html4">
<h:head><h:title>Book Review</h:title></h:head>
<h:body>
<xdc:bookreview>
<xdc:title>XML: A Primer</xdc:title>
<h:table>
<h:tr align="center">
<h:td>Author</h:td><h:td>Price</h:td>
<h:td>Pages</h:td><h:td>Date</h:td></h:tr>
<h:tr align="left">
<h:td><xdc:author>Simon St. Laurent</xdc:author></h:td>
<h:td><xdc:price>31.98</xdc:price></h:td>
<h:td><xdc:pages>352</xdc:pages></h:td>
<h:td><xdc:date>1998/01</xdc:date></h:td>
</h:tr>
</h:table>
</xdc:bookreview>
</h:body>
</h:html>
In this example, the elements prefixed with xdc are associated with a namespace whose name is http://www.xml.com/books, while those prefixed with h are associated with a namespace whose name is http://www.w3.org/HTML/1998/html4.

The prefixes are linked to the full names using the attributes on the top element whose names begin. xmlns:. The prefixes don't mean anything at all - they are just shorthand placeholders for the full names. Those full names, you will have noticed, are URLs, i.e. Web addresses. We'll get back to why that is and what those are the addresses of a bit further on.
[http://www.xml.com/pub/a/1999/01/namespaces.html]

Beautification

That example above is, perhaps, kind of ugly, with all those prefixes and colons clutering up the tags. The Namespaces Recommendation allows you to declare a default namespace and leave out some prefixes, like this:

<html xmlns="http://www.w3.org/HTML/1998/html4"
xmlns:xdc="http://www.xml.com/books">
<head><title>Book Review</title></head>
<:body>
<xdc:bookreview>
<xdc:title>XML: A Primer</xdc:title>
<table>
<tr align="center">
<td>Author</td><td>Price</td>
<td>Pages</td><td>Date</td></tr>
<tr align="left">
<td><xdc:author>Simon St. Laurent</xdc:author></td>
<td><xdc:price>31.98</xdc:price></td>
<td><xdc:pages>352</xdc:pages></td>
<td><xdc:date>1998/01</xdc:date></td>
</tr>
</table>
</xdc:bookreview>
</body>
</html>
In this example, anything without a prefix is assumed to be in the http://www.w3.org/HTML/1998/html4 namespace, which we're using as the namespace name for HTML (presumably, now that namespaces are official, the W3C will give HTML an official namespace name).
[http://www.xml.com/pub/a/1999/01/namespaces.html]

xml'SAX

name::
* McsEngl.xml'SAX@cptIt,
* McsEngl.sax@cptIt439i,
* McsEngl.simple'API'for'XML@cptIt439,

_DEFINITION:

API:
\xml\sax2\docs\javadoc\packages.html
\xml\sax\sax10\javadoc\packages.html

VERSION:
2.0    2000may05
1.0    1998may11
first impl  1998jan12

D. MEGGINSON:
startElement (String name, java.util.Dictionary attributes)
endElement (String name)
charData (char ch[], int length)

SAX2

sax2-Package.org.xml.sax:
INTERFACES:
- AttributeList Deprecated. This interface has been replaced by the SAX2 Attributes interface, which includes Namespace support.
- Attributes Interface for a list of XML attributes.
- ContentHandler Receive notification of the logical content of a document.
- DocumentHandler Deprecated. This interface has been replaced by the SAX2 ContentHandler interface, which includes Namespace support.
- DTDHandler Receive notification of basic DTD-related events.
- EntityResolver Basic interface for resolving entities.
- ErrorHandler Basic interface for SAX error handlers.
- Locator Interface for associating a SAX event with a document location.
- Parser Deprecated. This interface has been replaced by the SAX2 XMLReader interface, which includes Namespace support.
- XMLFilter Interface for an XML filter.
- XMLReader Interface for reading an XML document using callbacks.

Class Summary
HandlerBase Deprecated. This class works with the deprecated DocumentHandler interface.
InputSource A single input source for an XML entity.

Exception Summary
SAXException Encapsulate a general SAX error or warning. SAXNotRecognizedException Exception class for an unrecognized identifier. SAXNotSupportedException Exception class for an unsupported operation. SAXParseException Encapsulate an XML parse error or warning.

sax2-Package.org.xml.sax.helpers:
Class Summary
- AttributeListImpl Deprecated. This class implements a deprecated interface, AttributeList; that interface has been replaced by Attributes, which is implemented in the AttributesImpl helper class.
- AttributesImpl Default implementation of the Attributes interface.
- DefaultHandler Default base class for SAX2 event handlers.
- LocatorImpl Provide an optional convenience implementation of Locator.
- NamespaceSupport Encapsulate Namespace logic for use by SAX drivers.
- ParserAdapter Adapt a SAX1 Parser as a SAX2 XMLReader.
- ParserFactory Deprecated. This class works with the deprecated Parser interface.
- XMLFilterImpl Base class for deriving an XML filter.
- XMLReaderAdapter Adapt a SAX2 XMLReader as a SAX1 Parser.
- XMLReaderFactory Factory for creating an XML reader.

SAX1

sax1-Package.org.xml.sax:
Interfaces
:
AttributeList#ql:sax1-AttributeList#
DocumentHandler#ql:sax1-documenthandler# (most important)
EntityResolver
ErrorHandler
Locator
Parser#ql:sax1-parser#
Classes:
HandlerBase#ql:sax1-HandlerBase# (impl EntityResolver, DTDHandler, DocumentHandler, ErrorHandler)
InputSource#ql:sax1-InputSource#

sax1-package-org.xml.sax.helpers:
AttributeListImpl#ql:sax1-AttributeListImpl#
LocatorImpl
ParserFactory

sax1-AttributeList Interface for an element's attribute specifications.
- getLength() Return the number of attributes in this list.
- getName(int) Return the name of an attribute in this list (by position).
- getType(int) Return the type of an attribute in the list (by position).
- getType(String) Return the type of an attribute in the list (by name).
- getValue(int) Return the value of an attribute in the list (by position).
- getValue(String) Return the value of an attribute in the list (by name).

sax1-DocumentHandler Receive notification of general document events.
- characters(char[], int, int) Receive notification of character data.
- endDocument() Receive notification of the end of a document.
- endElement(String) Receive notification of the end of an element.
- ignorableWhitespace(char[], int, int) Receive notification of ignorable whitespace in element content.
- processingInstruction(String, String) Receive notification of a processing instruction.
- setDocumentLocator(Locator) Receive an object for locating the origin of SAX document events.
- startDocument() Receive notification of the beginning of a document.
- startElement(String, AttributeList) Receive notification of the beginning of an element.
- DTDHandler Receive notification of basic DTD-related events.

sax1-EntityResolver Basic interface for resolving entities.

sax1-ErrorHandler Basic interface for SAX error handlers.
- error(SAXParseException) Receive notification of a recoverable error.
- fatalError(SAXParseException) Receive notification of a non-recoverable error.
- warning(SAXParseException) Receive notification of a warning.

sax1-Locator Interface for associating a SAX event with a document location.
- getColumnNumber() Return the column number where the current document event ends.
- getLineNumber() Return the line number where the current document event ends.
- getPublicId() Return the public identifier for the current document event.
- getSystemId() Return the system identifier for the current document event.

sax1-Parser Basic interface for SAX (Simple API for XML) parsers.
- parse(InputSource) Parse an XML document.
- parse(String) Parse an XML document from a system identifier (URI).
- setDocumentHandler(DocumentHandler) Allow an application to register a document event handler.
- setDTDHandler(DTDHandler) Allow an application to register a DTD event handler.
- setEntityResolver(EntityResolver) Allow an application to register a custom entity resolver.
- setErrorHandler(ErrorHandler) Allow an application to register an error event handler.
- setLocale(Locale) Allow an application to request a locale for errors and warnings.

sax1-HandlerBase Default base class for handlers.
- HandlerBase()
- characters(char[], int, int) Receive notification of character data inside an element.
- endDocument() Receive notification of the end of the document.
- endElement(String) Receive notification of the end of an element.
- error(SAXParseException) Receive notification of a recoverable parser error.
- fatalError(SAXParseException) Report a fatal XML parsing error.
- ignorableWhitespace(char[], int, int) Receive notification of ignorable whitespace in element content.
- notationDecl(String, String, String) Receive notification of a notation declaration.
- processingInstruction(String, String) Receive notification of a processing instruction.
- resolveEntity(String, String) Resolve an external entity.
- setDocumentLocator(Locator) Receive a Locator object for document events.
- startDocument() Receive notification of the beginning of the document.
- startElement(String, AttributeList) Receive notification of the start of an element.
- unparsedEntityDecl(String, String, String, String) Receive notification of an unparsed entity declaration.
- warning(SAXParseException) Receive notification of a parser warning.

sax1-InputSource A single input source for an XML entity.

sax1-SAXException Encapsulate a general SAX error or warning.

sax1-SAXParseException Encapsulate an XML parse error or warning

XMLNet

OK, since my whole endeavor is considerably less fun when only five other people know about it, I'd like to join the list of people who are perverting XML and the DOM for other uses:
"XMLNet is an API for streaming XML. Using XMLNet, information can be transferred over the internet or other network in real time as a series of XML documents immediately and with high frequency on a schedule determined by a server, as opposed to relying upon requests from clients. These documents are delivered, one after another, on continuously open sockets to connected clients and delivered to objects in that client as Document Object Model (DOM) Document's, an open standard for representing XML documents as objects. Client objects can subscribe to any of these documents through the well-known Observer design pattern simply by implementing an interface and specifying what document or documents it would like to receive."
Did that make any sense?  Basically the scheme is that client connects to a server and specifies "rivers" of documents and specific documents to listen for.  As these documents become available they are sent directly to the client.  Whoever is writing code to support these documents need only implement an interface and register with the client to receive whatever document it is the object should expect, similar to java's event and bean property change model.
Now, obviously if the server is sending documents like the *Bible* or *War and Peace*, this isn't going to work very well.  But if the server is sending many smaller documents which describe changes in a system, for example, this can be a very useful thing.  A client connects and receives documents which describe the entire system, and then the client receives documents afterward which describe changes in the system in real time.  I won't impose my biases about what this could be useful for, like real time news feeds, providing real-time metadata for TV or streaming media, monitoring applications over the network, etc., because folks might come up with all sorts of new and creative ways of using this if I don't taint them.:)
Wow, that was considerably more coherent that what I put up on the web.Anyway, I think the current version is stable enough to do some damage, and you can find more information (actually the same information I just gave you, except more obtuse) and a download at
http://home.earthlink.net/~arabbit/xmlnet/
If you'd like the source code for this or to actually use this or to become involved with it, please drop me a line at arabbit@earthlink.net. 

xml'XQL

name::
* McsEngl.xml'XQL@cptIt,

I just found another utility that is based on XQL:
http://www.cs.york.ac.uk/fp/Xtract/
The author describes it thus:
"Xtract is a command-line tool for searching XML documents. Just as `grep' returns lines which match your regular expression, so Xtract returns all those sub-trees from XML documents which match a query pattern. The query expression language is simple but powerful, and is based loosely on XQL, the recently proposed XML Query Language. An introduction to the Xtract query pattern language, together with the full Xtract grammar is in this tutorial."
"The major difference from XQL is that a query must return a sequence of XML contents (either elements or text inside an element): it cannot for instance return just an attribute value."
Looks useful.
Jonathan jonathan@texcel.no Texcel Research http://www.texcel.no
[{1999-03-25}]

MAILING LIST:
I have just set up a mailing list for XQL (XML Query Language). This list is intended to answer questions about the definition of the language, how to implement it, who has implemented it in what products, and whatever else seems to be of interest.
I will also use this list to try to reach consensus in the XQL community if decisions need to be made, eg to add new extensions.
The XQL FAQ may be found here:
http://metalab.unc.edu/xql/
It contains a link to the mailing list, but you can also access the mailing list directly here:
http://franklin.oit.unc.edu/cgi-bin/lyris.pl?enter=xql
Hope this is helpful!
Jonathan
Jonathan Robie R&D Fellow, Software AG jonathan.robie@sagus.com <- this address will be active Monday
[{1999-03-26}]

Anyway, please help if you can or have the time. the site is: http://ed.dega.com/pub/xml/xql/index.html
[{1999-03-27}]

ENGINE:
GMD-IPSI is pleased to announce Java based implementations of the XQL language and a persistent W3C-DOM.
The GMD-IPSI XQL engine [1] is a Java based storage and query application for large XML documents. The functionality may be accessed via command line invocation or the Java API.The engine consists of two main parts:
1. A persistent implementation of the W3C-DOM 2. A full implementation of the XQL language
The XQL engine implements the W3C-QL '98 workshop paper syntax of XQL. It uses a novel indexing algorithm for XML (publication pending), which indexes the document while processing the first query. Subsequent queries to the same document are considerably accelerated.
The persistent DOM implements the W3C-DOM interfaces on indexed, binary XML files. Documents are parsed once and are stored in this form, accessible to DOM calls without the overhead of parsing them first. A cache architecture additionally increases performance. At this time only read access is possible, support of the full W3C-DOM API is work in progress.
The GMD-IPSI XQL engine was developed as a research project in GMD's XML competence center by Gerald Huck [2], with contributions by Ingo Macherius [3]. It is free for non-commercial use and evaluation, see the download page for details.For commercial requests contact the main author.
[1] http://xml.darmstadt.gmd.de/xql/ [2] mailto:huck@gmd.de [3] mailto:macherius@gmd.de
-- Ingo Macherius//Dolivostrasse 15//D-64293 Darmstadt//+49-6151-869-882 GMD-IPSI German National Research Center for Information Technology mailto:macherius@gmd.de http://www.darmstadt.gmd.de/~inim/ Information!=Knowledge!=Wisdom!=Truth!=Beauty!=Love!=Music==BEST (Zappa)
[mail {1999-03-29}]

Xenonsoft, South London, England is very pleased to announce the availability of:
Xenon-SQL, the Java based interactive SQL Editor, version 2.3.5.**** The Personal End User Edition. ****

This software allows you use connect to relational database like MySql, Sybase, and Oracle and submit SQL queries and commands to the target databases. In order for `Xenon-SQL' to connect to a database you __MUST__ have a suitable JDBC (Java Database Connectivity) driver specifically for your database. Most commercial database suppliers have a supplied (or contributed) JDBC driver around somewhere, so surf the Internet to find it!
The Xenon-SQL software can be obtain from the FTP server:
`ftp://ftp.demon.net/pub/java'
or as a last resort `http://www.xenonsoft.demon.co.uk/software.html'.
The software requires the Java Development Kit minimum version 1.1.5 and Swing also known as the Java Foundation Classes miminum version 1.1-Beta3. These are available from JavaSoft's web site: `http://java.sun.com/products/'
The software was developed on a Linuxed/PC with Blackdown's 1.1.7-v1a port of the JDK `http://www.blackdown.org/java-linux.html'
[xml-dev {1999-03-05}]

xml'XSL

name::
* McsEngl.xml'XSL@cptIt,
* McsEngl.xsl= extensible style language@cptIt,

the XSL specification, which lets you translate XML tags into other XML tags.

XSL: Doing XML With Style
The highlights of the XSL initiative are described in the following paragraphs:
Based on DSSSL ­ After SGML became an international standard, work began on developing a stylesheet standard. The purpose of the standard was to facilitate the interchange of stylesheets and ultimately to improve the interoperability of all of the software that handles documents. This effort, formally known as the Document Style Semantics and Specification Language (DSSSL), was eventually approved as an ISO standard. To date, however, no commercial application supports DSSSL.
XSL will provide much of the functionality of DSSSL, but in a form that is far more likely to be widely adopted and supported.
Compatible with CSS ­ Cascading Style Sheets (CSS) are supported by both Microsoft and Netscape as a mechanism for overriding the default style of HTML tags. As a result, CSS offers more formatting flexibility than HTML without a stylesheet. XSL will be a superset of the CSS functionality. XSL will be designed to enable automatic conversion from CSS to XSL, so existing investments in CSS will not be lost.
Reordering capability ­ Through XSL stylesheets, a Web browser will be able to change the sequence of the data that is displayed without going back to the server. This will be useful for any application that needs to support both the interactive suppression or enabling of data display as well as any arbitrary sequence.
More powerful context sensitivity ­ While CSS supports the application of style based on the parent of an element, XSL allows the style to vary based on all the ancestors, descendants, and siblings of an element. This will provide far more formatting flexibility based on the context or position of an element within a document.
Supports both printing and online display ­ While CSS is limited to online display functions, XSL will support formatting functions that are required to support the greater complexity of printed documents.
[ArborText paper 1997]

You can download my XSL processor at:
http://www.mygale.org/07/jcalles/XML
1998aug25

xml'Symbol

name::
* McsEngl.xml'Symbol@cptIt,

_DEFINITION:
This section defines some symbols used widely in the grammar.
[SOURCE: W3C WD-xml 1997aug07]

xml'WHITESPACE

name::
* McsEngl.xml'WHITESPACE@cptIt,

_DEFINITION:
S (white space) consists of one or more
- space (#x20) characters,
- carriage returns,
- line feeds, or
- tabs.

White space
[xmlnt1]  xmlnt'S ::= (#x20 |#x9 |#xd |#xa)+
[SOURCE: W3C WD-xml 1997aug07]

SOURCE:
a lot of material about whitespace has been written on this list, including 5 paragraphs from David Durand. You will find references to some of the discussion on XML-DEV jewels: (http://ala.vsms.nottingham.ac.uk/vsms/xml/jewels.html)
[1998jan01]

xml'XSL

name::
* McsEngl.xml'XSL@cptIt,
* McsEngl.XSL@cptIt,

_DESCRIPTION:
XSL is a family of recommendations for defining XML document transformation and presentation. It consists of three parts:

XSL Transformations (XSLT)
a language for transforming XML;
The XML Path Language (XPath)
an expression language used by XSLT (and many other languages) to access or refer to parts of an XML document;
XSL Formatting Objects (XSL-FO)
an XML vocabulary for specifying formatting semantics.
[https://www.w3.org/Style/XSL/]

xml'resourceInfHmn#cptResource843#

name::
* McsEngl.xml'resourceInfHmn@cptIt,

I'm agree with you that this isn't a question for an "advanced Java" list, but here's a set of XML links anyway, in case others are starting to use XML with Java:
XML.ORG http://www.xml.org/ XML.COM http://www.xml.com/ W3C XML http://www.w3c.org/xml/ XML Info http://www.xmlinfo.com/ Microsoft XML http://msdn.microsoft.com/xml/default.asp IBM XML http://www.software.ibm.com/xml/ Javasoft XML http://java.sun.com/xml/ XML Zone http://www.xml-zone.com/ About XML http://xml.about.com/ Oasis XML http://www.oasis-open.org/cover/xml.html Open XML http://www.openxml.org/ XML Books http://www.xmlbooks.com/

www.xmlbooks.com has a pretty long list.
[1999may10]

IBM's tutorial for programers:
http://www.software.ibm.com/xml/education/tutorial-prog/overview.html

Dear fellow Java and XML Developers:
I could not find a decent resource on the web which showed me how to use XML and Java to build web and Internet based applications. So I decided to write one myself :).
Check it out at:
http://developerlife.com
http://developerlife.com/xmljavatutorial1
It shows you how to use: 1) the IBM parser (IBM XML Parser for Java) 2) the Sun parser (Sun ProjectX EA2) 3) the DOM (org.w3c.dom.*) interfaces 4) JFC/Swing with XML 5) Servlets with XML 6) and much, much more!
Enjoy!
Have a Happy New Year!!!
Nazmul Idris
[19990101]

Marius Garshol's free XML software page:
http://www.stud.ifi.uio.no/~larsga/linker/XMLtools.html

I have made the "Interactive Grove Guide" available on the Copernican Solutions Incorporated web site at:
   http://www.copsol.com/sgmlimpl/standards/
   - and -
   http://www.copsol.com/products/daeserver/demoserver
This is a new version of the Grove Guide that is far more complete and has been updated with the SGML property set as defined in the latest HyTime standard.
[1998jan16]

Where's the spec?
Right here (http://www.w3.org/pub/WWW/TR/). Includes the EBNF.

FAQ:
http://www.ucc.ie/xml/. Peter Flynn

Peter Murray-Rust
is preparing an XML/Java Virtual Course entitled Scientific Information Components using Java and XML Details are at http://www.vsms.nottingham.ac.uk/vsms/java/advert/advert.txt. The XML will be very low-level (ie well-formed, only balanced tags, and quoted attributes; no DTDs, entities, marked sections, catalogs, links, etc.) It concentrates on building element trees (including those from legacy files).

ROBIN COVER:
a brief summary of XML with an extensive list of online reference material in Robin Cover's SGML pages;
http://www.sil.org/sgml/related.html#xml

TIM BRAY:
a summary and condensed FAQ from Tim Bray.
http://www.textuality.com/xml

Hi, > I have just started learning XML. Can you suggest good website names > please
If you've just started, try http://www.xmlinfo.com/newcomers/ which has links to the other sites I'd recommend.
[1999mar]

* The author of OpenXML http://www.openxml.org

xml'SOURCE.BOOK

name::
* McsEngl.xml'SOURCE.BOOK@cptIt,

Just got my copy in the mail of "Presenting XML", mostly by Richard Light, from SamsNet. 400 pages, suffers from being a snapshot of a moving target, but, I think, a worthy first volume in the soon-to-be-large XML library. ISBN 1-57521-334-6.
{1997-09-26}

xml'SOURCE.DOC

name::
* McsEngl.xml'SOURCE.DOC@cptIt,

Here are two URLs that you can use to start playing:
  http://www.microstar.com/XML/donne.xml   http://home.sprynet.com/sprynet/dmeggins/texts/darkness/darkness.xml

xml'SOURCE.MAILGROUP

name::
* McsEngl.xml'SOURCE.MAILGROUP@cptIt,
* McsEngl.xml'list@cptIt,

XML-DEV:
There is a mailing list called xml-dev for those committed to developing components for XML. You can subscribe by sending a 1-line mail message to majordomo@ic.ac.uk saying: subscribe xml-dev yourname@yoursite The list is hypermailed for online reference at http://www.lists.ic.ac.uk/hypermail/xml-dev/.

XML-DEV has been active for about 7 months and generated around 1000 postings. This information is searchable thanks to Henry Rzepa. However there are some postings which I feel are of lasting value and are not easy to locate by keywords and other places where the thread has been useful (and perhaps re-usable by newcomers to XML). I have therefore created a page of links to the archived postings which is at:
http://www.vsms.nottingham.ac.uk/vsms/xml/jewels.html
This does NOT attempt to duplicate the other XML resources such as the FAQ and Robin Cover's comprehensive analysis. If you fail there and on the keyword search it may then be worth browsing this list.

XLink/XPointer:
Ralph Ferris (ralph@fsc.fujitsu.com) Tue, 01 Dec 1998 13:43:46 -0500
Messages sorted by: [ date ][ thread ][ subject ][ author ] Previous message: Joel Bender: "Re: Why XML data typing is hard"
-------------------------------------------------------------------------------- All,
In order to promote wide discussion of XLink/XPointer development issues, we are launching a new mailing list dedicated to these subjects. This comes after discussion with various people, following some messages that were posted on this (the XML-Dev) list, that this would be a useful thing to do.

To subscribe, send a message to:

majordomo@fsc.fujitsu.com

In the body of the message put:

subscribe xlxp-dev


Best regards,

Ralph E. Ferris Fujitsu Software Corporation

xml'EVOLUTION#cptCore546.171#

name::
* McsEngl.xml'EVOLUTION@cptIt,

The use of xml will create a need for standards on elements. This is what my structured-concept-system do.
[nikos {1997-11-07}]

What actually happened
•July-August 1996: assembled 60 of the world's top SGML experts to form W3C SGML WG; formed 11-member W3C SGML ERB to make decisions and steer the activity
•September-November 1996: threw out about 80 percent of the SGML standard
•Result: Part 1 of the XML specification (the "red book")
XML Part 1 is a self-contained easy-to-implement subset of SGML for use on the Web.
Current working draft of Part 1: http://www.w3.org/pub/WWW/TR/WD-xml-lang-970331.html
[SOURCE: Overview: XML, HTML, and all that, Jon Bosak Sun Microsystems, {1997-04-11}]

XML was developed by an SGML Editorial Review Board formed under the auspices of the World Wide Web Consortium (W3C) in 1996 and chaired by Jon Bosak of Sun Microsystems, with the very active participation of an SGML Working Group also organized by the W3C.
[SOURCE: W3C WD Part1 1997jun30]

Milestones
July 1996
W3C work on SGML officially began (see the charter).
September 1996
Report on the Generic SGML activity at the Seybold Conference in San Francisco, CA.
November 1996
Initial XML draft presented at the SGML '96 Conference in Boston.
January 1997
Peter Flynn started maintaining a list of Commonly Asked Questions about XML.
February 1997
Imperial College, London formed (and continues to host) the xml-dev mailing list for XML developers.
March 1997
First XML Conference in San Diego, by the Graphic Communications Association.
March 1997
Revised XML Syntax Working Draft [Bray and Sperberg-McQueen, 1997].
April 1997
Initial XML Linking Working Draft [Bray and DeRose, 1997].
April 1997
XML was one of the most popular topics W3C presented at the Sixth International World Wide Web Conference in Santa Clara, CA.
May 1997
Approval of a Technical Corrigendum to ISO 8879:1986 to align features of XML with the SGML standard at the May 1997 meeting of ISO/IEC JTC1/SC18/WG8 in Barcelona.
June 1997
New versions of the XML Syntax and Linking Working Drafts available.
December 1997
SGML/XML 97 Conference in Washington, D.C. will herald the release of near-final specifications and the initial edition of a standard stylesheet language for XML publishing applications based on DSSSL (ISO/IEC 10179) along with the public text and extensions Web browsers will need to implement it.
[Khare-Riffin 1997jul31]

1996aug19:
For the record, "XML" as the name for a subset of SGML designed for the Web was suggested by James Clark in a message to the old SGML ERB dated August 19, 1996.
Jon Bosak
[1998jan07]

XML's Inventors

name::
* McsEngl.XML's Inventors@cptIt,

XML is being designed by a Working Group of the World Wide Web Consortium (W3C), an organization that is heavily involved with establishing specifications for Web technologies to ensure the highest possible degree of utility and interoperability.
The XML Working Group consists of about 14 companies and organizations with a strong interest in either providing or utilizing XML tools. This group includes Adobe, ArborText, DataChannel, Fuji Xerox, Hewlett-Packard, Inso, Isogen, Microsoft, Netscape, SoftQuad, Sun Microsystems, and the University of Chicago, along with Dan Connolly, a W3C representative, and James Clark, an independent expert. Most of the Working Group members bring considerable experience with SGML to the task of defining and refining XML.
[ArborText paper 1997]

Who is responsible for XML?
XML is a project of the World-Wide Web Consortium (W3C), and the development of the specification is being supervised by their SGML Editorial Review Board (ERB). The work of definition and specification is being done by a Working Group appointed by the ERB, with co-opted contributors and experts from various fields.
XML is a public format: it is not a proprietary development of any company.
[SOURCE: FAQ 1997may]

xml'GENERIC

_GENERIC:
* method-markup#cptItsoft204.12#
* SGML (ISO_8879_1986)#cptIt133#

Is XML SGML?
Yes. XML has been carefully designed with the goal that every valid XML document should also be an SGML document. There are some areas of difference between XML and SGML, but these are minor, should not cause practical problems, and will almost certainly reconciled with SGML in the near future.
[SOURCE: FAQ textuality 1997]

lagXml0.SPECIFIC

name::
* McsEngl.lagXml0.SPECIFIC@cptIt,
* McsEngl.xml'based'format@cptIt439i,
* McsEngl.xml'based'markup'language@cptIt439i,
* McsEngl.xml'based'markup'standard@cptIt439i,
* McsEngl.xml'based'language@cptIt439i,
* McsEngl.xml'based'standard@cptIt439i,
* McsEngl.xml'markup'language@cptIt439i,


* SOAP defines an XML-based format for the specification of structured and typed messages that can be exchanged by [http://www.daml.org/services/owl-s/1.1/related.html]
* The HL7 Clinical Document Architecture (CDA) is an XML-based markup standard intended to specify the encoding, structure and semantics of clinical documents for exchange.
[http://en.wikipedia.org/wiki/Clinical_Document_Architecture]
* XCES is a XML based standard to codify text corpus.
[http://en.wikipedia.org/wiki/XCES]
* XLink, is an XML markup language used for creating hyperlinks in XML documents.
[http://en.wikipedia.org/wiki/XLink]

_SPECIFIC#ql:_GENERIC cptIt439#:
* http://en.wikipedia.org/wiki/List_of_XML_markup_languages:
* MathML#cptIt441#
* OWL#cptIt562#
* RDF#cptIt565#
* XBRL#ql:xbrl@cptIt#

lagXml0.AOS

name::
* McsEngl.lagXml0.AOS@cptIt,
* McsEngl.AOS@cptIt439,

The Agricultural Ontology Service (AOS) shall serve as a reference initiative that structures and standardises agricultural terminology in multiple languages for use of any number of systems in the agricultural domain and provide several services. The purpose of the AOS is to achieve more interoperability between agricultural systems. Applying standards promoted through the AOS shall account for better indexing and retrieval of agricultural bibliographic resources. The goals of the Agricultural Ontology Service are realized by assisting community partners in building ontologies. An ontology (computer science) is a system that contains concepts, the definitions of those concepts, and the specification of relationships among those concepts. For those coming from the traditional library world, a thesaurus can be interpreted as a simple ontology, i.e. a conceptual hierarchy built by terms that are interlinked with few very generic relationships. An ontology goes beyond and defines and enables the creation of more formal, more specific and more powerful relationships as well as constraints and rules. An ontology captures and structures the knowledge in a domain, and by doing so captures the meaning of concepts that are specific to that domain. This meaning will then be available to end-users through the use of tools (e.g. indexing or search and retrieval applications) that apply the ontologies.
[http://en.wikipedia.org/wiki/Agricultural_Ontology_Service]

lagXml0.CDA

name::
* McsEngl.lagXml0.CDA@cptIt,
* McsEngl.cda@cptIt439i,

The HL7 Clinical Document Architecture (CDA) is an XML-based markup standard intended to specify the encoding, structure and semantics of clinical documents for exchange.

CDA is based on the HL7 Reference Information Model (RIM) and the HL7 Version 3 Data Types, although it can be used independently of any HL7 Version 3 messaging (i.e., CDA documents can be exchanged using other mechanisms, such as HL7 Version 2, DICOM, MIME attachments to email, http or ftp, etc.).

The CDA tries to ensure that the content will be human-readable and is therefore required to contain narrative text, yet still contain structure, and most importantly, allow for the use of codes (such as from SNOMED and LOINC) to represent concepts.

A good place to look for CDA information is in the Structured Documents Group of HL7, and the CDA FAQ
[http://en.wikipedia.org/wiki/Clinical_Document_Architecture]

lagXml0.CellML

name::
* McsEngl.lagXml0.CellML@cptIt,
* McsEngl.cellml@cptIt439i,

CellML is an XML based markup language for describing mathematical models. Although it could theoretically describe any mathematical model, it was originally created with the Physiome Project in mind, and hence used primarily to describe models relevant to the field of biology. CellML is growing in popularity as a portable description format for computational models, and groups throughout the world are using CellML for modelling or developing software tools based around CellML. CellML is similar to Systems Biology Markup Language SBML but offers a much broader scope, not being specific to description of biochemistry.
[http://en.wikipedia.org/wiki/CellML]

lagXml0.CML

name::
* McsEngl.lagXml0.CML@cptIt,
* McsEngl.cml@cptIt439i,

CML (Chemical Markup Language) is a new approach to managing molecular information using tools such as XML and Java. It was the first domain specific implementation based strictly on XML, the most robust and widely used system for precise information management in many areas. It has been developed over more than a decade by Murray-Rust, Rzepa and others and has been tested in many areas and on a variety of machines.
[http://en.wikipedia.org/wiki/Chemical_Markup_Language]

lagXml0.dicML

name::
* McsEngl.lagXml0.dicML@cptIt,
* McsEngl.dicml@cptIt439i,

dicML is an XML-based markup language currently being developed to describe the contents of dictionaries. Each document can represent one of the following:
* a word list
* a definition
* a translation
* a monolingual dictionary
* a bilingual dictionary

The declared purpose of dicML and accompanying dictionary software is to make electronic dictionaries more attractive to users by specifying logical features that should be present and searchable in a uniform manner across many different electronic dictionaries.[1]

Alternatives
The XDXF markup languages serve a similar purpose. Currently, neither concept is specified completely. For example, XDXF lacks elements to annotate possible hyphenations, while the recent working draft of dicML does not include elements to describe the etymology of words.
[http://en.wikipedia.org/wiki/DicML]

lagXml0.DITA

name::
* McsEngl.lagXml0.DITA@cptIt,
* McsEngl.DITA@cptIt439i,

The Darwin Information Typing Architecture (DITA) is an XML-based architecture for authoring, producing, and delivering technical information.

The name of the architecture can be explained as follows:
Darwin: it uses the principles of specialization and inheritance;
Information Typing: it capitalizes on the semantics of topics (concept, task, reference) and of content (messages, typed phrases, semantic tables);
Architecture: it provides vertical headroom (new applications) and edgewise extension (specialization into new types) for information.

DITA divides content into small, self-contained topics that can be reused in different deliverables. The extensibility of DITA permits organizations to define specific information structures and still use standard tools to work with them. The ability to define company-specific and even group-specific information architectures enables DITA to support content reuse and reduce information redundancy.

DITA specifies three basic topic types, Task, Concept and Reference.

Each of these basic types is a specialization of a generic Topic type, which contains a title element, a prolog element for metadata, and a body element. The body element contains paragraph, table, and list elements, familiar from HTML.

A Task topic is intended for a procedure describing how to accomplish a task. It lists a series of steps that users follow to produce a specified outcome. The steps are contained in a taskbody element, which is a specialization of the generic body element. The steps element is a specialization of an ordered list element.

Concept information is more objective, containing definitions, rules, and guidelines. A Reference topic is for topics that describe command syntax, programming instructions, other reference material; it usually contains detailed, factual material.

The DITA architecture and a related DTD and XML Schema was originally developed by IBM. DITA is now an OASIS standard.
[http://en.wikipedia.org/wiki/DITA]

_GENERIC
* XML_BASED_LANGUAGE#cptIt439#

lagXml0.PML

name::
* McsEngl.lagXml0.PML@cptIt,

Physical Markup Language (PML) is a markup language based on XML for communicating a description of physical environments and the objects within them, their relationships to you, each other and the space. Within a location, the devices (RFID tags) controlled by the PML language act as parts of a browser. Together they render the experience. Each device contains a component that interprets the PML related to the device’s capabilities.
[http://en.wikipedia.org/wiki/Physical_Markup_Language]

_GENERIC
* XML_BASED_LANGUAGE#cptIt439#

lagXml0.RULE-MARKUP-LANGUAGE

_CREATED: {2007-12-02}

name::
* McsEngl.lagXml0.RULE-MARKUP-LANGUAGE@cptIt,
* McsEngl.ruleml@cptIt525i,

_DEFINITION:
The Rule Markup Language (RuleML) is a markup language developed to express both forward (bottom-up) and backward (top-down) rules in XML for deduction, rewriting, and further inferential-transformational tasks. It is defined by the Rule Markup Initiative, an open network of individuals and groups from both industry and academia that was formed to develop a canonical Web language for rules using XML markup and transformations from and to other rule standards/systems.

Markup standards and initiatives related to RuleML include:

* Mathematical Markup Language (MathML): However, MathML's Content Markup is better suited for defining functions rather than relations or general rules
* DARPA Agent Markup Language (DAML): While the contributing SHOE project has permitted Horn rules and a DAML-RULES is planned, the current DAML+OIL (March 2001) does not yet include a specification of explicit inference rules
* Predictive Model Markup Language (PMML): With this XML-based language one can define and share various models for data-mining results, including association rules
* Attribute Grammars in XML (AG-markup): For AG's semantic rules, there are various possible XML markups that are similar to Horn-rule markup
* Extensible Stylesheet Language Transformations (XSLT): This is a restricted term-rewriting system of rules, written in XML, for transforming XML documents into other text documents

See also
* Ontology (computer science)
* Business rules
* Business rules approach
* Semantic Web Rule Language
* R2ML

External links
* http://www.ruleml.org/
* AG-markup
* REWERSE I1 WG
[http://en.wikipedia.org/wiki/RuleML]

lagXml0.SOAP

name::
* McsEngl.lagXml0.SOAP@cptIt,

lagXml0.SSML

name::
* McsEngl.lagXml0.SSML@cptIt,
* McsEngl.ssml@cptIt439i,

Speech Synthesis Markup Language (SSML) is an XML-based markup language for speech synthesis applications. It is a recommendation of the W3C's voice browser working group. SSML is often embedded in VoiceXML scripts to drive interactive telephony systems. However, it also may be used alone, such as for creating audio books. For desktop applications, other markup languages are popular, including Apple's embedded speech commands, and Microsoft's SAPI TTS markup, also an XML language.

SSML is based on the JSML language developed by Sun, although the current recommendation was developed mostly by speech synthesis vendors. It covers virtually all aspects of synthesis, although some areas have been left unspecified, so each vendor accepts a different variant of the language. Also, in the absence of markup, the synthesizer is expected to do its own interpretation of the text. So SSML is not a strict standard in the sense of C, or even HTML.

Here is an example of a SSML document:

<?xml version="1.0"?>
<speak xmlns="http://www.w3.org/2001/10/synthesis"
xmlns:dc="http://purl.org/dc/elements/1.1/"
version="1.0">

<metadata>
<dc:title xml:lang="en">Telephone Menu: Level 1</dc:title>
</metadata>

<p>
<s xml:lang="en-US">
<voice name="David" gender="male" age="25">
For English, press <emphasis>one</emphasis>.
</voice>
</s>
<s xml:lang="es-MX">
<voice name="Miguel" gender="male" age="25">
Para espan~ol, oprima el <emphasis>dos</emphasis>.
</voice>
</s>
</p>

</speak>
[http://en.wikipedia.org/wiki/Speech_Synthesis_Markup_Language]

lagXml0.SVG#ql:svg-cptresource#

name::
* McsEngl.lagXml0.SVG@cptIt,

lagXml0.TRANSFORMATION-LANGUAGE

name::
* McsEngl.lagXml0.TRANSFORMATION-LANGUAGE@cptIt,
* McsEngl.xml'transformation'language@cptIt439i,

_DEFINITION:
An XML transformation language is a computer language designed specifically to transform an input XML document into an output XML document which satisfies some specific goal.
There are two special cases of transformation:
* XML to XML : the output document is an XML document.
* XML to Data : the output document is a byte stream.
[http://en.wikipedia.org/wiki/XML_transformation_language]

_GENERIC
* TRANSFORMATION_LANGUAGE#ql:TRANSFORMATION'LANGUAGE-*###

_SPECIFIC:
* XSLT##


Existing languages
XSLT
XSLT is the best known XML transformation language. The XSLT 1.0 W3C recommendation was published in 1999 together with XPath 1.0, and it has been widely implemented since then. XSLT 2.0 has become a W3C recommendation since January 2007 and implementations of the specification like SAXON 8 are already available.
XQuery
XQuery is also bound to become a W3C standard. XQuery is not an XML application, like XSLT. Consequently its syntax is much lighter. The language is based on XPath 2.0. XQuery programs cannot have side-effects, just like XSLT and provides almost the same capabilities (for instance: declaring variables and functions, iterating over sequences, using W3C schema types), even though the program syntax are quite different. In addition to the syntax, the main difference between XSLT and XQuery is the XSLT push processing model, where certain conditions of the input document trigger the execution of templates, which is not shared with XQuery.
STX
STX (Streaming Transformations for XML) is inspired by XSLT but has been designed to allow a one-pass transformation process that never prevents streaming. Implementations are available in Java (Joost) and Perl (XML::STX).
XML Script
An imperative scripting language inspired by Perl that uses the XML syntax. XML Script supports XPath as well as its proprietary DSLPath for selecting nodes from the input tree.
FXT
A Functional XML Transformation Tool, implemented in Standard ML.
XDuce
A typed language with a lightweight syntax (compared to XSLT). The implementation is written in ML.
CDuce
Extends XDuce to a general-purpose functional programming language, see CDuce homepage.
XStream
A simple functional transformation language for XML documents based on CAML. XML transformations written in XStream are evaluated in streaming: when possible, parts of the output are computed and produced while the input document is still being parsed. Some transformations can thus be applied to huge XML documents which would not even fit in memory. The XStream compiler is distributed under the terms of the CeCILL free software license.
Xtatic
Applies techniques from XDuce to C#, see Xtatic homepage.
HaXml
A library and collection of tools to write XML transformations in Haskell. Its approach is very consistent and powerful. Also see this paper about HaXml published in 1999 and this IBM developerWorks article. See also the more recent HXML and Haskell XML Toolbox (HXT), which is based on the ideas of HaXml and HXML but takes a more general approach to XML processing.
XMLambda
XMLambda (XMλ) is described in a 1999 paper by Erik Meijer and Mark Shields. No implementation is available. See XMLambda home page.
FleXML
FleXML is an XML processing language first implemented by Kristofer Rose. Its approach is to add actions to an XML DTD specifying processing instructions for any subset of the DTD's rules.
XML Sapiens
A paradigm of the managed sites building, a way for the independent aspects’ effective integration: data, design, and functionality.
Scala
A general-purpose functional and object-oriented language with specific support for XML transformation in the form of XML pattern matching, literals, and expressions, along with standard XML libraries.
[http://en.wikipedia.org/wiki/XML_transformation_language]

lagXml0.VML

name::
* McsEngl.lagXml0.VML@cptIt,
* McsEngl.vml@cptIt439i,

_DEFINITION:
Vector Markup Language (VML) is an XML language used to produce vector graphics. VML was submitted as a proposed standard to the W3C in 1998 by Microsoft, Macromedia, and others. VML was rejected as a web standard because Adobe, Sun, and others submitted a competing proposal known as PGML.[1] The two standards were joined to create SVG.

Even though rejected as a standard by the W3C, and largely ignored by developers, Microsoft still implemented VML into Internet Explorer 5.0 and higher and in Microsoft Office 2000 and higher.

Google Maps currently uses VML for rendering vectors when running on Internet Explorer 5.5+.[2]
[http://en.wikipedia.org/wiki/Vector_Markup_Language]

lagXml0.VXML

name::
* McsEngl.lagXml0.VXML@cptIt,
* McsEngl.voicexml@cptIt439i,
* McsEngl.vxml@cptIt439i,

VoiceXML (VXML) is the W3C's standard XML format for specifying interactive voice dialogues between a human and a computer. It allows voice applications to be developed and deployed in an analogous way to HTML for visual applications. Just as HTML documents are interpreted by a visual web browser, VoiceXML documents are interpreted by a voice browser. A common architecture is to deploy banks of voice browsers attached to the public switched telephone network (PSTN) so that users can use a telephone to interact with voice applications.
[http://en.wikipedia.org/wiki/VXML]

EXAMLPLE:
VoiceXML has tags that instruct the voice browser to provide speech synthesis, automatic speech recognition, dialog management, and audio playback. The following is an example of a VoiceXML document:
<?xml version="1.0"?>
<vxml version="2.0" xmlns="http://www.w3.org/2001/vxml">
<form>
<block>
<prompt>
Hello world!
</prompt>
</block>
</form>
</vxml>
When interpreted by a VoiceXML interpreter this will output "Hello world" with synthesized speech.
[http://en.wikipedia.org/wiki/VXML]

lagXml0.WML

name::
* McsEngl.lagXml0.WML@cptIt,
* McsEngl.Wireless-Markup-Language@cptIt,
* McsEngl.WML@cptIt,

_DESCRIPTION:
Wireless Markup Language, based on XML, is a content format for devices that implement the Wireless Application Protocol (WAP) specification, such as mobile phones, and preceded the use of other markup languages now used with WAP, such as XHTML and even standard HTML (which are gaining in popularity as processing power in mobile devices increases).

WML documents are XML documents that validate against the WML (currently version 1.3) DTD (Document Type Definition). The W3C Markup Validation service (http://validator.w3.org/) can be used to validate WML documents (they are validated against their declared document type).


For example, the following WML page could be saved as "example.wml":

<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//PHONE.COM//DTD WML 1.1//EN"
"http://www.phone.com/dtd/wml11.dtd" >
<wml>
<card id="main" title="First Card">
<p mode="wrap">This is a sample WML page.</p>
</card>
</wml>
[http://en.wikipedia.org/wiki/Wireless_Markup_Language]

_GENERIC
* XML_BASED_LANGUAGE#cptIt439#

lagXml0.WSDL

name::
* McsEngl.lagXml0.WSDL@cptIt,
* McsEngl.wsdl@cptIt439i,

_DEFINITION:
The Web Services Description Language (WSDL, pronounced 'wiz-d?l' or spelled out, 'W-S-D-L') is an XML-based language that provides a model for describing Web services.

The current version of the specification is the 2.0: version 1.1 has not been endorsed by the W3C while the last, for which several drafts have been released, is a W3C recommendation. [1] WSDL 1.2 was renamed WSDL 2.0 because of its substantial differences from WSDL 1.1. By accepting binding to all the HTTP request methods (not only GET and POST as in version 1.1) WSDL 2.0 specification offers a better support for RESTful web services, much simpler to implement [2][3]. However support for this specification is still poor in software development kits for Web Services which often offer tools only for WSDL 1.1.

The WSDL defines services as collections of network endpoints, or ports. WSDL specification provides an XML format for documents for this purpose. The abstract definition of ports and messages is separated from their concrete use or instance, allowing the reuse of these definitions. A port is defined by associating a network address with a reusable binding, and a collection of ports define a service. Messages are abstract descriptions of the data being exchanged, and port types are abstract collections of supported operations. The concrete protocol and data format specifications for a particular port type constitutes a reusable binding, where the messages and operations are then bound to a concrete network protocol and message format. In this way, WSDL describes the public interface to the web service.

WSDL is often used in combination with SOAP and XML Schema to provide web services over the Internet. A client program connecting to a web service can read the WSDL to determine what functions are available on the server. Any special datatypes used are embedded in the WSDL file in the form of XML Schema. The client can then use SOAP to actually call one of the functions listed in the WSDL.

XLang is an extension of the WSDL such that "an XLANG service description is a WSDL service description with an extension element that describes the behavior of the service as a part of a business process" [1].

Resources or services are exposed using WSDL by both Web Services Interoperability (WS-I Basic Profile) and WSRF framework.
[http://en.wikipedia.org/wiki/WSDL]

lagXml0.WSFL

name::
* McsEngl.lagXml0.WSFL@cptIt,
* McsEngl.wsfl@cptIt439i,

Web Services Flow Language (WSFL) is an XML language proposed by IBM to describe the composition of Web services. WSFL has been superseded by BPEL.
[http://en.wikipedia.org/wiki/Web_Services_Flow_Language]

lagXml0.XCES

name::
* McsEngl.lagXml0.XCES@cptIt,
* McsEngl.xces@cptIt439i,

XCES is a XML based standard to codify text corpus. These texts are mainly used by linguists and natural language researchers. XCES is highly based on previous Corpus Encoding Standard but using XML as the markup language. It supports simple corpora as well as anotated corpora, parallel corpora and other.
[http://en.wikipedia.org/wiki/XCES]

lagXml0.XDXF

name::
* McsEngl.lagXml0.XDXF@cptIt,
* McsEngl.xdxf@cptIt439i,

XDXF (XML Dictionary Exchange Format) is a project to unite all existing open dictionaries and provide both users and developers with universal XML-based format, convertible from and to other popular formats like Mova, PtkDic, StarDict. Currently the format is in an early draft stage.
[http://en.wikipedia.org/wiki/XDXF]

lagXml0.XLink

name::
* McsEngl.lagXml0.XLink@cptIt,
* McsEngl.xlink@cptIt439i,

_DEFINITION:
The XML Linking Language, or XLink, is an XML markup language used for creating hyperlinks in XML documents. XLink is a W3C specification that outlines methods of describing links between resources in XML documents, whether internal or external to the original document.
[http://en.wikipedia.org/wiki/XLink]

xlink'SPECIFICATION:
XLink 1.0 remains the current version of XLink where it received W3C Recommendation status on 2001-06-27.[1] XLink 1.1 entered W3C Candidate Recommendation status on 2006-03-28.[2]
[http://en.wikipedia.org/wiki/XLink]

lagXml0.XRULES

_CREATED: {2007-12-05}

name::
* McsEngl.lagXml0.XRULES@cptIt,
* McsEngl.xrules@cptIt439i,

_DEFINITION:
XRules is an XML-based language for describing rules that govern other XML documents. More specifically, XRules describes constraints, calculations, properties, relations and interdependencies that exist between nodes (elements and attributes) of a target XML document. The target XML document could be a purchase order, a bank transaction, a web service message, an employee record, etc.
[XRules Tutorial Draft Version 0.43, November 7, 2005]

lagXml0.XSLT

name::
* McsEngl.lagXml0.XSLT@cptIt,
* McsEngl.extensible'stylesheet'language'transformations@cptIt439i,
* McsEngl.xslt@cptIt439i,

_DEFINITION:
Extensible Stylesheet Language Transformations (XSLT) is an XML-based language used for the transformation of XML documents into other XML or "human-readable" documents. The original document is not changed; rather, a new document is created based on the content of an existing one.[2] The new document may be serialized (output) by the processor in standard XML syntax or in another format, such as HTML or plain text.[3] XSLT is most often used to convert data between different XML schemas or to convert XML data into HTML or XHTML documents for web pages, creating a dynamic web page, or into an intermediate XML format that can be converted to PDF documents.

As a language, XSLT is influenced by functional languages,[4] and by text-based pattern matching languages like SNOBOL and awk. Its most direct predecessor was DSSSL, a language that performed the same function for SGML that XSLT performs for XML. XSLT can also be considered as a template processor.

XSLT is Turing complete.[5][6][7][8]
[http://en.wikipedia.org/wiki/XSL_Transformations]

lagCmr.YAML

name::
* McsEngl.lagCmr.YAML@cptIt,
* McsEngl.conceptIt501.15,
* McsEngl.lagYaml@cptIt,
* McsEngl.yaml-lang@cptIt,

* McsEngl.lngCmr.serialization.YAML@cptIt,
* McsEngl.YAML@cptIt501.15,
* McsEngl.YAML-Ain’t-Markup-Language@cptIt,

_GENERIC:
* human-readable-mdr#cptItsoft501.12#

_DESCRIPTION:
YAML (/'jζm?l/, rhymes with camel) is a human-readable data serialization format that takes concepts from programming languages such as C, Perl, and Python, and ideas from XML and the data format of electronic mail (RFC 2822). YAML was first proposed by Clark Evans in 2001,[1] who designed it together with Ingy dφt Net[2] and Oren Ben-Kiki.[2] It is available for several programming languages.
YAML is a recursive acronym for "YAML Ain't Markup Language". Early in its development, YAML was said to mean "Yet Another Markup Language",[3] but it was then reinterpreted (backronyming the original acronym) to distinguish its purpose as data-oriented, rather than document markup.
[http://en.wikipedia.org/wiki/YAML] 2013-12-23,
===
YAML™ (rhymes with “camel”) is a human-friendly, cross language, Unicode based data serialization language designed around the common native data types of agile programming languages. It is broadly useful for programming needs ranging from configuration files to Internet messaging to object persistence to data auditing. Together with the Unicode standard for characters, this specification provides all the information necessary to understand YAML Version 1.2 and to create programs that process YAML information.
[http://www.yaml.org/spec/1.2/spec.html]
===
What It Is: YAML is a human friendly data serialization standard for all programming languages.
[http://yaml.org//]

yaml'archetype

name::
* McsEngl.yaml'archetype@cptIt,

_DESCRIPTION:
There are myriad flavors of data structures, but they can all be adequately represented with three basic primitives: mappings (hashes/dictionaries), sequences (arrays/lists) and scalars (strings/numbers).
YAML leverages these primitives, and adds a simple typing system and aliasing mechanism to form a complete language for serializing any native data structure. While most programming languages can use YAML for data serialization, YAML excels in working with those languages that are fundamentally built around the three basic primitives. These include the new wave of agile languages such as Perl, Python, PHP, Ruby, and Javascript.
...
YAML was specifically created to work well for common use cases such as: configuration files, log files, interprocess messaging, cross-language data sharing, object persistence, and debugging of complex data structures. When data is easy to view and understand, programming becomes a simpler task.
[http://www.yaml.org/spec/1.2/spec.html]

yaml'code

name::
* McsEngl.yaml'code@cptIt,

yaml'code.ATOM

name::
* McsEngl.yaml'code.ATOM@cptIt,
* McsEngl.yaml'data.scalar@cptIt,

_DESCRIPTION:
There are myriad flavors of data structures, but they can all be adequately represented with three basic primitives: mappings (hashes/dictionaries), sequences (arrays/lists) and scalars (strings/numbers).
[http://www.yaml.org/spec/1.2/spec.html#Introduction]

yaml'code.ATOM.NO (structure)

name::
* McsEngl.yaml'code.ATOM.NO (structure)@cptIt,
* McsEngl.yaml'structure-code@cptIt,

yaml'namevalue (mapping)

name::
* McsEngl.yaml'namevalue (mapping)@cptIt,
* McsEngl.associative-array@cptIt,
* McsEngl.dictionary.yaml@cptIt,
* McsEngl.hash.yaml@cptIt,
* McsEngl.mapping.yaml@cptIt,
* McsEngl.yaml'associative-array@cptIt,
* McsEngl.yaml'mapping@cptIt,

_DESCRIPTION:
Mapping
The content of a mapping node is an unordered set of key: value node pairs, with the restriction that each of the keys is unique. YAML places no further restrictions on the nodes. In particular, keys may be arbitrary nodes, the same node may be used as the value of several key: value pairs, and a mapping could even contain itself as a key or a value (directly or indirectly).
[http://www.yaml.org/spec/1.2/spec.html]
===
Associative arrays[edit]
Keys are separated from values by a colon+space. Indented Blocks, common in YAML data files, use indentation and new lines to separate the key: value pairs. Inline Blocks, common in YAML data streams, use comma+space to separate the key: value pairs between braces.

---# Indented Block
name: John Smith
age: 33
---# Inline Block
{name: John Smith, age: 33}
===
Associative arrays of lists[edit]
men: [John Smith, Bill Jones]
women:
- Mary Smith
- Susan Williams
[http://en.wikipedia.org/wiki/YAML#Associative_arrays]

_RELATION_TO_JASON:
JSON's RFC4627 requires that mappings keys merely “SHOULD” be unique, while YAML insists they “MUST” be. Technically, YAML therefore complies with the JSON spec, choosing to treat duplicates as an error. In practice, since JSON is silent on the semantics of such duplicates, the only portable JSON files are those with unique keys, which are therefore valid YAML files.
[http://www.yaml.org/spec/1.2/spec.html, 2009-10-01]

_CODE.YAML:
Example 2.6. Mapping of Mappings

Mark McGwire: {hr: 65, avg: 0.278}
Sammy Sosa: {
hr: 63,
avg: 0.288
}

yaml'ordered-collection (sequence)

name::
* McsEngl.yaml'ordered-collection (sequence)@cptIt,
* McsEngl.array.yaml@cptIt,
* McsEngl.list.yaml@cptIt,
* McsEngl.sequence.yaml@cptIt,
* McsEngl.yaml'array@cptIt,
* McsEngl.yaml'data.collection.ordered@cptIt,
* McsEngl.yaml'keyvalue.ordered@cptIt,
* McsEngl.yaml'ordered-collection@cptIt,
* McsEngl.yaml'sequence@cptIt,

_DESCRIPTION:
Lists[edit]
Conventional block format uses a hyphen+space to begin a new item in list.

---# Favorite movies
- Casablanca
- North by Northwest
- The Man Who Wasn't There
Optional inline format is delimited by comma+space and enclosed in brackets (similar to JSON).[6]

---# Shopping list
[milk, pumpkin pie, eggs, juice]
[http://en.wikipedia.org/wiki/YAML#Lists]

_CODE.YAML:
[name, hr, avg ]
===
Example 2.1. Sequence of Scalars
(ball players)

- Mark McGwire
- Sammy Sosa
- Ken Griffey
===
Example 2.4. Sequence of Mappings
(players’ statistics)

-
name: Mark McGwire
hr: 65
avg: 0.278
-
name: Sammy Sosa
hr: 63
avg: 0.288

===
Example 2.5. Sequence of Sequences

- [name , hr, avg ]
- [Mark McGwire, 65, 0.278]
- [Sammy Sosa , 63, 0.288]

yaml'code.COMMENT

name::
* McsEngl.yaml'code.COMMENT@cptIt,
* McsEngl.yaml'comment@cptIt,

_DESCRIPTION:
Comments begin with an octothorpe (also called a “hash”, “sharp”, “pound”, or “number sign” - “#”).
[http://www.yaml.org/spec/1.2/spec.html]

yaml'code.DATA

name::
* McsEngl.yaml'code.DATA@cptIt,

_DESCRIPTION:
There are myriad flavors of data structures, but they can all be adequately represented with three basic primitives: mappings (hashes/dictionaries), sequences (arrays/lists) and scalars (strings/numbers).
[http://www.yaml.org/spec/1.2/spec.html#Introduction]

yaml'code.DIRECTIVE

name::
* McsEngl.yaml'code.DIRECTIVE@cptIt,
* McsEngl.yaml'directive@cptIt,

_DESCRIPTION:
Directives are instructions to the YAML processor. This specification defines two directives, “YAML” and “TAG”, and reserves all other directives for future use. There is no way to define private directives. This is intentional.
Directives are a presentation detail and must not be used to convey content information.
[http://www.yaml.org/spec/1.2/spec.html#directive//]

yaml'code.STREAM

name::
* McsEngl.yaml'code.STREAM@cptIt,

_DESCRIPTION:
YAML’s top-level production is a stream of independent documents, ideal for message-based distributed processing systems.
[http://www.yaml.org/spec/1.2/spec.html]

yaml'doing

name::
* McsEngl.yaml'doing@cptIt,

_DESCRIPTION:
There are hundreds of different languages for programming, but only a handful of languages for storing and transferring data. Even though its potential is virtually boundless, YAML was specifically created to work well for common use cases such as: configuration files, log files, interprocess messaging, cross-language data sharing, object persistence, and debugging of complex data structures. When data is easy to view and understand, programming becomes a simpler task.
[http://www.yaml.org/spec/1.2/spec.html#Introduction]

yaml'program

name::
* McsEngl.yaml'program@cptIt,

_ADDRESS.WPG:
* http://nodeca.github.io/js-yaml//

yaml'relation-to-JSON

name::
* McsEngl.yaml'relation-to-JSON@cptIt,
* McsEngl.json'relation-to-yaml@cptIt,

_DESCRIPTION:
Both JSON and YAML aim to be human readable data interchange formats.
However, JSON and YAML have different priorities.
JSON’s foremost design goal is simplicity and universality.
Thus, JSON is trivial to generate and parse, at the cost of reduced human readability.
It also uses a lowest common denominator information model, ensuring any JSON data can be easily processed by every modern programming environment.

In contrast, YAML’s foremost design goals are human readability and support for serializing arbitrary native data structures.
Thus, YAML allows for extremely readable files, but is more complex to generate and parse.
In addition, YAML ventures beyond the lowest common denominator data types, requiring more complex processing when crossing between different programming environments.
[http://www.yaml.org/spec/1.2/spec.html]

yaml'relation-to-XML

name::
* McsEngl.yaml'relation-to-XML@cptIt,
* McsEngl.xml'relation-to-yaml@cptIt,

_DESCRIPTION:
Newcomers to YAML often search for its correlation to the eXtensible Markup Language (XML). Although the two languages may actually compete in several application domains, there is no direct correlation between them.

YAML is primarily a data serialization language. XML was designed to be backwards compatible with the Standard Generalized Markup Language (SGML), which was designed to support structured documentation. XML therefore had many design constraints placed on it that YAML does not share. XML is a pioneer in many domains, YAML is the result of lessons learned from XML and other technologies.

It should be mentioned that there are ongoing efforts to define standard XML/YAML mappings. This generally requires that a subset of each language be used. For more information on using both XML and YAML, please visit http://yaml.org/xml.
[http://www.yaml.org/spec/1.2/spec.html, 2009-10-01]

yaml'resource

name::
* McsEngl.yaml'resource@cptIt,

_ADDRESS.WPG:
* http://yaml.org//
* http://yaml.org/type//
* http://nodeca.github.io/js-yaml//

FvMcs.standard-DMI

name::
* McsEngl.conceptIt210,
* McsEngl.standard-DMI@cptIt,
* McsEngl.FvMcs.standard-DMI@cptIt,
* McsEngl.DMI@cptIt,
* McsEngl.dmi@cptIt210,
* McsEngl.desktop-management-interface@cptIt,

DEFINITION

DMI is a standard#cptIt139.1# that intel formed with companies like AST, COMPAQ, DE, DELL, HP, IBM, MICROSOFT, NOVELL, SUNSOFT, SYMANTEC, SYNOPTICS.

DMI is a technology that defines a standard mechanism for accessing and configuring data in any piece of HARDWARE or SOFTWARE.

DMI acts as information broker, enabling a LAN manager to gain configuration data about the desktop and its many peripherals and applications.
[intel technology briefing, oct. 1994]

GENERIC

_GENERIC:
standard#cptIt139#

FvMcs.OEM

name::
* McsEngl.conceptIt213,
* McsEngl.OEM@cptIt,
* McsEngl.FvMcs.OEM@cptIt,
* McsEngl.OEM@cptIt213,
* McsEngl.original-equipment-manufacturer@cptIt,

DEFINITION

OEM, Original Equipment Manufacturer
Generally, any manufacturer that sells his product to a reseller is referred to as an OEM. However, the term is also used to refer to the reseller. In fact, OEM and VAR, Value Added Reseller, are used interchangeably. They are relative terms.
With complex products such as computer systems, there are OEM's and VAR's throughout the manufacturing process. No one company manufactures all the components of a computer system, not even the large computer corporations such as Compaq, IBM, or Tandy.
[SOURCE: PC-GLOSSARY 1993]

SPECIFIC

Specific_concepts (level 3) =

FvMcs.INTEGRATED CIRCUIT

name::
* McsEngl.conceptIt222,
* McsEngl.INTEGRATED CIRCUIT@cptIt,
* McsEngl.FvMcs.INTEGRATED CIRCUIT@cptIt,
* McsEngl.chip@cptIt222,
* McsEngl.integrated'circuit@cptIt222,
* McsEngl.integrated-circuit@cptIt,
* McsElln.ΟΛΟΚΛΗΡΩΜΕΝΟ-ΚΥΚΛΩΜΑ@cptIt,

DEFINITION

ΗΛΕΚΤΡΟΝΙΚΟ ΚΥΚΛΩΜΑ ΠΟΥ ΤΥΠΩΝΕΤΑΙ ΠΑΝΩ ΣΕ ΕΝΑ ΜΟΝΟ ΠΛΑΚΙΔΙΟ ΑΠΟ ΗΜΙΑΓΩΓΟ ΥΛΙΚΟ ΜΕ ΧΗΜΙΚΟ ΤΡΟΠΟ ΚΑΙ ΙΚΑΝΟ ΝΑ ΕΚΤΕΛΕΙ ΜΙΑ Η ΠΕΡΙΣΟΤΕΡΕΣ ΛΟΓΙΚΕΣ ΛΕΙΤΟΥΡΓΙΕΣ

Αξιοποιώντας την καινούργια τεχνολογία των ημιαγωγών, τα ΟΚ περιέχουν ένα πολύ μεγάλο αριθμό ηλεκτρονικών διακοπτών, μέσα σε ένα μικροσκοπικό κομματάκι απο πυρίτιο. Αυτά τα κοματάκια απο χώμα -γιατί στην ουσία το πυρίτιο είναι χώμα- αποτελούν, τα περίφημα "τσιπ".
[JARRET, 1987, 21#cptResource117]

Moor-law

Η συνεχιζόμενη επανάσταση των υπολογιστών έχει βασιστεί σε σημαντικό βαθμό στο γεγονός ότι περίπου κάθε ένα έως δύο χρόνια διπλασιάζεται ο αριθμός των τρανζίστορ πυριτίου, τα οποία μπορούν να χωρέσουν σε ένα τσιπ πυριτίου και άρα αυξάνεται ανάλογα και η επεξεργαστική ισχύς (ο λεγόμενος «νόμος του Μουρ» που διατύπωσε ο Γκόρντον Μουρ της Intel το 1965).
[http://www.nooz.gr/tech/ivm--surriknosan-tranzistor-me-nanosolines-an8raka]

SEMICONDUCTOR

Semiconductor
A semiconductor is a substance, such as germanium or silicon, whose conductivity is poor at low temperatures, but is improved by minute additions of certain substances or by the application of heat, light, or voltage. Depending on the temperature and pressure, a semiconductor can control a flow of electricity. It is the material from which integrated circuits are made.
Semiconductors are the basis of modern electronic circuit technology.
[SOURCE: PC-GLOSSARY 1993]

Transistor

_CREATED: {1999-11-15}

NAME

name::
* McsEngl.conceptIt535,
* McsEngl.transistor@cptIt535,
* McsElln.κρυσταλλολυχνία@cptIt,
* McsElln.ΚΡΥΣΤΑΛΛΟΛΥΧΝΙΑ@cptIt,

DEFINITION

SPECIFIC

_SPECIFIC:#ql:_GENERIC cptIt535#

MOTOROLA

3 ΔΕΚ 1999 20:52 Η Motorola υποστηρίζει ότι έφτιαξε το λεπτότερο τρανζίστορ στον κόσμο
in.news
Τέμπε, Αριζόνα: H Motorola ανακοίνωσε την Τετάρτη ότι έφτιαξε το λεπτότερο τρανζίστορ στον κόσμο. Σύμφωνα με δηλώσεις εκπροσώπου της, ανοίγει τώρα ο δρόμος για τη δημιουργία υπολογιστών μεγάλης ισχύος, με μέγεθος ανάλογο με αυτό ενός μικρού κινητού τηλεφώνου.
Για τη δημιουργία του τρανζίστορ οι ερευνητές της Motorola στηρίχθηκαν σε ένα υλικό που ονομάζεται "περοβσκίτης" (perovskites) και προφέρεται "Per-AHV-skites".
Το υλικό αυτό επιτρέπει την κατασκευή ολοκληρωμένων κυκλωμάτων με πολύ λεπτά, αλλά ταχύτατα τρανζίστορ, που επιπλέον καταναλώνουν λιγότερη ισχύ.
Το υλικό αυτό θα αντικαταστήσει το διοξείδιο πυριτίου που χρησιμοποιείται εδώ και 30 χρόνια στη δημιουργία ολοκληρωμένων κυκλωμάτων.

NANOTUBE

ΙΒΜ: Συρρίκνωση τρανζίστορ με νανοσωλήνες άνθρακα
ΑΘΗΝΑ 06/10/2015

Στη βιομηχανία κατασκευής ημιαγωγών (τρανζίστορ), το μεγαλύτερο τεχνικό εμπόδιο είναι ότι υπάρχει ένα φυσικό όριο πέρα από το οποίο δεν φαίνεται δυνατό να μικρύνει άλλο το μέγεθος ενός τρανζίστορ.

Όμως ερευνητές της αμερικανικής εταιρείας ΙΒΜ ανακοίνωσαν ότι βρήκαν ένα νέο τρόπο να ξεπεράσουν το πρόβλημα, δημιουργώντας τρανζίστορ από παράλληλες σειρές νανοσωλήνων άνθρακα.

Ο «πονοκέφαλος» για τους κατασκευαστές των επεξεργαστών |»τσιπ») είναι ότι όσο προσπαθούν να χωρέσουν περισσότερα και άρα μικρότερα τρανζίστορ σε ένα τσιπ, ώστε να κάνουν τον επεξεργαστή πιο γρήγορο, τόσο αυξάνεται η ηλεκτρική αντίσταση και η δημιουργία θερμότητας, πράγμα που «φρενάρει» την ταχύτητα επεξεργασίας.

Όμως οι ερευνητές, που έκαναν τη σχετική δημοσίευση στο περιοδικό "Science", σύμφωνα με τους «Τάιμς της Νέας Υόρκης», ανακάλυψαν μια νέα μέθοδο σύνδεσης πολύ λεπτών μεταλλικών συρμάτων με τους νανοσωλήνες, πράγμα που επιτρέπει να συνεχιστεί η σμίκρυνση του πλάτους των συρμάτων, χωρίς να αυξηθεί η ηλεκτρική αντίσταση.

Η ανακάλυψη, που αναμένεται να έχει πρακτική εφαρμογή την επόμενη δεκαετία, βασίζεται σε ένα «εξωτικό» υλικό δημιουργίας ημιαγωγών, τους νανοσωλήνες άνθρακα, το οποίο θεωρείτο πολλά υποσχόμενο, αλλά έως τώρα είχε αποδειχθεί πολύ δύσκολο στην αξιοποίησή του για την κατασκευή τρανζίστορ. Οι εν λόγω νανοσωλήνες είναι «ρολό» αποτελούμενα από άνθρακα πάχους μόνο ενός ατόμου.

Οι νανοσωλήνες άνθρακα είναι ένα από τα υλικά που έχει προταθεί ως διάδοχος του πυριτίου, το οποίο εδώ και πάνω από μισό αιώνα αποτελεί το προτιμώμενο υλικό από τους παραγωγούς τσιπ. «Από όλα τα πιθανά υλικά, οι νανοσωλήνες βρίσκονται στην κορυφή του καταλόγου και με διαφορά», δήλωσε ο αντιπρόεδρος της IBM Research Ντάριο Γκιλ. Όπως είπε, υπάρχουν ακόμη τεχνικές δυσκολίες, αλλά η ΙΒΜ είναι αισιόδοξη ότι τελικά θα τις ξεπεράσει.

Η συνεχιζόμενη επανάσταση των υπολογιστών έχει βασιστεί σε σημαντικό βαθμό στο γεγονός ότι περίπου κάθε ένα έως δύο χρόνια διπλασιάζεται ο αριθμός των τρανζίστορ πυριτίου, τα οποία μπορούν να χωρέσουν σε ένα τσιπ πυριτίου και άρα αυξάνεται ανάλογα και η επεξεργαστική ισχύς (ο λεγόμενος «νόμος του Μουρ» που διατύπωσε ο Γκόρντον Μουρ της Intel το 1965).

Τα τσιπ αποτελούνται από μεταλλικά σύρματα και τρανζίστορ με βάση ένα υλικό κατάλληλο για ημιαγωγό του ρεύματος. Οι σημερινοί μικροεπεξεργαστές περιέχουν δισεκατομμύρια τρανζίστορ-διακόπτες που ανοιγοκλείνουν σε δισεκατομμυριοστά του δευτερολέπτου. Υπάρχουν πια τρανζίστορ που είναι μικρότερα και από έναν βιολογικό ιό.

Όμως κατά την τελευταία δεκαετία οι επιδόσεις των «τσιπ» -τα οποία παράγονται με τη βιομηχανική τεχνική της φωτολιθογραφίας- δεν αυξάνονται πια με τον ίδιο ρυθμό, ενώ πιο πρόσφατα και το κόστος των τρανζίστορ σταμάτησε να μειώνεται με κάθε νέα γενιά τους. Οι νανοσωλήνες άνθρακα έρχονται να φέρουν μια αναγκαία νότα αισιοδοξίας στη βιομηχανία των επεξεργαστών.

Στο απώτερο μέλλον, άλλες ακόμη πιο προχωρημένες μέθοδοι, όπως η κβαντική υπολογιστική και η σπιντρονική, φιλοδοξούν να «απογειώσουν» πραγματικά τις δυνατότητες των επεξεργαστών.
[http://www.nooz.gr/tech/ivm--surriknosan-tranzistor-me-nanosolines-an8raka]

VERTICAL TANSISTOR

November 15, 1999

Vertical Transistor Holds Promise for Computing Advance By JOHN MARKOFF romising an era of mobile computers that consume less power, researchers at Lucent Technologies' Bell Laboratories have developed a radically new alternative to the so-called planar transistor, the workhorse of the semiconductor industry the last 35 years.
The device, known as a vertical transistor, will be reported at the International Electron Device Meeting in Washington on Dec. 7. It could provide chip makers with a crucial new weapon in continuing to significantly lower power consumption while increasing the speed of computer processors.
The product of a two-year research project by Bell Labs' Silicon Electronics Research Laboratory in Murray Hill, N.J., the new device is not the first vertical transistor created by semiconductor designers. The novel transistors, which rise above the silicon foundation on which integrated circuits are fabricated, have largely been research curiosities for a number of years. However the Bell Labs team said their new design promised to be more easily manufacturable and thus economically feasible.
"People have been trying to make a vertical transistor for 25 years," said Jack Hergenrother, a team member. "We studied the previous approach and combined some of their ideas, but this is essentially a new idea."
If it proves workable, the new device might be widely used in semiconductors in about five years, the researchers said.
The importance of vertical transistors is that they make it easier to shorten the "gate lengths" of transistors -- the critical dimension of the tiny switches that control the flow of electricity in an integrated circuit.
The Bell Labs researchers said they had still not made a complementary metal oxide semiconductor, or CMOS, version of the transistor. However, they said they were confident they would be able to achieve that goal. CMOS (pronounced SEE-moss) technology is the most commonly used manufacturing approach in the semiconductor industry.
Until now, planar transistors have been made by implanting charged atoms, called dopants, often arsenic, antimony, bismuth or phosphorus, in silicon to change its electrical properties. Then an insulating oxide is deposited, after which a metal gate is etched into the surface using a process called optical lithography.
A voltage applied to the gate can switch the current on and off within the silicon -- the basis of digital electronics.
Although this manufacturing process is among the most refined in the world, semiconductor designers are even now bumping up against fundamental limits, like the minimum wavelength of light, as they attempt to craft ever-thinner gate lengths.
By standing the transistor on its side, it is possible to precisely control the gate length without optical lithography, meaning that it will be feasible to achieve gate lengths that are not bound by the limitations of light and are thus beyond the current manufacturing limits of optical lithography.
Moreover, vertical transistors also hold out the potential for elaborate three-dimensional structures, such as stacking transistors on top of one another to pack even more circuitry into a given chip area.
"If you have a smaller transistor, you can run a device with less power," said Mark Pinto, the chief technology officer of Lucent's Microelectronics Group.
The International Electron Device Meeting is one of two premier technical meetings held each year that usually offer a peek into the future of computer technology.
This year a number of important advances will be reported including a new CMOS transistor from an Intel Corporation research group which can switch in less than 10 picoseconds, or 10-trillionths of a second, at room temperature while consuming less than 1.5 volts of power.
And an IBM research group at the T. J. Watson Research Center in Yorktown Heights, N.Y., will report the fastest CMOS transistor ever. IBM's transistor switches in 6.4 picoseconds, also consuming 1.5 volts, but has to be cooled to minus-100 degrees centigrade to achieve those efficiencies.
[The New York Times]

SPECIFIC

name::
* McsEngl.chip.specific@cptIt,

_SECIFIC:
* APU#cptItsoft497.6#
* GPU

chip.SPECIFIC-DIVISION.FUNCTION

name::
* McsEngl.chip.SPECIFIC-DIVISION.FUNCTION@cptIt,

_SPECIFIC:
* chip.DSP#cptItsoft222.1#
* chip.microprocessor#cptItsoft13#
* chip.RAM#cptItsoft140#

chip.SPECIFIC-DIVISION.METHODOLOGY

name::
* McsEngl.chip.SPECIFIC-DIVISION.METHODOLOGY@cptIt,

BIPOLAR

MOS

MOS είναι Η ΠΙΟ ΔΙΑΔΕΔΟΜΕΝΗ ΤΕΧΝΟΛΟΓΙΑ ΗΜΙΑΓΩΓΩΝ ΠΟΥ ΧΡΗΣΙΜΟΠΟΙΕΙΤΑΙ ΣΤΟΥΣ ΜΙΚΡΟΚΟΜΠΟΥΤΕΡΣ.
ΟΙ ΔΥΟ ΠΙΟ ΔΗΜΟΦΙΛΕΙΣ ΑΝΤΑΓΩΝΙΣΤΕΣ ΤΗΣ MOS ΕΙΝΑΙ ΟΙ ΔΙΠΟΛΙΚΟΙ ΗΜΙΑΓΩΓΟΙ (BIPOLAR) ΚΑΙ Η SOS.

Εχει 3 τύπους:
- CMOS {complimentary metal oxide semiconductor}
- NMOS
- PMOS

SOS

DSP

name::
* McsEngl.conceptIt222.1,
* McsEngl.DSP-chip@cptIt,
* McsEngl.dsp-chip@cptIt222.1, {2012-05-15}
* McsEngl.digital-signal-processor-chip@cptIt,

_DESCRIPTION:
Texas Instruments introduces super-fast chip ------------------------------------------------------------------------
Copyright © 1997 Nando.net Copyright © 1997 The Associated Press
DALLAS (Feb 4, 1997 01:01 a.m. EST) -- Texas Instruments introduced a microprocessor chip that can process 1.6 billion instructions per second, a technical advance that is expected to speed up many computer functions.
The new digital-signal processor chip, introduced Monday, is about 40 times more powerful than a comparable chip found in an ordinary computer modem. A file that currently takes 10 minutes to download off the Internet will take less than five seconds.
DSP chips are responsible for functions like processing sounds, driving modems and making hard drives spin.
Used at a phone company switching center or an Internet service company, the new chip can manipulate signals from 24 calls at once, an operation that previously required 24 chips.
"With this chip, not only will more users be able to log on to the Internet, but they will also be able to download files 120 times faster than today," said Dale Walsh, vice president for advanced development of U.S. Robotics Inc., a modem manufacturer.
In addition to speed, the new chip will allow callers to use one phone line for both regular voice telephone calls and data calls at the same time, eliminating the need for a separate modem line.
Future digital-signal processors in the new product family will be designed for other uses, such as controlling graphics in computers.
Texas Instruments is the leading maker of DSPs with about 45 percent share of the $2.28 billion market, according to Forward Concepts Inc. of Tempe, Ariz. The company is also one of the top U.S. makers of memory chips.

IBM COPPER CHIP

ΠΑΡΑΣΚΕΥΗ 26 ΣΕΠΤΕΜΒΡΙΟΥ 1997 O Πρωτοποριακός Ημιαγωγός της IBM
Η ΙΒΜ ανακοίνωσε πως κατόρθωσε να δημιουργήσει μια νέα τυποποίηση της διαδικασίας παραγωγής ημιαγωγών, που επιτρέπει την περαιτέρω συρρίκνωση των ηλεκτρονικών κυκλωμάτων, με παράλληλη αύξηση της λογικής ευφυίας που μπορεί να φιλοξενηθεί σε ένα chip. Η νέα αρχιτεκτονική τεχνολογία, που ονομάστηκε CMOS 7S, είναι η πρώτη που χρησιμοποιεί χαλκό αντί για αλουμίνιο στην υλοποίηση των κυκλωμάτων που τοποθετούνται σε πλάκες πυριτίου, συνιστώντας το chip. Πρόκειται για εξέλιξη-ορόσημο στην κατασκευή ημιαγωγών. Και αυτό γιατί, παρόλο που ο χαλκός ανέκαθεν αναγνωριζόταν ως καλύτερος αγωγός ηλεκτρισμού, ήταν δύσκολη η προσαρμογή του στην παραγωγή ημιαγωγών, καθιστώντας το αλουμίνιο ως την επόμενη καλύτερη λύση, που χρησιμοποιήθηκε ευρύτατα τα 30 τελευταία χρόνια.
[internet]

FvMcs.SYSTEMS ANALYSIS

name::
* McsEngl.conceptIt224,
* McsEngl.SYSTEMS ANALYSIS@cptIt,
* McsEngl.FvMcs.SYSTEMS ANALYSIS@cptIt,
* McsEngl.systems-analysis@cptIt,

DEFINITION
SYSTEMS ANALYSTS specify the types of information that should be processed by computer and why that information needs computer processing.

FvMcs.IDA

name::
* McsEngl.conceptIt233,
* McsEngl.IDA@cptIt,
* McsEngl.FvMcs.IDA@cptIt,
* McsEngl.IDA@cptIt,
* McsEngl.ida@cptIt233,
* McsEngl.interchange-of-data-between-administrations@cptIt,

DEFINITION

ΤΟ IDA ΘΕΤΕΙ ΤΑ ΘΕΜΕΛΙΑ ΑΝΤΑΛΛΑΓΗΣ ΔΕΔΟΜΕΝΩΝ ΠΟΥ ΘΑ ΚΟΣΤΙΣΕΙ ΣΕ ΠΡΩΤΗ ΦΑΣΗ ΠΕΡΙΠΟΥ 6 ΔΙΣ. ECU ΓΙΑ ΤΑ ΠΕΝΤΕ ΠΡΩΤΑ ΧΡΟΝΙΑ ΤΟΥ, ΕΝΩ ΑΛΛΑ 7 ΔΙΣ ΘΑ ΑΠΑΙΤΗΘΟΥΝ ΓΙΑ ΤΗΝ ΚΟΙΝΟΤΙΚΗ ΠΕΡΙΦΕΡΕΙΑ.
[ΚΑΘΗΜΕΡΙΝΗ, 3 ΟΚΤΩ 1993]

FvMcs.HYPERTEXT NAVIGATION

name::
* McsEngl.conceptIt236,
* McsEngl.HYPERTEXT NAVIGATION@cptIt,
* McsEngl.FvMcs.HYPERTEXT NAVIGATION@cptIt,
* McsEngl.hypertext-navigation@cptIt,
* McsEngl.overview@cptIt,
* McsEngl.network-structure@cptIt,

DEFINITION

HYPERTEXT NAVIGATION ονομάζω τις μεθόδους πρόσβασης της πληροφορίας.

ACCESS TO OVERVIEW

Ο χρήστης πρέπει να εχει πρόσβαση στα ΠΕΡΙΕΧΟΜΕΝΑ άμεσα απο οποιοδήποτε σημείο.

IMPORTANCE#cptCore781#

Frank Halasz from Xerox PARC has put forward the view that a true hypertext system should include an explicit representation of the network structure in its user interface... in most current systems that network is only present inside the computer. At any given time the user sees only the current node and the links leading out from that node; it is up to the user's imagination to picture how the entire network is structured... Halasz's own system, Notecards, is one of the few exceptions.
[Nielsen, 1990, 3#cptResource712]

SPECIFIC

Specific_concepts (level 3) =

BRACKET DIAGRAMS

Το βιβλίο του Martin έχει διαγράμματα με αγκίλες.
[Martin, 1990, 39#cptResource716]

FISHEYE VIEW

FISHEYE VIEWS show the context immedietly surrounding the information of interest in greater detail while information farther away is elided.

INFORMATION VISUALIZERS:

The work of Xerox PARK's user interface Group. It enables databases to appear as physical, 3-D STRUCTURES that can stretch, slide and spin in the air. ΠΟΛΛΗ ΚΑΛΟ ΠΑΡΑΔΕΙΓΜΑ ΓΙΑ ΤΟ ΠΩΣ ΠΡΕΠΕΙ ΝΑ ΕΙΝΑΙ ΤΟ ΠΕΡΙΕΧΟΜΕΝΟ ΕΝΝΟΙΩΝ.

LINKS

OVERVIEW

DYNAMIC OVERVIEW:
has the NoteCards system.
[Nielsen, 1990, 120#cptResource712]

ABSTRACT LEVELS:
each abstract level must contain the previous (more abstract) levels.
[22 Sep 1991]

Η outline του MS Word είναι ένα παράδειγμα πώς θα μπορούσε να είναι το overview. Kάθε οθόνη θα έχει buttons και από οποιοδήποτε σημείο του κειμένου θα σου δεινει το overview σε διαφορετικα επίπεδα αφαίρεσης. Πρεπει να σου δείχνει που εισαι (άρα οι συνδέσεις θα ειναι διπλης κατεύθυνσης) και φυσικα από κει θα μπορεις να πας οπουδήποτε αλλού.
[17 Σεπτ 1992]

Overview will serve the additional function of allowing the user to move rapidly to another part of the structure.
[McAleese, 1989, 152#cptResource714]

SNIPPET BROWSER

snippet browser...gives the words around the searched one.

WORD SEARCH

Index
Το ηλεκτρονικό βιβλίο πρέπει να έχει Index για όλες του τις λέξεις και να κάνει boolean Search and Retrieval.

SPECIFIC(system classification)

NOTECARDS:
It provides overview diagrams.
[Nielsen, 1990, 120#cptResource712]

FvMcs.COMPUTER-INTEGRATED-MANUFACTURING

name::
* McsEngl.conceptIt238,
* McsEngl.COMPUTER-INTEGRATED-MANUFACTURING@cptIt,
* McsEngl.FvMcs.COMPUTER-INTEGRATED-MANUFACTURING@cptIt,
* McsEngl.CIM@cptIt238,
* McsEngl.computer-integrated-manufacturing@cptIt,

Doing#cptCore475#

* information-processing-function#cptItsoft444#

SPECIFIC

Specific_concepts (level 3) =

ALLEN'BRADLEY

name::
* McsEngl.ALLEN'BRADLEY@cptIt,

Allen-Bradley a Milwaukee manufacturer of industrial controls, has achieved recognized success in the development of a sofhisticated form of CAD-CAM called COMPUTER-INTEGRATED MANUFACTURING (CIM). With the cim system Allen-Bradley now can make different versions of a product at mass-production speeds in lots as small as one unit... Through the advent of this technology, Allen-Bradley has reestablished itself as a leader in the highly competitive world market for industrial controls.
[Mondy-et-al, 1988, 593#cptResource80]

FvMcs.FACTORY AUTOMATION SYSTEMS

name::
* McsEngl.conceptIt239,
* McsEngl.FACTORY AUTOMATION SYSTEMS@cptIt,
* McsEngl.FvMcs.FACTORY AUTOMATION SYSTEMS@cptIt,
* McsEngl.factory-automation-system@cptIt,

Doing#cptCore475#

* information-processing-function#cptItsoft444#

measure#cptCore88#

From 1980 to 1985, the purchases of FUCTORY AUTOMATION SYSTEMS doubled to $18.1 billion, and the end is not yet in sight.
[Mondy-et-al, 1988, 592#cptResource80]

FvMcs.Standard.CHARACTER-ENCODING-(charenc)

_CREATED: {2004-05-21} {2004-04-21}

name::
* McsEngl.conceptIt243,
* McsEngl.Standard.CHARACTER-ENCODING-(charenc)@cptIt,
* McsEngl.FvMcs.Standard.CHARACTER-ENCODING-(charenc)@cptIt,
* McsEngl.character-coding-system@cptIt,
* McsEngl.character-encoding@cptIt,
* McsEngl.character-encoding-scheme@cptIt,
* McsEngl.character-encoding-standard@cptIt,
* McsEngl.character-encoding@cptIt243,
* McsEngl.character'standard@cptIt243,
* McsEngl.charenc@cptIt243,
* McsEngl.code-page@cptIt243,
* McsEngl.standardCharacter@cptIt243, {2011-08-30}
====== lagoGreek:
* McsElln.ΚΩΔΙΚΑΣ-ΧΑΡΑΚΤΗΡΩΝ@cptIt,

DEFINITION

An encoding defines a mapping from a code point sequence to a byte sequence (and vice versa). Each encoding has a name, and one or more labels.
[http://encoding.spec.whatwg.org/#encodings]

* A character encoding maps
- a character set
- to units of a specific width and defines byte serialization and ordering rules. Many character sets have more than one encoding. For example, Java programs can represent Japanese character sets using the EUC-JP or Shift-JIS encodings, among others. Each encoding has rules for representing and serializing a character set.
The ISO 8859 series defines 13 character encodings that can represent texts in dozens of languages. Each ISO 8859 character encoding can have up to 256 characters. ISO 8859-1 (Latin-1) comprises the ASCII character set, characters with diacritics (accents, diaereses, cedillas, circumflexes, and so on), and additional symbols.
UTF-8 (Unicode Transformation Format, 8-bit form) is a variable-width character encoding that encodes 16-bit Unicode characters as one to four bytes. A byte in UTF-8 is equivalent to 7-bit ASCII if its high-order bit is zero; otherwise, the character comprises a variable number of bytes.
UTF-8 is compatible with the majority of existing Web content and provides access to the Unicode character set. Current versions of browsers and email clients support UTF-8. In addition, many new Web standards specify UTF-8 as their character encoding. For example, UTF-8 is one of the two required encodings for XML documents (the other is UTF-16).
[http://java.sun.com/j2ee/1.4/docs/tutorial]

The Single Most Important Fact About Encodings
If you completely forget everything I just explained, please remember one extremely important fact. It does not make sense to have a string without knowing what encoding it uses. You can no longer stick your head in the sand and pretend that "plain" text is ASCII.
[http://www.joelonsoftware.com/articles/Unicode.html]

charenc'ENVIRONMENT#cptCore756#

name::
* McsEngl.charenc'ENVIRONMENT@cptIt,

CharEnc'CHARACTER-SET

name::
* McsEngl.CharEnc'CHARACTER-SET@cptIt,
* McsEngl.Character-set-And-Character-enconding@cptIt243i,
* McsEngl.Character-enconding--And-Character-set@cptIt243i,

One character set, multiple encodings

Many character encoding standards, such as ISO 8859 series, use a single byte for a given character and the encoding is straightforwardly related to the scalar position of the characters in the coded character set. For example, the letter A in the ISO 8859-1 coded character set is in the 65th character position (starting from zero), and is encoded for representation in the computer using a byte with the value of 65. For ISO 8859-1 this never changes.

For Unicode, however, things are not so straightforward. Although the code point for the letter a` in the Unicode coded character set is always 225 (in decimal), it may be represented in the computer by two bytes. In other words there isn't a trivial, one-to-one mapping between the coded character set value and the encoded value for this character.

In addition, in Unicode there are a number of ways of encoding the same character. For example, the letter a` can be represented by two bytes in one encoding and four bytes in another. The encoding forms that can be used with Unicode are called UTF-8, UTF-16, and UTF-32.

UTF-8 uses 1 byte to represent characters in the ASCII set, two bytes for characters in several more alphabetic blocks, and three bytes for the rest of the BMP. Supplementary characters use 4 bytes.

UTF-16 uses 2 bytes for any character in the BMP, and 4 bytes for supplementary characters.

UTF-32 uses 4 bytes for all characters.

In the following chart, the first line of numbers represents the position of the characters in the Unicode coded character set. The other lines show the byte values used to represent that character in a particular character encoding.
Code point  U+0041  U+05D0  U+597D  U+233B4
UTF-8  41    D7 90    E5 A5 BD  F0 A3 8E B4
UTF-16  00 41    05 D0    59 7D    D8 4C DF B4
UTF-32  00 00 00 41  00 00 05 D0  00 00 59 7D  00 02 33 B4

charenc'FORMAT

name::
* McsEngl.charenc'FORMAT@cptIt,
* McsEngl.character-format@cptIt243i,

_DEFINITION:
It is any method for representing "characters" which is standard or not.
[KasNik, 2007-12-22]

charenc'character-set

name::
* McsEngl.charenc'character-set@cptIt,

charenc'EVOLUTION#cptCore546.171#

name::
* McsEngl.charenc'EVOLUTION@cptIt,

{time.1963 ASCII.
ΞΕΚΙΝΗΣΕ ΑΠΟ ΤΙΣ ΗΠΑ, 7bit.
[ΑΛΕΞΟΠΟΥΛΟΣ ΚΑ, 1992, 37#cptResource223]

{time.1844 ΚΩΔΙΚΑΣ MORSE.
ΠΡΩΤΟΕΜΒΑΝΙΣΤΗΚΕ.
[ΑΛΕΞΟΠΟΥΛΟΣ et al, 1992, 32#cptResource223]

charenc'format

_CREATED: {2007-12-23}

name::
* McsEngl.charenc'format@cptIt,
* McsEngl.conceptIt243.1,
* McsEngl.character-format@cptIt243.1,

_DEFINITION:
Character_format I call any "character" mapping_method to bits.
"Character_enconding" I call the character_formats that are standards.
[KasNik, 2008-01-03]

_GENERIC
* COMPUTER_REPRESENTATION_METHOD#cptItsoft458#
* FORMAT#cptCore320#

charenc.SPECIFIC

name::
* McsEngl.charenc.SPECIFIC@cptIt,

Specific_concepts (level 3) =
* UNICODE-CHARENCODING#cptItsoft1034.4#

charenc.JAVA'Resource

name::
* McsEngl.charenc.JAVA'Resource@cptIt,

Available Encodings
Name    Character Set
8859_3    ISO 8859-3 (Latin Extended-B) Pinyin, Sami, Croatian, and a few others
8859_4    ISO 8859-4 (Latin Extended-C)
8859_5    ISO 8859-5 Latin/Cyrillic
8859_6    ISO 8859-6 Latin/Arabic
8859_7    ISO 8859-7 Latin/Greek
8859_8    ISO 8859-8 Latin/Hebrew
8859_9    ISO 8859-9 Latin/Turkish
Big5    The Big 5 encoding for Chinese
CNS11643  Chinese

Cp037    EBCDIC American English
Cp273    IBM273
Cp277EBCDIC Danish/Norwegian
Cp278EBCDIC Finnish/Swedish
Cp280EBCDIC Italian
Cp284EBCDIC Spanish
Cp285EBCDIC UK English
Cp297EBCDIC French
Cp420EBCDIC Arabic 1
Cp424EBCDIC Hebrew
Cp437the original DOS IBM PC character set, essentially ASCII with a few extra characters for drawing lines and boxes
Cp500EBCDIC Flemish/Romulsch
Cp737DOS Greek
Cp775DOS Baltic
Cp850DOS Latin-1
Cp852DOS Latin-2
Cp855DOS Cyrillic
Cp856IBM856
Cp857DOS Turkish
Cp860DOS Portuguese
Cp861DOS Icelandic Cp862DOS Hebrew Cp863DOS Canadian French Cp864DOS Arabic Cp865IBM865 Cp866IBM866 Cp868EBCDIC Arabic Cp869DOS modern Greek Cp870EBCDIC Serbian Cp871EBCDIC Icelandic Cp874Windows Thai Cp875IBM875 Cp918EBCDIC Arabic 2 Cp921IBM921 Cp922IBM922 Cp1006IBM1006 Cp1025IBM1025 Cp1026IBM1026 Cp1046IBM1046 Cp1097IBM1097 Cp1098IBM1098 Cp1112IBM1112 Cp1122IBM1122 Cp1123IBM1123 Cp1124IBM1124 Cp1250Windows Eastern European (essentially ISO Latin-2) Cp1251Windows Cyrillic
Cp1252Windows Western European (essentially ISO-Latin-1)
Cp1253Windows Greek
Cp1254Windows Turkish
Cp1255Windows Hebrew
Cp1256Windows Arabic
Cp1257Windows Baltic
Cp1258    Windows Vietnamese
EUCJIS    Japanese EUC
GB2312  Chinese
JIS    Japanese Hiragana
JIS0208  Japanese
KSC5601  Korean

MacArabicThe Macintosh Arabic character set
MacCentralEuropeThe Macintosh Central European character set
MacCroatianThe Macintosh Croatian character set
MacCyrillicThe Macintosh Cyrillic character set
MacDingbatZapf Dingbats
MacGreekThe Macintosh modern Greek character set
MacHebrewThe Macintosh Hebrew character set
MacIcelandThe Macintosh Icelandic character set
MacRomanThe Macintosh Roman character set
MacRomaniaThe Macintosh Romanian character set
MacSymbolThe Symbol font (includes a complete Greek alphabet in place of the usual Roman letters)
MacThaiThe Macintosh Thai character set
MacTurkishThe Macintosh Turkish character set
MacUkraine  The Macintosh Ukrainian character set
SJIS    Windows Japanese
UTF8    UCS Transformation Format, 8-bit form
Unicode  Normal Unicode
UnicodeBig  Unicode with big-endian byte order
Note that just because Java can read and write the appropriate bytes for a character set does not mean the host platform has the fonts needed to display that character set.
[Last Modified April 8, 1997 Copyright 1997 Elliotte Rusty Harold elharo@sunsite.unc.edu]

DEFINITION

Wikipedia (IPA: /?wiki?pi?di.?/, /?w?ki?pi?di.?/, or /?wa?ki?pi?di.?/ (Audio (U.S.) (help·info)) is a multilingual, web-based, free content encyclopedia project. Wikipedia is written collaboratively by volunteers; the vast majority of its articles can be edited by anyone with access to the Internet. Wikipedia's name is a portmanteau of the words wiki (a type of collaborative website) and encyclopedia. Its main servers are in Tampa, Florida, with additional servers in Amsterdam and Seoul.
[http://en.wikipedia.org/wiki/Wikipedia] 2007-06-23

3.3 Crowdsourced knowledge: Wikipedia
Wikipedia is an online encyclopaedia where contributors write, edit, maintain and sometimes fight over
the content creation of this crowdsourced online platform. Over 4.5 million (English) pages have been
shaped by over 21 million contributors, although only a small proportion of users contribute regularly.61
Wikipedia is the world’s sixth most popular website, and serves 454 million people with one billion page
views every month.62 While some articles have reported false information and been accused of being
prone to bias, anyone is able to contribute on any topic, and all articles are collaboratively created and
edited. It remains a significant achievement that at once captures many elements of the collaborative
economy. As a public repository of knowledge built through internet technologies and collaborative
participation, it demonstrates a commitment to encouraging openness, inclusivity and the commons.
Website: www.wikipedia.org
[http://www.nesta.org.uk/sites/default/files/making_sense_of_the_uk_collaborative_economy_14.pdf]

wp'GENERIC

_GENERIC:
* wiki-site#ql:wikisite-580i#,
* ENCYCLOPEDIA-(application)#cptIt486#

wp'Article

name::
* McsEngl.wp'Article@cptIt,

DEFINETRO:
In an encyclopedia or other reference work, an article is a primary division of content.
[http://en.wikipedia.org/wiki/Article_%28publishing%29] 2007-07-06

_QUANTITY:
-------------------------------------------------------
2012-07-13: 4,000,000 articles in English Wikipedia, Izbat al-Burj.
-------------------------------------------------------
2009-08-17: 3,000,177 articles in English at 9:27
2009-06-28: 2,928,793 articles in English
2009-06-23: 2,923,629 articles in English
2009-06-20: 2,920,659 articles in English
-------------------------------------------------------
2008-08-12: 2,500,482 articles in English
2008-01-09: 2,167,739 articles in English
-------------------------------------------------------
2007-11-09: 2,082,880 articles in English
2007-09-09: 2,000,244 articles in English at 12:38
2007-09-09: 1,999,857 articles in English at 11:08
2007-08-19: 1,957,365 articles in English
2007-07-06: 1,866,438 articles in English
2007-01-31: Wikipedia has approximately 7.5 million articles in 253 languages.
------------------------------------------------------
2006.03: 1,000,000 articles in English

2001-01-15: CREATION

wp'Exporting

name::
* McsEngl.wp'Exporting@cptIt,

To_LaTeX_PDF:
* http://de.wikibooks.org/wiki/Benutzer:Dirk_Huenniger/wb2pdf,

wp'Evaluation

name::
* McsEngl.wp'Evaluation@cptIt,

If you're asking what is the process for determining what Wikipedia says on a subject, then we know the answer: it's a democratic process moderated by benevolant dictators. We also know that the process is imperfect; but I for one believe that it's nevertheless as good as or better than the process for determining what appears in other more traditionally authoritative media such as academic papers, history books, and newspapers.
--Michael Kay on the xml-dev mailing list, Monday, 29 Jan 2007 00:08:41
[http://www.cafeaulait.org/]

CONTRADICTION: OPEN NATURE - CLOSED AUTHORS

"Notable criticisms include that its open nature makes it unauthoritative and unreliable, that it exhibits systemic bias, and that its group dynamics hinder its goals."
"Wikipedia's open nature has critics questioning its reliability and accuracy.[9]"
"Wikipedia has approximately 7.5 million articles in 253 languages,[1] 1.84 million of which are in the English edition. It has steadily risen in popularity since its inception,[7] and currently ranks among the top ten most-visited websites worldwide,[8] making it the largest encyclopedia ever compiled in human history and is still rapidly growing."

Wikipedia's OPEN-COLLABORATIVE NATURE made it "the largest encyclopedia ever compiled in human history and is still rapidly growing" (.../wiki/Wikipedia, Retrived 2007-06-23).

Wikipedia's ANONYMITY is the cause of:
* criticisms questioning its reliability and ACCURACY: The truth of a piece of knowledge depends on its "correct" mapping with its referent (the entity of the real-world it reflects/maps). But subjectivity with which people perceive their surrounding world makes things difficult to judge what is "correct". Then the "trusteness" on the author who says/writes something is a major factor to what is correct. Wikipedia has removed this factor and of course increased its criticisms!!!

* wikipedia's trend to become a TOWER OF BABEL: What characterizes todays world knowledge is the MANY-TO-MANY relationship of concepts and terms (= concept designators). A concept is denoted with many terms and a term denotes many concepts.
In this CONTEXT, if someone does not know, or misuse these relationships, he/she does not understand the meaning of a text/speech.
The knowledge of the author help us to know (of course not always) the mapping of the terms he/she uses with the concepts he denotes.
Wikipedia's anonymity increases the misunderstanding of its content.

wikipedia format

== CONTRADICTION: OPEN NATURE - CLOSED AUTHORS ==

<u>point</u>: Wikipedia's '''open-collaborative nature''' is the cause why "it has steadily risen in popularity since its inception, and currently ranks among the top ten most-visited websites worldwide, making it the largest encyclopedia ever compiled in human history and is still rapidly growing" (.../wiki/Wikipedia, Retrived 2007-06-23).<br>
<u>antagonist</u>: Wikipedia's '''anonymity''' is ''the cause of'':<br>
1) criticisms questioning its reliability and ACCURACY: The truth of a piece of knowledge depends on its "correct" mapping with its referent (the entity of the real-world it reflects/maps). But subjectivity with which people perceive their surrounding world makes things difficult on to what is "correct". Then the "trusteness" on the author who says/writes something is a major FACTOR to what is "correct". Wikipedia has removed this factor and of course increased its criticisms!!!<br>
2) wikipedia's trend to become a TOWER OF BABEL: What characterizes todays world knowledge is the MANY-TO-MANY relationships of concepts and terms (= concept designators). A concept is denoted with many terms and a term denotes many concepts. In this CONTEXT, if someone does not know, or misuse these relationships, he/she does not understand the meaning of a text/speech. The knowledge of the author help us to know (of course not always) the mapping of the terms he/she uses with the concepts he denotes. Wikipedia's anonymity increases the misunderstanding of its content.
<br>~~~~
Kaseluris, Nikos 10:40, 23 June 2007 (UTC)

wp'EVOLUTION#cptCore546.171#

name::
* McsEngl.wp'EVOLUTION@cptIt,

_2010-12-12:
The 3.5 million article mark was passed on December 12.

_2009-08-17:
The three millionth article on the English Wikipedia was created on 17 August 2009 at 04:05 UTC.[64]

{time.2007-09-09 2,000,000 articles in english
El Hormiguero is the 2,000,000th article.
[http://en.wikipedia.org/wiki/Main_Page]

{time.2007-04-01 REGISTERED_USERS
English Wikipedia reached 4,000,000 registered user accounts on 1 April 2007,
[http://en.wikipedia.org/wiki/English_Wikipedia]

{time.2006.03 1,000,000 articles in English
[http://en.wikipedia.org/wiki/English_Wikipedia]

{time.2001-01-15 CREATION
Wikipedia's English edition was launched on January 15, 2001, as a complement to Nupedia, an expert-written and now defunct encyclopedia.
[http://en.wikipedia.org/wiki/Wikipedia] 2007-06-23

wp'Language

name::
* McsEngl.wp'Language@cptIt,

Wikipedia is available in 285 languages, and MediaWiki has been translated to almost 400 languages.
[Pau Giner
Interaction Designer
Wikimedia Foundation
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l, 2012-05-22]

wp'MediaWiki#cptIt580.4#

name::
* McsEngl.wp'MediaWiki@cptIt,

wp'Law

name::
* McsEngl.wp'Law@cptIt,

Wikipedia cleared in French defamation case
French judge rules that Wikipedia cannot be held liable for information on its site.
By Reuters
Published: November 2, 2007, 5:11 PM PDT

A French judge has dismissed a defamation and privacy case against Wikipedia after ruling the free online encyclopedia was not responsible for information introduced onto its Web site.

The U.S.-based Wikipedia Foundation, which is behind the popular compendium, was sued by three French nationals over a Wikipedia article that said they were gay activists.

Judge Emmanuel Binoche ruled that a 2004 French law limited Wikipedia's liability and noted that contentious references in the disputed article had, in any case, been removed.

"Web site hosts cannot be liable under civil law because of information stored on them if they do not in fact know of their illicit nature," Binoche said in his written ruling released at the Paris civil law court earlier this week.
Now on News.com
Last rites for Real ID plan? When bands leave music labels A higher-end sequel to JPEG Extra: Why your iPod doesn't have Bluetooth

Moreover, Web site hosts are not legally bound to monitor or investigate the origin of the information they store, he added.

Binoche did not rule on the whether the information contained in the article was defamatory and dismissed the plaintiffs' claim for damages.

A legal expert quoted by the Le Monde daily on Friday said it was the first legal case in Europe against Wikipedia, which was founded in 2001.

The community-written encyclopedia provides more than 8 million encyclopedia entries in 250 languages, including 2 million in English. It is produced by volunteers and anyone with Internet access can offer new entries or edit existing ones.
[http://www.news.com/Wikipedia-cleared-in-French-defamation-case/2100-1030_3-6216797.html?tag=nefd.top]

wp'paper-size

name::
* McsEngl.wp'paper-size@cptIt,

Με 1.000.000 σελίδες, έχεις όλη τη Wikipedia
ΑΘΗΝΑ 03/04/2014
Πριν από μια δεκαετία, στα περισσότερα σπίτια, κάποιο από τα ράφια της βιβλιοθήκης κοσμούσαν οι εγκυκλοπαίδειες. Σήμερα, το διαδίκτυο και η ταχύτητα με την οποία ο καθένας μπορεί να έχει πρόσβαση σε οποιαδήποτε πληροφορία έχει περιορίσει την κυκλοφορία έντυπων εγκυκλοπαιδικών εκδόσεων.

Παράλληλα, η δημιουργία ιστοτόπων όπως η Wikipedia, η ελεύθερη διαδικτυακή εγκυκλοπαίδεια, έχει απλοποιήσει τη διαδικασία αναζήτησης πληροφοριών.

Μια νέα εφαρμογή καταμέτρησε το περιεχόμενο της Wikipedia και το αποτέλεσμα είναι πραγματικά εντυπωσιακό.

Σύμφωνα με τη γερμανική διαδικτυακή εφαρμογή PediaPress, απαιτούνται ένα εκατομμύριο σελίδες προκειμένου να εκτυπωθεί ολόκληρο το περιεχόμενο της διαδικτυακής εγκυκλοπαίδειας.

Μάλιστα, οι δημιουργοί του PediaPress, μέσω του ιστοτόπου Indiegogo, συγκεντρώνουν χρήματα ώστε να κάνουν πράξη τον δύσκολο στόχο της εκτύπωσης ολόκληρης της Wikipedia. Όπως υπολογίζουν, χρειάζονται 1.000 τόμοι των 1.200 σελίδων ο καθένας ώστε να γίνει πραγματικότητα το εγχείρημά τους.

Όσο για τον αποθηκευτικό χώρο που πρέπει κανείς να διαθέτει, ώστε να διατηρήσει στο σπίτι του την «έντυπη» Wikipedia, τα παραδοσιακά ράφια μάλλον δεν αρκούν. Και τούτο διότι σύμφωνα με τους υπολογισμούς χρειάζονται περίπου 80 τετραγωνικά μέτρα για να χωρέσουν τους 1.000 τόμους της Wikipedia.
[http://www.nooz.gr/tech/se-1000000-selides-exeis-oli-ti-wikipedia]

wp'Resource

name::
* McsEngl.wp'Resource@cptIt,

_SPECIFIC:
* http://go.mywikipedia.gr//

wp'User

name::
* McsEngl.wp'User@cptIt,

English Wikipedia reached 4,000,000 registered user accounts on 1 April 2007,
[http://en.wikipedia.org/wiki/English_Wikipedia]

wp'Wikimedia-foundation

_CREATED: {2012-08-18}

name::
* McsEngl.wp'Wikimedia-foundation@cptIt,
* McsEngl.conceptIt246.2,
* McsEngl.wikimedia-foundation@cptIt246.2, {2012-08-18}

_DESCRIPTION:
Wikimedia Foundation, Inc. is an American non-profit charitable organization headquartered in San Francisco, California, United States. It is organized under the laws of the state of Florida, where it was initially based. It operates several online collaborative wiki projects including Wikipedia, Wiktionary, Wikiquote, Wikibooks, Wikisource, Wikimedia Commons, Wikispecies, Wikinews, Wikiversity, Wikimedia Incubator, Meta-Wiki and owns the now-defunct Nupedia. Its flagship project, Wikipedia, ranks in the top-ten most-visited websites worldwide.[5] The creation of the foundation was officially announced on June 20, 2003, by Wikipedia co-founder Jimmy Wales,[6] who had been operating Wikipedia under the aegis of his company Bomis.[7]
[http://en.wikipedia.org/wiki/Wikimedia_Foundation]

DEFINITION

BOOK APPLICATION in an INFOTECH-APPLICATION#cptIt97# that holds information as a book.

An electronic book (variously: e-book, eBook, e-Book, ebook, digital book, or even e-edition) is a book-length publication in digital form, consisting of text, images, or both, and produced on, published through, and readable on computers or other electronic devices.[1]
Sometimes the equivalent of a conventional printed book, e-books can also be born digital.
The Oxford Dictionary of English defines the e-book as "an electronic version of a printed book,"[2] but e-books can and do exist without any printed equivalent.
Commercially produced and sold e-books are usually intended to be read on dedicated e-book readers.
However, almost any sophisticated electronic device that features a controllable viewing screen, including computers, many mobile phones, and nearly all smartphones, can also be used to read e-books.
Some companies, such as Amazon, with their Kindle for PC software, provide an emulator that allows a user to read their format on other platforms.
[http://en.wikipedia.org/wiki/Ebook] {2013-08-14}

QUERY#ql:[Level CONCEPT:rl3 cptItsoft266]##itsoft.nfo#

ebook'content

name::
* McsEngl.ebook'content@cptIt,

ebook'evaluation

name::
* McsEngl.ebook'evaluation@cptIt,

1) ΜΕΙΟΝΕΚΤΗΜΑΤΑ

Χρειάζεται να έχεις ένα κομπιουτερ (και ηλεκτρικό ρεύμα) για να το διαβάζεις.

Δεν είναι μεταφέρσιμο όπως το χάρτινο.

Αν δεν είσαι εξοικειομένος με τα κομπιουτερ έχεις στην αρχή ψυχολογικό προβλημα χρήσης.

Οταν είσαι σε ένα σημείο ΔΕΝ έχεις την αίσθηση σε πιο σημείο είσαι και ούτε την αίσθηση του μεγέθους αυτού που προκειται να διαβάσεις 1 σελίδα ή 1000 σελίδες.

Κάθε έννοια ΔΕΝ διαβάζεται σειριακά με τη ροή του θέματος, αλλά αλφαβητικά σε σχέση με τα χαρακτηριστικά της.

2) ΠΛΕΟΝΕΚΤΗΜΑΤΑ

1. ΠΙΟ ΓΡΗΓΟΡΗ ΜΑΘΗΣΗ: ΔΙΑΒΑΣΜΑ ΑΠΟ ΠΟΛΛΑ ΣΗΜΕΙΑ.
Μπορείς να ξεκινήσεις να μαθαίνεις με όποιο τρόπο θές εσυ ανάλογα με τις ανάγκες σου:
αναλυτικο, συνθετικό, τυχαίο.
Το χάρτινο κατα 99% διαβάζεται με ένα μόνο απο την αρχή προς το τέλος.

#Η τυχαία προσβαση και μετά η δυνατότητα ακολούθησης οποιουδήποτε δρόμου αναλυτικού ή συνθετικου απο κείνο το σημείο είναι πολύ σημαντική ΜΕΛΛΟΝΤΙΚΑ, γιατί με τη δημιουργία ενός ΣΔΠ με όλη τη γνώση και τη δυνατότητα προσβασης απο οποιοδηποτε σημείο, οποιαδήποτε στιγμή, αυτό που θα προέχει είναι γρήγορη πρόσβαση οποιασδήποτε πληροφορίας. ΑΥΞΗΣΗ ΤΗΣ ΠΑΡΑΓΩΓΙΚΟΤΗΤΑΣ ΜΑΘΗΣΗΣ.#

2. ΔΥΝΑΜΙΚΟ ΕΥΡΕΤΗΡΙΟ: ΨΑΞΙΜΟ κάθε λέξης του βιβλίου.

3. ΔΥΝΑΜΙΚΟ ΠΙΝΑΚΑ ΠΕΡΙΕΧΟΜΕΝΩΝ: ΠΑΡΟΥΣΙΑΣΗ ΣΕ ΕΠΙΠΕΔΑ ΑΦΑΙΡΕΣΗΣ των περιεχομένων μίας έννοιας.
Σε οποιαδήποτε πληροφορία μπορούμε να δούμε τα περιεχόμενά της σε ΕΠΙΠΕΔΑ ΑΦΑΙΡΕΣΗΣ.

3. ΕΙΝΑΙ ΜΕΣΟ ΣΥΣΤΗΜΑΤΟΠΟΙΗΣΗΣ ΚΑΙ ΑΝΑΠΤΥΞΗΣ ΤΗΣ ΓΝΩΣΗΣ:
- στανταρντοποίηση στην ορολογία ίδιων εννοιων.
- όλες οι μερικές έννοιες να έχουν ίδια χαρακτηριστικά. Συστηματοποίηση των μερικών εννοιών ανά ΚΛΑΣΣΕΙΣ.
- ΟΛΟΙ οι ορισμοί θα είναι δεμένοι μεταξύ τους και έτσι δεν θα υπάρχουν κενά και ασάφειες στις έννοιες. Ολες θα ορίζονται βάσει άλλων προηγουμένων μέχρι ΠΑΝΤΑ να φτάνουν σε αρχικούς ορισμούς.

4. ΑΝΑΖΗΤΗΣΗ ΠΛΗΡΟΦΟΡΙΩΝ:
- Μπορεί να χρησιμοποιεί τονιστές λέξεων με διαφορετικά χρώματα και μετά να ψάχνει τις λέξεις που έχουμε τονίσει με μονο με τον τονιστή συγκεκριμένου χρώματος.
- Μπορεί να ψάχνει λέξεις μόνο σε συγκεκριμένο ΕΠΙΠΕΔΟ-ΔΟΜΗΣ του βιβλίου (Κεφάλαιο, παράγραφο κλπ)
- Μπορεί να ψάχνει συνώνυμα ($) (δε λειτουργεί εδώ)
- Μπορεί να ψάχνει όλους τους τύπους μιας λέξεις (%) (δε λειτουργεί εδώ)
- Μπορεί να ψάχνει λέξεις μεσα σε μια ποσότητα λέξεων σε σειρά. "λεξη λεξη"/4 σε σειρά, "λεξη λεξη"@4 μη διαταγμενες.
- Μπορεί να ψάχνει φράσεις: "νευρικο συστημα"

ebook'format

name::
* McsEngl.ebook'format@cptIt,

_ADDRESS.WPG:
* https://en.wikipedia.org/wiki/Comparison_of_e-book_formats,

ebook'price#cptEconomy541.44#

name::
* McsEngl.ebook'price@cptIt,

Apple sued over ebook pricing
The Department of Justice has sued Apple and five of the largest book publishers, alleging that they colluded to increase the price of ebooks, saying that a change to the industry’s model at the time Apple launched its iPad tablet has cost consumers “tens of millions of dollars”.

Sources close to the publishers said the DoJ was expected to immediately settle with three of the five publishers: Hachette, HarperCollins and Simon & Schuster.

http://link.ft.com/r/EB8122/IIOJ12/FXYCNX/GD3YXA/JE0KOK/PJ/h?a1=2012&a2=4&a3=11,

ebook'program

name::
* McsEngl.ebook'program@cptIt,

_SPECIFIC:
* creator-program##
* manager-program##
* reader-program##

ebook'program.READER

name::
* McsEngl.ebook'program.READER@cptIt,
* McsEngl.ebook'reader-program@cptIt,

calibre

_CREATED: {2013-05-29}

name::
* McsEngl.calibre-program@cptIt,

_DESCRIPTION:
calibre is free and open source e-book computer software that organizes, saves and manages e-books, supporting a variety of formats. It also supports e-book syncing with a variety of popular e-book readers and will, within DRM restrictions, convert e-books between differing formats.
[http://en.wikipedia.org/wiki/Calibre_(software)]

ebook'protection

name::
* McsEngl.ebook'protection@cptIt,

ebook'reader-device

_CREATED: {2012-04-30}

name::
* McsEngl.ebook'reader-device@cptIt,
* McsEngl.conceptIt266.1,
* McsEngl.ebook-reader-device@cptIt266.1,

_DESCRIPTION:
An e-book reader, also called an e-book device or e-reader, is a mobile electronic device that is designed primarily for the purpose of reading digital e-books and periodicals.
Any device that can display text on a screen may act as an e-book reader, but specialised e-book reader designs may optimise portability, readability (especially in bright sun) and battery life for this purpose. A single e-book holds the equivalent of many printed texts with no added mass or bulk.
An e-book reader is similar in form to a tablet computer. A tablet computer typically has a faster screen capable of higher refresh rates which makes them more suitable for interaction. Tablet computers also are much more versatile, allowing one to consume multiple types of content, as well as create it. The main advantages of e-book readers are better readability of their screens especially in bright sunlight and longer battery life. This is achieved by using electronic paper technology to display content to readers.
E-book readers typically have some form of internet connection and sometimes have a relationship to a digital e-book seller, allowing the user to buy and receive digital e-books through this seller. In this way the books owned by the user are managed in the cloud, and the e-book reader is able to download material from any location. An e-book reader may also download material from a computer or read it from a memory card.
Research released in March 2011 indicated that e-books and e-book readers are more popular with the older generation than the younger generation in the UK. The survey carried out by Silver Poll found that around 6% of over-55s owned an e-book reader compared with just 5% of 18 to 24-year-olds.[1]
According to an IDC study from March 2011, sales for all e-book readers worldwide rose to 12.8 million in 2010; 48% of them were Kindle models, followed by Barnes & Noble Nook devices, Pandigital, Hanvon and Sony Readers (about 800,000 units for 2010).[2]
It has been reported that there are differing levels of dissatisfaction among owners of different e-book readers due to the inconsistent availability of sought-after e-book titles. A survey of the number of contemporary and popular titles available from e-book stores revealed that Amazon.com has the largest collection, over twice as large as that of Barnes and Noble, Sony Reader Store, Apple iBookstore and OverDrive, the public libraries lending system.[3]
[http://en.wikipedia.org/wiki/E-book_reader]

ebook'resourceInfHmn#cptResource843#

name::
* McsEngl.ebook'resourceInfHmn@cptIt,

_ADDRESS.WPG:
* http://en.wikipedia.org/wiki/Comparison_of_e-book_formats,
* http://bookos.org//
===
* The Future of Digital Publishing – The Synergy between HTML5 and EPUB 3
- By Michael Kozlowski
- http://goodereader.com/blog/electronic-readers/the-future-of-digital-publishing-the-synergy-between-html5-and-epub-3//

ebook'GENERIC

_GENERIC:
* book#cptResource844#
* econtent#cptItsoft97#

SPECIFIC

name::
* McsEngl.ebook.specific@cptIt,
* McsEngl.dbk.specific@cptIt,

_SPECIFIC:
* https://en.wikipedia.org/wiki/Comparison_of_e-book_formats,
===
There are five main ebook formats at present. Mobipocket, KF8, Topaz,[44] ePub and PDF.
[http://en.wikipedia.org/wiki/Digital_rights_management]
===
* epub##
* hitp##
* pdf##
* mobi##
* msword##

ebook.format.EPUB

name::
* McsEngl.ebook.format.EPUB@cptIt,
* McsEngl.ebook.epub@cptIt,
* McsEngl.epub@cptIt,
* McsEngl.EPUB@cptIt, {2013-05-14}
* McsEngl.ElectronicPUBlication@cptIt,

_ADDRESS.WPG:
* http://www.epubor.com/epub-builder-freeware.html

_DESCRIPTION:
The .epub or OEBPS format is an open standard for e-books created by the International Digital Publishing Forum (IDPF). It combines three IDPF open standards:
Open Publication Structure (OPS) 2.0, which describes the content markup (either XHTML or Daisy DTBook)
Open Packaging Format (OPF) 2.0, which describes the structure of an .epub in XML
OEBPS Container Format (OCF) 1.0, which bundles files together (as a renamed ZIP file)
The EPUB format has gained some popularity as a vendor-independent XML-based e-book format. The format can be read by the Kobo eReader, BlackBerry devices, Apple's iBooks app running on Macintosh computers and iOS devices, Google Books app running on Android and iOS devices, Barnes & Noble Nook, Amazon Kindle Fire,[1] Sony Reader, BeBook, Bookeen Cybook Gen3 (with firmware v2 and up), COOL-ER, Adobe Digital Editions, Lexcycle Stanza, BookGlutton, AZARDI, FBReader, Aldiko, CoolReader, Mantano Reader, Moon+ Reader, the Mozilla Firefox add-on EPUBReader, Okular and other reading apps.
Adobe Digital Editions uses .epub format for its e-books, with DRM protection provided through their proprietary ADEPT mechanism. The recently developed ADEPT framework and scripts have been reverse-engineered to circumvent this DRM system.[4]
[https://en.wikipedia.org/wiki/Comparison_of_e-book_formats#EPUB]
===
EPUB (short for electronic publication) is a free and open e-book standard by the International Digital Publishing Forum (IDPF). Files have the extension .epub.
EPUB is designed for reflowable content, meaning that an EPUB reader can optimize text for a particular display device. EPUB also supports fixed-layout content. The format is intended as a single format that publishers and conversion houses can use in-house, as well as for distribution and sale. It supersedes the Open eBook standard.[3]
[http://en.wikipedia.org/wiki/EPUB]

epub'program

name::
* McsEngl.epub'program@cptIt,

ePub Builder Freeware List:
# 1: Sigil
# 2: eCub
# 3: Calibre
# 4: iBooks Author
[http://www.epubor.com/epub-builder-freeware.html]
* https://addons.mozilla.org/en-US/firefox/addon/epubreader//
* https://chrome.google.com/webstore/detail/magicscroll-ebook-reader/ghgnmgfdoiplfmhgghbmlphanpfmjble,

Sigil

Sigil is an open-source editor for EPUB e-books developed by Strahinja Markovic in 2009 and maintained by John Schember since 2011.[2]

As a cross-platform application, it is distributed for the Microsoft Windows, Mac OS X and Linux platforms under the GNU GPL license. Sigil supports both WYSIWYG and code-based editing of EPUB files, as well as the import of HTML and plain text files.[3][4]
[http://en.wikipedia.org/wiki/Sigil_(application)]

epub'standard

name::
* McsEngl.epub'standard@cptIt,

_ADDRESS.WPG:
* http://www.idpf.org/epub/30/spec/epub30-overview.html#sec-intro,

ebook.format.MOBIPOCKET

name::
* McsEngl.ebook.format.MOBIPOCKET@cptIt,
* McsEngl.ebook.mobi@cptIt,

_DESCRIPTION:
Mobipocket[edit]
Format:  Mobipocket
Published as:  .prc; .mobi
The Mobipocket e-book format is based on the Open eBook standard using XHTML and can include JavaScript and frames. It also supports native SQL queries to be used with embedded databases. There is a corresponding e-book reader.
The Mobipocket Reader has a home page library. Readers can add blank pages in any part of a book and add free-hand drawings. Annotations – highlights, bookmarks, corrections, notes, and drawings – can be applied, organized, and recalled from a single location. Images are converted to GIF format and have a maximum size of 64K,[17] sufficient for mobile phones with small screens, but rather restrictive for newer gadgets. Mobipocket Reader has electronic bookmarks, and a built-in dictionary.
The reader has a full screen mode for reading and support for many PDAs, Communicators, and Smartphones. Mobipocket products support most Windows, Symbian, BlackBerry and Palm operating systems, but not the Android platform. Using WINE, the reader works under Linux or Mac OS X. Third-party applications like Okular and FBReader can also be used under Linux or Mac OS X, but they work only with unencrypted files.
The Amazon Kindle's AZW format is basically just the Mobipocket format with a slightly different serial number scheme (it uses an asterisk instead of a dollar sign), and .prc publications can be read directly on the Kindle. The Kindle AZW format also lacks some Mobipocket features such as JavaScript.[18]
Amazon has developed an .epub to .mobi converter called KindleGen,[19] and it supports IDPF 1.0 and IDPF 2.0 EPUB format.
[https://en.wikipedia.org/wiki/Comparison_of_e-book_formats#Mobipocket]

ebook.format.POSTSCRIPT

name::
* McsEngl.ebook.format.POSTSCRIPT@cptIt,

ebook.GOOGLE

name::
* McsEngl.ebook.GOOGLE@cptIt,

How Many Books Are Stored in Digital Libraries?
Google has digitally scanned around 25 million books, but most are not publicly accessible due to copyright issues.

Google is the world's most popular search engine, but it would also like to
be your go-to destination when you want to read something other than
webpages. In 2002, Google launched an ambitious project to digitize as many
of the world's books as possible, and, as of 2019, it has scanned at least
25 million titles, borrowed from major university libraries. The only
problem is, you probably won't be able to read them. While Google
envisioned an age of unprecedented access to reading material, many
publishers and authors thought that Google Books was simply putting their
work online for anyone to read, without paying anything for it. The two
sides finally agreed to a Book Rights Registry, but a federal judge blocked
the deal on copyright grounds in 2011. The case was dismissed two years
later, but the project hasn't made much progress since. The 25 million
digitized volumes are now typically accessed only by researchers and
librarians, who are allowed to read a least portions of the cache.

Read More:
http://www.wisegeek.com/how-many-books-are-stored-in-digital-libraries.htm?m {2019-04-27}

FvMcs.machine.CASHIER

name::
* McsEngl.conceptIt272,
* McsEngl.machine.CASHIER@cptIt,
* McsEngl.FvMcs.machine.CASHIER@cptIt,
* McsEngl.cashier machine@cptIt,
* McsElln.ΤΑΜΕΙΑΚΗ ΜΗΧΑΝΗ@cptIt,

Doing#cptCore475#

* information-processing-function#cptItsoft444#

ΚΑΡΤΑ ΕΠΙΚΟΙΝΩΝΙΑΣ ΜΕ ΥΠΟΛΟΓΙΣΤΗ

Επιτρεπει την online επικοινωνια μηχανης και υπολογιστη. Εχει εγκατασταθει στις μηχανές Sarena. Κατασκευάστηκε απο την Ν. Τσαουσίδης και Σια ΟΕ.

SPECIFIC

Sarema XT: gamasoft computers

FvMcs.CAD/CAM/CAE/GIS

name::
* McsEngl.conceptIt274,
* McsEngl.CAD/CAM/CAE/GIS@cptIt,
* McsEngl.FvMcs.CAD/CAM/CAE/GIS@cptIt,
* McsEngl.CAD@cptIt274,
* McsEngl.computer aided design@cptIt,
* McsEngl.program.cad@cptIt274,
* McsEngl.CAM/CAE/GIS@cptIt,

GENERIC

_GENERIC:
GRAPHICS PROGRAM#cptIt106#

ΠΡΟΜΗΘΕΥΤΕΣ

ΠΡΟΜΗΘΕΥΤΕΣ:
1992: ΙΒΜ 9,41%, AUTODESK 7,17%, CADENCE 7,17%, INTERGRAPH 6,31%, COMPUTER VISION 4,74%
[COMPUTER ΓΟ, ΜΑΡΤ 1993, 53]

FvMcs.machine.SATELLITE

name::
* McsEngl.conceptIt282,
* McsEngl.machine.SATELLITE@cptIt,
* McsEngl.FvMcs.machine.SATELLITE@cptIt,
* McsEngl.satellite-machine@cptIt,
* McsEngl.satellite.artificial@cptIt,
* McsEngl.mcnSlt@cptIt,
* McsElln.ΔΟΡΥΦΟΡΟΣ@cptIt,

DEFINITION

ΔΟΡΥΦΟΡΟΣ είναι ΤΕΧΝΟΛΟΓΙΑ-ΕΠΙΚΟΙΝΩΝΙΩΝ#cptIt244.1# ...
[hmnSngo.1995-04]

mcnSlt'GENERIC

_GENERIC:
* machine
* communication technology#cptIt244#

mcnSlt'resource

name::
* McsEngl.mcnSlt'resource@cptIt,

_ADDRESS.WPG:
* https://www.weforum.org/agenda/2016/04/get-ready-for-the-nanosatellite-revolution??

ΟΙΚΟΓΕΝΕΙΕΣ ΠΟΥ ΔΙΑΘΕΤΟΥΝ ΠΑΡΑΒΟΛΙΚΗ ΚΕΡΑΙΑ

6% ΙΣΠΑΝΙΑ
3% ΙΤΑΛΙΑ, ΓΑΛΛΙΑ, ΒΕΛΓΙΟ, ΛΟΥΞΕΜΒΟΥΡΓΟ
2% ΟΛΛΑΝΔΙΑ
1% ΠΟΡΤΟΓΑΛΙΑ
κατω 1% ΕΛΛΑΔΑ
[ΚΑΘΗΜΕΡΙΝΗ, 16 ΑΠΡ. 1995, 29]

FvMcs.machine.Cellular-Phone

name::
* McsEngl.conceptIt284,
* McsEngl.machine.Cellular-Phone@cptIt,
* McsEngl.FvMcs.machine.Cellular-Phone@cptIt,
* McsEngl.mobilephone@cptIt,

* McsEngl.cellphone@cptIt284,
* McsEngl.cell-phone@cptIt284,
* McsEngl.cellular-phone@cptIt284,
* McsEngl.mobile-phone@cptIt284,
* McsEngl.phone.mobile@cptIt284,
====== lagoGreek:
* McsElln.ΚΙΝΗΤΟ-ΤΗΛΕΦΩΝΟ@cptIt,
* McsElln.ΣΥΣΚΕΥΗ-ΚΙΝΗΤΗΣ-ΤΗΛΕΦΩΝΙΑΣ@cptIt,

DEFINITION

_DESCRIPTION:

call.unwanted

name::
* McsEngl.call.unwanted@cptIt,

1.Κάντε μιά ηχογράφηση με το κινητό σε απόλυτη ησυχία.
2.Σώστε την σαν ήχο κλήσης (ringtone)
3.Καταχωρήστε σαν ηχο κλήσησς του ανεπιθύμητου αριθμού και δεν το ξανακούσετε........ www.whocallsme.gr

accident

How Effective Are the Bans on Cell Phone Use While Driving?
State cell phone bans have not reduced the number of car accidents.

Bans on cell phone use while driving have not been found to be effective in
the United States, researchers say. Comparisons of vehicle accident rates
before and after hand-held cell phones were banned while driving have found
no significant difference. It is not known why the bans do not appear to
have an effect on accident rates, but researchers believe it could be
because the laws are difficult to enforce or because drivers still engage
in other distracted behaviors.

Read More: http://www.wisegeek.com/how-effective-are-the-bans-on-cell-phone-use-while-driving.htm?m, {2014-01-01}

HEALTH

July 24, 2008 4:45 PM PDT Cancer doc urges cell phone precaution
http://news.cnet.com/8301-17938_105-9999188-1.html?tag=nefd.top

IMEI

_DESCRIPTION:
Every mobile phone, GSM modem or device with a built-in phone / modem has a unique 15 digit IMEI number. Based on this number, you can check some information about the device, eg brand or model.
Dial *#06# to see your device IMEI
[http://www.imei.info/]

message.text

name::
* McsEngl.message.text@cptIt,
* McsEngl.sms@cptIt,

When Was the First Text Message Sent?
The first mobile phone text message was sent in December 1992.

The concept of text messaging was first developed in 1984, and the first
text message was sent eight years later in December of 1992. The message
read “Merry Christmas” and was sent by British engineer Neil Papworth
from his computer to British telecom Vodaphone executive Richard Jarvis’s
mobile handheld phone. Although the mobile phone was able to display the
text message, mobile phones did not have the capability to respond to text
messages until 1993. Text messaging, technically referred to as short
message service (SMS), had an average of 0.4 messages sent per month in the
US in 1995. By 2011, the average number increased to 35 per person per day,
with 81% of all mobile phone owners texting.
Read More: http://www.wisegeek.com/when-was-the-first-text-message-sent.htm?m, {2015-01-13}

US cell phone users send an average of 700 texts a month, but those age
18-24 send an average of 3,200 per month.
About 75% of people worldwide send text messages, with more than 8.6
trillion messages sent each year. How often people text can vary widely
depending on the country and the usage of mobile phones. The Philippines is
often referred to as the texting capital of the world because it had the
highest texting rate in 2009 -- about 2 billion texts per day. In 2011, the
US surpassed the Philippines for texting, with an average of 6 billion per
day. People text an average of about 700 times per month in the US, but the
numbers can differ by age. For instance, Americans between the ages of 18
and 24 have a much higher average, with about 3,000 texts sent per month.

http://www.wisegeek.com/how-much-do-people-text.htm?m, {2013-06-15}

SAR

name::
* McsEngl.SAR@cptIt,

SAR (Specific Absorption Rate, a measure of the strength of the magnetic field absorbed by the body rating).

SAR-CHECKER:
* https://www.sarchecker.com/brand/
* https://www.samsung.com/sar/sarMain.do

Samsung Galaxy A8:
SAR: Head: 0.26 W/kg Body: 0.76

Huawei Mate 20 Dual:
528€
SAR: H 0.44, B 0.99
4000 mAh

Samsung Galaxy Note 9
SAR: Head: 0.33 W/kg Body: 1.03

10 lowest-radiation cell phones (United States)
Editor's note: When a phone is discontinued by a manufacturer or a carrier, it will be removed from this chart.
 Manufacturer and model  SAR level(digital)
1  Motorola Razr V3x  0.14
2  Samsung SGH-G800  0.23
3  Samsung Soul  0.24
4  Nokia 7390  0.26
5  Motorola Razr2 V8  0.36
6  Samsung SGH-T229  0.383
7  Nokia 6263  0.43
8  Samsung SGH-i450  0.457
9  Samsung SLM SGH-A747  0.478
10  Samsung Access SGH-A827  0.486

10 highest-radiation cell phones (United States)
Editor's note: When a phone is discontinued by a manufacturer or a carrier, it will be removed from this chart.
 Manufacturer and model  SAR level(digital)
1  Motorola V195s  1.6
2  Motorola W385  1.54
2b  RIM BlackBerry Curve 8330 (Sprint)  1.54
2c  RIM BlackBerry Curve 8330 (Verizon Wireless)  1.54
5  Motorola Deluxe ic902  1.53
5a  T-Mobile Shadow (HTC)  1.53
5b  Motorola i335  1.53
8  Samsung Sync SGH-C417  1.51
9  HTC SMT5800  1.49
9a  Motorola Z6c  1.49

location ΕΝΤΟΠΙΣΜΟΣ-ΘΕΣΗΣ

name::
* McsEngl.location ΕΝΤΟΠΙΣΜΟΣ-ΘΕΣΗΣ@cptIt,

Μετρούν το πλήθος με σήματα των κινητών τηλεφώνων    

Για το Flash.gr, Κόσμος
Διεύθυνση του άρθρου: http://world.flash.gr/cosmosl/2007/7/4/32820id/

(ΑΠΕ)
Ρώμη, 10 Ιουλίου 2006. Οι ενθουσιασμένοι «τιφόζι» πηγαίνουν στο στάδιο για να αποθεώσουν την ομάδα τους, που κέρδισε το Παγκόσμιο Κύπελλο. Πηγαίνουν με τα πόδια, με αυτοκίνητα, με σκούτερ. Πόσοι είναι; Δεκάδες, εκατοντάδες χιλιάδες; Ακόμη περισσότεροι; Το επόμενο πρωί θα γίνει γνωστός ο αριθμός τους: ένα εκατομμύριο. Ένας αριθμός που εξακριβώθηκε σε πραγματικό χρόνο, το ίδιο βράδυ, λεπτό προς λεπτό, από μια ομάδα επιστημόνων που είχαν στηθεί μπροστά στις οθόνες τους.

Το ίδιο σενάριο επαναλήφθηκε μια εβδομάδα αργότερα με τη συναυλία της Μαντόνα, στην ιταλική πρωτεύουσα. Με τη βοήθεια του συγκεκριμένου εργαλείου, που είναι μοναδικό στον κόσμο, οι επιστήμονες μέτρησαν 70.000 θεατές στο Ολυμπιακό Στάδιο.

Οι επιστήμονες του ΜΙΤ - σημειώνει η Μοντ - αποκάλυψαν ότι για να μετρήσουν το πλήθος χρησιμοποίησαν τα σήματα που εκπέμπουν τα κινητά τηλέφωνα των συνδρομητών της Telecom Italia. Το πείραμα αυτό, που ονομάστηκε «η Ρώμη σε πραγματικό χρόνο», επέτρεψε την παρουσίαση της ιταλικής πρωτεύουσας κάτω από ένα νέο φως: ολόκληρες γειτονιές απεικονίζονταν σε μεγάλες οθόνες, με φωτεινά σημεία, τόξα διαφόρων χρωμάτων και τρισδιάστατες καμπύλες να υποδεικνύουν τις μετακινήσεις του πληθυσμού, τα πιο πολυσύχναστα μέρη, τα μποτιλιαρίσματα.

Η απεικόνιση αυτή έγινε δυνατή χάρις στη χρησιμοποίηση ανωνύμων και συλλογικών δεδομένων με τα οποία εφοδίασε τους επιστήμονες η εταιρεία τηλεφωνίας. «Στα δεδομένα αυτά εφαρμόσαμε αλγορίθμους τεχνητής ευφυίας», λέει ο Κάρλο Ράτι, διευθυντής του SenseAble City Laboratory του ΜΙΤ, που είναι υπεύθυνο γιᾳυτό το πείραμα. «Με τον τρόπο αυτό μπορέσαμε να αναλύσουμε τις κινήσεις των αυτοκινήτων, αλλά και των πεζών, των ποδηλατιστών...».


Η αρχή του γεωγραφικού εντοπισμού δεν είναι καινούργια: όσοι γονείς επιθυμούν να γνωρίζουν ανά πάσα στιγμή πού βρίσκονται τα παιδιά τους μπορούν να το κάνουν με τη βοήθεια του αριθμού του κινητού τους τηλεφώνου. Οι επιχειρήσεις μπορούν να ελέγχουν τις κινήσεις των υπαλλήλων τους. Και, βέβαια, η δικαιοσύνη έχει χρησιμοποιήσει επανειλημμένα τις εταιρείες τηλεφωνίας για να εντοπίσει τα κινητά τηλέφωνα υπόπτων. Ποτέ μέχρι σήμερα, όμως, δεν είχε αναλυθεί και αξιολογηθεί με τέτοιο τρόπο ένα πλήθος, δεδομένου ότι τα τηλεφωνικά σήματα επιτρέπουν τον διαχωρισμό των αριθμών των ντόπιων από εκείνους των ξένων.

Οι επιστήμονες του ΜΙΤ είναι πεισμένοι ότι η μέθοδός τους και οι πληροφορίες που συγκεντρώνονται χάρις σᾳυτήν ενδιαφέρουν πολλούς οικονομικούς παράγοντες μιας πόλης: τις εταιρείες μεταφορών που θέλουν να επανασχεδιάσουν το δρομολόγιο ενός λεωφορείου, μια αλυσίδα που αναζητεί τα καλύτερα σημεία για το άνοιγμα των καταστημάτων της, διαφημιστές που θέλουν να γνωρίζουν πόσοι άνθρωποι διέρχονται από συγκεκριμένους τόπους ώστε να τοποθετήσουν τις διαφημιστικές τους πινακίδες.

«Η απόκτηση πληροφοριών από κινητά τηλέφωνα είναι πολύ φτηνότερη από το να χρησιμοποιούνται ελικόπτερα ή βιντεοκάμερες», λέει ο Ράτι. Χώρια που θα σταματήσουν οι διαμάχες ανάμεσα στις δυνάμεις της τάξης και τις διάφορες οργανώσεις για τον ακριβή αριθμό των διαδηλωτών σε μια συγκέντρωση...

Μετά το επιτυχημένο αυτό πείραμα, η Ρώμη θα μπορούσε να γίνει η πρώτη πρωτεύουσα που θα λειτουργεί σε «πραγματικό χρόνο». Η εταιρεία μεταφορών Atac σκοπεύει ήδη να χρησιμοποιήσει αυτή τη μέθοδο για να αντικαταστήσει τις δημοσκοπήσεις 2.000 Ιταλών που κάνει κάθε χρόνο. «Σε μερικά χρόνια, θα δούμε ευέλικτες γραμμές, που θα προσαρμόζονται σε πραγματικό χρόνο στις κινήσεις των επιβατών», προβλέπει ο Ράτι.

Το μοναδικό ερώτημα είναι το εξής: αυτή η μέθοδος δεν θα μπορούσε να μετατραπεί σε ένα γιγάντιο εργαλείο που θα επιτρέπει την παρακολούθηση των πολιτών σε όλο τον κόσμο, δεδομένου ότι κινητό τηλέφωνο χρησιμοποιούν σήμερα 3 δισεκατομμύρια άνθρωποι;

Ο εντοπισμός των πολιτών είναι ήδη δυνατός. Οι τράπεζες μπορούν να παρακολουθήσουν τις δαπάνες των πελατών τους χάρις στις πιστωτικές τους κάρτες. Οι εταιρείες τηλεφωνίας γνωρίζουν από πού και προς τα πού γίνεται μια κλήση, καθώς και πόσο διαρκεί. Οι πληροφορίες αυτές χρησιμοποιούνται θεωρητικά μόνο στο πλαίσιο ερευνών της αστυνομίας. «Με την τεχνολογία του ΜΙΤ θα περάσουμε σε ένα νέο στάδιο», σημειώνει ο βέλγος ερευνητής Τιερί Μπαλζάκ, που έχει ειδικευτεί σε θέματα ασφαλείας και ατομικών ελευθεριών. «Η μέθοδος αυτή προτείνει για πρώτη φορά ένα μαζικό γεωγραφικό εντοπισμό που θέτει το ζήτημα της ελευθερίας της κίνησης».

SPECIFIC

ATTRIBUTES:
* PRICE:    <150
* ΜΠΑΤΑΡΙΑ:  1100 mAh Lion
* ΩΡΕΣ_ΟΜΙΛΙΑΣ:  
* CAMERA:  >2 Mp
* ΑΝΟΙΧΤΗ_ΑΚΡΟΑΣΗ:
* ΑΠΟΘΗΚΗ:  >90 MB

MOTOROLA VE538 BLACK 106€ (cosmote)
Χρόνος ομιλίας:  Έως και 7.9 ώρες
Χρόνος αναμονής:  Έως και 406 ώρες
Βάρος:  86 γρ
Μνήμη τηλεφώνου:  10 MB
Εξωτερική μνήμη:  MICRO SD

MOTOROLA Z8 Μετρητοίς: 129€

Motorola Q9h Μετρητοίς: 135,01€

Mitac Mio A501 & Mio map:
499€ Multirama

{time.1984}:
Are Cell Phones Becoming More Affordable?
Motorola's DynaTAC 8000X, the first portable, commercially-available cell phone, cost consumers $3,995 USD in 1984.

The first mobile phone was approved by the Federal Communications
Commission (FCC) in September 1983, and was made available to consumers the
following year. The Motorola DynaTAC 8000X weighed in at a whopping 2
pounds (.9 kg) and quickly earned the nickname "The Brick." The DynaTAC
8000X gave users 30 minutes of talk time before needing to be recharged --
for 10 hours -- and it cost $3,995 USD. DynaTAC was an abbreviation for
"Dynamic Adaptive Total Area Coverage."

Read More: http://www.wisegeek.com/are-cell-phones-becoming-more-affordable.htm?m {2018-01-13}
===
The first cellphone — the Motorola DynaTAC, a.k.a. “The Brick” — went on sale in 1983 for $3,995 (more than $10,000 in today’s dollars). It weighed about 2 pounds, took 10 hours to charge and only lasted about 20 minutes before it went dead.
[https://twitter.com/nytimes/status/1157617611049488389]

FvMcs.chip.GPU

_CREATED: {2012-05-15}

name::
* McsEngl.conceptIt309,
* McsEngl.chip.GPU@cptIt,
* McsEngl.FvMcs.chip.GPU@cptIt,
* McsEngl.GPU@cptIt309, {2012-05-15}

DEFINITION

A graphics processing unit or GPU (also occasionally called visual processing unit or VPU) is a specialized electronic circuit designed to rapidly manipulate and alter memory in such a way so as to accelerate the building of images in a frame buffer intended for output to a display. GPUs are used in embedded systems, mobile phones, personal computers, workstations, and game consoles. Modern GPUs are very efficient at manipulating computer graphics, and their highly parallel structure makes them more effective than general-purpose CPUs for algorithms where processing of large blocks of data is done in parallel. In a personal computer, a GPU can be present on a video card, or it can be on the motherboard or—in certain CPUs—on the CPU die. More than 90% of new desktop and notebook computers have integrated GPUs, which are usually far less powerful than those on a dedicated video card.[1]
The term was popularized by Nvidia in 1999, who marketed the GeForce 256 as "the world's first 'GPU', or Graphics Processing Unit, a single-chip processor with integrated transform, lighting, triangle setup/clipping, and rendering engines that is capable of processing a minimum of 10 million polygons per second". Rival ATI Technologies coined the term visual processing unit or VPU with the release of the Radeon 9700 in 2002.
[http://en.wikipedia.org/wiki/GPU]

SPECIFIC

Specific_concepts (level 3) =

FvMcs.chip.APU

_CREATED: {2012-05-15}

name::
* McsEngl.conceptIt317,
* McsEngl.chip.APU@cptIt,
* McsEngl.FvMcs.chip.APU@cptIt,
* McsEngl.APU@cptIt317, {2012-05-15}

DEFINITION

Rather than CPU, or central processing unit, AMD these days uses the term APU, or accelerated processing unit, meaning that a CPU and discrete-level GPU are combined.
[http://reviews.cnet.com/8301-3121_7-57434006-220/amd-launches-second-generation-apu-processor-series/?tag=mncol;cnetRiver, 2012-05-14]

SPECIFIC

Specific_concepts (level 3) =

FvMcs.ΔΙΑΣ

name::
* McsEngl.conceptIt321,
* McsElln.ΔΙΑΣ@cptIt,
* McsEngl.FvMcs.ΔΙΑΣ@cptIt,
* McsElln.ΔΙΑΣ@cptIt321,

DEFINITION

ΔΙΑΣ
ΔΙΑΤΡΑΠΕΖΙΚΟ ΣΥΣΤΗΜΑ ΣΥΝΑΛΛΑΓΩΝ.
ΜΕΣΑ ΣΤΟ Α' ΕΞΑΜΗΝΟ ΤΟΥ 1993 ΤΟ ΔΙΑΣ ΘΑ ΕΙΝΑΙ ΕΤΟΙΜΟ ΓΙΑ ΤΙΣ ΕΓΚΡΙΣΕΙΣ ΚΑΙ ΠΛΗΡΩΜΕΣ ΠΙΣΤΩΤΙΚΩΝ ΚΑΡΤΩΝ ΚΑΙ ΜΕΤΑ ΘΑ ΑΚΟΛΟΥΘΗΣΕΙ Ο ΣΥΜΨΥΦΙΣΜΟΣ ΤΩΝ ΕΠΙΤΑΓΩΝ.

USES:
* ΣΥΝΑΛΛΑΓΕΣ ΣΕ ΟΠΟΙΔΗΠΟΤΕ ATM ΑΝΕΞΑΡΤΗΤΑ ΤΡΑΠΕΖΑΣ
* ΥΠΗΡΕΣΙΕΣ 7 ΜΕΡΕΣ, 24 ΩΡΕΣ
* ΕΞΑΡΓΥΡΩΣΗ ΕΠΙΤΑΓΩΝ ΣΕ ΟΠΟΙΑΔΗΠΟΤΕ ΤΡΑΠΕΖΑ
* ΑΥΤΟΜΑΤΕΣ ΠΛΗΡΩΜΕΣ
* ΘΑ ΠΕΡΙΟΡΙΣΕΙ ΤΗΝ ΚΥΚΛΟΦΟΡΙΑ ΤΟΥ ΦΥΣΙΚΟΥ ΧΡΗΜΑΤΟΣ

ΔΙΑΤΡΑΠΕΖΙΚΟ ΤΩΝ ΜΙΚΡΩΝ:
ΤΡΑΠΕΖΑ ΕΡΓΑΣΙΑΣ, ΤΡΑΠΕΖΑ ΚΥΠΡΟΥ, XIOSBANK, INTERBANK, ΕΥΡΩΕΠΕΝΔΥΤΙΚΗ ΤΡΑΠΕΖΑ, ΔΩΡΙΚΗ.

ΣΥΜΨΗΦΙΣΜΟ ΕΠΙΤΑΓΩΝ:
ΕΘΝΙΚΗ, ΕΜΠΟΡΙΚΗ, ΙΟΝΙΚΗ, ΦΕΒΡ 1993.

ΧΡΟΝΟΔΙΑΓΡΑΜΜΑ:
Α' ΦΑΣΗ: ΑΡΧΕΣ 1993.

FvMcs.HOME BANKING

name::
* McsEngl.conceptIt322,
* McsEngl.HOME BANKING@cptIt,
* McsEngl.FvMcs.HOME BANKING@cptIt,
* McsEngl.HOME-BANKING@cptIt,
* McsEngl.home'banking@cptIt322,
* McsEngl.Home-work-banking@cptIt,

EVOLUTION
SPREAD

home.banking.EVOLUTION

name::
* McsEngl.home.banking.EVOLUTION@cptIt,

1973:
Initiation of payments by TELEPHONE began in 1973 with the introduction of "in touch" (terminated in 1974) by the Seattle First National Bank.
[Chorafas, 1982, 125#cptResource440]

1982:
The first commercial home-banking and information system was put into operation by chemical Bank of New York in September 1982. The system, called "Pronto" allows customers to use home computers to obtain account information and to perform banking transactions.
[Bowden-et-al, 1984, 205#cptResource436]

Traditionally, the entire depository financial institution industry has operated on an "in-office" basis; the use of ATMs was the first real break with that tradition. Recently, however, forward-looking DFIs have been attempting to expand their market by subscribing to the philosophy of attracting customers where they LIVE OR WORK, rather than where they shop.
[Austin-et-all, 1989, 278#cptResource435]

PREDICTION (1984):
Home banking is comming -
by the end of the 1980s it will be in a period of rapid growth, and
by teh mid-1990s it will be playing a major role in the financial services industry.
[Bowden-et-al, 1984, 205#cptResource436]

home.banking.SPREAD

name::
* McsEngl.home.banking.SPREAD@cptIt,

Today, computer banking has not been introduced on a mass basis, but initial customer reaction to it seems to be far more favorable than it was to previous telephone banking experiments. Easy use, reliable software, increasing experience, and a wider range of services assure strong growth in computerized financial services.
[Austin-et-all, 1989, 278#cptResource435]

FvMcs.FINANCIAL-ITS IMAGE-TECHNOLOGY

name::
* McsEngl.conceptIt323,
* McsEngl.FINANCIAL-ITS IMAGE-TECHNOLOGY@cptIt,
* McsEngl.FvMcs.FINANCIAL-ITS IMAGE-TECHNOLOGY@cptIt,
* McsEngl.financial its image technology@cptIt,
* McsEngl.FINANCIAL-SYSTEM.IMAGE-TECHNOLOGY@cptIt,
* McsEngl.image technology@cptIt,

image.technology.EVOLUTION

Only the top 100 or so banks will be able to afford image hardware and software by the year 2000.
[Bank-Management, Jan 1990, 27#cptResource446]

image.technology.DISADVANTAGES

Increases storage needs dramatically.

image.technology.USE

check processing
customer service
back office

FvMcs.Digital Signal Processing

name::
* McsEngl.conceptIt335,
* McsEngl.Digital Signal Processing@cptIt,
* McsEngl.FvMcs.Digital Signal Processing@cptIt,
* McsEngl.dsp@cptIt335,

DEFINITION

Digital signal processing (DSP) is the study of signals in a digital representation and the processing methods of these signals. DSP and analog signal processing are subfields of signal processing. DSP has at least four major subfields: audio signal processing, control engineering, digital image processing and speech processing.
[http://en.wikipedia.org/wiki/Digital_signal_processing]

dsp'APPLICATION

name::
* McsEngl.dsp'APPLICATION@cptIt,

Applications

The main applications of DSP are audio signal processing, audio compression, digital image processing, video compression, speech processing, speech recognition and digital communications. Specific examples are speech compression and transmission in digital mobile phones, equalisation of sound in Hifi equipment, weather forecasting, economic forecasting, seismic data processing, analysis and control of industrial processes, computer-generated animations in movies, medical imaging such as CAT scans and MRI, image manipulation, and audio effects for use with electric guitar amplifiers. A further application is very low frequency (VLF) reception with a PC soundcard [1].
[http://en.wikipedia.org/wiki/Digital_signal_processing]

dsp'PROCESSOR#cptIt222.1: attSpe#

name::
* McsEngl.dsp'PROCESSOR@cptIt,

dsp'SIGNAL#cptIt25: attPar#

name::
* McsEngl.dsp'SIGNAL@cptIt,

dsp'Resource

name::
* McsEngl.dsp'Resource@cptIt,

isrc.DSP:
* http://www.bores.com/courses/intro/: http://www.bores.com/courses/intro/

isrc.DSP.BOOK:
* http://www.dspguide.com/pdfbook.htm
By Steven W. Smith, Ph.D.: http://www.dspguide.com/pdfbook.htm

dsp.SPECIFIC

name::
* McsEngl.dsp.SPECIFIC@cptIt,

Specific_concepts (level 3) =

FvMcs.machine.PROJECTOR

name::
* McsEngl.conceptIt337,
* McsEngl.machine.PROJECTOR@cptIt,
* McsEngl.FvMcs.machine.PROJECTOR@cptIt,
* McsElln.οκ@cptIt,
* McsEngl.projector@cptIt337,

DEFINITION

_DESCRIPTION:

GENERIC

_GENERIC:
* entity.economic.satisfierWorking.techInfo.machine#cptItsoft1.1#

FvMcs.ozn.CEPIS

name::
* McsEngl.conceptIt338,
* McsEngl.ozn.CEPIS@cptIt,
* McsEngl.FvMcs.ozn.CEPIS@cptIt,
* McsEngl.CEPIS@cptIt,
* McsEngl.cepis@cptIt338,
* McsEngl.council-of-european-professional-informatics-societies@cptIt,
* McsElln.ΣΥΜΒΟΥΛΙΟ-ΕΥΡΩΠΑΙΚΩΝ-ΕΤΑΙΡΙΩΝ-ΕΠΑΓΓΕΛΜΑΤΙΩΝ-ΠΛΗΡΟΦΟΡΙΚΗΣ@cptIt,


EISS

ΑΝΤΙΠΡΟΕΔΡΟΣ Ν.Κ. ΠΑΥΛΙΔΗΣ.
ΠΡΟΕΔΡΟΣ, M. ELZAS.

cepis.EISS

name::
* McsEngl.cepis.EISS@cptIt,

EISS, EUROPEAN INFORMATICS SKILL STRUCTURE,
ΕΔΙΠ, ΕΥΡΩΠΑΙΚΗ ΔΟΜΗ ΙΚΑΝΟΤΗΤΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ.
ΕΙΝΑΙ ΠΡΟΤΥΠΟ ΤΥΠΟΠΟΙΗΣΗΣ ΕΠΑΓΓΕΛΜΑΤΙΚΗΣ ΑΝΑΠΤΥΞΗΣ ΚΑΙ ΠΡΟΣΟΝΤΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΤΟ ΠΡΟΤΥΠΟ ΚΑΤΑΡΤΙΣΤΗΚΕ ΑΠΟ ΤΗΝ CEPIS.

FvMcs.org.SPA

name::
* McsEngl.conceptIt339,
* McsEngl.org.SPA@cptIt,
* McsEngl.FvMcs.org.SPA@cptIt,
* McsEngl.SPA@cptIt,
* McsEngl.spa@cptIt339,
* McsEngl.software-publishers-association@cptIt,

DEFINITION

SPA {Software publishers association} ΕΙΝΑΙ ΟΜΟΣΠΟΝΔΙΑ ΕΤΑΙΡΙΩΝ ΛΟΓΙΣΜΙΚΟΥ ΠΟΥ ΙΔΡΥΘΗΚΕ ΤΟ 1984 ΣΤΙΣ ΗΠΑ. ΕΚΠΡΟΣΩΠΕΙ ΔΙΕΘΝΩΣ ΤΟΝ ΚΛΑΔΟ ΤΟΥ ΛΟΓΙΣΜΙΚΟΥ ΚΑΙ ΕΧΕΙ ΠΑΝΩ ΑΠΟ 900 ΜΕΛΗ ΣΤΙΣ ΗΠΑ ΚΑΙ 159 ΣΤΗΝ ΕΥΡΩΠΗ.
[CGO, SEP 1993, 86]

FvMcs.GENETIC-ALGORITHM

name::
* McsEngl.conceptIt344,
* McsEngl.GENETIC-ALGORITHM@cptIt,
* McsEngl.FvMcs.GENETIC-ALGORITHM@cptIt,
* McsEngl.genetic-algorithm@cptIt344,

DEFINITION

A genetic algorithm (GA) is a search technique used in computing to find exact or approximate solutions to optimization and search problems. Genetic algorithms are categorized as global search heuristics. Genetic algorithms are a particular class of evolutionary algorithms (also known as evolutionary computation) that use techniques inspired by evolutionary biology such as inheritance, mutation, selection, and crossover (also called recombination).
[http://en.wikipedia.org/wiki/Genetic_algorithm]

GENETIC ALGORITHM: A technique based on natural selection, Generations of bit strings are created, combined, and evaluated using genetic-like operations to find near-optimal solutions.
[BYTE, JUL 1993, 108]

FvMcs.MOSES

name::
* McsEngl.conceptIt346,
* McsEngl.MOSES@cptIt,
* McsEngl.FvMcs.MOSES@cptIt,
* McsEngl.MOSES@cptIt,
* McsEngl.moses@cptIt346,
* McsEngl.massive-open-systems-environment-standards@cptIt,

DEFINITION

MOSSES is a loose alliance of client/server users and manufactures. They seek to pool their knowledge to create client/server management standards.
[BYTE, JUN 1993, 104]

moses MEMBERS

Among the members are the Burlington Coat Factory, British Telecomm, Millipore, Oracle, Sequent Computer Systems, and US West Communications.
[BYTE, JUNE 1993, 104]

FvMcs.orgProducing-Autonomy

_CREATED: {2011-09-14}

name::
* McsEngl.conceptIt348,
* McsEngl.orgProducing-Autonomy@cptIt,
* McsEngl.FvMcs.orgProducing-Autonomy@cptIt,
* McsEngl.autonomy@cptIt348,

DEFINITION

Founded in 1996 and utilizing a unique combination of technologies borne out of research at Cambridge University, Autonomy has experienced a meteoric rise. The company currently has a market cap of $7 billion, is the second largest pure software company in Europe and has offices worldwide. Autonomy is a global leader in infrastructure software for the enterprise that helps organizations to derive meaning and value from their information, as well as mitigate the risks associated with those same assets. Autonomy's position as the market leader is widely recognized by leading industry analysts including Gartner, Forrester Research, IDC and Ovum.
[http://www.autonomy.com/content/Autonomy/introduction/index.en.html] 2011-09-14

GENERIC

_GENERIC:
* orgProducing-knowledge,

autonomy'IDOL

name::
* McsEngl.autonomy'IDOL@cptIt,

_DESCRIPTION:
At the heart of Autonomy's infrastructure software lays the Intelligent Data Operating Layer (IDOL) Server. The IDOL Server analyzes data via connectors and stores it in a proprietary structure, optimized for fast processing and retrieval of data. As the information processing layer, IDOL forms a conceptual and contextual understanding of all content in an enterprise, automatically analyzing any piece of information from over 1,000 different content formats and even people's interests. Over 500 complex information centric operations can be performed on digital content by IDOL, including hyperlinking, agents, summarization, taxonomy generation, clustering, eduction, profiling, alerting and retrieval.
IDOL enables organizations to benefit from automation without losing manual control. This complementary approach allows automatic processing to be combined with a variety of human controllable overrides, offering the best of both worlds and never requiring an "either/or" choice.
IDOL integrates with all known legacy systems, eliminating the need for organizations to rip and replace, or cobble together multiple systems to support their disparate components.
[http://protect.autonomy.com/products/idol/index.htm]
===
Autonomy’s Intelligent Data Operating Layer (IDOL) is the common platform for all Autonomy Meaning Based Governance solutions, transparently providing the advanced capabilities that distinguish our solutions and permitting seamless connectivity between our applications. IDOL forms a conceptual and contextual understanding of all electronic information, enabling computers to process information like humans do by reading, watching and listening to it.
IDOL’s advanced analytics automate the processing of all content regardless of its format, location or language. IDOL sits above an organization’s data to perform keyword and conceptual search, speech analytics, audio and video search, and automated, intelligent categorization.
Because Autonomy’s unique meaning-based technology can extract the meaning of all the information used throughout the enterprise, and automate the processing of it, many manual processes and tasks can be eliminated.
[http://protect.autonomy.com/meaning-based-governance/understanding-meaning/index.htm]

autonomy'InformationUnstructured

name::
* McsEngl.autonomy'InformationUnstructured@cptIt,

Human-friendly or unstructured information is not naturally found in the rows and columns of a database, but in documents, web pages, presentations, videos, phone conversations, emails and IMs. We are facing an increasing deluge of unstructured information, with 80% now falling into this category and, according to Gartner, the volume of this data doubles every month. As the amount of unstructured information multiplies, the challenge for the modern enterprise is trying to understand and extract the value that lies within this vast sea of data, whilst minimizing the risk.
[http://www.autonomy.com/content/Autonomy/introduction/index.en.html]

_Quantity:
More than 80% of all data in an enterprise is unstructured information. This encompasses telephone conversations, voicemails, emails, electronic documents, paper documents, images, web pages, video and hundreds of other formats. Unfortunately, attempts to leverage this immense and strategic resource often fail because many businesses lack the requisite technology to understand and effectively utilize content that resides outside the scope of structured databases.
[http://www.autonomy.com/content/Technology/autonomys-technology-a-different-approach/index.en.html]

autonomy'Meaning-based-computing

name::
* McsEngl.autonomy'Meaning-based-computing@cptIt,

Meaning Based Computing (MBC)
Autonomy is the acknowledged leader in the rapidly growing area of MBC. MBC refers to the ability to form an understanding of all information, whether structured, semi-structured or unstructured, and recognize the relationships that exist within it. This allows computers to harness the richness of human information, bringing meaning to all data, regardless of what or where it is. Through sophisticated functionality and analytics, MBC automates manual operations in real-time to offer true business value.
[http://www.autonomy.com/content/Technology/introduction/introduction-meaning-based-computing/index.en.html]

autonomy'ResourceInfHmnn#cptResource843#

name::
* McsEngl.autonomy'ResourceInfHmnn@cptIt,

_ResourceWeb:
* http://www.autonomy.com//

FvMcs.LCD OVERHEAD

name::
* McsEngl.conceptIt351,
* McsEngl.LCD OVERHEAD@cptIt,
* McsEngl.FvMcs.LCD OVERHEAD@cptIt,
* McsEngl.LCD'OVERHEAD@cptIt351,
* McsEngl.lcd-overhead@cptIt,
* McsEngl.projector'lcd@cptIt351,
* McsElln.ΟΘΟΝΗ-ΠΑΡΟΥΣΙΑΣΗΣ-ΓΙΑ-ΥΠΟΛΟΓΙΣΤΗ@cptIt,
* McsElln.ΟΘΟΝΗ-ΠΡΟΒΟΛΗΣ@cptIt,

SPECIFIC

Specific_concepts (level 3) =

PROXIMA 8300, M-DATA.
SAN DIEGO 619-457-5500
NETHERLANDS, 31-43-650248

FvMcs.ozn.ΕΙΠ

name::
* McsEngl.conceptIt355,
* McsEngl.ozn.ΕΙΠ@cptIt,
* McsEngl.FvMcs.ozn.ΕΙΠ@cptIt,
* McsElln.ΕΙΠ@cptIt355,
* McsElln.ΕΛΛΗΝΙΚΟ-ΙΝΣΤΙΤΟΥΤΟ-ΠΛΗΡΟΦΟΡΙΚΗΣ@cptIt,

DEFINITION

ΕΛΛΗΝΙΚΟ ΙΝΣΤΙΤΟΥΤΟ ΠΛΗΡΟΦΟΡΙΚΗΣ: ΙΔΡΥΘΗΚΕ ΤΟ 1985, ΜΕΡΟΣ ΕΕΔΕ, ΑΠΟΒΛΕΠΕΙ ΙΔΙΑΙΤΕΡΑ ΣΤΗΝ ΑΥΞΗΣΗ ΤΗΣ ΑΠΟΤΕΛΕΣΜΑΤΙΚΟΤΗΤΑΣ ΤΟΥ management ΚΑΙ ΤΩΝ ΛΕΙΤΟΥΡΓΙΩΝ ΤΟΥ ΜΕ ΤΗ ΧΡΗΣΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ, ΚΑΙ ΣΗΜΕΡΑ ΔΙΟΙΚΕΙΤΑΙ ΑΠΟ 8ΜΕΛΗ ΔΙΟΙΚΟΥΣΑ ΕΠΙΤΡΟΠΗ.

FvMcs.SSS-PAPER

name::
* McsEngl.conceptIt357,
* McsEngl.SSS-PAPER@cptIt,
* McsEngl.FvMcs.SSS-PAPER@cptIt,
* McsEngl.sss-paper@cptIt,

TITLE PAGE


GEORGE WASHINGTON UNIVERSITY



"SCIENCE SUPPORT SYSTEM" WILL BE AN IMPORTANT
COMPUTER SYSTEM BY THE YEAR 2000


SUBMITTED TO
PROFESSORS HABERMANN & REEDER
DEPARTMENT OF ENGINEERING MANAGEMENT


BY
NIKOLAOS KASSELOURIS



WASHINGTON, D.C.
EMGT 256
December 3, 1990

EXECUTIVE SUMMARY


The majority of current uses of Computer Systems (CSs) support the operation of organizations. The reason is that the relatively simple structure of "operational information" and the current capabilities of the systems.

The position of the paper is that by the year 2000 will be apparent the CSs use in sciences because of technological advantages in the computer systems.

I will prove my position in three steps. First, I will describe the needs of sciences - opportunities for application of CSs. I envision needs for improvement (systematization and integration), needs for development, and needs for acquisition and dissemination of knowledge. Second, I will analyze the existing capabilities of the systems in terms of structure, functions, and user-system interface. Finally, in the third step, I project the present capabilities of CSs emphasizing the attainable objectives by the year 2000, which will be in the previously mentioned parameters of structure, functions, and user-system interface.

I. INTRODUCTION

name::
* McsEngl.I. INTRODUCTION@cptIt,


The advent of Computer System (CS) five decades ago, which "extend our thinking power ... just as gears, gas engines, and electric motors extend our physical power" (Sanders 1988, xxiii), is of the most important events in the 20th century. Since the 1940s there has been a tremendous evolution of CSs and a wide spread use of its applications. Of course, this evolution will continue and revolutions lie ahead (Info..., 19).

Today, what characterizes the majority of the applications of CSs is that they support the manipulation of the "operational information" of organizations (business or other). The reason for that is the existing capabilities of the systems.

The focus of this paper is on scientific uses of CSs. A main source of information in my paper is the 1989 report of the Panel on Information Technology and the Conduct of Research of the Committee on Science, Engineering, and Public Policy which is a joint committee of the National Academy of Sciences, the National Academy of Engineering, and the Institute of Medicine. In this report first of all it is acknowledged that little research exists on general scientific uses of information technology (Info..., 8). Also, the report states that the today impediments in this use are 1) technological, 2) financial, and 3) complex institutional and behavioral constraints (Info..., 11).

The purpose of my paper is to show that the technological improvements will be the determining factor for the widespread use of CSs in sciences.

Approach. In the second section I will describe the existing needs, the driving forces of the evolution. In the next section, "where are we," I will present the present capabilities of the systems. Finally in the fourth section I will expand on recent trends, emphasizing the attainable goals by the year 2000.

II. NEEDS OF SCIENCE - OPPORTUNITIES FOR CSs APPLICATIONS

name::
* McsEngl.II. NEEDS OF SCIENCE - OPPORTUNITIES FOR CSs APPLICATIONS@cptIt,

There is general consensus about the importance of information in our "information age." Already, since the 17th century Francis Bacon, British philosopher, said that knowledge and power are the same thing (Getmanova 1989, 7).

The general need. In the most abstract terms, the existing need is to enhance the productivity of sciences. More specificly there are three needs:
 the need for improvement,
 the need for development, and
 the need for acquisition and dissemination of our knowledge.

Need for improvement. One of the main characteristics of our knowledge is its quantity. "The total amount of scientific information available in the world doubles every twenty months" (Mondy et al 1988,180). This fact created one of the main needs for our society. The need for systematization and integration, in other words improvement of our knowledge. This need is apparent to everyone who is enrolled in our teaching and knowledge producing organizations. Articles as "the management theory jungle" also show this need (Ibid,26). To systematize terminology (Slocum 1989, 29), to resolve ambiguities, to eliminate inconsistencies and contradictions are some needs in this category.

Need for development. Despite the existing quantity of knowledge, the need to expand the frontiers of our knowledge are obvious. And here lies the potential use of the new tools, the CSs, that give us new possibilities (Info..., 12).

Need for acquisition and dissemination. Finally there is the need for acquisition and dissemination existing knowledge. Translation of knowledge from one language to another is a major limit to acquire knowledge (Slocum 1989,24). Creation of abstracts that help to acquire more knowledge and rapidly are another example.Improving teaching methods is another. Finally, improving the dissemination of information, will result in the elimination of duplications an impediment in the productivity of research.

III. WHERE ARE WE

name::
* McsEngl.III. WHERE ARE WE@cptIt,


Understanding the needs of science, potential goals for CSs applications is not enough. One must also be fully aware where he is. So, in this section I analyze the existing capabilities of CSs. Also I include a subsection about the nature of human information, to clarify points necessary in my analysis.

A. HUMAN-INFORMATION IN GENERAL; PHILOSOPHICAL TERMS.

name::
* McsEngl.A. HUMAN-INFORMATION IN GENERAL; PHILOSOPHICAL TERMS.@cptIt,


The irony in the "information age" is that "there is still no accepted integrating theory for dealing with data and information, let alone with knowledge, which is the focus of many so-called `knowledge-based systems'" (Fox 1989, 1).

  Definition of human information (HI). I perceive HI as a unity of three representations. These representations were created in a long historical process together with the creation of humanity. The first representation, is the "thought" in our minds, which represents the real world, a prerequisite for the existing of every animal system. The second representation is the correspondence of sounds (words) in these thoughts. The creation of this second representation was a revolutionary stage for mankind. It was the main thing that differentiated humans from animals, and a prerequisite in the creation of human society. Finally the third representation is the correspondence in the existing entity sounds-thoughts, and visual symbols (letters). This third representation appeared many years after the second representation and was a second revolution in the evolution of humanity. It was the cause for the appearance of sciences as shown in Greek history.

  HI has many forms. The unity of sounds and symbols we call language. In the world many languages exist that represent human thoughts. So, HI exists in many forms. But all these different forms have something in common. All are representations of the same thing, the real world that exists independently of humans but which includes humans.

  Structure of HI. Furthermore, HI can be divided into smaller parts. The indivisible elements which preserve its characteristics, I call concept. The structure of every concept has a language element (which consists of a symbol and a sound component), and a thought, which we usually call meaning. In this perspective, data, information, and knowledge are all conceptual systems (structures of concepts). Its difference depends only in the degree of the complexity of their structure. Of course, there is no clear criteria in this distinction.

  Subjectivity of HI. I must emphasize that the nature of HI depicts its main characteristic, its subjectivity. It is a complex representation of the real world, but not reality itself. So its validity (if it is true or false) depends on its comparison with reality, not just with other information.

B. THE COMPUTER SYSTEM.

name::
* McsEngl.B. THE COMPUTER SYSTEM.@cptIt,


The advent of CSs, machines to manipulate HI, came only when the evolution of technology made feasible to man to do another representation on the human information. This new digital representation is at final analysis a combination of electric circuits, a representation of the symbols of HI. In the early years only numbers and instructions were represented. This is why the first functions of CSs were computations. This fact also gave its name to systems, computers. But, through the years we are witness in the evolution of the complexity in this representation. The next step was the representation of words which gave rise to the creation of data bases. Furthermore, in the 1980's representations of relations between words gave rise to knowledge bases and the advent of the so called "expert systems" and other artificial intelligence products.

  The support role of CSs. But at least now and the next decade, subject to my paper, the CS is unable to deal with the main characteristic of HI, its subjectivity. Only the human at the final analysis is the one who decides about its validity, because only he can compare it with the reality. The system only in very limited ways can decide about the truth of HI, and this can be done only in an indirect way -- through comparisons with other existing conceptual systems. In this perspective, the CSs have a support role, and this support role will continue for many years.

1. The structure of CSs.


  In the early years the structure of CS was simple. Its components were the hardware (input/output devices, storage devices, and the central processing unit), and the software (data, programs). Today with programs that manipulate other programs and not just data-representation but knowledge- representation the distinction of data/programs is not clear.

    Another aspect of the structure of the CS is that the structure may be a simple CS or a network of CSs. The creation of CS networks characterizes the 1980's because of the advent of microcomputers.

    Why the user is not included. It is important to emphasize that in the previous conceptualization I did not include the user(s). The reason is that we are interested in clarifying what the CS can do itself, its strengths and limitations. Of course, the role of the user is vital in relation to HI. Only the user knows the real world, only for the user the manipulated language has meaning, and only the user is responsible in final analysis for the evaluation of the output of CSs,i.e. the comparison with the real world, and how to use this output in his/her activities. Once more, the supporting role of CSs is obvious in this perspective.

2. The functions of CSs.


  My purpose here is to classify the different mental activities that the systems perform, not the various applications these functions have in many areas.

    Communication. It is perceived as an exchange of information between CSs, not the user-system interface. This is one of the most vital function of the systems. The proliferation of networks in the 1980's depict its appearance. Also technologies such as electronic mail, voice mail, teleconfrences, show the existence of this function.

    Computations. This was the first function of the systems and the main function used in sciences today (Mason at al 1990, prologue). Spreadsheet programs and a variety of mathematical models, and simulations used in Decision Support Systems, that perform mainly this function, was one cause for the widespread use of CSs in business organizations.

    Storage-retrieval. This function was the second function, after computation, that the CSs performed. The creation of databases, is a result of this function. Data is human information with the simplest structure. The "operational information" of organizations consists of records of data, and this is another reason why the majority of today's uses of CSs are directed to support the operation of organizations.

    Word processing. It includes all the activities used in text manipulations. It encompass simple tasks such as copy, and move text pieces to more complex functions such as spelling checkers and creation of abstracts by extracting sentences with key words.

    Graphics. Graphics are one of the most rapidly evolving functions. They already play an essential role in many scientific applications (Brodlie 1990, 187). Visualization of a huge volume of numbers affords the user with the capability to quickly extract the information needed.

    Advisory function. With the evolution in computer representation from data to knowledge (representation of a very specific domain) this function was made possible. The expert systems perform mainly this function.

    Natural language processing. It is of the most resent functions. Systems that translate text and systems that accept commands in natural language perform this function. In 1987 about one million pages of text translated by machines, worldwide (Slocum 1990,14). The difference with the "word processing " function is that here the system incorporates syntax knowledge and some meanings.

    Perception. Finally, visual and acoustic perception is another function that the systems perform in very limited domains.

3. User - system interface.

    The nature of the CSs implies one more characteristic other than its functions and structure. The user-system interface. In the evolution of systems, as programmers and users continuously were separating the importance of this characteristic became apparent. There are two aspects in this interface: methods of operation (how the user drives, directs the system), and ways to interface (the means he uses to do it).

    Methods of operation. First of all the interface may or may not be interactive (a continuity of requests and responses). The user must know the specific conventions (computer languages) of the application he runs. Another more recent technique is the pull down menus, where the user has to choose what he wants to do from a list of functions that the system can perform.

    Ways to interface. The dominant mean to interface today is the keyboard (26 Smith 1990, 15). Another resent mean is the Optical Character Recognition, devices with which the user can insert printed material without the use of keyboard. Finally voice input devices have appeared in the market with a lot of limitations. In relation with the output the user can receive the output in a display or in hard copy by a printer.

IV. THE ROAD

name::
* McsEngl.IV. THE ROAD@cptIt,


The challenging goals, described in the section "the needs of science" is a necessary but not sufficient condition to foresee the future. The purpose of this section is to foresee the attainable objectives by the year 2000, through the expansion of today's capabilities of the systems.

1. Future structure.


The evolution of CSs shows that the main characteristic of the structure will be in one word, network. Powerful workstations will have access to databases, libraries of software, expert systems, and powerful mainframes.

  Components. All the sciences do not have the same CSs needs (Info..., 12). But existing problems demand more powerful hardware (Markoff 1990a, D1). The history of CSs shows that the capabilities of CSs in terms of speed and memory capacity will continue, and will be another reason for more computer use in the sciences. In relation to big systems, Parallel processing seems to be a solution in terms of speed for the short term future. For example the Delta system will be installed next spring at the California Institute of Technology and is claimed to be the world's fastest computer (ibid, D1). Also a report prepared for the Department of Energy and the President's office of Science and Technology Policy, estimates that the sales of parallel computers will exceed conventional ones at 1996 (Markoff 1990b, 34). A significant role for more scientific uses of CSs will be the small systems. In the November 1990 Comdex exposition the first generation of desktop 486 systems were displayed. "Scientists who need every bit of performance they can get are expected to be among the early users of desktop 486 systems" (Lewis 1990a, C5). In terms of memory capacity, optical hard disks and diskettes with many times capacity than the present magnetic disks and diskettes will be widely used in ten years and will be another reason for further use of CSs in sciences which demand more storage capacity. Improvements are also expected in networking hardware. Fiber optics and wireless methods will play a role in this area, which is a major factor to improve the communication function of the systems. Finally in ten years the research in optical computers is expected to lead to the first practical systems that will be a revolution in CSs hardware.

2. Future functions.


The purpose hear is to describe the current impediments in the functions, to show concrete trends to surpass them, and how the enhanced functions will give the possibility for further uses of CSs in sciences.

  Communication. Impediments: Incompatibility is the word that expresses the substance of today's impediments (Info..., 21). It is related with a lack of standards in network protocols and standards in the other functions. These standards are necessary to systems in order to perform functions that other systems perform. Another obstacle is the limited spread of existing networks. Trends: In relation to existing networks, a significant expansion is expected. For example, the National Science Foundation has announced its intention to serve as a lead agency in the development of a "truly national research network" (Info..., 21). In relation to standards, text formats for example which are a necessity to communicate text between scientists, it is expected to be resolved the next few years (Info..., 21). Another example is the Britelite machine which demonstrated the previous month at the Comdex exposition that represents "the first major step toward [small] computers that can run software from a variety of operation systems" (Lewis 1990b, F1). The enhanced communication function will be the main reason for wide spread use of CSs in sciences. The report on the uses of information technology in research had emphasized this function and D.N. Langenberg the chair of the panel of the report "strongly believes" that the power of science, derives from communication (Info..., ix).

  Computations. Impediments: The only obstacles in this function are hardware capabilities of the systems. Trends: The evolution in complexity of computations, numerical and symbolic (computations of functions rather than numbers), will continue. An integration with the graphics function is also expected and this will enhance the interpretation of calculations.

  Storage-retrieval. Impediments: Except the storage capacity the main obstacle is searches. "Most information searches at present are incomplete, cumbersome, inefficient, expensive, and executable only by specialists" (Info..., 2). Trends: In ten years we will have a significant improvement in this function. It is expected integration with expert systems and natural language processing techniques. For example the Q&A database system of Symantec Corp. that was marketing in 1989 "can do searches in natural language" and works in desktop systems (Arora 1990, 74). The enhanced capabilities of document and reference databases will be a very important reason for further use of CSs in sciences and an important step to improve the acquisition of knowledge.

  Word processing. Impediments: This function in relation to other functions, is of the most powerless. "Spelling checkers typically look at words in isolation" (Smith 1990, 199). All automatic abstracting just extract sentences and not create new sentences as a human (ibid, 248). Trends: Integration with natural languages processing techniques will improve this function. For example systems like the CRITIQUE, a text processing system that detects syntax errors like number disagreement, wrong pronoun case, wrong verb form, and punctuation (Ravin 1990, 108) will be in wide spread by 2000. Also input hand-drawn or camera images with scanners technology, so important in scientific texts, will improve this function.

  Graphics. Impediments: Creation of standards and demand for powerful workstations are some of the existing obstacles. Trends: Improvements in this function are expected. For example K.W. Brodlie predicts another trend in graphics. Visualization of the problem solving during the process of solving thus allowing the scientist both insight and control over the problem (Brodlie 1990, 200). Also in relation to standards, the ISO began an effort since 1985 which continues to be improved on and to gain acceptability (Brodlie 1990, 189). Another trend is the integration of graphics, sound, text, full-motion video (so called multimedia). In November 28, 1990, ten computer makers announced to offer multimedia PC's. "The technology could be used to create educational or presentation material" (Fisher 1990, D6). This will be another step to improve acquisition of knowledge and another technological cause for more computer use in the sciences. Also, because computer graphics allows new possibilities in research, "computer `see' the unseen" (Kolata 1990, C1), this function is an example how CSs will be, from another point, a necessity for the sciences.

  Advisory function. Impediments: The "very limited domain" that can be represented in CSs (Brooks 1987, 367) is the most significant obstacle. Trends: Improvements in knowledge representation techniques are surely expected. According to an optimistic opinion "during the next ten years, expert systems can be expected to supplement and transform the functions of professionals in every knowledge industry" (Danidson et al 1990, 80). Eventhough I can not predict the exact strength of this function, it will be another important reason for more computer uses in sciences.

  Natural language processing. Impediments: Until now by this function scientists have only managed to represent the symbol portion of HI and the rules used to create symbol (word) structures, or the syntax of HI. However, this is the limit of the function. In reality ambiguities and conflicts in the symbol subsystem are resolved by the sound subsystem (eg with different accent for the same word), or by meaning (same word, different meanings). Not mentioning the most important of all, conflicts in HI, which only the reality resolves, either the comparison with it or the practice ("really works") as we say. Trends: An example of future trends is the START system published in the last publication of the AI laboratory at the Massachusetts Institute of Technology. The "objective is to buillp a practical system that reads sentences, indexes the facts they convey, and retrieves those facts when asked" (Winston at al 1990, 134). The validity of the system was tested many times and one example was from members of the press in the Jet Propulsion Laboratory who asked questions about the Voyager's Neptune encounter in 1989. "The experiment was a success" (Katz 1990, 158). Another trend that will improve this function is the Machine translation techniques (Smith 1990, 273). An example here is the EUROTRA project of the European Communities which began in 1982. In February 1987 the first small-scale translation system was completed, and worked for translation between German, English, and Danish (Maegaard 1989, 47). In general, improvements in this function will obviously be a cause for further use of CSs in sciences.

  Perception. Impediments: A major obstacle for practical applications of these systems is their speed in both processing and accessing data. Perceptual systems involve manipulating fantastically large quantities of data and most potential areas of application of these systems demand that their tasks must be done in a timely fashion. Trends: Based on current levels of activity, the situation is expected to improve dramatically over the next ten years. Raw computer processing power has been increasing and will continue to do so at unprecedented rates. This has been accompanied by new types of data and knowledge representation structures together with corresponding processing algorithms that are designed to exploit the new hardware architectures. For example, this field has been one of the major consumers of new types of parallel processing hardware and algorithmic techniques. Particularly important applications for sciences will be in the area of visual based man-machine communication. Visual based communication requires that a machine must be able to understand images as well as be able to generate them. The problem of how to generate images is being solved by computer graphics researchers. The problem of how to interpret input images is being be solved by the application of machine vision techniques. So, the enhanced perception function will be another reason for more computer use in sciences.

3. Future user-system interface


In general, it is certain that in ten years a significant improvement in user-system interface will be done. This will result in an improvement on all CSs functions and further computer uses in sciences.

  Methods of operation. Impediments: "User-unfredliness" is the word we use to express current obstacles. The cause for this is the quantity and complexity of conventions the user needs to know to operate the system. "Powerful query languages are rather difficult to learn for nonprogrammers" (Thorpe et al 1989, 152). Trends: The future in this area are natural languages interfaces that "are becoming reasonable option and not a source of endless frustration" (Katz 1990, 158). Especially in databases the assistant role of expert systems will play a major role to make the systems more easy to be operated.

  Ways to interface. Impediments: The major obstacle is the "keyboard bottleneck" (Sanders 1988, 216). Also voice input is in its infancy (Smith 1990, 15). Trends: The new optical character recognition and scanners technology will reach a mature stage in ten years. This will be a very important cause for further scientific uses of CSs because scientists mainly deal with texts. The use of optical character recognition is for example forty times faster than a typist (Smith 1990, 7). Understanding handwriting is another technology that will play a role. This year, eg Tandy corporation introduced its 4.5 pound pen-based system that accept handwriting commands (Shapiro 1990, D5). E.G. Glass, a consultant, estimates that sales of pen-based systems could reach $3 billion by the year 2000 (Shapiro 1990, D5). Finally improvements in voice recognition are expected to result in a more easy and quick way to interface with the system.

V. CONCLUSION

name::
* McsEngl.V. CONCLUSION@cptIt,


Ten years in relation with the evolution of our society is extremely short time. But, in relation with the evolution of CSs, ten years (1990-2000), is not quite so short a time. What I emphasized in this paper is that today the majority of uses of CSs support the operation of organizations because of the relatively simple nature of "operational information" and the capabilities of CSs. Also the reason for the relatively small computer use in science is that the nature of scientific information demands enhanced capabilities. My vision is that by the year 2000 the use of CSs in sciences will be apparent, because the enhanced capabilities of the systems will give this possibility. In relation to my title, what I want to say is that the enhanced capabilities of the systems will create a new quality of systems that I call "Science Support Systems".


Further trends in the future. I strongly believe that revolutionary changes in the evolution of CSs are ahead, in the 21th century. As in every evolutionary process, the results are becoming causes for further development. The use of CSs in sciences will continue and this use will become a necessity, as for example the use of CSs in high energy physics is essential (Info..., 12). Also expansion of the frontiers of our knowledge because of computer use is expected. Understanding very complex systems of the real world as a society in concrete terms where huge amounts of information is needed to be manipulated, only through the use of future powerful CSs can this be done. Finally, research in knowledge representation techniques will help us to better understand the nature of human information.


The cost factor. Eventhough my position is that technological advantages will be the predominant factor for more computer uses in sciences, the cost factor is not underestimated. For example in the Comdex exposition of the previous month the prices "have fallen sharply since last year (Lewis 1990a, C5).


Truth of the position. The methodology used in the paper was that of extrapolation of current trends. But, the validity of my assertions is in final analysis a matter of time. In other terms, a comparison with what will happen in reality.

The ultimate goal. Finally, I want to emphasize that the ultimate goal to improve the power of CSs is not the knowledge itself but through improvements of our knowledge about our social system and its environment to improve our society.-

VI. BIBLIOGRAPHY

name::
* McsEngl.VI. BIBLIOGRAPHY@cptIt,

Arora, Raj. "Software Review - Symantec Q&A." Journal of Business & Industrial Marketing 5 (No2, Summer/Fall 1990): 74-76.

Brodlie, K.W. "Computer graphics for scientific computing." In Scientific Software Systems. Edited by J.C. Mason and M.G. Cox. pp187-201. London: Chapman and Hall, 1990.

Brooks, H.M., "Expert Systems and Intelligent Information Retrieval." Information Processing & Management 24 (No 4, 1987): 367-382.

Davidson, L., and S. Peter. "Expert Systems for Library Applications." Database 13 (No1,Feb 1990): 80-83.

Er, M.C., "DSSs: A Summary, Problems, and Future Trends." Decision Support Systems 4 (1988): 355-363.

Fisher,L.M. "10 Computer Makers Agree to Offer Multimedia PC's." The New York Times (November 28, 1990): D6.

Fox, Fox E.A., "Research and Development of Information Retrieval Models and their Application" Information Processing & Management 25 (1989): 1-5.

Getmanova, Alexandra. Logic. Moscow: Progress Publishers,1989.

Information Technology and the Contuct of Research: The User's View. Report of the Committee on Science, Engineering, and Public Policy. Washington D.C.: National Academy Press, 1989.

Katz, Boris. "Using English for Indexing and Retrieving." In Artificial Intelligence at MIT: Expanding Frontiers. Edited by P.H. Winston, and S.A. Shellard. pp135-165. Cambridge, Mass: The MIT Press, 1990.

Keen, Peter G.W., "DSSs: The Next Decade." Decision Support Systems 3 (1987) : 253-265.

Kolata,Gina. "Shaping Floods of Data, Computers `see' the Unseen." The New York Times (Nov 20, 1990): C1.

Lasden,Martin, "DSS: Mission Accomplished?" Computer Decisions 19 (Apr 6, 1987): 41-42.

Lewis,P.H. "Provocative Diskette Technologies" The New York Times (Nov 13, 1990a): C5. "More and More Portables, With More and More Power." The New York Times (Nov 18, 1990b): F11.

Lippincott, Rob., "Beyond Hype: Multimedia Currently Occupies that Gray Area Between Potential and Reality. Will it Ever See the Light?" Byte 15 (no 62, Febr. 1990) : 215-218.

Maegaard,B. "EUROTRA: The Machine Translation Project of the European Communities." In Perspectivesin Artificial Intelligence: vollume 2. Edited by J.A.Campbell, and J.Cuena. pp 39-47. New York: Ellis Horwood Limited, 1989.

Refinetti,R., "Information Processing as Central Issue in Philosophy of Science" Information Processing & Management 25 (No5, 1989): 583-584.

Sanders,D.H., Computers Today. 3rd ed. NY: McGraw-Hill, 1988.

Slocum,J. "Machine Translation: Practical issues." In Perspectives in Artificial Intelligence: vollume 2. Edited by J.A.Campbell, and J.Cuena. pp 13-38. New York: Ellis Horwood Limited, 1989.

Smith,Peter D. An Ιntroduction to TEXT PROCESSING. Cambridge, Mass: The MIT Press, 1990.

Thorpe,J., and J. Longstaff. "Modelling User's Knowledge of a Nursing Records Database, Its Structure and access." In Perspectives in Artificial Intelligence: vollume 2. Edited by J.A.Campbell, and J.Cuena. pp 152-161. New York: Ellis Horwood Limited, 1989.

Watson,H.J., and Mann,R.I., " Expert Systems: Past, Present, and Future." Journal of Information Systems Management 5 (Fall 1988): 39-46.

Winston,P.H., and S.A.Shellard (eds). Artificial Intelligence at MIT: Expanding Frontiers. Cambridge, Mass: The MIT Press, 1990.

FvMcs.techInfo.doing.MACHINE-LEARNING

name::
* McsEngl.conceptIt358,
* McsEngl.techInfo.doing.MACHINE-LEARNING@cptIt,
* McsEngl.FvMcs.techInfo.doing.MACHINE-LEARNING@cptIt,
* McsEngl.machine-learning@cptIt,
* McsEngl.mechanical-learning@cptIt,

DEFINITION

"MACHINE LEARNING is a study of computational methods for acquiring knowledge and improving problem solving ability. Because of the breadth of this charter, machine learning includes a wide range of topics".
[Porter-et-al#ql:cptResource459#, 1990, preface]

A system is said to learn if it is capable of acquiring new knowledge from its environment. Learning may also enable the ability to perform new tasks without having to be redesigned or reprogrammed, especially when accompanied by generalization. Learning is most readily accomplished in a system that supports symbolic abstraction, though such a property is not exclusive (reinforcement strategies, for example, do not necessarily require symbolic representation). This type of learning is separated from the acquisition of knowledge through direct programming by the designer, which is referred to throughout this document as the Ability to Add New Knowledge.
--------------------------------------------------------------------------------
Use the following list to see an evaluation of any given architecture along the dimension of ability to learn: Subsumption Architecture Gat (Heterogeneous Asynchronous Architecture) Theo (Plan-then-compile Architecture) Planning and Learning Architecture (Prodigy) Modular-Integrated Architecture (ICARUS) Adaptive Intelligent Systems (AIS) Basic Integrated Agent (Homer) Meta-Reasoning Architecture (MAX) Problem Space Architecture (Soar) Situated and Planned Action (Teton) Decision-Theoretic (RALPH-MEA) Entropy Reduction Engine
[http://krusty.eecs.umich.edu/cogarch4/toc_defs/defs_capa/defs_lear.html] 1998feb16

GENERIC

_GENERIC:
* tech-knowledge#cptItsoft458#
* humanon-learning#ql:cognition.learning.humanon#

WHOLE

_WHOLE:
* tech-ai#cptItsoft478#

SPECIFIC

Inductive Logic Programming

Inductive Logic Programming (ILP) is a research area formed at the intersection of Machine Learning and Logic Programming. ILP systems develop predicate descriptions from examples and background knowledge. The examples, background knowledge and final descriptions are all described as logic programs. A unifying theory of Inductive Logic Programming is being built up around lattice-based concepts such as refinement, least general generalisation, inverse resolution and most specific corrections. In addition to a well established tradition of learning-in-the-limit results, some results within Valiant's PAC-learning framework have been demonstrated for ILP systems. U-learnabilty, a new model of learnability, has also been developed. Presently successful applications areas for ILP systems include the learning of structure-activity rules for drug design, finite-element mesh analysis design rules, primary-secondary prediction of protein structure and fault diagnosis rules for satellites.
[http://www.comlab.ox.ac.uk/oucl/groups/machlearn/ilp.html]

Generalization

Generalization is the ability to apply knowledge and information gained in completing some task to other tasks and situations. Humans generalize routinely. For example, knowing that one should always drive on the right on the road is a generalization from one's experience and observation in specific driving situations. However, in the countries of the United Kingdom, driving on the right is not correct. This is an example of over-generalization, which humans also do quite capably. Generalization can result from a number of different learning strategies including:
Explanation-Based Learning
Analogical Learning
Abstraction Learning
[http://krusty.eecs.umich.edu/cogarch4/toc_defs/defs_props/defs_general.html] 1998feb16

Explanation-Based Learning

When an agent can utilize a worked example of a problem in order to the problem-solving method, the agent is said to have the capability of explanation-based learning (EBL). The advantage of explanation-based learning is that, as a deductive mechanism, it requires only a single training example (inductive learning methods often require many training examples). However, to utilize just a single example most EBL algorithms require all of the following:
The training example A Goal Concept An Operationality Criteria A Domain Theory From the training example, the EBL algorithm computes a generalization of the example that is consistent with the goal concept and that meets the operationality criteria (a description of the appropriate form of the final concept). One criticism of EBL is that the required domain theory needs to be complete and consistent.
[http://krusty.eecs.umich.edu/cogarch4/toc_defs/defs_props/defs_ebl.html] 1998feb18

Analogical Reasoning and Learning

Reasoning by analogy generally involves abstracting details from a a particular set of problems and resolving structural similarities between previously distinct problems. Analogical reasoning refers to this process of recognition and then applying the solution from the known problem to the new problem. Such a technique is often identified as case-based reasoning. Analogical learning generally involves developing a set of mappings between features of two instances. Paul Thagard and Keith Holyoak have developed a computational theory of analogical reasoning that is consistent with the outline above, provided that abstraction rules are provided to the model.
[http://krusty.eecs.umich.edu/cogarch4/toc_defs/defs_capa/defs_analogy.html] 1998feb16

Method

name::
* McsEngl.conceptIt358.1,

_SPECIFIC:
* generalization,

Organization

http://www.comlab.ox.ac.uk/oucl/groups/machlearn/

resource

_ADDRESS.WPG:
* http://www.deeplearningbook.org/contents/intro.html, This book can be useful for a variety of readers, but we wrote it with two maintarget audiences in mind. One of these target audiences is university students(undergraduate or graduate) learning about machine learning, including those whoare beginning a career in deep learning and arti?cial intelligence research. Theother target audience is software engineers who do not have a machine learningor statistics background, but want to rapidly acquire one and begin using deeplearning in their product or platform.
* http://deepmind.com//
We combine the best techniques from machine learning and systems neuroscience to build powerful general-purpose learning algorithms.

FvMcs.LASERDISC

name::
* McsEngl.conceptIt374,
* McsEngl.LASERDISC@cptIt,
* McsEngl.FvMcs.LASERDISC@cptIt,
* McsEngl.LASERDISC@cptIt,
* McsEngl.laserdisc@cptIt374,

DEFINITION

ΕΙΝΑΙ ΕΝΑ ΜΗΧΑΝΗΜΑ ΠΟΥ ΔΕΧΕΤΑΙ ΕΙΔΙΚΟΥΣ ΨΗΦΙΑΚΟΥΣ ΔΙΣΚΟΥΣ, ΟΙ ΟΠΟΙΟΙ ΕΙΝΑΙ ΛΙΓΟ ΜΕΓΑΛΥΤΕΡΟΙ ΑΠΟ ΤΟΥΣ ΔΙΣΚΟΥΣ CD ΚΑΙ ΕΧΟΥΝ ΤΗ ΔΥΝΑΤΟΤΗΤΑ ΝΑ ΠΡΟΒΑΛΛΟΥΝ ΚΑΙ ΕΙΚΟΝΑ.

SPECIFIC

Specific_concepts (level 3) =

PHILIPS,
PIONEER,
SONY,

QUANTITY OF MOVIES: 7.500(DEC 1993)

FvMcs.COMPULINK ΔΙΑΣΚΕΨΗ

name::
* McsEngl.conceptIt377,
* McsEngl.COMPULINK ΔΙΑΣΚΕΨΗ@cptIt,
* McsEngl.FvMcs.COMPULINK ΔΙΑΣΚΕΨΗ@cptIt,
* McsEngl.compulink-conference-service@cptIt,
* McsEngl.compulink'mailgroup@cptIt377,
* McsEngl.compulink-ΔΙΑΣΚΕΨΗ@cptIt,

SPECIFIC

Specific_concepts (level 3) =

**************************
* ΥΠΗΡΕΣΙΕΣ ΣΥΣΤΗΜΑΤΟΣ *
**************************

ΟΙ ΠΑΡΑΚΑΤΩ ΕΙΝΑΙ ΥΠΗΡΕΣΙΕΣ ΤΟΥ ΣΥΣΤΗΜΑΤΟΣ CompuLink. ΟΙ
ΠΕΡΙΣΣΟΤΕΡΕΣ ΕΙΝΑΙ Read Only. ΣΕ ΚΑΘΕ ΜΙΑ ΑΝΑΦΕΡΕΤΑΙ ΤΟ ΠΡΟΣΩΠΙΚΟ
ΠΑΚΕΤΟ ΣΥΝΔΡΟΜΗΣ ΠΟΥ ΕΠΙΤΡΕΠΕΙ ΤΗΝ ΠΡΟΣΒΑΣΗ. ΓΙΑ ΠΕΡΙΣΣΟΤΕΡΕΣ
ΛΕΠΤΟΜΕΡΕΙΕΣ ΑΠΕΥΘΥΝΘΕΙΤΕ ΣΤΟΝ sysop Η ΤΟΝ co-sysop ΤΟΥ
ΣΥΣΤΗΜΑΤΟΣ.
o library ΗΛΕΚΤΡΟΝΙΚΗ ΒΙΒΛΙΟΘΗΚΗ .............. [infopack]
ΒΑΣΗ ΑΝΑΖΗΤΗΣΗΣ ΚΕΙΜΕΝΩΝ ΜΕ ΤΗΝ ΠΛΗΡΗ ΥΛΗ ΠΕΡΙΟΔΙΚΩΝ
ΕΙΔΙΚΟΥ ΤΥΠΟΥ (ΠΕΡΙΟΔΙΚΑ: Computer ΓΙΑ ΟΛΟΥΣ,
4 ΤΡΟΧΟΙ, P.C. Master, Pixel, Information,
ΤΟΥΡΙΣΤΙΚΗ ΑΓΟΡΑ Κ.Α.)
o infoweek ΠΛΗΡΟΦΟΡΙΚΗ ΕΒΔΟΜΑΔΑ ............... [infopack]
ΕΒΔΟΜΑΔΙΑΙΟ newsletter ΜΕ ΕΙΔΗΣΕΙΣ, ΝΕΑ ΠΡΟΙΟΝΤΑ
ΚΑΙ ΔΙΑΓΩΝΙΣΜΟΥΣ ΔΗΜΟΣΙΟΥ ΑΠΟ ΤΟ ΧΩΡΟ ΤΗΣ
ΠΛΗΡΟΦΟΡΙΚΗΣ.
editorial
world
hellas
ΔΗΜΟΣΙΟ: ΔΙΑΓΩΝΙΣΜΟΙ ΠΛΗΡΟΦΟΡΙΚΗΣ ΔΗΜΟΣΙΟΥ
focus: ΕΠΙ ΤΟΥ ΠΙΕΣΤΗΡΙΟΥ
o teleathens TELEATHENS ......................... [infopack]
ΒΑΣΗ ΠΛΗΡΟΦΟΡΙΩΝ ΜΕ ΚΙΝΗΜΑΤΟΓΡΑΦΟΥΣ, ΘΕΑΤΡΑ, Τ.V.,
ΕΣΤΙΑΤΟΡΙΑ, bar Κ.ΛΠ. ΤΗΣ ΑΘΗΝΑΣ. ΕΝΗΜΕΡΩΝΕΤΑΙ ΚΑΘΕ
ΠΑΡΑΣΚΕΥΗ. ΕΠΙΣΗΣ topics ΟΠΟΥ ΑΦΗΝΟΥΝ ΤΗ ΓΝΩΜΗ
ΤΟΥΣ ΟΙ ΧΡΗΣΤΕΣ.
o compubank COMPUBANK .......................... [infopack]
Database ΜΕ ΣΤΟΙΧΕΙΑ ΓΙΑ ΠΡΟΙΟΝΤΑ ΚΑΙ ΕΤΑΙΡΙΕΣ
ΠΛΗΡΟΦΟΡΙΚΗΣ.
ctrl o= the set of keys.
o tourism TOURISM BANK ....................... [infopack]
Database ΜΕ ΣΤΟΙΧΕΙΑ ΓΙΑ ΞΕΝΟΔΟΧΕΙΑ, ΤΟΥΡΙΣΤΙΚΑ
ΓΡΑΦΕΙΑ ΚΑΙ ΠΡΟΜΗΘΕΥΤΕΣ ΞΕΝΟΔΟΧΕΙΩΝ.
o science_pro ΝΕΑ ΠΡΟΙΟΝΤΑ ...................... [infopack]
ΒΑΣΗ ΑΝΑΖΗΤΗΣΗΣ ΚΕΙΜΕΝΩΝ ΜΕ ΔΗΜΟΣΙΕΥΣΕΙΣ ΓΙΑ ΝΕΑ
ΠΡΟΙΟΝΤΑ ΣΕ ΕΝΑ ΕΥΡΥ ΦΑΣΜΑ ΕΠΙΣΤΗΜΩΝ. ΕΠΙΣΗΣ
ΣΤΟΙΧΕΙΑ ΤΩΝ ΕΤΑΙΡΙΩΝ ΠΟΥ ΑΝΕΠΤΥΞΑΝ ΤΑ ΠΡΟΙΟΝΤΑ
ΑΥΤΑ.
c business BUSINESS SERVICES ................. [infopack 1/1/94]
Database ΜΕ ΤΑ ΠΛΗΡΗ ΣΤΟΙΧΕΙΑ ΟΛΩΝ ΤΩΝ ΕΤΑΙΡΙΩΝ
ΠΑΡΟΧΗΣ ΕΠΙΧΕΙΡΗΜΑΤΙΚΩΝ ΥΠΗΡΕΣΙΩΝ ΣΤΗ ΧΩΡΑ ΜΑΣ.
c college EDUBANK ........................... [infopack 1/1/94]
Database ΜΕ ΤΑ ΣΤΟΙΧΕΙΑ ΤΩΝ ΕΥΡΩΠΑΙΚΩΝ ΑΝΩΤΕΡΩΝ ΚΑΙ
ΑΝΩΤΑΤΩΝ ΕΚΠΑΙΔΕΥΤΙΚΩΝ ΙΔΡΥΜΑΤΩΝ, ΚΑΘΩΣ ΚΑΙ ΤΟ
ΑΝΤΙΚΕΙΜΕΝΟ ΣΠΟΥΔΩΝ ΠΟΥ ΠΡΟΣΦΕΡΟΥΝ.
c thesis ΕΡΓΑΣΙΕΣ .......................... [infopack 1/1/94]
ΒΑΣΗ ΑΝΑΖΗΤΗΣΗΣ ΚΕΙΜΕΝΩΝ ΜΕ ΣΤΟΙΧΕΙΑ ΓΙΑ ΤΙΣ ΠΤΥΧΙΑΚΕΣ
ΕΡΓΑΣΙΕΣ ΕΛΛΗΝΩΝ ΣΤΙΣ ΘΕΤΙΚΕΣ ΕΠΙΣΤΗΜΕΣ.
o agora ΤΗΛΕΑΓΟΡΑ ......................... [basicpack]
On-line ΑΓΟΡΕΣ ΔΙΑΦΟΡΩΝ ΠΡΟΙΟΝΤΩΝ.
o air AIRWARRIOR ........................ [gamespack]
On-line multi-user air combat simulator
ΤΟ ΦΑΝΤΑΣΤΙΚΟ full-graphics ΠΑΙΧΝΙΔΙ ΤΗΣ KESMAI.
ΓΙΑ P.C. (EGA, SVGA), amiga, atari, macintosh.
ΣΧΕΤΙΖΕΤΑΙ ΚΑΙ ΜΕ ΤΗ ΔΙΑΣΚΕΨΗ ΧΡΗΣΤΩΝ Air Warrior.
c internet INTERNET .......................... [commspack 1994]
ΣΥΝΔΕΣΗ ΜΕ ΤΟ ΠΑΓΚΟΣΜΙΟ ΔΙΚΤΥΟ Internet (Full
facilities: ftp, telnet Κ.ΛΠ.).

ΔΙΑΣΚΕΨΕΙΣ ΣΥΣΤΗΜΑΤΟΣ

OΙ ΠΑΡΑΚΑΤΩ ΕΙΝΑΙ ΔΙΑΣΚΕΨΕΙΣ ΤΟΥ ΣΥΣΤΗΜΑΤΟΣ. Η ΠΡΟΣΒΑΣΗ ΕΠΙΤΡΕΠΕΤΑΙ
ΣΕ ΟΛΟΥΣ ΤΟΥΣ ΣΥΝΔΡΟΜΗΤΕΣ ΑΝΕΞΑΡΤΗΤΩΣ ΠΑΚΕΤΟΥ ΣΥΝΔΡΟΜΗΣ.
o public O "ΠΙΝΑΚΑΣ ΑΝΑΚΟΙΝΩΣΕΩΝ" ΤΟΥ ΣΥΣΤΗΜΑΤΟΣ
ΗΛΕΚΤΡΟΝΙΚΟΣ ΠΙΝΑΚΑΣ ΑΝΑΚΟΙΝΩΣΕΩΝ ΟΠΟΥ ΤΟΣΟ ΟΙ
ΥΠΕΥΘΥΝΟΙ ΤΗΣ CompuLink, ΟΣΟ ΚΑΙ ΟΙ ΧΡΗΣΤΕΣ ΑΦΗΝΟΥΝ
ΑΝΑΚΟΙΝΩΣΕΙΣ, ΠΡΟΤΑΣΕΙΣ Κ.ΛΠ.
Ο learn ΓΙΑ ΝΕΟΥΣ ΧΡΗΣΤΕΣ
ΠΕΡΙΟΧΗ ΜΕ ΟΔΗΓΙΕΣ ΣΤΟΥΣ ΝΕΟΥΣ users ΤΟΥ ΣΥΣΤΗΜΑΤΟΣ
ΟΣΟΝ ΑΦΟΡΑ ΤΑ ΠΡΩΤΑ ΤΟΥΣ ΒΗΜΑΤΑ ΣΤΗΝ CompuLink.
o compulink ΑΠΟΡΙΕΣ ΚΑΙ ΑΠΑΝΤΗΣΕΙΣ ΓΙΑ ΤΗΝ COMPULINK
ΠΕΡΙΟΧΗ ΣΤΗΝ ΟΠΟΙΑ ΟΙ ΧΡΗΣΤΕΣ ΜΠΟΡΟΥΝ ΝΑ ΕΚΦΡΑΣΟΥΝ ΤΙΣ
ΑΠΟΡΙΕΣ ΤΟΥΣ Η ΚΑΙ ΝΑ ΠΡΟΤΕΙΝΟΥΝ ΝΕΕΣ ΙΔΕΕΣ ΚΑΙ
ΕΝΑΛΛΑΚΤΙΚΕΣ ΛΥΣΕΙΣ ΣΕ ΘΕΜΑΤΑ ΛΕΙΤΟΥΡΓΙΑΣ ΤΗΣ ΒΑΣΗΣ.
o uploads ΠΕΡΙΟΧΗ UPLOADS
ΠΕΡΙΟΧΗ ΟΠΟΥ ΜΠΟΡΕΙΤΕ ΝΑ ΚΑΝΕΤΕ upload shareware
software ΓΙΑ ΔΙΑΦΟΡΟΥΣ ΥΠΟΛΟΓΙΣΤΕΣ. ΤΑ uploads ΣΑΣ
ΕΛΕΓΧΟΝΤΑΙ ΓΙΑ ΙΟΥΣ ΚΑΙ ΣΤΗ ΣΥΝΕΧΕΙΑ ΜΕΤΑΦΕΡΟΝΤΑΙ ΣΤΗΝ
ΚΑΤΑΛΛΗΛΗ ΠΕΡΙΟΧΗ. ΥΠΑΡΧΕΙ ΑΜΟΙΒΗ ΓΙΑ ΤΟ uploading
(Mail to sysop).
o sales ΜΙΚΡΕΣ ΑΓΓΕΛΙΕΣ
ΠΕΡΙΟΧΗ "ΜΙΚΡΩΝ ΑΓΓΕΛΙΩΝ" ΑΠΟ ΤΟΥΣ ΧΡΗΣΤΕΣ. ΕΠΙΣΗΣ ΕΔΩ
ΔΗΜΟΣΙΕΥΟΝΤΑΙ ΚΑΘΕ ΜΗΝΑ ΚΑΙ ΟΙ ΑΓΓΕΛΙΕΣ ΤΩΝ ΠΕΡΙΟΔΙΚΩΝ
CΓΟ., PCM., PXL.
o confs ΝΕΕΣ ΔΙΑΣΚΕΨΕΙΣ ΧΡΗΣΤΩΝ
ΟΤΑΝ ΔΗΜΙΟΥΡΓΕΙΤΕ ΜΙΑ ΚΑΙΝΟΥΡΙΑ ΔΙΚΗ ΣΑΣ ΔΙΑΣΚΕΨΗ
ΠΡΕΠΕΙ ΝΑ ΕΝΗΜΕΡΩΣΕΤΕ ΑΥΤΗΝ ΤΗΝ conference.
o basic_pack ΓΙΑ ΤΟΥΣ ΧΡΗΣΤΕΣ ΤΟΥ basic_pack ΚΑΙ ΟΧΙ ΜΟΝΟ...
ΟΛΟΚΛΗΡΟ ΤΟ ΣΧΕΤΙΚΟ manual
o info_pack ΓΙΑ ΤΟΥΣ ΧΡΗΣΤΕΣ ΤΟΥ info_pack ΚΑΙ ΟΧΙ ΜΟΝΟ...
ΟΛΟΚΛΗΡΟ ΤΟ ΣΧΕΤΙΚΟ manual
o clinkbug BUGS Κ.ΛΠ. ΣΤΟ ΣΥΣΤΗΜΑ
ΟΤΑΝ ΚΑΤΙ ΔΕΝ "ΠΑΕΙ ΚΑΛΑ" Η ΟΤΑΝ ΝΟΜΙΖΕΤΕ ΟΤΙ ΚΑΤΙ ΘΑ
ΜΠΟΡΟΥΣΕ ΝΑ ΠΗΓΑΙΝΕΙ ΑΚΟΜΑ ΚΑΛΥΤΕΡΑ, ΕΝΗΜΕΡΩΣΤΕ ΑΥΤΗΝ
ΤΗ ΔΙΑΣΚΕΨΗ.
o airwarrior Η ΔΙΑΣΚΕΨΗ ΤΩΝ ΠΙΛΟΤΩΝ ΤΟΥ Airwarrior

ΔΙΑΣΚΕΨΕΙΣ ΦΟΡΕΩΝ

***********************
ΟΙ ΠΑΡΑΚΑΤΩ ΕΙΝΑΙ ΔΙΑΣΚΕΨΕΙΣ ΔΙΑΦΟΡΩΝ ΦΟΡΕΩΝ. Η ΠΡΟΣΒΑΣΗ ΕΠΙΤΡΕΠΕΤΑΙ
ΣΕ ΟΛΟΥΣ ΤΟΥΣ ΣΥΝΔΡΟΜΗΤΕΣ ΕΚΤΟΣ ΚΙ ΑΝ Η ΔΙΑΣΚΕΨΗ ΕΙΝΑΙ ΚΛΕΙΣΤΗ ΟΠΟΤΕ
ΘΑ ΠΡΕΠΕΙ ΝΑ ΕΛΘΕΤΕ ΣΕ ΕΠΑΦΗ ΜΕ ΤΟΝ moderator ΤΗΣ ΣΥΓΚΕΚΡΙΜΕΝΗΣ
ΔΙΑΣΚΕΨΗΣ.
Ο c.g.o COMPUTER ΓΙΑ ΟΛΟΥΣ
Η ΔΙΑΣΚΕΨΗ ΤΟΥ ΠΕΡΙΟΔΙΚΟΥ C.Γ.Ο. ΑΝΑΚΟΙΝΩΣΕΙΣ ΤΟΥ
ΠΕΡΙΟΔΙΚΟΥ, ΕΡΩΤΗΣΕΙΣ ΧΡΗΣΤΩΝ ΠΡΟΣ ΤΟΥΣ ΣΥΝΤΑΚΤΕΣ
Κ.ΛΠ. ΕΠΙΣΗΣ topic ΜΕ ΤΑ shareware ΤΗΣ ΔΙΣΚΕΤΑΣ ΤΟΥ
ΠΕΡΙΟΔΙΚΟΥ.
Ο pc_master P.C. MASTER
Η ΔΙΑΣΚΕΨΗ ΤΟΥ ΠΕΡΙΟΔΙΚΟΥ P.C.M. ΑΝΑΚΟΙΝΩΣΕΙΣ,
ΕΡΩΤΗΣΕΙΣ Κ.ΛΠ. ΕΠΙΣΗΣ topic ΜΕ ΤΑ shareware ΤΗΣ
ΔΙΣΚΕΤΑΣ ΤΟΥ ΠΕΡΙΟΔΙΚΟΥ.
Ο pixel PIXEL
Η ΔΙΑΣΚΕΨΗ ΤΟΥ ΠΕΡΙΟΔΙΚΟΥ Pixel. ΑΝΑΚΟΙΝΩΣΕΙΣ,
ΕΡΩΤΗΣΕΙΣ, Κ.ΛΠ.
Ο user_club ΕΝΩΣΗ ΕΠΑΓΓΕΛΜΑΤΙΩΝ ΧΡΗΣΤΩΝ Η/Υ
c altec ΔΙΑΣΚΕΨΗ ΣΥΝΕΡΓΑΤΩΝ ALTEC
Ο augg_public ΔΙΑΣΚΕΨΗ ΤΗΣ ΕΛΛΗΝΙΚΗΣ ΛΕΣΧΗΣ ΑUTOCAD
c augg_conf FORUM ME ΔΡΑΣΤΗΡΙΟΤΗΤΕΣ ΕΛΛΗΝΙΚΗΣ ΛΕΣΧΗΣ AUTOCAD

ΔΙΑΣΚΕΨΕΙΣ ΧΡΗΣΤΩΝ

************************
ΟΙ ΠΑΡΑΚΑΤΩ ΕΙΝΑΙ ΔΙΑΣΚΕΨΕΙΣ ΠΟΥ ΕΧΟΥΝ ΔΗΜΙΟΥΡΓΗΣΕΙ ΟΙ ΧΡΗΣΤΕΣ ΤΟΥ
ΣΥΣΤΗΜΑΤΟΣ. Η ΠΡΟΣΒΑΣΗ ΕΙΝΑΙ ΕΛΕΥΘΕΡΗ ΣΕ ΟΛΟΥΣ ΕΦΟΣΟΝ Η ΔΙΑΣΚΕΨΗ
ΕΙΝΑΙ open (ΑΝΟΙΚΤΗ). ΣΕ ΑΝΤΙΘΕΤΗ ΠΕΡΙΠΤΩΣΗ ΕΠΙΚΟΙΝΩΝΗΣΤΕ ΜΕ ΤΟΝ
moderator.
***************
* ΠΛΗΡΟΦΟΡΙΚΗ *
***************
ΑΜΙGA
*******
o amiga Amiga files ΓΙΑ Download
o am_disk Disk Utilities
o amiga.users s
o am_demos ΔΙΑΦΟΡΑ Demos
o am_applic ΔΙΑΦΟΡΕΣ ΕΦΑΡΜΟΓΕΣ
Ο am_comms ΠΡΟΓΡΑΜΜΑΤΑ / Utilities ΕΠΙΚΟΙΝΩΝΙΑΣ
o amiga.world ΕΡΩΤΗΣΕΙΣ+ΑΠΑΝΤΗΣΕΙΣ+Downloads-VIRUS+ΝΕΑ=AmigaWorld
o amiga.progs All the new versions of the AMIGA programs
o am_graphs graphs ΚΑΙ ΑΛΛΑ
o amiga_eagles The best software for your AMIGA
o ΚΟΝΤΡΕΣ Amiga vs PC
ATARI
*******
Ο at_archives ΣΥΜΠΙΕΣΤΙΚΑ/ΑΠΟΣΥΜΠΙΕΣΤΙΚΑ ΠΡΟΓΡΑΜΜΑΤΑ
o at_comm ΠΡΟΓΡΑΜΜΑΤΑ/Utilities ΕΠΙΚΟΙΝΩΝΙΑΣ
Ο at_demos Demos ΔΙΑΦΟΡΑ
o at_desk_acc Desk Accessories ΓΙΑ Atari
Ο at_games ΠΑΙΧΝΙΔΙΑ ΓΙΑ ΟΛΑ ΤΑ ΓΟΥΣΤΑ
o at_graphics ΠΡΟΓΡΑΜΜΑΤΑ ΓΡΑΦΙΚΩΝ
Ο at_language ΓΛΩΣΣΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΓΙΑ Atari
o at_source Sources ΓΙΑ ΔΙΑΦΟΡΕΣ ΓΛΩΣΣΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ
o at_util ΔΙΑΦΟΡΑ Utilities ΓΙΑ Atari
o atari      Files ΓΙΑ Atari
P.C.
******
c patches Patches ΓΙΑ ΟΛΑ ΤΑ unregistered ΠΡΟΓΡΑΜΜΑΤΑ....
o pc_virus ΟΛΑ ΓΙΑ ..... ΤΑ ΠΑΡΑΣΙΤΑΚΙΑ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ
ΟΛΑ ΤΑ ΤΕΛΕΥΤΑΙΑ antivirus utilities
ΑΠΑΝΤΗΣΕΙΣ ΣΤΑ ΕΡΩΤΗΜΑΤΑ ΣΑΣ
o pcfiles ΠΡΟΓΡΑΜΜΑΤΑ, Utilities, ΚΑΙ ΑΛΛΑ ΑΡΧΕΙΑ ΓΙΑ PC ΚΑΙ
ΣΥΜΒΑΤΟΥΣ ΥΠΟΛΟΓΙΣΤΕΣ
o win31 ΔΙΑΣΚΕΨΗ ΓΙΑ ΤΑ MS-WINDOWS
ΠΟΛΛΑ ΠΡΟΓΡΑΜΑΤΑ ΔΙΑΘΕΣΙΜΑ ΓΙΑ download
Hints, Tips ΚΑΙ ΑΠΑΝΤΗΣΕΙΣ ΣΤΑ ΕΡΩΤΗΜΑΤΑ ΣΑΣ
ΓΕΝΙΚΑ
********
o programming ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ-ΚΟΥΒΕΝΤΑ,ΑΠΟΡΙΕΣ,user made progs
Ο rpg-games Role Playing Games ΣΕ ΥΠΟΛΟΓΙΣΤΕΣ
(ΛΥΣΕΙΣ,tips,ΑΠΟΨΕΙΣ)
o rpg Tabletop RPG games.
o adventure The Adventures Conference.....
o airbug Air, bugs ΚΑΙ ΤΕΧΝΙΚΕΣ ΠΑΡΑΤΗΡΗΣΕΙΣ
ΔΙΑΦΟΡΑ ΘΕΜΑΤΑ
****************
Ο astrology ΠΡΟΒΛΕΨΕΙΣ, ΑΠΟΡΙΕΣ, ΣΥΖΗΤΗΣΕΙΣ ΣΧΕΤΙΚΑ ΜΕ ΤΗΝ
ΑΣΤΡΟΛΟΓΙΑ
Ο astronomy Astronomy, Space Simulations, Space Science,
N.A.S.A., E.S.A., Internet Resources, ΑΣΤΕΡΟΣΚΟΠΕΙΟ
ΑΘΗΝΩΝ, ΕΝΩΣΗ ΕΛΛΗΝΩΝ ΕΡΑΣΙΤΕΧΝΩΝ ΑΣΤΡΟΝΟΜΩΝ (ΕΕΕΑ)
o ΑΝΕΚΔΟΤΑ ΑΝΕΚΔΟΤΑ ΓΙΑ ΟΛΑ ΤΑ ΓΟΥΣΤΑ
o basket ΟΤΑΝ ΤΟ ΘΕΡΜΟΜΕΤΡΟ ΑΝΕΒΑΙΝΕΙ
Ο cinema ΚΙΝΗΜΑΤΟΓΡΑΦΟΣ ΚΑΙ ΑΛΛΑ
o experiments ΠΕΙΡΑΜΑΤΑ ΜΕ ΤΟ mod
o football TΟ ΠΟΔΟΣΦΑΙΡΟ ΧΩΡΙΣ ΦΑΝΑΤΙΣΜΟ
o fractals O ΚΟΣΜΟΣ ΤΩΝ fractals
o Φ.Υ.Δ ΦΥΣΙΚΗ ΥΓΙΕΙΝΗ ΔΙΑΤΡΟΦΗ (ΠΛΗΡΟΦΟΡΙΕΣ,ΑΠΟΡΙΕΣ,ΣΧΟΛΙΑ)
Ο koyiz ΔΙΑΓΩΝΙΣΜΟΙ ΓΝΩΣΕΩΝ ΜΕ ΔΩΡΑ...ΜΟΝΑΔΕΣ !!!
Ο music Music in the 90s ΚΑΙ ΟΧΙ ΜΟΝΟ...ΤΟ ΜΟΥΣΙΚΟ ΒΗΜΑ ΤΗΣ
CompuLink
Ο mystic ΔΙΑΣΚΕΨΗ ΠΕΡΙ ΜΑΓΕΙΑΣ ΚΑΙ ΑΠΟΚΡΥΦΙΣΜΟΥ.
c pink_passion Χ-Rated Conference. For Adults only !!!!!
o politics93 ΕΚΛΟΓΕΣ 1993. ΑΠΟΨΕΙΣ,ΣΧΟΛΙΑ,ΕΚΤΙΜΗΣΕΙΣ.
o school EΛΑΤΕ ΝΑ ΣΥΖΗΤΗΣΟΥΜΕ ΓΙΑ ΤΟ ΣΧΟΛΕΙΟ
(ΑΣΤΕΙΑ Η ΣΟΒΑΡΑ)
o scouts Η conference ΤΟΥ Σ.Ε.Π. (ΒΑΘΜΟΦΟΡΩΝ ΚΑΙ ΜΗ)
o ΣΤΑΥΡΟΛΕΞΟ ΕΝΑ ΠΑΙΧΝΙΔΙ ΥΠΟ ΜΟΡΦΗ ΔΙΑΣΚΕΔΑΣΗΣ
o terror ?
o travel ΤΑΞΙΔΕΥΟΝΤΑΣ ΣΤΗΝ ΕΛΛΑΔΑ
o netware Netware Products
o xrhm xrhma
o amiga.astro Astronomy software for Amiga.
o modems Modem information and questions/answers
o car ΑΥΤΟΚΙΝΗΤΟ !
c hum.rights ΔΙΑΣΚΕΨΗ ΜΕ ΘΕΜΑ ΤΑ ΑΝΘΡΩΠΙΝΑ ΔΙΚΑΙΩΜΑΤΑ ΚΑΙ ΤΗΝ ΠΡΟΣΤΑΣΙΑ ΤΟΥΣ
o internet_world Ο ΚΟΣΜΟΣ ΤΟΥ Internet
c gnomes ΣΥΖΗΤΗΣΗ, ΠΡΟΒΛΗΜΑΤΙΣΜΟΙ ΚΑΙ ΑΠΟΨΕΙΣ ΣΕ ΚΑΘΕ ΘΕΜΑ ΠΟΥ ΜΑΣ ΑΠΑΣΧΟΛΕΙ
c pc_bbs bbs
(o=open, c=closed)

COMANDS:
 topic  = subject I want to see.
 "number"/10 to 20/first/last= mail to read.
 backward  = change the way to read mails.
 comment/com= puts a comment on the mail I just read.
 date15sep93= reads that day mail.
 header  = reads only header of mails.
 original  = reads only original mails.
 reference  = reads similars mails.
 say    = puts a mail in conference.
   .*= end of the message.
 search  = search for a word in the mail text.
 show participants= show participants in the conference.
 skip 5  = skip 5 mails.
CREATION:
 MODERATE CONFERENCE: promt= mod:
 mod new >> mod:
 ?= commands.

JOIN#ql:([Group 377]join.h)##cptIt377: attSpe# ANOTHER TOPIC,

TELECONFERENCING (PARTY LINE)

 TELEATHENS (SEP 1993)
 ΗΛΕΚΤΡΟΝΙΚΕΣ ΔΙΑΣΚΕΨΕΙΣ/COMPUTER CONFERENCES
 ΤΗΛΕΑΓΟΡΑ (ΚΑΛΟΚΑΙΡΙ 1993)
 ΠΛΗΡΟΦΟΡΙΚΗ ΕΒΔΟΜΑΔΑ


JOIN;
Υπάρχει απλώς ένα "κολπάκι". Αν είσαι δηλαδή στο topic util1 της
win31, δίνεις σε μια γραμμή από το Read: prompt 'q j win31 util2' για
να πας στο util2 (π.χ)

FvMcs.COMPULINK MAIN SERVICES

name::
* McsEngl.conceptIt378,
* McsEngl.COMPULINK MAIN SERVICES@cptIt,
* McsEngl.FvMcs.COMPULINK MAIN SERVICES@cptIt,
* McsEngl.compulink-main-service@cptIt,
* McsEngl.compulink'mainservice@cptIt378,

SPECIFIC

Specific_concepts (level 3) =

bye        = terminates communication.
chat "userid"    =
 option chat yes/no  =
 quit      = quit chat
extra      = to take extra time.
help        =
 help join    = help for command join.
join "conference"  =
 join macintosh software 5 = goes to conf macintosh, subject software 5 mail.
mail        = go to mail level.
option
 ?= commands
 option chat yes/no  =
 option language english  =
 option menu    = ΟΙ ΕΝΤΟΛΕΣ ΜΕΣΩ ΜΕΝΟΥ.
party      =
 .w= who online
 .p= who on party.
 .= exit.
password      = change password.
resign      = resign from a conference.
 resign travel abroad= resign from subject abroad, of travel.
resume "userid"  = shows resume
show all      = ΔΕΙΧΝΕΙ ΟΛΕΣ ΤΙΣ ΥΠΗΡΕΣΙΕΣ ΚΑΙ ΔΙΑΣΚΕΨΕΙΣ,
show "conference"  = info for the conference.
 show services    = shows all services
 show sysconfs    = shows all system conf
 show useconfs    =
show new      = show conferences with new mails.
show participatsns "conference" =
show who      =
show who "userid"  =
test        = test the terminal.
time        =
who        = ΔΕΙΧΝΕΙ ΠΟΙ ΕΙΝΑΙ ΣΤΟ ΣΥΣΤΗΜΑ,

FvMcs.COMPULINK ONLINE ENDITING

name::
* McsEngl.conceptIt379,
* McsEngl.COMPULINK ONLINE ENDITING@cptIt,
* McsEngl.FvMcs.COMPULINK ONLINE ENDITING@cptIt,
* McsEngl.compulink-editing-service@cptIt,
* McsEngl.compulink'editing@cptIt379,

SPECIFIC

Specific_concepts (level 3) =

ctrl + X    = erase line.
ctrl + W    = save and exit.
ctrl + Z    = UNDO.
edit      = run full screen editor.
edit profile  = edit file profile.

FvMcs.COMPULINK FILE MANAGEMENT

name::
* McsEngl.conceptIt380,
* McsEngl.COMPULINK FILE MANAGEMENT@cptIt,
* McsEngl.FvMcs.COMPULINK FILE MANAGEMENT@cptIt,
* McsEngl.compulink-file-management-service@cptIt,
* McsEngl.compulink'filemanagement@cptIt380,

SPECIFIC(commands)

binmail "file" "user"= send file to user
delete file "fname"=
download    = puts scratchpad file in my computer.
download file "filename" = from conference.
edit "file"  = ΕΝΗΜΕΡΩΣΗ ΑΡΧΕΙΟΥ.
file      = ΔΕΙΧΝΕΙ ΤΟ ΜΕΓΕΘΟΣ ΤΟ SCRATCHPAD.
file "command"  = puts the result of the command in scratchpad.
file all    = from read:, transfers all mails on scratchpad.
show resume  =
show scratchpad= shows the contents of scratchpad
show file    = shows the files in my directory (from main/mail)
      from conference, shows file for downloading.
upload    = ΑΝΕΒΑΖΕΙ ΑΡΧΕΙΟ ΣΤΟ SCR.

SPECIFIC

Specific_concepts (level 3) =

MAIN LEVEL:
binmail "file" "user"= send file to user
delete file "fname"=
download    = puts scratchpad file in my computer.
show resume  =
show scratchpad= shows the contents of scratchpad
show file    = shows the files in my directory (from main/mail)
      from conference, shows file for downloading.
upload    = ΑΝΕΒΑΖΕΙ ΑΡΧΕΙΟ ΣΤΟ SCR.
MAIL LEVEL:
binmail "file" "user"= send file to user
delete file "fname"=
download    = puts scratchpad file in my computer.
show resume  =
show scratchpad= shows the contents of scratchpad
show file    = shows the files in my directory (from main/mail)
      from conference, shows file for downloading.
upload    = ΑΝΕΒΑΖΕΙ ΑΡΧΕΙΟ ΣΤΟ SCR.
CONFERENCE LEVEL:
download file "filename" = from conference.
file      = ΔΕΙΧΝΕΙ ΤΟ ΜΕΓΕΘΟΣ ΤΟ SCRATCHPAD.
file "command"  = puts the result of the command in scratchpad.
file all    = from read:, transfers all mails on scratchpad.
show resume  =
show scratchpad= shows the contents of scratchpad
show file    = shows the files in my directory (from main/mail)
      from conference, shows file for downloading.
upload    = ΑΝΕΒΑΖΕΙ ΑΡΧΕΙΟ ΣΤΟ SCR.

IMPORTANT FILES:
 FILELIST= a file on a conference.
 NOTE= ΠΕΡΙΕΧΕΙ ΜΗΝΥΜΑ, ΠΟΥ ΕΜΦΑΝΙΖΕΤΑΙ ΣΤΗΝ ΟΘΟΝΗ ΟΠΟΙΟΥ ΣΤΕΛΝΕΙ ΜΗΝΥΜΑ ΣΕ ΜΕΝΑ
 PROFILE= autoexec
 RESUME=
 SCRATCHPAD=
 WORKFILE= a file on a conference.

FvMcs.COMPULINK MAIL

name::
* McsEngl.conceptIt381,
* McsEngl.COMPULINK MAIL@cptIt,
* McsEngl.FvMcs.COMPULINK MAIL@cptIt,
* McsEngl.compulink-mail-service@cptIt,
* McsEngl.compulink'mail@cptIt381,

DEFINITION

_DESCRIPTION:

SPECIFIC

Specific_concepts (level 3) =

binmail    = send file with codes.
delete message "number"  =
file "number"  = put the message in scratchpad
quit      = returns to main.
read/action:
 ?    = list of commands
 again  = read again.
 delete  =
 forward  = to another reader.
 leave/enter= leaves mail after reading.
 reply  = reply to sender.
 transfer  = to conference.
seand/action:
 cc    = change list of receivers
 clear  =
 edit    =
 quit    = does not send it but leaves the mail in scratchpad
 subject  = change subject.
status    = shows mails.
to/send    = send mail.
withdraw "n"  = removes output not reading message

FvMcs.machine.VIDEO-PLAYER

name::
* McsEngl.conceptIt382,
* McsEngl.machine.VIDEO-PLAYER@cptIt,
* McsEngl.FvMcs.machine.VIDEO-PLAYER@cptIt,
* McsEngl.video-device@cptIt,
* McsEngl.VIDEO'PLAYER@cptIt382,
* McsEngl.video-player@cptIt,
* McsElln.ΒΙΝΤΕΟ@cptIt,

DEFINITION

_DESCRIPTION:

GENERIC

_GENERIC:
* entity.economic.satisfierWorking.techInfo.machine#cptItsoft1.1#

VIDEO'INFORMATION#cptIt383: attSpe# (I HAVE)

VIDEODISK/ΒΙΝΤΕΟΔΙΣΚΟΣ

ΟΠΤΙΚΟΣ ΒΙΝΤΕΟΔΙΣΚΟΣ. Πρωτοεμφανίζεται το 1982. Εχουν επάνω τους καταγραμμένες εικόνες και μπορούν να τις εμφανίσουν στην τηλεόραση, όπως ακριβώς και οι βιντεοκασέτες.
[JARRET, 1987, 28#cptResource117]

SPECIFIC

Specific_concepts (level 3) =

PANASONIC WORLDWIDE SYSTEM J7000 (I HAVE IT)

FvMcs.MY-VIDEO-DATA

name::
* McsEngl.conceptIt383,
* McsEngl.MY-VIDEO-DATA@cptIt,
* McsEngl.FvMcs.MY-VIDEO-DATA@cptIt,
* McsEngl.my'video'data@cptIt383,
* McsEngl.VIDEO-INFORMATION-I-HAVE@cptIt,

SPECIFIC

Specific_concepts (level 3) =

ΕNTERTAINMENT
MΟVIE
MUSΙC
NΕWS
SCΙENCE
TRΑVEL
ΔIΑΦΟΡΑ

V1: SCIENCE: THE MACHINE WHO CHANGED THE WORLD.

V2: SCIENCE: THE MACHINE WHO CHANGED THE WORLD.

V3: SCIENCE: THE MACHINE WHO CHANGED THE WORLD.

V4: NEWS: 1992 EVENTS; MEGA CHANNEL.

name::
* McsEngl.V4: NEWS: 1992 EVENTS; MEGA CHANNEL.@cptIt,

V5: ENTERTAINMENT: CARMEN CANDIEGO.

V6: TRAVEL. THE WORLD. THE VOYAGE OF THE MIR ELLAH.

TIME: 2.8 HOUR.
0.00.00:  THE VOYAGE OF THE MIR ELLAH.
0.51.42:  INDONESIA.
1.55.00:  LOS ANGELES.

V7: NATURE. COUNTRIES-NATURE. TRAVEL.

TIME: 2.22 HOURS.
0.00.00:  HAWAII NATURE.
0.58.00:  WILDERNIES. NORTH AMERICA. (LAND OF THE EAGLE)
2.00.00:  AUSTRALIA.

V8: TRAVEL: NATURE-WORLD. TRAVEL.

TIME: 2 HOURS.
0.00.00:  SARAWAK, MALAYSIA.
0.57.00:  PERU JUNGLE.
1.46.00:  AFRICA.

V9: SCIENCE; NEWS; MUSIC

TIME:
0.00.00:  SCIENCE, ECONOMICS: PAUL SAMUELSON, 1992.
0.12.15:  TRAVEL: HOMELESS IN SANDA MONICA, CALIFORNIA.
0.17.16:  NEWS: PAUL TSOGAS, 1992 CANDIDATE.
0.31.22:  NEWS: NIXON.
0.55.25:  SCIENCE, ECONOMICS: FREEDMAN.
1.08.25:  ENTERTAINMENT: CARMEN SANDIENGO.
1.34.20:  SCIENCE, ECONOMICS: BUCHANAN.
1.50.30:  MUSIC: HOROVITCS, CLASSIC.
 RACHMANINOFF, Prelude in G major, Op. 32, No 5.
 SCRIABIN, Etude in C# minor, Op. 2, No. 1.

V10: NEWS: ΓΚΟΡΜΠΑΤΣΩΦ. USA DEBATE.

TIME: 2.56 HOURS.
0.00.00: ΓΚΟΡΠΑΤΣΩΦ, 1992. ΣΥΝΕΝΤΕΥΞΗ ΣΤΟ ΜΕΓΑΛΟ ΚΑΝΑΛΙ.
0.45.00: 1st DEBATE CLINTON-BUSH-PERO, 1992 ELECTIONS.

V11: FREE SPACE

V12: MUSIC: FOREIGN

TIME: 3 HOURS.
0.00.00: BRYAN ADAMS: PLEASE FORGIVE ME.
0.05.20: M PEOPLE: MOVING ON UP.
0.09.01: EROS RAMAZZOTII: UN ALTRA TE.
0.13.20: PAULINE HENRY: FELL LIKE MAKING LOVE.
0.17.10: PEPER: SHOOP
0.21.00: MODREDEUS: O PASTOR.
0.22.48: BRYAN FERRY: I PUT A SPELL ON YOU.
0.24.33: UB40: CAN'T HELP FALLIN IN LOVE.
0.25.50: GIPSY KING: ΣΥΝΑΥΛΙΑ ΜΕ ΛΙΔΑΚΙ.
0.49.45:
FREE SPACE

V13: MUSIC: ΕΛΛΗΝΙΚΑ.

TIME: 3 HOURS.
0.00.00: ΚΥΡΙΑΖΗΣ: ΕΧΩ ΚΛΑΨΕΙ. (ΜΟΥ ΘΥΜΙΖΕΙΣ ΤΗ ΜΑΝΑ ΜΟΥ)
0.04.00: ΝΤΑΛΑΡΑΣ, ΚΑΤΣΙΜΙΧΑΣ: ΚΑΙ ΑΝ ΥΠΑΡΧΕΙ ΛΟΓΟΣ ΝΑ ΓΥΡΙΣΩ. (ΔΙΣΚΟΣ: ΥΠΑΡΧΕΙ ΛΟΓΟΣ).
0.07.00: ΑΡΛΕΤΑ, ΜΠΕΜΠΑ.
0.07.07: ΚΟΡΚΟΛΗΣ: ΣΤΑ ΙΤΑΛΙΚΑ ΣΚΟΝΗ ΚΑΙ ΘΡΥΨΑΛΑ.
0.12.04: ΟΠΑ: ΚΟΜΠΟΛΟΙ.
0.15.15: ΝΤΑΛΑΡΑΣ, ΑΓΑΜΟΙ ΘΥΤΑΙ. 1993 ΣΥΝΑΥΛΙΑ ΣΤΟ ΛΥΚΑΒΗΤΟ.
 ΙΤΑΛΙΚΟ ΤΡΑΓΟΥΔΙ.
 ΟΙ ΑΓΑΜΟΙ ΘΥΤΑΙ.
 ΒΑΜΕΝΑ ΚΟΚΙΝΑ ΜΑΛΙΑ.
 ΤΟ ΠΕΠΡΩΜΕΝΟ.
 ΤΑΚΑ ΤΑΚΑ.
 TO 76.
 ΔΙΔΥΜΟΤΕΙΧΟ ΜΠΟΥΖ.
 ΞΕΝΟΣ.
 ΚΑΙ ΑΝ ΥΠΑΡΧΕΙ ΛΟΓΟΣ ΝΑ ΓΥΡΙΣΩ.
 ΟΙ ΕΛΕΥΘΕΡΟΙ ΚΙ ΩΡΑΙΟΙ ΖΟΥΝ ΣΕ ΚΑΠΟΙΕΣ ΦΥΛΑΚΕΣ.
 ΓΥΡΝΑ ΤΙΣ ΩΡΕΣ ΠΟΥ ΧΑΘΗΚΑΝ ΑΠΟΨΕ...
 ΠΗΓΑ ΣΤΑ ΜΕΡΗ ΠΟΥ ΣΕ ΕΙΧΑ ΠΡΩΤΟΔΕΙ...
 ΑΛΛΑ ΜΟΥ ΛΕΝ ΤΑ ΜΑΤΙΑ ΣΟΥ ΚΑΙ ΑΛΛΑ Η ΚΑΡΔΙΑ ΣΟΥ...
 ΔΕ ΣΕ ΚΡΙΝΩ ΠΟΥ ΔΕ Μ'ΑΓΑΠΑΣ...
1.38.38: ΚΑΤΕΡΙΝΑ ΚΟΥΚΑ. ΡΙΞΕ ΣΤΟ ΚΟΡΜΙ ΜΟΥ ΣΠΙΡΤΟ ΝΑ ΠΥΡΟΠΟΛΙΘΩ.
1.40.30: BRYAN IAN: GET AWAY FROM ALL THIS CONFUSION.
1.43.44: ΚΑΡΑΣ: ΑΣΤΗΝ ΝΑ ΛΕΕΙ.
1.47.05: ΚΥΡΙΑΖΗΣ: ΤΑ ΤΣΙΓΑΡΑ ΤΑ ΠΟΤΑ ΚΑΙ ΤΑ ΞΕΝΥΧΤΙΑ.
1.51.00: ΑΛΕΞΙΟΥ: ΔΙ ΕΥΧΩΝ.
1.54.19: ΒΑΣΙΛΗΣ ΚΑΖΟΥΛΗΣ: ΚΑΤΙ ΝΑ ΓΥΑΛΙΖΕΙ.
1.57.40: ΑΓΑΜΟΙ ΘΥΤΑΙ: ΟΕ-ΟΕ.
2.01.00: ΠΑΠΑΚΩΝΣΤΑΝΤΙΝΟΥ-ΜΑΧΑΙΡΙΤΣΑΣ: ΝΑ ΔΕΙΣ ΤΙ ΣΟΥΧΩ ΓΙΑ ΜΕΤΑ.
2.06.40: ΜΑΧΑΙΡΙΤΣΑΣ: ΜΙΚΡΟΣ ΤΙΤΑΝΙΚΟΣ.
2.10.45: ΛΙΔΑΚΗΣ: ΣΥΝΑΥΛΙΑ.
 ΠΩΣ ΕΙΝΑΙ ΤΟ'ΝΟΜΑ ΣΟΥ ΟΥΤΕ ΠΟΥ ΡΩΤΗΣΑ.
ΣΥΝΑΥΛΙΑ ΝΤΑΛΑΡΑ ΣΤΟΝ ΚΑΝΑΔΑ.

V14: MUSIC: ΔΗΜΟΤΙΚΑ.

ΛΥΓΑΡΙΑ. ΤΡΑΓΟΥΔΑ Ο ΜΙΚΡΟΣ ΠΑΝΑΓΙΩΤΗΣ. 2-1-1
ΑΝΤΙΚΡΙΣΤΟΣ ΧΟΡΟΣ ΠΕΤΡΑΣ ΜΥΤΙΛΗΝΗΣ. 1-1-1-1
ΜΠΑΜ/ΠΛΩΜΑΡΙΩΤΙΚΟΣ ΧΟΡΟΣ. 1-1-1-3, ΔΜ,ΑΜ,ΔΜ,ΑΠ,ΔΠ.
ΑΙΒΑΛΙΩΤΙΚΟ ΖΕΙΜΠΕΚΙΚΟ. 1-31-1-3-1-1
0.14.10: ΣΥΡΤΟΣ. ΤΡΙΠΑΤΟΣ ΤΕΝΙΝΤΩΝ.
ΣΟΥΣΤΑ ΒΟΛΙΣΟΥ ΧΙΟΥ.
ΧΑΣΑΠΙΚΟ ΒΟΛΙΣΟΥ ΧΙΟΥ.
ΠΥΡΓΟΥΣΙΚΟ.
ΚΡΗΤΙΚΑ ΛΕΜΟΝΙΑ.
ΣΙΓΑΝΟΣ ΤΡΕΧΑΤΟΣ.
0.25.17: ΓΙΑ ΣΕΝΑ ΚΑΙ ΓΙΑ ΜΕΝΑ ΓΙΝΗΚΑΝ ΟΙ ΚΑΥΜΟΙ. ΜΠΑΛΟΣ. ΑΝΝΑ ΚΑΡΑΜΠΕΣΙΝΗ, ΕΦΗ ΣΑΡΡΗ. ******
ΠΑΡΑΚΑΛΩ ΣΕ ΘΑΛΑΣΣΑ ΓΙΑ ΠΑΡΕ ΤΗ ΦΩΝΗ ΜΟΥ.
ΑΝΑΨΕ ΤΟ ΦΑΝΑΡΑΚΙ ΚΑΙ ΚΑΤΕΒΑ ΣΤΟ ΓΙΑΛΟ. 1-1-1-1
ΚΑΛΑΝΤΑ ΠΑΤΜΟΥ.
0.38.12: ΑΠΟΨΕ ΔΕΝ ΚΟΙΜΗΘΗΚΑ. ΤΣΑΜΙΚΟ.
ΒΑΣΙΛΙΚΟΣ ΜΥΡΙΖΕΙ ΕΔΩ. ΚΑΛΑΜΑΤΙΑΝΟΣ.
ΠΙΑ ΜΑΝΑ ΣΚΥΛΑ ΤΟΛΕΓΕ. ΚΛΕΦΤΙΚΟ.
ΤΣΑΜΙΚΟ, ΛΕΒΕΝΤΙΚΟ.
0.53.27: ΔΟΝΤΙΑ ΠΥΚΝΑ. 1-1-1-1
ΟΙ ΚΛΕΦΤΕΣ. 3-3-1-1
ΔΥΟ ΜΑΥΡΑ ΜΑΤΙΑ. ΣΤΑ ΤΡΙΑ 1-1-1-1
ΓΙΩΡΓΗ ΓΙΑ ΠΟΥ ΣΥΝΤΑΣΕΣΑΙ. ΣΤΑ ΤΡΙΑ 1-1-1-1
ΟΡΓΑΝΙΚΟ. 3-1-1
1.08.00: ΦΛΩΡΙΝΑ.
1.20.17:  ΡΟΥΓΑ. ΣΥΡΤΟ ΚΕΡΚΥΡΑΣ.
ΘΙΑΝΟΣ ΧΩΡΟΣ ΛΕΥΚΑΔΑΣ.
ΠΑΠΑΡΟΥΝΑ. ΚΑΛΑΜΑΤΙΑΝΟΣ ΠΑΤΜΟΥ.
1.28.10: ΖΑΓΟΡΙΣΙΟ, ΑΡΠΑΓΗ ΜΠΟΛΟΝΑΣΑΙΝΑΣ. ΜΑΣ ΕΙΡΘΕ Η ΑΝΟΙΞΗ.3-1-1-1
ΠΑΛΗΚΑΡΙΑ ΙΣΙΑ ΙΣΙΑ. 1-1-1-1-. ΣΤΑ ΤΡΙΑ.
ΚΟΡΗ ΚΑΙ ΝΙΟ ΚΟΥΒΑΝΤΙΑΖΑΝ ΕΨΕΣ ΣΤΟ ΠΑΡΑΘΥΡΙ. 3-1-1
ΚΛΕΦΤΕΣ ΒΕΛΤΣΙΣΤΙΝΟΙ: 3-3-1-1
ΓΙΑ ΜΙΑ ΦΟΡΑ ΕΙΝΑΙ Η ΛΕΒΕΝΤΙΑ.
ΜΑΡΙΟΛΑ. ΜΟΙΡΟΛΟΙ.
1.50.20: ΗΠΕΙΡΩΤΙΚΟ 3-1-1-.
ΚΛΕΦΤΕΣ ΒΕΛΤΣΙΣΤΙΝΟΙ. 3-3-1-1-.
ΜΑΥΡΑ ΜΟΥ ΧΕΛΙΔΟΝΙΑ 3-1-1
ΒΑΣΙΛΑΡΧΟΝΤΙΣΑ. ΤΟ ΚΛΕΨΙΜΟ ΤΗΣ ΒΑΣΙΛΙΚΗΣ ΑΒΕΡΩΦ ΑΠΟ ΘΥΜΙΟΓΑΚΗ. 3-3-1-.
ΟΜΟΡΦΟ ΠΑΛΛΗΚΑΡΑΚΙ. ΣΤΑ ΤΡΙΑ. 1-1-1-1-.
ΤΑ ΜΑΓΙΑ. ΤΣΑΜΙΚΟ.
ΞΕΝΗΤΕΜΕΝΟ ΜΟΥ ΠΟΥΛΙ ΚΑΙ ΠΑΡΑΠΟΝΕΜΕΝΟ. 3-1-1-.
2.14.20:
FREE.

V15: ΔΙΑΦΟΡΑ

ΤΟ ΜΟΥΣΕΙΟ ΤΗΣ ΑΚΡΟΠΟΛΗΣ, ΠΑΡΟΥΣΙΑΣΗ ΑΝΑ ΣΥΝΟΔΙΝΟΥ.

FREE

V16: MOVIE: Ο ΠΟΛΙΤΗΣ ΚΕΙΝ.

1.47.00 MUSIC: ΑΝΑΣΚΟΠΗΣΗ 1993.

V17: MUSIC: ΖΕΙΜΠΕΚΙΚΟ.

ΛΙΔΑΚΗΣ: ΚΑΙ ΚΑΡΤΕΡΩ.
ΚΑΛΟΓΙΑΝΗΣ:
ΟΡΓΑΝΙΚΟ: ΑΙΒΑΛΙΩΤΙΚΟ ΖΕΙΜΠΕΚΙΚΟ.
FREE

V18: SCIENCE

INTERNET.

FREE

V19: MUSIC: GREEK.

ΤΟ ΖΕΣΤΟ ΣΟΥ ΚΟΡΜΙ. ΤΑ ΠΑΙΔΙΑ ΑΠ'ΤΗ ΠΑΤΡΑ.
ΡΙΞΕ ΚΟΚΙΝΟ ΣΤΗ ΝΥΧΤΑ. ΛΑΥΡΕΝΤΗΣ ΜΑΧΑΙΡΙΤΣΑΣ.

FREE.

V20: TRAVEL

ΣΑΜΟΣ.

V21: MOVIE

Η ΘΕΙΑ ΑΠΟ ΤΟ ΣΙΚΑΓΟ. ΜΑΚΡΗΣ, ΒΑΣΙΛΕΙΑΔΟΥ.
FREE

V22:; FREE

ΔΗΜΟΤΙΚΑ

V23: FREE

V24: FREE

V25: FREE

V26: FREE

FvMcs.ELECTRONIC-CONFERENCE

name::
* McsEngl.conceptIt385,
* McsEngl.ELECTRONIC-CONFERENCE@cptIt,
* McsEngl.FvMcs.ELECTRONIC-CONFERENCE@cptIt,
* McsEngl.CONFERENCE@cptIt,
* McsEngl.computer-conference@cptIt,
* McsEngl.computer-discussion-group@cptIt,
* McsEngl.computer-forum@cptIt,
* McsEngl.discusion-forum@cptIt,
* McsEngl.discusion-list@cptIt,
* McsEngl.electronic-forum@cptIt,
* McsEngl.email-discussion-group@cptIt,
* McsEngl.mailgroup@cptIt,
* McsEngl.mailing-list@cptIt,
* McsElln.ΗΛΕΚΤΡΟΝΙΚΗ-ΔΙΑΣΚΕΨΗ@cptIt,
* McsElln.ΗΛΕΚΤΡΟΝΙΚΗ-ΣΥΝΔΙΑΣΚΕΨΗ@cptIt,
* McsElln.ΗΛΕΚΤΡΟΝΙΚΗ-ΣΥΣΚΕΨΗ@cptIt,

WHOLE

_WHOLE:
* network.computer#cptIt21#

DEFINITION

LISTSERVER;
Listserve Lists (or listservers) -- Electronic discussion of technical and nontechnical issues conducted by electronic mail over BITNET using LISTSERV protocols.
Similar lists, often using the UNIX readnews or rn facilty, are available exclusively on the Internet.
Internet users may subscribe to BITNET listservers. Participants subscribe via a central service, and lists often have a moderator who manages the
information flow and content.

SPECIFIC

Specific_concepts (level 3) =


BITNET CONFERENCE,
COMPULINK CONFERENCE,
INTERNET-CONFERENCE#cptIt376: attSpe#
NewsGroup#cptIt539: attSpe#

FvMcs.ΔΟΡΥΦΟΡΙΚΗ ΚΕΡΑΙΑ-Satellite Antena

name::
* McsEngl.conceptIt395,
* McsElln.ΔΟΡΥΦΟΡΙΚΗ ΚΕΡΑΙΑ-Satellite Antena@cptIt,
* McsEngl.FvMcs.ΔΟΡΥΦΟΡΙΚΗ ΚΕΡΑΙΑ-Satellite Antena@cptIt,
* McsEngl.satellite-antena@cptIt,
* McsElln.ΔΟΡΥΦΟΡΙΚΗ-ΚΕΡΑΙΑ@cptIt,

SPECIFIC

Specific_concepts (level 3) =

PRICE#cptEconomy541.44#

59.900 ΔΡΧ. PRAKTIKER(1.1994): ΥΨΗΛΗΣ ΠΟΙΟΤΗΤΑΣ ΚΑΘΡΕΠΤΗΣ ΑΛΟΥΜΙΝΙΟΥ 80 ΕΚ. ΓΙΑ ΜΙΑ ΚΑΛΥΤΕΡΗ ΛΗΨΗ ΕΙΚΟΝΑΣ ΑΚΟΜΑ ΚΑΙ ΚΑΤΑ ΤΗΝ ΠΤΩΣΗ ΒΡΟΧΗΣ ή ΧΙΟΝΙΟΥ. ΙΔΑΝΙΚΗ ΓΙΑ ΤΗ ΛΗΨΗ ASTRA KAI EUTELSTAT ΠΡΟΓΡΑΜΜΑΤΑ. ΥΨΗΛΗ ΑΠΟΔΟΣΗ LNB MORGANS 1,2 dB. ΔΕΚΤΗΣ 136 ΚΑΝΑΛΙΩΝ, 2 ΣΥΝΔΕΣΕΙΣ SCART. STEREO, ΤΗΛΕΧΕΙΡΙΖΟΜΕΝΗ, ΔΥΝΑΤΟΤΗΤΑ ΕΛΕΥΘΕΡΗΣ ΕΠΙΛΟΓΗΣ ΤΗΣ ΣΥΧΝΟΤΗΤΑΣ. ΑΛΛΑΓΗ ΗΧΟΥ ΓΙΑ EUTELSTAT ΠΡΟΓΡΑΜΜΑΤΑ. ΑΣΦΑΛΕΙΑ ΓΙΑ ΤΑ ΠΑΙΔΙΑ.

FvMcs.SOCIETY FOR INFORMATION MANAGEMENT

name::
* McsEngl.conceptIt400,
* McsEngl.SOCIETY FOR INFORMATION MANAGEMENT@cptIt,
* McsEngl.FvMcs.SOCIETY FOR INFORMATION MANAGEMENT@cptIt,
* McsEngl.SIM@cptIt,
* McsEngl.society-for-information-management@cptIt, USA

FvMcs.SMART CARD

name::
* McsEngl.conceptIt415,
* McsEngl.SMART CARD@cptIt,
* McsEngl.FvMcs.SMART CARD@cptIt,
* McsEngl.chip-card@cptIt415, {2012-05-28}
* McsEngl.integrated-circuit-card@cptIt415, {2012-05-28}
* McsEngl.microprocessor-card@cptIt415, {2012-05-28}
* McsEngl.SMART'CARD@cptIt415,
* McsEngl.smart-card@cptIt,
* McsElln.ΕΞΥΠΝΗ-ΚΑΡΤΑ@cptIt,

DEFINITION

A smart card, chip card, or integrated circuit card (ICC), is any pocket-sized card with embedded integrated circuits. A smart card or microprocessor cards contain volatile memory and microprocessor components. The card is made of plastic, generally polyvinyl chloride, but sometimes acrylonitrile butadiene styrene or polycarbonate. Smart cards may also provide strong security authentication for single sign-on (SSO) within large organizations.
[http://en.wikipedia.org/wiki/Smart_card]

Η ΕΞΥΠΝΗ ΚΑΡΤΑ ΕΙΝΑΙ ΜΙΑ ΠΛΑΣΤΙΚΗ ΚΑΡΤΑ ΣΤΟ ΜΕΓΕΘΟΣ ΤΗΣ ΠΙΣΤΩΤΙΚΗΣ ΜΕ ΕΝΣΩΜΑΤΩΜΕΝΟ ΕΝΑ ΜΙΚΡΟΕΠΕΞΕΡΓΑΣΤΗ, ΠΟΥ ΕΦΕΥΡΕΘΗΚΕ ΑΠΟ ΤΟ ΓΑΛΛΟ ROLAND MORENO, ΒΡΙΣΚΕΙ ΠΑΜΠΟΛΕΣ ΕΦΑΡΜΟΓΕΣ. ΣΤΟΝ ΜΙΚΡΟΕΠΕΞΕΡΓΑΣΤΗ ΤΗΣ ΜΠΟΡΟΥΝ ΝΑ ΑΠΟΘΗΚΕΥΘΟΥΝ ΤΑ ΠΡΟΣΩΠΙΚΑ ΣΤΟΙΧΕΙΑ ΤΟΥ ΧΡΗΣΤΗ, ΚΑΘΩΣ ΚΑΙ ΕΝΑΣ ΠΡΟΣΩΠΙΚΟΣ ΚΩΔΙΚΟΣ ΠΟΥ ΑΠΟΚΛΕΙΕΙ ΤΗ ΧΡΗΣΗ ΤΗΣ ΚΑΡΤΑΣ ΑΠΟ ΕΝΑΝ ΑΝΕΠΙΘΥΜΗΤΟ ΤΡΙΤΟ.
[ΒΗΜΑ, 6 ΦΕΒΡ 1994, Ε10]

measure#cptCore88#

Ο ΑΡΙΘΜΟΣ ΤΩΝ ΕΞΥΠΝΩΝ ΚΑΡΤΩΝ ΑΝΑ ΤΟΝ ΚΟΣΜΟ ΥΠΕΡΔΙΠΛΑΣΙΑΣΤΗΚΕ ΤΟ 1992 ΚΑΙ ΕΦΘΑΣΕ ΤΑ 260 ΕΚΑΤΟΜΥΡΙΑ, ΕΝΩ ΟΙ ΕΙΔΙΚΟΙ ΠΡΟΒΛΕΠΟΥΝ ΟΤΙ ΘΑ ΦΘΑΣΕΙ ΤΟ 1,2 ΔΙΣ ΜΕΧΡΙ ΤΟ 1995.
[ΒΗΜΑ, 6 ΦΕΒΡ 1994, Ε10]

SPECIFIC

GEMPLUS CARD INTERNATIONAL, FRENCH COMPANY
INNOVATRON, FRENCH COMPANY,
MOTOROLA,

Contactless

A second card type is the contactless smart card, in which the card communicates with and is powered by the reader through RF induction technology (at data rates of 106–848 kbit/s). These cards require only proximity to an antenna to communicate. They are often used for quick or hands-free transactions such as paying for public transportation without removing the card from a wallet.
Like smart cards with contacts, contactless cards do not have an internal power source. Instead, they use an inductor to capture some of the incident radio-frequency interrogation signal, rectify it, and use it to power the card's electronics.

FvMcs.ASP

name::
* McsEngl.conceptIt416,
* McsEngl.ASP@cptIt,
* McsEngl.FvMcs.ASP@cptIt,
* McsEngl.ASP@cptIt416,
* McsEngl.Association-of-Shareware-Professionals@cptIt,

DEFINITION

The Association of Shareware Professionals is an organization of programmers founded in 1987. The primary goal of the association is to strengthen the future of shareware marketing as an alternative to traditional marketing. The ASP is also striving to help diskette vendors, the news media, and the general public to understand the nature and benefits of shareware.
The major theme behind shareware programs is "Try before you buy". Users can evaluate the program on their own systems before making an investment. If the program proves to be useful, the user has a moral and legal obligation to register with the author.

Address your written correspondence to: ASP, 545 Grover Road
Muskegon, MI 49442

ADDRESS#cptCore925.15#

FvMcs.LASER-POINTER

name::
* McsEngl.conceptIt418,
* McsEngl.LASER-POINTER@cptIt,
* McsEngl.FvMcs.LASER-POINTER@cptIt,
* McsEngl.laser-pointer@cptIt,
* McsEngl.laser'pointer@cptIt418,

DEFINITION

Συσκευές που εκπέμπουν μία ακτίνα laser, που μπορούν να δείξουν αντικείμενα από μεγάλη απόσταση (50 μέτρα).

ΕΤΕΡΙΕΣ που πουλουν

Optonics Ευτ, Ελ. Βενιζέλου 222, Παλ. Φάληρο, 983.7121

FvMcs.entertainment machine

name::
* McsEngl.conceptIt424,
* McsEngl.entertainment machine@cptIt,
* McsEngl.FvMcs.entertainment machine@cptIt,
* McsEngl.computer.entertainment@cptIt424,
* McsEngl.entertainment-machine@cptIt,
* McsEngl.interactive-multiplayer@cptIt,

SPECIFIC

Specific_concepts (level 3) =

COMMODORE/AMIGA CD32

COMMODORE CDTV

Αποτυχία.

name::
* McsElln.Αποτυχία.@cptIt,

PANASONIC REAL 3DO

GRD.250000 drx 1994

PHILIPS CD-I

SEGA CD

FvMcs.sysSoftware.Geography

name::
* McsEngl.conceptIt443,
* McsEngl.sysSoftware.Geography@cptIt,
* McsEngl.FvMcs.sysSoftware.Geography@cptIt,
* McsEngl.geography-application@cptIt,
* McsEngl.application.geography@cptIt443,
* McsEngl.programGeography@cptIt443,
* McsEngl.sysSoft.Geography@cptIt443,

GENERIC

_GENERIC:
APPLICATION#cptIt97#

SPECIFIC

QUERY#ql:[Level CONCEPT:rl3 cptItsoft443]##itsoft.nfo#

FvMcs.Audio Software

name::
* McsEngl.conceptIt467,
* McsEngl.Audio Software@cptIt,
* McsEngl.FvMcs.Audio Software@cptIt,
* McsEngl.audio-software@cptIt,
* McsEngl.audio'software@cptIt467,
* McsEngl.software.audio@cptIt467,

ENVIRONMENT#cptCore756#

SPECIFIC'COMPLEMENT

name::
* McsEngl.SPECIFIC'COMPLEMENT@cptIt,

AUDIO-HARDWARE#cptIt40#

SPECIFIC

_SPECIFIC:
* AUDIO_DATA#cptIt986: attSpe#
* AUDIO_PROGRAM

FvMcs.sysSoftware.DICTIONARY

name::
* McsEngl.conceptIt476,
* McsEngl.sysSoftware.DICTIONARY@cptIt,
* McsEngl.FvMcs.sysSoftware.DICTIONARY@cptIt,
* McsEngl.application.dictionary@cptIt476,
* McsEngl.dictionary-application@cptIt,
* McsEngl.dictionary'program@cptIt476,

DEFINITION

DICTIONARY-APPLICATION is an INFOTECH-APPLICATION#cptIt97.1# that functions as a DICTIONARY.
[SOURCE: NIKOS 1997jul]

GENERIC

_GENERIC:
* software-application#cptItsoft490#

SPECIFIC

QUERY#ql:cptItsoft476##itsoft.nfo#


G-WORD#cptItsoft625: attSpe#
GLOSRY#cptItsoft628: attSpe#
HYPERLEX#cptItsoft641: attSpe#
LANGUAGES OF THE WORLD#cptItsoft666: attSpe#
LEXUS#cptItsoft675: attSpe#
OXFORD ENGLISH DICTIONARY#cptItsoft927: attSpe#
ΛΕΞΙΚΟ#cptItsoft908: attSpe#

Αγγλικό-Ελληνικό-Αγγλικό-Χρυσή-έκδοση-2006#cptItsoft1086: attSpe#
Lexicon-2000#cptItsoft089,

Collection: attSpe

name::
* McsEngl.conceptIt476.1,

Program

FvMcs.project-ΚΛΕΙΣΘΕΝΗΣ

name::
* McsEngl.conceptIt477,
* McsEngl.project-ΚΛΕΙΣΘΕΝΗΣ@cptIt,
* McsEngl.FvMcs.project-ΚΛΕΙΣΘΕΝΗΣ@cptIt,
* McsElln.ΚΛΕΙΣΘΕΝΗΣ@cptIt477,

DEFINITION

Ο ΚΛΕΙΣΘΕΝΗΣ είναι ΕΡΓΟ ΤΟΥ ΚΠΣ ΙΙ, ...
[hmnSngo.1995-05]

ΚΛΕΙΣΘΕΝΗΣ είναι το πρόγραμμα "εκσυγχρονισμού του κρατικού μηχανισμού" και φιλοδοξει μέσα σε 5 χρόνια να αλλάξει τη μορφή των υπηρεσιών που προσφέρει το δημόσιο.
[ΒΗΜΑ, 27 ΝΟΕΜ. 1994, Α60]

GENERIC

_GENERIC:
ΚΟΙΝΟΤΙΚΟ ΠΛΑΙΣΙΟ ΣΤΗΡΙΞΗΣ#cptItsoft98#

BUDGET#cptEconomy540.16#

ΠΡΟΥΠΟΛΟΓΙΣΜΟΣ:
305,4 MECU.

EVOLUTION#cptCore546.171#

18 NOV. 1994
συνήλθε η επιτροπη παρακολούθησης του προγράμματος και έλαβε τις πρωτες αποφάσεις.

resourceInfHmn#cptResource843#

ΒΙΒΛΙΟΓΡΑΦΙΑ: COMPUTER Γ.Ο. ΣΕΠΤ. 1994.

structure#cptCore515#

ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ ΩΣ ΠΡΟΣ ΤΗ ΛΕΙΤΟΥΡΓΙΑ ΤΟΥΣ

ΧΡΗΜΑΤΙΣΤΗΡΙΟ ΑΘΗΝΩΝ

ΠΡΟΣΛΗΨΕΙΣ

Το Ανώτατο Συμβούλιο Επιλογής Προσωπικου θα είναι σύντομα η πιο σύγχρονη δημοσια υπηρεσια
[ΒΗΜΑ, 27 ΝΟΕΜ. 1994, Α61]

ΔΙΟΙΚΗΣΗ

Ενεκριθη 30 εκ. δρχ για να ολοκληρωθει ο σχεδιασμος του προγράματος ΣΟΛΩΝ
[ΒΗΜΑ, 27 ΝΟΕΜ. 1994, Α61]

ΔΙΚΤΥΩΣΗ ΥΠΗΡΕΣΙΩΝ

Για ηλεκτρονικη μεταφορα εγκράφων

ΚΑΤΑΡΤΙΣΗ

των στελεχων της διοίκησης

ΕΝΗΜΕΡΩΣΗ

50 εκ. για μελέτη δημιουργίας βάσεων δεδομένων
[ΒΗΜΑ, 27 ΝΟΕΜ. 1994, Α61]

ΦΟΡΟΛΟΓΙΑ

TAXIS#cptIt246: attPar#

ΑΣΦΑΛΙΣΤΙΚΑ ΤΑΜΕΙΑ

μελέτη μηχανοργάνωσης των ταμείων
[ΒΗΜΑ, 27 ΝΟΕΜ. 1994, Α61]

FvMcs.Electronic-Nose

name::
* McsEngl.conceptIt480,
* McsEngl.Electronic-Nose@cptIt,
* McsEngl.FvMcs.Electronic-Nose@cptIt,
* McsEngl.computer'nose@cptIt480,
* McsEngl.electronic-nose@cptIt,

DEFINITION

An electronic nose is a device intended to detect odors or flavors.
Over the last decade, “electronic sensing” or “e-sensing” technologies have undergone important developments from a technical and commercial point of view. The expression “electronic sensing” refers to the capability of reproducing human senses using sensor arrays and pattern recognition systems. For the last 15 years as of 2007, research has been conducted to develop technologies, commonly referred to as electronic noses, that could detect and recognize odors and flavors. The stages of the recognition process are similar to human olfaction and are performant for identification, comparison, quantification and other applications. However, hedonic evaluation is a specificity of the human nose given that it is related to subjective opinions. These devices have undergone much development and are now used to fulfill industrial needs.
[http://en.wikipedia.org/wiki/Electronic_nose]

FvMcs.ozn.ΙΝΣΤΙΤΟΥΤΟ-ΠΛΗΡΟΦΟΡΙΚΗΣ-ΕΛΚΕΠΑ

name::
* McsEngl.conceptIt484,
* McsEngl.ozn.ΙΝΣΤΙΤΟΥΤΟ-ΠΛΗΡΟΦΟΡΙΚΗΣ-ΕΛΚΕΠΑ@cptIt,
* McsEngl.FvMcs.ozn.ΙΝΣΤΙΤΟΥΤΟ-ΠΛΗΡΟΦΟΡΙΚΗΣ-ΕΛΚΕΠΑ@cptIt,
* McsElln.ΙΝΣΤΙΤΟΥΤΟ-ΠΛΗΡΟΦΟΡΙΚΗΣ-ΕΛΚΕΠΑ@cptIt,

EVOLUTION#cptCore546.171#

ΔΗΜΙΟΥΡΓΙΑ
ΜΑΙΟΣ 1990

FUNCTIONS vvv

Με δραστηριότητες εξειδικευμένα και προωθημένα προγράμματα πληροφορικής.

FvMcs.sysSoftware.ENCYCLOPEDIA

name::
* McsEngl.conceptIt486,
* McsEngl.sysSoftware.ENCYCLOPEDIA@cptIt,
* McsEngl.FvMcs.sysSoftware.ENCYCLOPEDIA@cptIt,
* McsEngl.application.encyclopedia@cptIt486,
* McsEngl.encyclopedia@cptIt,
* McsEngl.encyclopedia.electronic@cptIt486,

* McsElln.ΕΓΚΥΚΛΟΠΑΙΔΕΙΑ@cptIt,

GENERIC

_GENERIC:
* software-application#cptItsoft490#

SPECIFIC

Specific_concepts (level 3) =
QUERY#ql:[Level CONCEPT:rl3 cptItsoft486]##insoft.nfo#
* COMPTON'S FAMILY#cptItsoft577: attSpe#
* ENCARTA#cptItsoft700: attSpe#
* GROLIER#cptItsoft630: attSpe#
* HUTCHINOSN MM ENCYCLOPEDIA (CD MEDIA) 15000 ΔΡΧ ΔΕΚ.1994,
* NATIONAL GEOGRAPHIC MAMMALS#cptItsoft934#
* Principia-Cybernetica##cptIt531#: attSpe#
* WIKIPEDIA#cptItsoft1076: attSpe#

ΒΗΜΑ

Εγκυκλοπαίδειες σε CD-ROM Ποιες κυκλοφορούν, τι προσφέρουν και τι δυνατότητες έχουν
Εχει αποδειχθεί πλέον από την καθημερινή πρακτική ότι η νέα τεχνολογία αποτελεί ισχυρότατο μαθησιακό εργαλείο και συμβάλλει τα μέγιστα στη διάδοση της γνώσης. Ως χαρακτηριστικό παράδειγμα της ορθότητας της παραπάνω πρότασης μπορούμε να εκλάβουμε την αποδοχή που είχε η πρώτη εγκυκλοπαίδεια που κυκλοφόρησε σε CD-ROM. Η Encarta, δημιουργημένη από την εταιρεία Microsoft, ήρθε πριν από τέσσερα χρόνια να καλύψει το κενό που υπήρχε στον χώρο των multimedia παραγωγών και να δώσει την ευκαιρία στα νέα παιδιά να οικειοποιηθούν από την οθόνη του υπολογιστή τους τις γνώσεις που οι μεγαλύτεροι αναζητούσαμε στους βαρείς τόμους που κοσμούσαν τα ράφια των βιβλιοθηκών μας... Και αξίζει να σημειωθεί ότι η Encarta σημειώνει κάθε χρόνο ένα ποσοστό 60% στις πωλήσεις σε παιδιά.
Ως απάντηση στη Microsoft η εταιρεία ΙΒΜ παρουσίασε το CD-ROM World Book, βασισμένο στην ομώνυμη αμερικανική εγκυκλοπαίδεια. Εξάλλου το μήνυμα για την ανάγκη αναθεώρησης των παραδοσιακών μέσων μάθησης ελήφθη τελικά και από την εγκυκλοπαίδεια Britannica, η οποία κρατά τα ηνία της σοβαρής και σε βάθος πληροφόρησης. Πέρυσι κυκλοφόρησε αυτούσιο το περιεχόμενο της βρετανικής χάρτινης έκδοσης της εγκυκλοπαίδειας (αποτελείται από 32 τόμους) σε ένα CD-ROM. Ωστόσο αξίζει να σημειωθεί ότι (περίπου) το 95% του ψηφιακού περιεχομένου της εγκυκλοπαίδειας αποτελείται από κείμενο, ενώ οι ενδιαφερόμενοι μπορούν να μπουν στην ηλεκτρονική διεύθυνση http://www.eb.com και να «κατεβάσουν» στον υπολογιστή τους εικόνες, ήχο και video για να ολοκληρώσουν την παραγωγή. Αυτό βέβαια συμβαίνει επειδή οι παραγωγοί της Britannica στοχεύουν σε ένα μεγαλύτερο και σοβαρότερο ­ από ηλικιακής απόψεως ­ κοινό.
Αξιόλογες παραγωγές πολυμέσων αποτελούν και οι εγκυκλοπαίδειες Grolier και Compton's, αλλά και η Oxford Interactive Encyclopedia, η οποία ωστόσο δεν δημιουργήθηκε ως παραδοσιακή εγκυκλοπαίδεια· στην ουσία αποτελεί ένα σταχυολόγημα υλικού βασισμένου στις χάρτινες εκδόσεις του Πανεπιστημίου της Οξφόρδης. Από την άλλη πλευρά η εταιρεία Penguin Hutchinson Reference Library, η οποία απευθύνεται τόσο σε ερευνητές όσο και σε φοιτητές και μαθητές.
Ειδική μνεία πρέπει να γίνει και στις παραγωγές της εταιρείας Dorling Kindersley, Encyclopedia of Science και Encyclopedia of Nature, στις οποίες περιλαμβάνεται μια πλήρη παρουσίαση των θετικών και των φυσικών επιστημών αντίστοιχα. Αποτελούν δύο από τους πλέον αξιόλογους τίτλους σε CD-ROM παρ' όλο που δεν είναι εγκυκλοπαίδειες ­ με τον παραδοσιακό όρο νοούμενες...
Φυσικά δεν θα μπορούσαμε να παραλείψουμε τη μοναδική ελληνική παραγωγή. Η Εγκυκλοπαίδεια 2002 δημιουργήθηκε από την εταιρεία ΧΘΟΝ και καλύπτει εν μέρει την ανάγκη του ελληνικού κοινού για εκπαιδευτικούς τίτλους πολυμέσων. Αποτελεί μια καλή παραγωγή με αρκετό υλικό από άποψη περιεχομένου και καλό θα ήταν να υπάρξουν αντίστοιχες προσπάθειες και από άλλες εγχώριες εταιρείες παραγωγής.
Οι εγκυκλοπαίδειες σε CD-ROM, εκτός από την ευκολία στη χρήση, έχουν ­ συγκριτικά με τις χάρτινες εκδόσεις ­ και ένα ακόμη πλεονέκτημα, το οποίο μεταφράζεται στο μικρότερο κόστος κτήσης. Ετσι, οι τιμές τους κυμαίνονται από 11.700 δρχ. (Oxford Interactive Encyclopedia) ως 21.000 δρχ.(Encyclopedia of Nature). Φυσικά σε αυτές τις τιμές δεν συμπεριλαμβάνεται και η εγκυκλοπαίδεια Britannica.
Για να την αποκτήσετε πρέπει να κάνετε ειδική παραγγελία και το κόστος της φτάνει τις 149. 000 δρχ.
ΣΤ. ΧΑΪΚΑΛΗΣ
[ΒΗΜΑ 1998ιανο18]

Article

Program

SPECIFIC

MCGRAW-HILL MULTIMEDIA ENCYCLOPEDIA OF SCIENCE & TECHNOLOGY

$1300, CDROM, 7300 articles, 81 disciplines, 105100 terms, 122600 definitions, 550 color photos, 39 animations
[BYTE, OCT. 1994, 45]

Britannica

Breaking news
Tuesday March 13 2012
Breaking News
Encyclopaedia Britannica to cease print edition
The Encyclopaedia Britannica, the librarian's classic fount of all knowledge, will stop publishing its 32-volume print edition after 244 years and instead focus on its digital efforts, a watershed moment that highlights the changing fortunes of content producers in the internet era
[FT]

FvMcs.processing-function

name::
* McsEngl.conceptIt487,
* McsEngl.processing-function@cptIt,
* McsEngl.FvMcs.processing-function@cptIt,
* McsEngl.function'processing@cptIt487,
* McsEngl.processing-function@cptIt,
* McsEngl.processing@cptIt487,

SPECIFIC

Specific_concepts (level 3) =

FvMcs.IT-PERIODICAL

name::
* McsEngl.conceptIt489,
* McsEngl.IT-PERIODICAL@cptIt,
* McsEngl.FvMcs.IT-PERIODICAL@cptIt,
* McsEngl.periodical@cptIt,
* McsEngl.periodical.it@cptIt489,
* McsElln.ΠΕΡΙΟΔΙΚΟ@cptIt,

DEFINITION

ΠΕΡΙΟΔΙΚΟ είναι ΠΗΓΗ-ΠΛΗΡΟΦΟΡΙΑΣ#cptResource843# που εκδίδεται σε τακτά χρονικά διαστήματα μεγαλύτερα της μέρας ή εβδομάδας.
[hmnSngo.1995-03]

GENERIC

_GENERIC:
* ResourceInfHmn#cptResource843#

CODE

EDITOR

EVOLUTION#cptCore546.171#

ISSUES

Εδω καταχωρούνται τα διάφορα ΤΕΥΧΗ του περιοδικού.

ISSUES PER YEAR

measure#cptCore88#

OWNER

PLACE WHERE I CAN FOUND

PUBLISHER COMPANY (ognCompany#cptEconomy7#)

name::
* McsEngl.PUBLISHER COMPANY (ognCompany#cptEconomy7#)@cptIt,

TABLE OF CONTENTS

TITLE

VOLUME

SUBJECT

SPECIFIC

Specific_concepts (level 3) =


ABM Banking# gnr.resource445#
BANK MANAGEMENT# gnr.resource446#
THE BANKERS MAGAZINE# gnr.resource447#
ΑΚΑΔΗΜΙΑ ΕΠΙΣΤΗΜΩΝ ΤΗΣ ΕΣΣΔ. ΚΟΙΝΩΝΙΚΕΣ ΕΠΙΣΤΗΜΕΣ# gnr.resource259#
ΚΟΜΜΟΥΝΙΣΤΙΚΗ ΕΠΙΘΕΩΡΗΣΗ# gnr.resource386#
ΟΙΚΟΝΟΜΙΚΑ ΧΡΟΝΙΚΑ# gnr.resource727#
ΠΡΟΒΛΗΜΑΤΑ της ΕΙΡΗΝΗΣ & του ΣΟΣΙΑΛΙΣΜΟΥ# gnr.resource180#
ΦΩΤΟΓΡΑΦΙΑ# gnr.resource615#

IT PERIODICALS

ALPHABETICAL CLASS

ΣΥΝ:-γραμμή-επικοινωνίας-με-τη-Singular#cptResource731## gnr.resource731#

BYTE:
September 1975 the first issue.
McGRAW HILL (USA)

CD-ROM World (USA): 150.000 per month.

COMPUTER-για-όλους#cptResource28#

COMPUTER SHOPER: (USA)

MULTIMEDIA & CD-ROM# gnr.resource73#

ONLINE ACCESS: USA. CHICAGO FINE PRINT INC. (920 NORTH FRANKLIN, SUITE 203, CHICAGO, IL 60610)

PC magazine: (USA)

PC MASTER: Compupress AE (GREEK)

PCtoday: EUROPRESS PUBLICATIONS (UK)

RAM#cptResource125#

RAM: Δ.Ο. ΛΑΜΠΡΑΚΗ, Συνεργασια με BYTE, (GREEK). ΣΤΑΔΙΟΥ 24 ΤΗΛ-333.3614. ΕΡΩΤΗΣΕΙΣ ΓΙΑ ΔΙΣΚΕΤΑ 333.3620 ΤΡΙΤΗ 5-8 ΜΜ.

UNIX Review

UNIX Today

UNIXWorld

USER: ΝΕΑ ΕΚΔΟΤΙΚΗ ΕΠΕ (GREEK)

Virtual Reality World: (USA)

Wired# gnr.resource224#

SUBSET (country)


GREEK,
USA,

SUBSET (contents)

DOS
 BYTE: McGRAW HILL (USA)
 COMPUTER για όλους: COMPUPRESS AE (GREEK)
 COMPUTER SHOPER: (USA)
 PC magazine: (USA)
 PC MASTER: Compupress AE (GREEK)
 PCtoday: EUROPRESS PUBLICATIONS (UK)
RAM: Δ.Ο. ΛΑΜΠΡΑΚΗ, Συνεργασια με BYTE, (GREEK). ΣΤΑΔΙΟΥ 24 ΤΗΛ-333.3614. ΕΡΩΤΗΣΕΙΣ ΓΙΑ ΔΙΣΚΕΤΑ 333.3620 ΤΡΙΤΗ 5-8 ΜΜ.
 USER: ΝΕΑ ΕΚΔΟΤΙΚΗ ΕΠΕ (GREEK)
NETWORKS:
UNIX
 UNIX Review
 UNIX Today
 UNIXWorld

MISC

ONLINE ACCESS: USA. CHICAGO FINE PRINT INC. (920 NORTH FRANKLIN, SUITE 203, CHICAGO, IL 60610)

FvMcs.ozn.Library

name::
* McsEngl.conceptIt491,
* McsEngl.ozn.Library@cptIt,
* McsEngl.FvMcs.ozn.Library@cptIt,
* McsEngl.library@cptIt491,
* McsElln.ΒΙΒΛΙΟΘΗΚΗ@cptIt,

DEFINITION

ΒΙΒΛΙΟΘΗΚΗ είναι ΟΡΓΑΝΙΣΜΟΣ-ΠΑΡΑΓΩΓΗΣ#cptEconomy641.1# με σκοπό τη συγκέντρωση ΠΛΗΡΟΦΟΡΙΑΚΩΝ-ΠΗΓΩΝ#cptresource843# προς διάθεση των πολιτών.
[ΝΙΚΟΣ, 1997ιουλ]

resourceInfHmn#cptResource843#

ΣΤΑΙΚΟΣ, ΚΩΣΤΑΣ. Βιβλιοθήκη, από την αρχαιότητα έως την Αναγέννηση και σημαντικές ουμανιστικές και μοναστηριακές βιβλιοθήκες, 3000πχ-1600μχ. 1996

SPECIFIC

Specific_concepts (level 3) =

ΕΘΝΙΚΗ ΒΙΒΛΙΟΘΗΚΗ,

ΕΙΕ, ΤΗΛ-7247903.

ΕΚΤ, 800 ΒΑΣΕΙΣ, ΤΗΛ-7246825

FvMcs.CORBA-STANDARD

_CREATED: {1998-07-01}

name::
* McsEngl.conceptIt504,
* McsEngl.CORBA-STANDARD@cptIt,
* McsEngl.FvMcs.CORBA-STANDARD@cptIt,
* McsEngl.CORBA@cptIt504,
* McsEngl.Common-Object-Request-Broker-Architecture@cptIt,

DEFINITION

The Common Object Request Broker Architecture (CORBA) is a standard defined by the Object Management Group (OMG) designed to facilitate the communication of systems that are deployed on diverse platforms. CORBA enables collaboration between systems on different operating systems, programming languages, and computing hardware. CORBA has many of the same design goals as object-oriented programming: encapsulation and reuse. CORBA uses an object-oriented model although the systems that use CORBA do not have to be object-oriented. CORBA is an example of the distributed object paradigm.
[https://en.wikipedia.org/wiki/Common_Object_Request_Broker_Architecture]

CORBA is not a language feature; it’s an integration technology. It’s a specification that vendors can follow to implement CORBA-compliant integration products. CORBA is part of the OMG’s effort to define a standard framework for distributed, language-independent object interoperability.
[Eckel, Thinking in Java, 1998jan, 798]

corba'OMG-IDL

NAME

name::
* McsEngl.corba'OMG-IDL@cptIt,
* McsEngl.conceptIt507,
* McsEngl.OMGIDL@cptIt,
* McsEngl.idl@cptIt,
* McsEngl.idl.omg@cptIt507,
* McsEngl.interface-definition-language@cptIt507,
* McsEngl.CORBA-Interface-Definition-Language-(IDL)@cptIt,

DEFINITION

The Object Management Group's Interface Definition Language (IDL, ISO standard 14750).

An Interface Definition Language (IDL) is used to define the interfaces for accessing and operating upon objects. Examples of IDLs are the Object Management Group's IDL, Microsoft's IDL, and Sun's Java IDL.
[DOM 1997dec09]

CORBA is designed for language transparency: a client object can call methods on a server object of different class, regardless of the language they are implemented with. Of course, the client object must know the names and signatures of methods that the server object exposes.
This is where IDL comes in. The CORBA IDL is a language-neutral way to specify data types, attributes, operations, interfaces, and more. The IDL syntax is similar to the C++ or Java syntax. The following table shows the correspondence between some of the concepts common to three languages that can be specified through CORBA IDL: CORBA IDL  Java    C++
Module    Package  Namespace
Interface    Interface  Pure abstract class
Method    Method    Member function
The inheritance concept is supported as well, using the colon operator as in C++. The programmer writes an IDL description of the attributes, methods, and interfaces that will be implemented and used by the server and clients. The IDL is then compiled by a vendor-provided IDL/Java compiler, which reads the IDL source and generates Java code.
The IDL compiler is an extremely useful tool: it doesn’t just generate a Java source equivalent of the IDL, it also generates the code that will be used to marshal method arguments and to make remote calls. This code, called the stub and skeleton code, is organized in multiple Java source files and is usually part of the same Java package.
[Eckel, Thinking in Java, 1998jan, 799]

EVALUATION#cptCore546.107#

CORBA is an interesting and general solution, but it might not be the best approach if you just want to make calls into the operating system.
[Eckel, Thinking in Java, 1998jan, 805]

RPC (Remote Procedure Call)

ENVIRONMENT#cptCore756#

Java Applets and CORBA

Java applets can act as CORBA clients. This way, an applet can access remote information and services exposed as CORBA objects. But an applet can connect only with the server from which it was downloaded, so all the CORBA objects the applet interacts with must be on that server. This is the opposite of what CORBA tries to do: give you complete location transparency.
This is an issue of network security. If you’re on an Intranet, one solution is to loosen the security restrictions on the browser. Or, set up a firewall policy for connecting with external servers.
Some Java ORB products offer proprietary solutions to this problem. For example, some implement what is called HTTP Tunneling, while others have their special firewall features.
[Eckel, Thinking in Java, 1998jan, 804]

EVOLUTING

{time.2008-01-04}
=== VERSION 3.1
* http://www.omg.org/cgi-bin/doc?formal/08-01-04.pdf,

FvMcs.device AC/DC-Adapter

_CREATED: {2009-08-02}

name::
* McsEngl.conceptIt506,
* McsEngl.device AC/DC-Adapter@cptIt,
* McsEngl.FvMcs.device AC/DC-Adapter@cptIt,
* McsEngl.AC-adapter@cptIt506, {2012-07-15}
* McsEngl.AC-DC-adapter@cptIt506, {2012-07-15}
* McsEngl.AC-DC-conveter@cptIt506, {2012-07-15}
* McsEngl.AC-DC-power-adapter@cptIt506,
* McsEngl.AC-power-adapter@cptIt506,
* McsEngl.adaptor@cptIt506,
* McsEngl.charger@cptIt506,
* McsEngl.power-adapter@cptIt506,

DEFINITION

The AC adapter, AC/DC adapter or AC/DC converter[1] is a type of external power supply, often enclosed in a case similar to an AC plug. Other names include plug pack, plug-in adapter, adapter block, domestic mains adapter, line power adapter, or power adapter. AC adapters are used with electrical devices that require power but do not contain internal components to derive the required voltage and power from mains power. The internal circuitry of an external power supply is very similar to the design that would be used for a built-in or internal supply.
External power supplies are used both with equipment with no other source of power, and with battery-powered equipment, where the supply, when plugged in, can sometimes charge the battery in addition to powering the equipment.
Use of an external power supply allows portability of battery-powered equipment without the added bulk of internal power components, and makes it unnecessary to produce equipment for use with a specified power source.
[http://en.wikipedia.org/wiki/Wall_wart]

An AC adapter converts alternating current from an external power source to the direct current and voltage needed to operate electronic circuits found in devices.

CHOOSING

Instructions
Things You'll Need:
* Universal adapter (with multiple tips) Digital camera

Step 1
Find a tip that fits securely into your camera's power port. The tips come included with the adapter. Places like RadioShack sell the tips individually---they connect onto the end of the adapter's cable allowing you to adjust polarity. If a tip is too loose or you have to force it in, try another tip.
Step 2
Check the polarity of the camera and the adapter tip. Near the power outlet on the camera you'll notice a small diagram with a plus sign on one side and a minus sign on the other. If the plus sign is on the left side of the diagram, the device is positive; if the minus sign is on the right, then the device is negative.
Step 3
Check that the voltage of the AC adapter is the same as that of the camera. The camera's accepted adapter voltage, along with its amperage, must match or it will not work---and you could damage your camera.
Step 4
Compare the amperage of the camera and the AC adapter. The amperage of the charger should meet or exceed the requirements of the camera---it is OK to go over on amps but not OK for volts.
Step 5
Remove batteries from the camera, connect the power supply, then the camera. Power on the camera to test it.
[http://www.ehow.com/how_4853258_choose-ac-adapters-digital-cameras.html]

SIZE DC-POWER-PLUG (TIP)

name::
* McsEngl.SIZE DC-POWER-PLUG (TIP)@cptIt,

Determine the size of the adapter plug. Plug sizes are normally measured in millimeters.

If the plug size is the only thing wrong with an adapter, meaning that its voltage and current ratings, whether it is regulated or unregulated, and its polarity all match, it is possible to splice a new plug onto the adapter, as many electronics stores do sell just the plug in different sizes. However, care must be taken to ensure that the new plug maintains the same polarity as the old one, meaning that the wire that connected to the outside surface of the old plug still connects to the outside of the new plug, and that the wire that connected to the inside surface of the old plug still connects to the inside surface of the new plug.

3.5mm= 3.5 millimeter mini plug
2.1mm= 2.1 x 5.5 millimeter DC Power Plug
2.5mm = 2.5 x 5.5 Millimeter DC Power Plug etc.

PORARITY

name::
* McsEngl.polarity-symbol@cptIt,

Find the diagram that shows three circles connected by lines. The center circle will be open on one side. Whichever sign it opens to is the polarity of the tip. If the circle opens to the plus sign, it is tip positive. If it opens to the minus, sign it is tip negative.

(C-)=Center Pin Negative (-) | Otherwise it is Center Pin Positive (C+)

Polarity determines the direction that current flows; if the current from the adapter flows the wrong way for the intended electronic device, the device may be damaged. It is important to be sure that the polarity of the adapter and the device match.
[http://www.answerbag.com/articles/How-to-Choose-an-AC-Adapter/4b1faed7-2e37-ae9a-2c09-a85db04ab4ee]

Many electrical devices use direct current (DC) power, often provided by a AC (alternating current) to DC adapter, also known as a wall wart or power brick. The polarity of the adapter cord must match the polarity of the device, meaning that the positive contact of the plug must mate with the positive contact in the receptacle, and the negative plug contact must mate with the negative receptacle contact. Since there is no standardization of these plugs, a polarity symbol is printed on the case indicating which type of plug is needed.
The commonly used symbol denoting the polarity of a device or adapter consists of a black dot with a line leading to the right and a broken circle (like the letter "C") surrounding the dot and with a line leading to the left. At the ends of the lines leading right and left are found a plus sign (+), meaning positive, and a minus sign (-), meaning negative.
The symbol connected to the dot (usually the symbol found to the right) denotes the polarity of the device or adapter. Thus a device with a plus sign at the end of the line leading from the center dot is said to have "positive polarity" and requires an adapter that has positive polarity. A device with a minus sign at the end of the line leading from the center dot has "negative polarity" and requires an adapter of negative polarity.
Centre Positive.


Centre positive symbol
Indicates that the centre (tip) of the output plug is Positive (+) and the barrel of the output plug is Negative (-).

Centre Negative.


Centre negative symbol
Indicates that the centre (tip) of the output plug is Negative (-) and the barrel of the output plug is Positive (+).
[http://en.wikipedia.org/wiki/Polarity_symbols]

AMPERE-CAPACITY

name::
* McsEngl.mAh@cptIt,

mAH is a measurement of capacity - usually denoting batteries. Depending on the current being drawn, the time for the capacity to run out will vary.
For example, 200mAH on a battery means if you draw 200mA you can run it for one H (hour). If you draw 20mA from this battery you can run it for 10 hours.

Identify the amperage. After the volts, there will be another number with "A" or "mA" after it (such as 3A or 500mA).

mA vs mAh:
I just wanted to post an explanation of some of the terms related to batteries, charging and electricity in general that are used. I've noticed there seems to be some confusion among even more experienced users in these terms:

mA - Is a measure of electrical current. 1 mA is one-thousandth of an ampere. This refers essentially to how much charge is moving through the wire per unit time. In a physical analog you could consider it like the flow rate of water through a pipe. The "m" in "mA" is always lower case and the "A" is always upper case.


mAh - Is a measure of charge. 1 mAh is the amount of charge transferred by moving 1 mA of current for a period of one hour. It would be how much water has flowed through the pipe over a period of time.

A battery is a "holding tank" for charge, so it has a capacity in mAh. Remember current is instantaneous (like speed) while charge (mAh) is cumulative (like distance).

C - C is a rate of charge or discharge. It has a unit of h^-1 (which can seem a little confusing and it doesn't really matter for our purposes). It is current at which a battery will be fully discharged from full in exactly one hour. So for example, if you had a 3000 mAh cell and drained it at a rate of 3000 mA it would take 1 hr and this rate would be 1C. If the cell was drained at a rate of 1500 mA this would be 0.5C.
This value is important to know because different cell chemistries have different levels of charge and discharge they can safely endure. For example if you take two li-ion based cells of the same chemistry and one is a 14500 cell with 800 mAh capacity and the other is an 18650 with 3000 mAh capacity they will not have the same ideal rates of charge or discharge. Pretend we are charging at 2A (2000 mA). This would represent a rate of 0.67C for the 18650 but a rate of 2.5C for the 14500. Therefore both are li-ions of the same chemistry being charged at the same current but the 14500 is more "strained" by the high charging rate and could suffer damage.
[http://www.candlepowerforums.com/vb/showthread.php?390930-mA-vs-mAh]

VOLTAGE-INPUT

Check the Input section to determine the voltage it requires from the wall outlet. A rating between 100 and 120 volts denotes standard voltage used in the United States. A rating of 200 to 240 volts denotes voltage used in a foreign country, and the adapter will require a voltage converter to work in the United States.

in Greece 230V

Input voltage: USA is normally 110vac.

VOLTAGE-OUTPUT

Identify the voltage. Next to the word "output", you'll see a number with a "V" after it (such as 12V). This is your voltage.

Determine the desired output specifications of the AC adapter. This can usually be found on the old adapter, the electronic device, or the instruction manual of the electronic device. There are two components to this: the voltage, measured in volts, and the current, usually measured in milliamps (ma). When selecting an adapter, you will want to match these as closely as possible.

If an exact match is not available, it is better to err on the side of the new adapter having a lower voltage and higher current than the specifications require. For example, if the device calls for 6 volts at 500 ma, it is preferable for the new adapter to provide 5 volts at 600 ma (lower voltage, higher current) than it would be for the new adapter to provide 9 volts at 333 ma (higher voltage, lower current), as the excess voltage could damage the electronic device.
[http://www.answerbag.com/articles/How-to-Choose-an-AC-Adapter/4b1faed7-2e37-ae9a-2c09-a85db04ab4ee]

Output voltage and if AC or DC. Example :If you need a 12.4v output, a 12volt usually works just as well. Usually any that are close within a few volts.

WATTAGE-OUTPUT

The terms VA (volt-amps) and watts are frequently used interchangeably when discussing the power consumption of an electronic device. This tendency is understandable when the total power consumption of the load is small and the value of VA and watts is nearly the same . Nevertheless, it is important to understand the distinction between VA and watts in the event system power consumptions become very large or when numerous small loads are combined on a single source of power such as a UPS. VA is an expression of “apparent power” and watts is an expression of “true power” in an AC circuit. When the load is resistive, power dissipation in VA and watts will be the same.
[http://www.powervar.com/Eng/ABCs/CalcVAWATTS.asp]

REGULATION

Determine whether the adapter should be regulated or unregulated. Simply put, an unregulated adapter does not always produce the rated voltage while a regulated adapter does. Because of this, regulated AC adapters are also generally more expensive than unregulated ones.

It is possible to substitute a regulated adapter for an unregulated one (the downside being added cost), but it is not advisable to substitute an unregulated adapter in place of a regulated adapter as this could cause the electronic device being powered to fail.

SPECIFIC

solar-bench

Το πρώτο ηλιακό παγκάκι-φορτιστής στην Ελλάδα
25.07.2015 ΕΙΔΗΣΕΙΣ, Περιφερειακοι σταθμοι, Προτάσεις, ΡΟΗ ΕΙΔΗΣΕΩΝ
Το πρώτο ηλιακό παγκάκι-φορτιστής στην Ελλάδα  

Ο βιομηχανικός σχεδιαστής κ. Δημήτρης Χαϊδάς, εργαστηριακός συνεργάτης του Τμήματος Σχεδιασμού & Τεχνολογίας Ξύλου και Επίπλου του ΤΕΙ Θεσσαλίας στην Καρδίτσα σχεδίασε και υλοποίησε το πρώτο ηλιακό ξύλινο παγκάκι. Σε αυτό, ο χρήστης μπορεί να φορτίζει smartphones, tablets, ή και άλλα gadgets καθώς διαθέτει δύο USB θύρες.

Στην οροφή του έχει ένα μικρό, αλλά ισχυρό φωτοβολταϊκό σύστημα, όπου με τη βοήθεια της ηλιακής ακτινοβολίας φορτίζονται οι συσκευές. Ο σχεδιαστής αναφέρει: «Ο εντοπισμός του προβλήματος είναι ότι ο χρήστης ξεμένει πολύ συχνά από μπαταρία κυρίως στο κινητό του. Εφάρμοσα μια οικολογική λύση σε αυτό το πρόβλημα. Συνδυάζω έξυπνα το έπιπλο που σε αυτή την περίπτωση είναι ένα κάθισμα αναμονής με τη νέα τεχνολογία -όπως είναι ένα ηλιακό πάνελ- και μετατρέπω το παγκάκι σε σταθμό φόρτισης. Αποτελεί μια αρχή για εγκατάσταση «πράσινων» ιδεών στο αστικό περιβάλλον.

Για την κατασκευή του, εκτός από το ξύλο χρησιμοποιήθηκαν και κομμάτια εκτυπωμένα από 3d printer (τρισδιάστατο εκτυπωτή) για λόγους οικονομίας και άμεσης παράδοσης». Στο ηλιακό αυτό παγκάκι λοιπόν, μπορείς όχι μόνο να ξεκουραστείς αλλά και να φορτίσεις και τις «έξυπνες» συσκευές σου. Η φόρτιση είναι πλήρως οικολογική μέσω της καθαρής και ανανεώσιμης ηλιακής ενέργειας.

Η κατασκευή υλοποιήθηκε στη Λάρισα και έχει τοποθετηθεί δοκιμαστικά στο Δημοτικό Κολυμβητήριο (πισίνα Νεάπολης) του Δήμου Λαρισαίων. Ο σχεδιαστής ανέλαβε όλα τα έξοδα για τη μελέτη, το σχεδιασμό και την υλοποίηση της κατασκευής χωρίς καμία επιβάρυνση για το Δήμο Λαρισαίων με σκοπό την ενημέρωση, προώθηση και διάδοση της «πράσινης» αυτής, καινοτόμου ιδέας.
[http://www.ert.gr/to-proto-iliako-pagkaki-stin-ellada/]

PowerBank

name::
* McsEngl.external-battery@cptIt,
* McsEngl.powerBank@cptIt,
* McsEngl.Portable-Battery-Backup@cptIt,
* McsEngl.Portable-Battery-Charger@cptIt,
====== lagoGreek:
* McsElln.φορητή-εφεδρική-μπαταρία@cptIt,
* McsElln.φορητός-φορτιστής-μπαταρίας@cptIt,


5 Important Features To Know When Purchasing A Power Bank. by Tremendouswap(m): 8:38am On Jun 11, 2016
Before purchasing any battery charger most especially Power bank, there are some basic features you put into consideration which will enable you find a battery charger of better quality. If you're interested to know these features, then keep reading before grabbing one of the best power banks online. My first key consideration is;
•Power Bank Capacity
Capacity of a power bank is the basic feature of a portable and durable battery charger. It determines the amount of electrical energy it can store within itself and can utilize the same while charging your mobile devices.
Battery capacity has its unit as mAh. You might have seen figures written on batteries and power banks like 10400 mAh, 5200mAh, 2600mAh etc. These figures or capacities rather, are established by the multiple of 2600 mAh. This is because the base of a Li-ion battery cell is 2600 mAh.
So before buying a power bank, consider the battery capacity, and to know this, take note that as the battery capacity gets bigger, so as the frame of the power bank increases. So don't just look at what is written on the frame and make conclusions there.
So, go for the highest capacity that your budget allows.
• Li-ion and Li-poly
Li-ion and Li-poly two variation of the battery cells commonly used to formulate the best power banks. Most of the battery packs go for the Li-ion because of its cheaper cost of purchase and this made portable chargers being constituted with Li-ion become much bulkier in comparison to the Li-Poly.
• Pass through charging
Another feature to put into consideration is pass through charging. At this point you may be thinking what i'm trying to make you know of!
It is simple, any power bank with this feature would be able to power up itself (self-charge) and simultaneously, charging your smartphone(s).
On a normal ground, this feature ought to be present in every power bank as it seems rudimentary, but most power banks miss this important feature. One power bank that offers this time saving feature is the Huawei 13000 mAh power bank.
• Input and Output current rating
These ratings determine how rapid your power bank and the devices gets charged. Typically, they come with a rating of 5V at 2.1 A and 5V at 1 A. Obviously, 2.1 A rating would be more preferable as it will make the device charge faster.
However, for a 2.1A rated power bank to get charged fast, you should also use a 2.1A rated wall charger, using a lower rated charger like a 1A rated wall charger that is usually more prevalent will be counter-productive.
• Number of charging ports
Number of charging ports on power banks plays the relevant role if you wish to charge multiple devices simultaneously. Usually most of the portable chargers below 10000 mAh capacity (smaller capacity) does not come up with multiple output port option. The reason is obvious; they are simply not large enough to charge up more than one device at a time due to their low capacity.
It is important to know that the number of output ports possessed by a power bank affect the output current when charging multiple devices simultaneously.
An example is the Mi 16000 mAh power bank, which has two USB output ports (whereas the 10400 mAh variant has only one output port) and claims to charge devices at a rating of 2.1 A, 5V.
However, this claim is only true when charging only one device at a time. When you use both ports at the same time, this particular power bank is capable of providing a max of 3 A at 5 V (i.e. 1.5 A per port).
It is a nice idea to go through a reliable power bank review about a certain portable charger to get to know more about these specifications for that particular power bank.
like our facebook page at http://facebook.com/tremendouswap/

source: http://tremendouswap.blogspot.com
[http://www.nairaland.com/3159769/5-important-features-know-when]

FvMcs.Video-Memory

name::
* McsEngl.conceptIt510,
* McsEngl.Video-Memory@cptIt,
* McsEngl.FvMcs.Video-Memory@cptIt,
* McsEngl.memory.video@cptIt510,
* McsEngl.video-memory@cptIt,
* McsEngl.video'memory@cptIt510,

SPECIFIC

_SPECIFIC:#ql:_GENERIC cptIt510#


DDR SDRAM
SGRAM
VRAM
WRAM

FvMcs.XML-HYPERLINKING

_CREATED: {1999-03-26}

name::
* McsEngl.conceptIt528,
* McsEngl.XML-HYPERLINKING@cptIt,
* McsEngl.FvMcs.XML-HYPERLINKING@cptIt,
* McsEngl.hypertext-xml-link@cptIt,
* McsEngl.xml-hyperlinking@cptIt,
* McsEngl.xml'LINKING@cptIt,
* McsEngl.xll@cptIt,
* McsEngl.xml-linking-language@cptIt,
* McsEngl.xml'Pointer'Language@cptIt,

DEFINITION

All elements that have an attribute called XML-LINK will be considered linking. The value of XML-LINK specifies what kind of link the element specifies.
[SOURCE: L.M. Garshol, XML INTRO, 1997aug14]

The linking abilities of XML systems are much more powerful than those of HTML. Existing HREF-style links will remain usable, but new linking technology is based on the lessons learned in the development of other standards involving hypertext, such as TEI and HyTime, which will let you manage bidirectional and multi-way links, as well as links to a span of text (within your own or other documents) rather than to a single point. This is already implemented for SGML in browsers like Panorama and Multidoc Pro.
The current proposal is that an XML link can be either a URL or a TEI-style Extended Pointer (`Xptr'), or both. A URL on its own is assumed to be a resource (as with HTML); if an Xptr follows it, it is assumed to be a sub-resource of the URL; an Xptr on its own is assumed to apply to the current document.
An Xptr is always preceded by one of#, ?, or |. The# and ? mean do the same as in HTML applications; the | means the sub-resource can be found by applying the Xptr to the resource, but the method of doing this is left to the implementation.
TEI Extended Pointer Notation (EPN) is much more powerful than the simple ID examples given above. This sentence, for example, marked as a link, could be referred to within this document as ID(tei-link)CHILD(3), meaning the third object within the element labeled tei-link (this paragraph). Count the objects: a) the link to `TEI Extended Pointer Notation', b) the remainder of the first sentence, and c) the second sentence. If you view this file with Panorama you can click on the highlighted sentence above, which links to the start of this question, and then click on the cross-reference button beside the question title, and it will display the locations in Extended Pointer Notation of all the links to it, including the previous sentence. (Doing this in an HTML browser is not meaningful, as they do not support bidirectional linking or EPN.)
[SOURCE: FAQ 1997may]

XLL: Superior Linking for XML
The highlights of XLL, the linking standard for XML, are described in the following paragraphs:
Takes Advantage of HyTime and TEI ­ XLL will be designed to take advantage of the linking concepts in HyTime and the Text Encoding Initiative (TEI). While these standards have not been widely implemented by software vendors, they provide several powerful improvements to the standard HTML linking as well as other features outside the scope of XLL.
Compatible with existing URL linking ­ XLL will fully support the existing link formats of the Web.
Bi-directional links ­ Bi-directional links will allow the user to initiate a traversal from either direction of two pieces of information that are linked together.
Addressing ­ XLL will allow links to pinpoint a certain hierarchical location within a target XML document.
Indirect links ­ Indirect links will vastly improve the maintainability of large collections of Web documents. Currently, if the target of a link changes its path, the file containing the source link must be changed as well. Consider the simple case where a Seattle website points to a page on a Detroit website. If the location of that Detroit page changes, then the link on the Seattle website must be changed too. Permissions for making those changes are likely to be different, so two individuals must manually interact and coordinate. For complex webs, the result can be a nightmare involving high costs and frustrated users.
Indirect links solve that problem. Through XLL, linking will occur indirectly, through a separate, intermediate link file. When a file changes location, only the intermediate file needs to be changed; the source file and destination files can remain intact.
[ArborText paper 1997]

WHOLE

_WHOLE:
* XML_BASED_LANGUAGE#cptIt439#

LINK

_DEFINITION:
link An explicit relationship between two or more data objects or portions of data objects.

xml'LINK'LINKING'ELEMENT

name::
* McsEngl.xml'LINK'LINKING'ELEMENT@cptIt,

Links are asserted by elements contained in XML documents.
[xlink {1998-03-03}]

Creates and describes a link.
[Maler]

EXAMPLE:
** in html: <a>, <img>
** in xml anything <footnote>, <criticism> ...

xml'LINK'LOCATOR

name::
* McsEngl.xml'LINK'LOCATOR@cptIt,

Locator is the addressing string.
[Maler]

locator:
Data, provided as part of a link, which identifies a resource.
[spec xpointer {1998-03-03}]

xml'LINK'RESOURCE

name::
* McsEngl.xml'LINK'RESOURCE@cptIt,

RESOURCE is ANYTHING you can point at on the web.
[Maler]

resource
In the abstract sense, an addressable service or unit of information that participates in a link. Examples include files, images, documents, programs, and query results. Concretely, anything reachable by the use of a locator in some linking element. Note that this term and its definition are taken from the basic specifications governing the World Wide Web.

xml'LINK'TRAVERSAL

name::
* McsEngl.xml'LINK'TRAVERSAL@cptIt,

TRAVERSAL is the ACT of using a link.
[Maler]

LINK.INLINE

name::
* McsEngl.LINK.INLINE@cptIt,

inline link
Abstractly, a link which serves as one of its own resources. Concretely, a link where the content of the linking element serves as a participating resource. HTML A, HyTime clink, and TEI XREF are all examples of inline links.

LINK.MULTIDIRECTIONAL

name::
* McsEngl.LINK.MULTIDIRECTIONAL@cptIt,

multidirectional link
A link whose traversal can be initiated from more than one of its participating resources. Note that being able to "go back" after following a one-directional link does not make the link multidirectional.

LINK.OUT'OF'LINE

name::
* McsEngl.LINK.OUT'OF'LINE@cptIt,

out-of-line link A link whose content does not serve as one of the link's participating resources . Such links presuppose a notion like extended link groups, which indicate to application software where to look for links. Out-of-line links are generally required for supporting multidirectional traversal and for allowing read-only resources to have outgoing links.

LINK.SIMPLE

name::
* McsEngl.LINK.SIMPLE@cptIt,

Here's an example of a plain vanilla ("simple") XLink linking element that functions just like an HTML A element (using syntactic details from the 19980303 working draft; this is highly likely to change a bit in the next draft). In fact, this example is actually an XMLified HTML fragment:
See <a xml:link="simple" href="http://www.arbortext.com">our home page</a> for more cool information.

PEOPLE

Bonhomme, Patrice:
ACTIVITY: XSilfide project http://www.loria.fr/projets/XSilfide/EN/index.html.

DeRose, Steve:
WORK: Inso Corp. and Brown University.
ACTIVITY: XLink is edited by Steve DeRose

Ferris, Ralph E.:
ACTIVITY: of Fujitsu Software Corporation has announced that HyBrick V0.8 with XLink/XPointer

Laurent, Simon St.:
ACTIVITY: "Creating an Open Source XLink SAX Parser Filter"

Maler, Eve:
WORK: ArborText
ACTIVITY: editor of the W3C's XPointer and XLink Specifications

resourceInfHmn#cptResource843#

http://www.oasis-open.org/cover/xll.html

I gave an XML/XLL tutorial at the SGML/XML '97 conference, and have put my PowerPoint slides up on our web site.  (They're in .ppt 97 form.)  You can find them at <http://www.arbortext.com/xmlresrc.html> if you'd like to see the explanation I gave for how the Xpointer addressing keywords work.
Eve Maler 1997jan01

SPECIFICATIONS

XLINK

XLink, formerly known as XLL (the eXtensible Linking Language), is a work in progress of the Web Consortium. It is closely related to the XML Recommendation, but adds functionality for high-function hypertext and hypermedia. It has two parts: XLink proper provide advanced linking capabilities such as multidirectional and external linking, while the separate XPointer spec provides a convenient and easily-understood way of describing locations in XML documents.

xml'XPOINTER

name::
* McsEngl.xml'XPOINTER@cptIt,

XPointer spec provides a convenient and easily-understood way of describing locations in XML documents.
[] 1998may09

XPointer is a little mini-language that you can stick on the end of a URL after the#, in the case where the URL points to an XML document. It uses a keyword-and-arguments syntax like this:
keyword1(arg1,arg2).keyword2(arg1,arg2)
For example, if you want to link to the third item in the list with a unique ID of "interesting-list", you can do it this way:
href="http://www.foo.com/bar.xml#id(interesting-list).child(3,item)"
[Eve Maler {1998-04-02}]

The XML Linking Working Group

"The XML Linking Working Group is designing hypertext links for XML. Engineers defining the way that links are to be written in XML have made a distinction for links between objects - 'external' links, and 'internal' links to locations within XML documents, and both types will receive detailed treatment by this group. The objective of the XML Linking Working Group is to design advanced, scalable, and maintainable hyperlinking and addressing functionality for XML. The working drafts XML Linking Language (XLink) and XML Pointer Language (XPointer) represent the basis on which the work of the Linking WG will proceed. The chair of the Linking WG is Bill Smith, of Sun Microsystems."
[From the W3C XML Activity page as modified 1998/10/27 18:30:04]

SPECIFIC

_SPECIFIC:#ql:_GENERIC cptIt528#

FvMcs.SAXON

_CREATED: {1999-04-04}

name::
* McsEngl.conceptIt529,
* McsEngl.SAXON@cptIt,
* McsEngl.FvMcs.SAXON@cptIt,
* McsEngl.saxon@cptIt529,

DEFINITION

The SAXON package is a Java class library for processing XML documents. It provides a set of services that are particularly useful for applications performing XML-to-XML or XML-to-HTML transformations. All of these services are available to the Java programmer, some are also available without programming using SAXON's implementation of XSL (Extensible Style Language) Stylesheets.

SAXON offers higher-level functions above both the raw SAX interface (see http://www.megginson.com/SAX/index.html) and the full Document Object Model as defined by W3C. In particular, it allows you to write a clean modular application in which the processing of each element type is separately specified.
[api 1999feb10]

WHOLE

_WHOLE:
* XML_BASED_LANGUAGE#cptIt439#

ELEMENT'HANDLER

name::
* McsEngl.ELEMENT'HANDLER@cptIt,

ElementHandlerBase:
ElementCopier,
ElementRedirector,
ElementSorter,
ElementSuppressor,
NumberHandler

CHANGE THE WRITER OF AN ELEMENT:
public void startElement(ElementInfo e) throws SAXException
{
setWriter(new FileWriter(outputDir + "\\titlepage.html"));
e.write("<html><body bgcolor=#008080 text=#ffffff link=#00ffff vlink=#00cccc><font face=sans-serif>");
e.applyTemplates();
}
public void endElement(ElementInfo e) throws SAXException
{
e.resetWriter();
}

TO PROCESS ALL THE CHILDRENS OF AN ELEMENT:
public void startElement(ElementInfo e) throws SAXException
{
e.applyTemplates();
}

USE (4.01)

SERIAL PROCESSING (SAX):
Distributor d = new Distributor()
d.setWriter(playWriter);
// Subsequently, for example if you want each scene of a play to go to
// a different output file, you can call setWriter() and resetWriter() from
// the relevant element handler to achieve this.
d.setHandler( "SCENE", new SCENEHandler() );
d.setHandler( "ACT/TITLE", new ACTTITLEHandler() );
d.run(new ExtendedInputSource(new File(filename)))
d.resetWriter();

MEMORY PROCESSING (DOM):
//Create the 'controller'.
Wanderer w = new Wanderer;
// Allocate an output writer
w.setWriter(new BufferedWriter(new PrintWriter(System.out)));
// Build the document object model
Document doc = w.build ( new ExtendedInputSource( new File(args[0]) ) );

//first pass
// supply a default handler that does nothing
w.setDefaultHandler( new ElementHandlerBase() );
// supply a custom handler for the CATEGORY element
w.setHandler( "CATEGORY", new CategoryHandler() );
// run through the document to catch all CATEGORY elements
w.run(doc);
// close the output file
w.resetWriter();

SCS USE:
scHandler = new ConceptHandler();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
scHandler.setDefaultWriter(new BufferedWriter(new PrintWriter (baos)));    //scHandler.setWriter("SCENE", sceneWriter);
scHandler.setHandler( "CONCEPT", new EHConcept() );
scHandler.setHandler( "NAME", new EHName() );
scHandler.setHandler( "SYNONYMS/NAME", new EHNameSyn() );    scHandler.setHandler( "DEFINITION", new EHDefinition() );    scHandler.setHandler( "ATTRIBUTES", new EHAttributes() );    scHandler.setHandler( "ATTRIBUTES/CPTREF", new EHConRefAtt() );    scHandler.setHandler( "WHOLE/CPTREF", new EHConRefWho() );    scHandler.setHandler( "GENERAL/CPTREF", new EHConRefGen() );    scHandler.setHandler( "SIBLING/CPTREF", new EHConRefSib() );    scHandler.setHandler( "SUBGENERAL/CPTREF", new EHConRefSub() );    scHandler.setHandler( "DIMENSION", new EHDimension() );    scHandler.setHandler( "DIMENSION/CPTREF", new EHConRefDim() );    scHandler.setHandler( "ENVIRONMENT/CPTREF", new EHConRefEnv() );    scHandler.setDefaultHandler(new EHImpl());
String fileName = getCptLastFullFileName(xmlFile);
docDOM = scHandler.build(new ExtendedInputSource(new File(fileName)));    
int result = scHandler.run(docDOM);
try {doc.insertString(doc.getLength(), baos.toString(), s0);    }
catch (BadLocationException e){      System.out.println(e);    }

Version

1999dec17: 5.1

1999feb10: 4.01, I use this in my jSCS.

1998oct12: my first version.

SPECIFIC

_SPECIFIC:#ql:_GENERIC cptIt529#

FvMcs.Principia Cybernetica Project

_CREATED: {1999-09-20}

name::
* McsEngl.conceptIt531,
* McsEngl.Principia Cybernetica Project@cptIt,
* McsEngl.FvMcs.Principia Cybernetica Project@cptIt,
* McsEngl.pcp@cptIt531,
* McsEngl.principia-cybernetica-project@cptIt,

DEFINITION

Principia Cybernetica Web
is generally recognized as the most important site in the broad domain of cybernetics, complex systems, evolution and philosophy. It functions as the web server of the Principia Cybernetica Project (PCP), an international organization.
The Project's aim is
the computer-supported
collaborative development of an
evolutionary-systemic philosophy.
[Copyright© 1999 Principia Cybernetica]

GENERIC

_GENERIC:
* sysTechData-Encyclopedia##

EVOLUTION#cptCore546.171#

1995autumn: PCP-news.
In the autumn of 1995, a second electronic mailing list, PCP-news, was installed for the distribution of announcements and a two monthly newsletter. The digest of news sent to that list provides a detailed account of the developments since then, such as the different "spin-off" groups that PCP helped start up, which include the Global Brain Group, the Journal of Memetics and the study group on Progress.

1991:
1991 also saw the establishment of the PRNCYB-L electronic mailing list. PRNCYB-L is now used as a discussion medium for over 100 project participants.

1991july:
The publication of the Principia Cybernetica Newsletter# 0 followed, which was widely distributed to members of the cybernetics and systems community by postal mail and computer networks. The Newsletter garnered many favorable and some critical responses from our colleagues, and the Editors proceeded to organize the 1st Principia Cybernetica Workshop, held at the Free University of Brussels during 5 days in July, 1991. This gathering was very successful and well attended, resulting in the publication of the Workbook containing extended abstracts of the papers presented at that meeting; and the Newsletter# 1.

1990july:
The first official activity of PCP was the sponsorship of a forum on Cybernetics and Human Values at the 8th Congress of the World Organization of Systems and Cybernetics at Hunter College in New York in July of 1990. The Editorial Board were joined by B. Lichtenstein and D. White in a forum which introduced PCP and discussed many of the relevant issues.

1990spring:
This generated a fair amount of response, including that of Francis Heylighen, a physicist, cognitive scientist, and systems theorist. He reacted with detailed comments on the content of the Project (the evolutionary philosophy), its form (the hypermedia organization of knowledge), and the link between the two. Heylighen had been developing a very similar philosophy to Turchin's and had been thinking along the same lines of creating a network of people interested in the domain of complex, evolving systems who would communicate with the help of various electronic media. He started an active correspondence with Turchin and Joslyn, and finally joined them as the third member of the editorial board in spring 1990.

1987:
In 1987, Turchin came into contact with Cliff Joslyn, a systems theorist, software engineer, and proponent of Turchin's philosophy. After discussing Turchin's ideas for a collaboratively developed philosophical system, Joslyn suggested a semantic network structure using hypertext, electronic mail, and electronic publishing technologies as a viable strategy for implementation, maintenance, and production of such an ambitious project. Together they founded the Principia Cybernetica Project and formed its first Editorial Board. They wrote a first general proposal, and a document they called "The Cybernetic Manifesto" in which the fundamental philosophical positions were outlined. Joslyn began publicizing Principia Cybernetica by posting the relevant documents on the CYBSYS-L electronic mailing list in the autumn of 1989.
[HISTORY.html 1998jun19 (modified) 1990nov (created) ]

1977:
The Principia Cybernetica project was conceived by Valentin Turchin, a physicist, computer scientist, and cybernetician, whose political activity and antitotalitarian views led to his forced emigration from the Soviet Union to the United States in 1977. He had developed a cybernetic philosophy based on the concept of the "metasystem transition" with implications for human evolution, political systems, and the foundations of mathematics. He further wanted to develop an integrated philosophical system with a hierarchical organization, and involving multiple authors.

resourceInfHmn#cptResource843#

http://pespmc1.vub.ac.be/NUTSHELL.html
Overview of the project.

User

The Principia Cybernetica project is managed by a Board of Editors. The Board is responsible for the collection, selection and development of the material, and for the implementation of the computer system. The Board's work is supported by the editorial assistants, Johan Bollen and Alex Riegler. All inquiries or proposals about PCP should be directed to one of the editors below:

Francis Heylighen PO, Free University of Brussels, Pleinlaan 2, B-1050 Brussels, Belgium.
Fax: +32-2-629 24 89
Email: fheyligh@vub.ac.be

Cliff Joslyn Mail Stop B265 Los Alamos National Laboratory Los Alamos, NM 87545, USA Email: joslyn@lanl.gov

Valentin Turchin Computer Science, City College of New York, New York NY 10031, USA Email:csvft@css3s0.engr.ccny.cuny.edu

European Office
Principia Cybernetica Project
Free University of Brussels
Krijgskundestraat 33, B-1160 Brussels
Belgium

Phone +32-2-644 26 77
Fax +32-2-644 00 44
Email PCP@vub.ac.be

SPECIFIC

_SPECIFIC:#ql:_GENERIC cptIt531#

FvMcs.NewsGroup

_CREATED: {2000-09-13}

name::
* McsEngl.conceptIt539,
* McsEngl.NewsGroup@cptIt,
* McsEngl.FvMcs.NewsGroup@cptIt,
* McsEngl.newsgroup@cptIt539,

DEFINITION

NewsGroup is an Internet Conference eg comp.ai.nat-lang.
[nikkas {2000-09-13}]

GENERIC

_GENERIC:
ELECTRONIC-CONFERENCE#cptIt385#

SPECIFIC

_SPECIFIC:#ql:_GENERIC cptIt539#

The newgroups of the news.otenet.gr were about 55.000 at 2000sep.

FvMcs.techInfo.OCR

_CREATED: {2000-09-14}

name::
* McsEngl.conceptIt542,
* McsEngl.techInfo.OCR@cptIt,
* McsEngl.FvMcs.techInfo.OCR@cptIt,
* McsEngl.ocr-field@cptIt,
* McsEngl.ocr'field@cptIt542,
* McsEngl.optical-character-recognition-field@cptIt,
* McsEngl.optical-character-recognition-technology@cptIt,

OCR-PROGRAM#cptIt336#

FvMcs.techInfo.Handwritting-Recognition

_CREATED: {2000-09-14}

name::
* McsEngl.conceptIt543,
* McsEngl.techInfo.Handwritting-Recognition@cptIt,
* McsEngl.FvMcs.techInfo.Handwritting-Recognition@cptIt,
* McsEngl.Handwritting-Recognition-Field@cptIt,
* McsEngl.Handwritting'Recognition'Field@cptIt543,
* McsEngl.Handwritting-Recognition-Technology@cptIt,

SPECIFIC

_SPECIFIC:#ql:_GENERIC cptIt543#

FvMcs.μάθημα.ΠΛΗΡΟΦΟΡΙΚΗ-ΓΥΜΝΑΣΙΟΥ-(μγ02)

toc#ql:[Level CONCEPT:rl? conceptIt459]#

name::
* McsElln.μάθημα.ΠΛΗΡΟΦΟΡΙΚΗ-ΓΥΜΝΑΣΙΟΥ-(μγ02)@cptIt,
* McsEngl.FvMcs.μάθημα.ΠΛΗΡΟΦΟΡΙΚΗ-ΓΥΜΝΑΣΙΟΥ-(μγ02)@cptIt,
* McsElln.ΔΙΔΑΚΤΕΑ-ΥΛΗ-ΠΛΗΡΟΦΟΡΙΚΗΣ-ΓΥΜΝΑΣΙΟΥ@cptIt,
* McsElln.υλη-γυμνασιου-πληροφορικη@cptIt,
* McsElln.μπγ@cptIt,
* McsElln.μγ.πληροφορική@cptIt,
* McsElln.μγ02.πληροφορική@cptIt, {2012-09-15}
* McsElln.πληροφορική-γυμνασίου@cptIt,

* McsElln.μγπ7=Πληροφορική-Γυμνασίου-2007@cptIt,

* McsElln.μγπ@cptIt,

ΔΙΔΑΚΤΙΚΕΣ ΩΡΕΣ

Α' ΤΑΞΗ (27)

name::
* McsElln.Α' ΤΑΞΗ (27)@cptIt,

Α) ΕΙΣΑΓΩΓΗ:
1) Γνωριμία, δουλειές,       - 1.1 Δεδομένα, Πληροφορίες και Υπολογιστές
2) πληροφορία, ορισμός, bit/byte   - 1.2 Πως φθάσαμε στους σημερινούς υπολογιστές
3) Αγορά: (ανοίγω κομπιούτερ)     - 2.1 Το υλικό και το λογισμικό
4) Χρήση: αρχείο/φάκελος,   - 3.1 Το λογισμικό και οι κατηγορίες του. Λειτ/ Σύστ.
δείχνω αρχ/φακ εργαστήριο     - 4 Σχέση υλικ-λογ. Προστασία. Πνευματικά δικαιώματα, Εργονομία
5) Προγράμματα/Δεδομένα       - 5.1 Γραφικά περιβάλλοντα επικοινωνίας
6) Λειτουργικό         - 5.2 Παράθυρα
7) ΔΙΑΓΩΝΙΣΜΑ (αρχές Νοεμβρίου)

Β) ΖΩΓΡΑΦΙΚΗ: (2 μαθήματα)
7.1 Ζωγραφική:

Γ) ΓΡΑΦΗ: (10 μαθήματα)
7.2 Γραφή
ΔΙΑΓΩΝΙΣΜΑ

(10.3 Ιντερνέτ)

Β' ΤΑΞΗ (27)

name::
* McsElln.Β' ΤΑΞΗ (27)@cptIt,

Α) ΕΠΑΝΑΛΗΨΗ:
1) επανάληψη δουλειές - 2.2 Υλικό
2) επανάληψη Αγορά - 2.3 Περιφερειακά
3) επανάληψη Χρήση - 9.1 Πολυμέσα
4) ΔΙΑΓΩΝΙΣΜΑ.

Β) ΠΛΗΡΟΦΟΡΙΑ - ΛΕΙΤΟΥΡΓΙΚΟ:
5) 1.3 Αναπαράσταση των πληροφοριών στον υπολογιστή
6) 5.3 Βοήθεια
7) 6.1 Διαχείριση αρχείων και φακέλων: διαδρομή, δενδροειδής-δομή, Ασκ 5,7,8,10.
8) 6.2 Δημιουργία, αντιγραφή/μεταφορά, διαγραφή, μετονομασία, αναζήτηση. Ασκ. όλες.

Γ) ΥΠΟΛΟΓΙΣΤΙΚΑ ΦΥΛΛΑ:
9) 8.1 Υπολογιστικά Φύλλα. α)Τι κάνει, β)παρουσίαση: κελί, διεύθυνση, φύλλο εργασίας, βιβλιο-εργασίας. γ) μία πράξη. δ) εισαγωγή στοιχείων, ε)έχουν Ασκ. 8.1α
10) α) ασκήσεις β) διαμόρφωση αρχείου γ) έχουν Ασκ. 8.1β
11) α) ασκήσεις β) πράξεις στο αρχείο γ) έχουν Ασκ. 8.1γ
12) α) ασκήσεις β) διαγράμματα γ) έχουν Ασκ. 8.1δ
13) α) ασκήσεις β) επανάληψη
14) ΔΙΑΓΩΝΙΣΜΑ

Δ) ΕΠΙΚΟΙΝΩΝΙΕΣ:
15) 10.2 Μετάδοση πληροφορίας, Δίκτυα Υπολογιστών
16) 10.3 Ιντερνέτ: ορισμός, 2 βασικές υπηρεσίες (ιστός, ταχυδρομείο).
17) πλοήγηση στο ιστό (ιστοσελίδες ελεούσας, βασιλικής).
18) Μηχανές-αναζήτησης, Πύλες.
19) email (offline message): ανεξάρτητη υπηρεσία, web-mail,
20) άλλες υπηρεσίες:
 - ftp (δείχνω μεταφορά αρχείων και μιλώ για html)
 - online messages: chat, videoconfrencing.
 - telnet
 - group mail.
 - voip, iptv.
21) επανάληψη
22) εξέταση.

Γ' ΤΑΞΗ (27)

name::
* McsElln.Γ' ΤΑΞΗ (27)@cptIt,

Α) ΕΠΑΝΑΛΗΨΗ:
1) επανάληψη - δουλειές
2) επανάληψη - αγορά / υλικό
3) επανάληψη - χρήση / λειτουργικό
4) ΔΙΑΓΩΝΙΣΜΑ

Β) ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ:
5) πρόγραμμα/γλώσσα/αλγόριθμος - 11.1 Η έννοια του αλγορίθμου.
6) παράσταση αλγ/είδη γλωσσών/μεταγλωτιστής - 11.2 Γλώσσες προγραμματισμού.
7) ΟΠΠ/μεταβλητή/είδη μεταβλητών - 11.3 Βασικές έννοιες
8) εντολές - εισόδου, εξόδου, εκχώρησης
9) ασκήσεις 12, 13, 15, 16, euro, ΦΠΑ.
- ΔΙΑΓΩΝΙΣΜΑ

Γ) ΠΟΛΥΜΕΣΑ (1 ώρα):
9.1 Ο κόσμος των πολυμέσων
9.2 Ηχος
9.3 Γραφικά
9.4 Κίνηση σχεδίου και εικόνας
9.5 Παραγωγή εφαρμογών πολυμέσων

Δ) ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ (8.2):
1) ΒΔ (ΣΔΒΔ), εγγραφή, πεδίο, κλειδί. Ασκ 82αβ
2) Δημιουργία Μαθητολογίου: Ασκ 82γ
3) Σχέσεις, εισαγωγή στοιχείων.
4) επεξεργασία / εύρεση (μιας εγγραφής ενός πίνακα)
5) ταξινόμηση
6) Αναφορές
7) Ερωτήματα

ΑΠΟ 1999-2000

Α' ΤΑΞΗ (27)

name::
* McsElln.Α' ΤΑΞΗ (27)@cptIt,

Γνωρίζω τον Υπολογιστή
· Δεδομένα, Πληροφορίες και Υπολογιστές
· Πως φθάσαμε στους σημερινούς υπολογιστές
· Το υλικό και το λογισμικό
· Προστασία υλικού, λογισμικού και δεδομένων, Εργονομία
Διδακτικές ώρες : 6

Επικοινωνώ με τον Υπολογιστή
· Γραφικά περιβάλλοντα επικοινωνίας
Διδακτικές ώρες: 4

Διερευνώ-Δημιουργώ-Ανακαλύπτω
· Εργαλεία-Τεχνικές
· Συνθετικές εργασίες με λογισμικό εφαρμογών γενικής χρήσης, λογισμικό δικτύων και εκπαιδευτικό λογισμικό
Διδακτικές ώρες: 17

Ελέγχω - Προγραμματίζω τον Υπολογιστή
--

Ο υπολογιστής στη ζωή μας
--

Β' ΤΑΞΗ (27)

name::
* McsElln.Β' ΤΑΞΗ (27)@cptIt,

Γνωρίζω τον Υπολογιστή
· Τεχνολογία υπολογιστών
· Αναπαράσταση των πληροφοριών στον υπολογιστή
· Αποθήκευση των πληροφοριών στον υπολογιστή
· Πολυμέσα
Διδακτικές ώρες: 6

Επικοινωνώ με τον Υπολογιστή
· Διαχείριση αρχείων και φακέλων
Διδακτικές ώρες: 6

Διερευνώ-Δημιουργώ-Ανακαλύπτω
· Εργαλεία-Τεχνικές
· Συνθετικές εργασίες με λογισμικό εφαρμογών γενικής χρήσης, λογισμικό δικτύων και εκπαιδευτικό λογισμικό
Διδακτικές ώρες: 15

Ελέγχω - Προγραμματίζω τον Υπολογιστή
--

Ο υπολογιστής στη ζωή μας
--

Γ' ΤΑΞΗ (27)

name::
* McsElln.Γ' ΤΑΞΗ (27)@cptIt,

Γνωρίζω τον Υπολογιστή
--

Επικοινωνώ με τον Υπολογιστή
--

Διερευνώ-Δημιουργώ-Ανακαλύπτω
· Εργαλεία-Τεχνικές Συνθετικές εργασίες με λογισμικό εφαρμογών γενικής χρήσης, λογισμικό δικτύων, λογισμικό ανάπτυξης πολυμέσων, εκπαιδευτικό λογισμικό και προγραμματιστικά εργαλεία
Διδακτικές ώρες: 12

Ελέγχω - Προγραμματίζω τον Υπολογιστή
· Η έννοια του αλγορίθμου
· Ο κύκλος ανάπτυξης ενός προγράμματος
· Το περιβάλλον μιας γλώσσας προγραμματισμού
· Βασικές δομές μιας συμβολικής γλώσσας
Διδακτικές ώρες: 10

Ο υπολογιστής στη ζωή μας
· Γενική επισκόπηση των εφαρμογών της πληροφορικής
· Όλα αλλάζουν...
· Το μέλλον ...
Διδακτικές ώρες: 5

ΠΡΙΝ ΤΟ 1999-2000

Α' ΤΑΞΗ (27)

name::
* McsElln.Α' ΤΑΞΗ (27)@cptIt,

1. Ο υπολογιστής και η επικοινωνία μαζί του
7 ώρες
[Γ2/7285/2οκτ1995]

2. Επεξεργασία κειμένου
8 ώρες
[Γ2/7285/2οκτ1995]

3. Ζωγραφική
5 ώρες

4. Εφαρμογές
7 ώρες
[Γ2/449/29ιαν1996]

Β' ΤΑΞΗ (27)

name::
* McsElln.Β' ΤΑΞΗ (27)@cptIt,

1. Ο υπολογιστής και η επικοινωνία μαζί του
7 ώρες
[Γ2/7285/2οκτ1995]

2. Λογιστικά φύλλα
8 ώρες
[Γ2/7285/2οκτ1995]

3. Διερεύνηση με συμβολική έκφραση σε προγραμματιστικό περιβάλλον
10 ώρες
[Γ2/449/29ιαν1996]

4. Εφαρμογές
2 ώρες
[Γ2/449/29ιαν1996]

Γ' ΤΑΞΗ (27)

name::
* McsElln.Γ' ΤΑΞΗ (27)@cptIt,

1. Ο υπολογιστής και η επικοινωνία μαζί του
5 ώρες
[Γ2/7285/2οκτ1995]

2. Βάσεις Δεδομένων
10 ώρες
[Γ2/7285/2οκτ1995]

3. Διερεύνηση με συμβολική έκφραση σε προγραμματιστικό περιβάλλον
10 ώρες
[Γ2/449/29ιαν1996]

4. Εφαρμογές
2 ώρες
[Γ2/449/29ιαν1996]

μγ02.ΤΑΞΗ.Α (52 ώρες)

name::
* McsElln.μγ02.ΤΑΞΗ.Α (52 ώρες)@cptIt,

μπγ.α,

2024-2015

ΒΙΒΛΙΟ:
* Ενότητα 1. Ψηφιακός κόσμος, (6 ώρες)
* Ενότητα 2. Το υλικό του υπολογιστή, (2 ώρες)
* Ενότητα 3. Το εσωτερικό του υπολογιστή, (2 ώρες)
* Ενότητα 4. Λογισμικό, (2 ώρες)
* Ενότητα 5. Γνωρίζω το Διαδίκτυο και επικοινωνώ, (8 ώρες)
* Ενότητα 6. Κυβερνοασφάλεια, (4 ώρες)
* Ενότητα 7. Δημιουργώ με τον κειμενογράφο, (6 ώρες)
* Ενότητα 8. Αλγοριθμική, (6 ώρες)
* Ενότητα 9. Προγραμματισμός υπολογιστικών συστημάτων, (14 ώρες)
* Ενότητα 10. Πληροφορική και κοινωνία, (2 ώρες)

εισαγωγή-θεωρία

ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ:
1) ΕΦΑΡΜΟΓΕΣ: Οι βασικές ΕΦΑΡΜΟΓΕΣ/ΔΟΥΛΕΙΕΣ που κάνουμε με το κομπιούτερ είναι:
1. Επικοινωνούμε, 2. Παίζουμε - Ψυχαγωγούμαστε, 3. Γράφουμε, 4. Ζωγραφίζουμε, 5. Υπολογίζουμε.
Ξέρουμε κομπιούτερ, άν ξέρουμε να κάνουμε τις παραπάνω δουλειές.
2) ΥΠΟΛΟΓΙΣΤΗΣ: είναι ένα μηχάνημα με το οποίο επεξεργαζόμαστε σύμβολα, εικόνες και ήχους (πληροφορία).
3) ΔΕΔΟΜΕΝΑ-ΠΛΗΡΟΦΟΡΙΑ: ΔΕΔΟΜΕΝΑ είναι τα σύμβολα-εικόνες-και-οι-ήχοι που ΔΙΝΟΥΜΕ στο υπολογιστή και ΠΛΗΡΟΦΟΡΙΑ τα σύμβολα-εικόνες-και-οι-ήχοι που ΠΑΙΡΝΟΥΜΕ. Στην πράξη και τα δύο τα λέμε πληροφορία.
4) BIT: είναι σύμβολα οι εικόνες και οι ήχοι μέσα στον υπολογιστή, που ΜΕΤΑΤΡΕΠΟΝΤΑΙ σε ΔΥΟ μορφές που συμβολικά τις λέμε 0 1.
5) BYTE: byte είναι 8 bit.
6) ΠΟΛΛΑΠΛΑΣΙΑ-ΜΟΝΑΔΩΝ: είναι οι διεθνείς λέξεις που σημαίνουν τους αριθμούς
 K (kilo) = χίλια,      M (mega) = εκατομμύριο,
 G (giga) = δισεκατομμύριο,    T (tera) = τρισεκατομμύριο,
7) ΑΓΟΡΑ: Αγοράζουμε υπολογιστή ΜΟΝΟ όταν πραγματικά τον χρειαζόμαστε γιατί χάνουν γρήγορα τη αξία τους. Αγοράζουμε ακριβή οθόνη, φτηνή κεντρική-μονάδα. Ακριβό υπολογιστή χρειαζόμαστε για επεξεργασία βίντεο.
8) ΓΙΑΤΙ ΠΡΕΠΕΙ ΝΑ ΜΑΘΟΥΜΕ: Γιατί έχει γίνει ΑΠΑΡΑΙΤΗΤΟΣ στην καθημερινότητά μας και στη δουλειά μας.

ΥΛΙΚΟ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ:
9) HARDWARE-SOFTWARE: Hardware (Υλικό) είναι οι συσκευές του υπολογιστή.
Software (Λογισμικό) είναι ότι ΔΕΝ είναι συσκευές, δηλαδή σύμβολα, εικόνες και ήχοι που επεξεργάζεται και παράγει. Επομένως τα 2 βασικά μέρη ενός υπολογιστή είναι το υλικό και το λογισμικό.
10) ΕΠΕΞΕΡΓΑΣΤΗΣ: Επεξεργαστής (ΚΜΕ) είναι η ΜΗΧΑΝΗ του υπολογιστή, η συσκευή που επεξεργάζεται σύμβολα, εικόνες και ήχους.
11) ΑΠΟΘΗΚΕΣ: Αποθήκες είναι οι συσκευές που κρατάνε μόνιμα την πληροφορία. Σκληρός-δίσκος (1TB), USB (4,8,16...GB), DVD (8GB), CD (<1GB),
12) ΜΝΗΜΗ-RAM: Μνήμη RAM είναι η συσκευή που κρατάει προσωρινά τις πληροφορίες που επεξεργάζεται ΚΑΙ τις οδηγίες επεξεργασίας για να γίνει η επεξεργασία πιο ΓΡΗΓΟΡΑ. Όταν κλείνει ο υπολογιστής το περιεχόμενό της ΧΑΝΕΤΑΙ. Οι 3 πιο σημαντικές συσκευές του υπολογιστή είναι: ο επεξεργαστής, οι αποθήκες και η RAM.
13) ΠΕΡΙΦΕΡΕΙΑΚΕΣ-ΣΥΣΚΕΥΕΣ: ονομάζουν τις συσκευές που συνδέουμε στο βασικό κουτί του υπολογιστή, την κεντρική-μονάδα.

ΛΟΓΙΣΜΙΚΟ:
14) ΑΡΧΕΙΟ: Αρχεία (files) είναι σύμβολα, εικόνες και ήχοι στις αποθήκες με όνομα.
15) ΦΑΚΕΛΟΣ: Φάκελος (folder|Directory) είναι κομμάτι αποθηκών.
16) ΠΡΟΓΡΑΜΜΑ: Πρόγραμμα είναι αρχείο|αρχεία με οδηγίες επεξεργασίας πληροφορίας. ΠΡΟΣΟΧΗ, τα ονομάζουν ΚΑΙ λογισμικό/software.
17) ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ: Λειτουργικό-σύστημα (operating-system) είναι το σημαντικότερο πρόγραμμα που α) χωρίς αυτό ΔΕΝ δουλεύει ο υπολογιστής και β) εκτελείται με το άνοιγμα του υπολογιστή.
Υπάρχουν 4 σημαντικά, Linux, Windows, iOS, Android.
Με το λειτουργικό α) εκτελούμε τα προγράμματα-εφαρμογών β) βλέπουμε τα αρχεία και τους φακέλους γ) αλλάζουμε τις παραμέτρους.

Διαδίκτυο

ΔΙΑΔΙΚΤΥΟ--ΠΑΓΚΟΣΜΙΟΣ-ΙΣΤΟΣ:
1) ΙΝΤΕΡΝΕΤ: είναι δίκτυο υπολογιστών α) παγκόσμιο β) το μεγαλύτερο.
2) ΥΠΗΡΕΣΙΕΣ: είναι οι δουλειές επικοινωνίας-πληροφορίας που κάνουμε στο διαδίκτυο όπως:
- εύρεση πληροφοριών, - ψυχαγωγία, - κοινωνική δικτύωση, - ηλεκτρονικό-ταχυδρομείο, τσατ, ομάδες συζητήσεων,
- τηλεδιάσκεψη, - αγορές, - πληρωμή λογαριασμών, - τηλεμαθήματα, - τηλεεργασία, - μεταφορά-αρχείων,
- παγκόσμιος ιστός,
3) ΠΡΩΤΟΚΟΛΛΟ-ΕΠΙΚΟΙΝΩΝΙΑΣ: είναι η κοινή γλώσσα που χρησιμοποιούν τα κομπιούτερ για να επικοινωνούν, πχ http, ftp.
4) ΠΑΓΚΟΣΜΙΟΣ-ΙΣΤΟΣ: είναι η πιο σημαντικη υπηρεσία του ίντερνετ που χρησιμοποιεί το πρωτόκολλο επικοινωνίας http.
5) ΣΥΝΔΕΣΗ: Στο ιντερνετ συνδεόμαστε μέσω των εταιριών παροχής υπηρεσιών ίντερνετ (ISP).
6) bps (bit per second): είναι η μονάδα μέτρησης της ταχύτητας σύνδεσης του ίντερνετ.
7) ΦΥΛΛΟΜΕΤΡΗΤΗΣ (browser): είναι το πρόγραμμα με το οποίο μπαίνουμε στον παγκόσμιο ιστό, πχ: google chrome, mozilla firefox, microsoft edge, brave, safari, opera, κλπ.
8) ΙΣΤΟΣΕΛΙΔΑ (webpage): είναι ΕΓΓΡΑΦΟ γραμμένο σε Html, που βλέπουμε στον παγκόσμιο-ιστό.
9) ΔΙΕΥΘΥΝΣΗ ΙΣΤΟΣΕΛΙΔΑΣ: είναι το όνομά της που αποτελείται α) από τα όνομα του κομπιούτερ, β) των φακέλων και γ) του αρχείου που βλέπουμε, πχ gym-eleous.ioa.sch.gr/2012/index2012.html.
10) ΙΣΤΟΤΟΠΟΣ (website): είναι ένα σύνολο ιστοσελίδων στο ίδιο κομπιούτερ.
11) ΠΛΟΗΓΗΣΗ (σερφάρισμα): λέμε την περιήγηση απο ιστοσελίδα σε ιστοσελίδα.
12) ΙΣΤΟΕΦΑΡΜΟΓΗ (webapp): είναι ιστοσελίδα και πρόγραμμα-εφαρμογών μαζί.
13) ΜΗΧΑΝΗ-ΑΝΑΖΗΤΗΣΗΣ: είναι ιστοεφαρμογή με ένα κουτάκι στο οποίο γράφουμε λέξεις-κλειδιά και μας βρίσκει ΔΙΕΥΘΥΝΣΕΙΣ ιστοσελίδων που τις περιέχουν πχ google.com, bing.com.
14) CHATBOT-ΤΕΧΝΗΤΗΣ-ΝΟΗΜΟΣΥΝΗΣ: είναι ιστοεφαρμογή που μας δίνει ΑΠΑΝΤΗΣΕΙΣ στις ερωτήσεις μας.

ΗΛΕΚΤΡΟΝΙΚΟ-ΤΑΧΥΔΡΟΜΕΙΟ:
15) ΗΛΕΚΤΡΟΝΙΚΟ-ΤΑΧΥΔΡΟΜΕΙΟ-(ΗΤ)-EMAIL είναι η υπηρεσία ανταλλαγής γραπτών μηνυμάτων offline.
16) ΔΙΕΥΘΥΝΣΗ-ΗΤ περιέχει το σύμβολο @ και δεν πρέπει να τη συγχέουμε με τη διεύθυνση ιστοσελίδας.
17) ΛΟΓΑΡΙΑΜΟΣ ΗΛ-ΤΑΧ λέμε την απόκτηση κωδικών για αποστολή και λήψη ηλ.ταχυδρομείου.
18) ΕΙΔΗ: SMTP και webmail (http email).
19 ΠΑΝΕΛΗΝΙΟ-ΣΧΟΛΙΚΟ-ΔΙΚΤΥΟ:

ΚΥΒΕΡΝΟΑΣΦΑΛΕΙΑ:
20) ΚΙΝΔΥΝΟΙ-ΔΙΑΔΙΚΤΥΟΥ:
- δεν εμπιστευόμαστε αγνώστους.
- προσωπομιμήσεις,
- ξεχωρίζουμε αλήθεια | λάθος-ψέμα,
- ιούς,
- εθισμός,
- εξοικείωση με πολέμους.

γραφή-κειμένου

Html

προγραμματισμός

Αλγοριθμική - Προγραμματισμός:
1) ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ: είναι η διαδικασία γραφής προγράμματος. Η γνώση του σας βοηθά να γίνετε καλύτεροι χρήστες των υπολογιστών, στο Λύκειο και στις Πανελλαδικές-εξετάσεις.
2) ΠΡΟΓΡΑΜΜΑ: είναι ΑΡΧΕΙΟ/αρχεία που περιέχουν ένα ΕΓΓΡΑΦΟ με ΟΔΗΓΙΕΣ (εντολές) γραμμένες σε ειδική γλώσσα που
 α) καταλαβαίνει ένα κομπιούτερ και
 β) με τις οποίες ο ΕΠΕΞΕΡΓΑΣΤΗΣ επεξεργάζεται ΠΛΗΡΟΦΟΡΙΕΣ (κείμενα, εικόνες και ήχους).
ΦΤΙΑΧΝΟΥΜΕ προγράμματα γιατί τα κομπιούτερ είναι μηχανήματα που λειτουργούν με ρεύμα, χωρίς μυαλό και χρειάζονται οδηγίες για να δουλέψουν.
3) ΓΛΩΣΣΑ-ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ: είναι η ΓΛΩΣΣΑ που καταλαβαίνει ο υπολογιστής και με την οποία γράφουμε τις εντολές. Η βασική διαφορά της με τις φυσικές-γλώσσες είναι η απόλυτη ΑΚΡΙΒΕΙΑ.
α) ΓΛΩΣΣΑ-ΜΗΧΑΝΗΣ: η γλώσσα που καταλαβαίνει ΑΜΕΣΑ το μηχάνημα, οι εντολές της γράφονται με 0 και 1.
β) ΓΛΩΣΣΑ-ΥΨΗΛΟΥ-ΕΠΙΠΕΔΟΥ: είναι η γλώσσα-προγραμματισμου που έχει τις εντολές της με λέξεις από τις φυσικές-γλώσσες. Σε αυτές γράφονται τα προγράμματα.
4) ΑΛΓΟΡΙΘΜΟΣ (προγραμματισμού): είναι ΜΕΘΟΔΟΣ που περιγράφει μια ΔΙΑΔΙΚΑΣΙΑ ΕΠΕΞΕΡΓΑΣΙΑΣ ΠΛΗΡΟΦΟΡΙΑΣ όπως την εκτελεί ένας ΥΠΟΛΟΓΙΣΤΗΣ.
 α) ο προγραμματιστής, στο μυαλό του, σκέφτεται τον αλγόριθμο στη μητρική του γλώσσα και μετά ή συγχρόνως τον μεταφράζει σε μια γλώσσα-προγραμματισμού.
 β) επειδή οι υπολογιστές δεν κάνουν καφέδες, γιαυτό ο αλγόριθμος περιγράφει μια διαδικασία επεξεργασίας πληροφορίας (= επεξεργασία συμβόλων, εικόνων και ήχων) και όχι μια οποιαδήποτε διαδικασία.
 γ) αν τη διαδικασία επεξεργασίας πληροφορίας του αλγορίθμου ΔΕΝ ΜΠΟΡΕΙ να την εκτελέσει ένας υπολογιστής, τότε ΔΕΝ είναι αλγόριθμος-προγραμματισμού.
5) ΠΡΟΒΛΗΜΑ (προγραμματισμού): είναι μια ΑΓΝΩΣΤΗ ΜΕΘΟΔΟΣ επεξεργασίας-πληροφορίας, όπως την κάνουν οι ΑΝΘΡΩΠΟΙ, που θέλουμε να βρούμε.
Ο αλγόριθμος είναι η λύση ενός προβλήματος.
6) ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ-ΠΕΡΙΒΑΛΛΟΝ: είναι ένα σύνολο προγραμμμάτων με το οποίο οι προγραμματιστές φτιάχνουν προγράμματα. Περιέχει editor, μεταφραστή και εκσφαλματωτή.
α) EDITOR/ΣΥΝΤΑΚΤΗΣ: είναι το πρόγραμμα στο οποίο γράφουμε το κείμενο του προγράμματος.
β) ΜΕΤΑΦΡΑΣΤΗΣ: είναι το ΠΡΟΓΡΑΜΜΑ που μεταφράζει το πρόγραμμα από γλώσσα-υψηλού-επιπέδου σε γλώσσα-μηχανής.
 Μεταγλωτιστής (compiler) λέγεται ο μεταφραστής που μεταφράζει ολόκληρα προγράμματα.
 Διερμηνέας (interpreter) λέγεται ο μεταφραστής που μεταφράζει εντολή εντολή.
γ) ΕΚΣΦΑΛΜΑΤΩΤΗΣ: είναι το πρόγραμμα που βρίσκει λάθη.
7) ΛΑΘΗ: τα συντακτικά μπορεί να τα βρεί το προγραμματιστικό-περιβάλλον τα λογικά όχι.

2023-2024

ΕΝΝΟΙΕΣ ΤΑΞΗ.Α/ΕΝΟΤΗΤΑ.1: ΓΝΩΡΙΖΩ ΤΟΝ ΥΠΟΛΟΓΙΣΤΗ
ΚΕΦ.1: ΒΑΣΙΚΕΣ-ΕΝΝΟΙΕΣ
1) Εφαρμογές
2) Υπολογιστής
3) Δεδομένα
4) Πληροφορία
5) Πληροφορική
6) bit
7) byte
8) Πολλαπλάσια-μονάδων
9) Πότε αγοράζουμε
10) Γιατί να μάθουμε πληροφορική

ΚΕΦ.2: ΤΟ ΥΛΙΚΟ
1) Hardware (Υλικό)
2) Software (Λογισμικό)
3) Κεντρική-μονάδα
4) Περιφερειακές-μονάδες
5) Επεξεργαστής (ΚΜΕ)
6) Αποθήκες
7) Μνήμη RAM
8) Συσκευές-εισόδου
9) Συσκευές-εξόδου
10) Είδη Υπολογιστών

ΚΕΦ.3: ΕΡΓΟΝΟΜΙΑ
1) Εργονομία
2) Σωστή στάση εργασίας
3) Εικονοστοιχείο (pixel)
4) Ανάλυση Οθόνης
5) Μέγεθος Οθόνης

ΚΕΦ.4: ΙΣΤΟΡΙΑ
1) Πότε κατασκευάστηκε πρώτος
2) Ηλεκτρονική λυχνία
3) Τρανζίστορ
4) Ολοκληρωμένο κύκλωμα (τσιπ)

ΕΝΝΟΙΕΣ ΤΑΞΗ.Α/ΕΝΟΤΗΤΑ.2: ΤΟ ΛΟΓΙΣΜΙΚΟ
ΚΕΦ.5: ΓΝΩΡΙΜΙΑ ΜΕ ΛΟΓΙΣΜΙΚΟ
1) Αρχείο
2) Φάκελος
3) Πρόγραμμα
4) Προγράμματα Συστήματος-Εφαρμογών
5) Λειτουργικό-σύστημα

ΚΕΦ.6: ΓΡΑΦΙΚΟ-ΠΕΡΙΒΑΛΛΟΝ
1) Περιβάλλον Εντολών Γραμμής
2) Γραφικό περιβάλλον Επικοινωνίας
3) Εικονίδιο
4) Παράθυρο
5) Επιφάνεια εργασίας
6) Γραμμή εργασιών

ΚΕΦ.7: ΠΡΟΣΤΑΣΙΑ-ΛΟΓΙΣΜΙΚΟΥ
1) Ιός-υπολογιστή
2) Αντιϊικό-πρόγραμμα
3) Αντίγραφα-ασφαλείας
4) Χάκερ

ΚΕΦ.8: ΠΕΙΡΑΤΙΑ-ΛΟΓΙΣΜΙΚΟΥ
1) Πειρατεία-λογισμικού
2) Αδεια-χρήσης
3) Δωρεάν-πρόγραμμα
4) Πρόγραμμα-ανοικτού-κώδικα

ΕΝΝΟΙΕΣ ΤΑΞΗ.Α/ΕΝΟΤΗΤΑ.3:
ΚΕΦ.9: ΖΩΓΡΑΦΙΚΗ

ΚΕΦ.10: ΕΠΕΞΕΡΓΑΣΙΑ ΚΕΙΜΕΝΟΥ:
1) Επεξεργαστής-κειμένου,
2) δρομέας,
3) αλλαγή-γλώσσας,
4) κεφαλαία-γράμματα,
5) λέξη-παράγραφος,
6) τόνους-ειδικοί-χαρακτήρες,
7) σβήσιμο-γραμμάτων
8) μετακίνηση-δρομέα,
9) αποθήκευση-ανάκτηση,
10) διόρθωση-λαθών,
11) μορφοποίηση,
12) επιλογή-κειμένου,
13) γραμματοσειρά,
14) μέγεθος,
15) έντονα-πλάγια-υπογραμμισμένα,
16) στοίχιση,
17) χρώμα,
18) εισαγωγή-εικόνας,
19) αντιγραφή-μεταφορά,

ΕΝΝΟΙΕΣ ΤΑΞΗ.Α/ΕΝΟΤΗΤΑ.4:
ΚΕΦ.11: ΔΙΑΔΙΚΤΥΟ
1) ίντερνετ,
2) υπηρεσίες,
3) πρωτόκολλο-επικοινωνίας,
4) παγκόσμιος-ιστός,
5) σύνδεση,
6) bps,
7) προσοχή,

ΚΕΦ.12: ΠΑΓΚΟΣΜΙΟΣ-ΙΣΤΟΣ

ΚΕΦ.13: ΑΝΤΛΗΣΗ ΠΛΗΡΟΦΟΡΙΩΝ

ΚΕΦ.14: ΗΛΕΚΤΡΟΝΙΚΟ-ΤΑΧΥΔΡΟΜΕΙΟ

2020-2021

ΚΕΦΑΛΑΙΟ-1: ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ (σελ12):
1) ΕΦΑΡΜΟΓΕΣ: Οι βασικές ΕΦΑΡΜΟΓΕΣ/ΔΟΥΛΕΙΕΣ που κάνουμε με το κομπιούτερ είναι:
 1. Επικοινωνούμε.  2. Παίζουμε - Ψυχαγωγούμαστε.  3. Γράφουμε.    4. Ζωγραφίζουμε.
 5. Υπολογίζουμε.  6. Μαθαίνουμε και εκπαιδευόμαστε.
 7. Καταχωρούμε πληροφορίες από καρτέλες ή πίνακες.
Ξέρουμε κομπιούτερ, άν ξέρουμε να κάνουμε τις παραπάνω δουλειές.
2) ΥΠΟΛΟΓΙΣΤΗΣ: Υπολογιστής είναι ένα μηχάνημα με το οποίο επεξεργαζόμαστε σύμβολα, εικόνες και ήχους (πληροφορία).
3) ΔΕΔΟΜΕΝΑ-ΠΛΗΡΟΦΟΡΙΑ: ΔΕΔΟΜΕΝΑ είναι τα σύμβολα-εικόνες-και-οι-ήχοι που ΔΙΝΟΥΜΕ στο υπολογιστή και ΠΛΗΡΟΦΟΡΙΑ τα σύμβολα-εικόνες-και-οι-ήχοι που ΠΑΙΡΝΟΥΜΕ. Στην πράξη και τα δύο τα λέμε πληροφορία.
4) BIT: bit λέγονται οι ΔΥΟ μορφές στις οποίες ΜΕΤΑΤΡΕΠΟΝΤΑΙ τα σύμβολα οι εικόνες και οι ήχοι μέσα στον υπολογιστή, συμβολικά τα λέμε 0, 1.
5) BYTE: byte είναι 8 bit.
6) ΠΟΛΛΑΠΛΑΣΙΑ-ΜΟΝΑΔΩΝ:
 K (kilo) = χίλια,      M (mega) = εκατομμύριο,
 G (giga) = δισεκατομμύριο,    T (tera) = τρισεκατομμύριο,
7) ΑΓΟΡΑ: Αγοράζουμε υπολογιστή ΜΟΝΟ όταν πραγματικά τον χρειαζόμαστε γιατί χάνουν γρήγορα τη αξία τους. Αγοράζουμε ακριβή οθόνη, φτηνή κεντρική-μονάδα.
8) ΓΙΑΤΙ ΠΡΕΠΕΙ ΝΑ ΜΑΘΟΥΜΕ: Γιατί έχει γίνει ΑΠΑΡΑΙΤΗΤΟΣ στην καθημερινότητά μας και στη δουλειά μας.

ΚΕΦΑΛΑΙΟ-2: ΤΟ ΥΛΙΚΟ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ (σελ16):
9) HARDWARE-SOFTWARE: Hardware (Υλικό) είναι οι συσκευές του υπολογιστή.
Software (Λογισμικό) είναι ότι ΔΕΝ είναι συσκευές, δηλαδή σύμβολα, εικόνες και ήχοι που επεξεργάζεται και παράγει. Επομένως τα 2 βασικά μέρη ενός υπολογιστή είναι το υλικό και το λογισμικό.
10) ΕΠΕΞΕΡΓΑΣΤΗΣ: Επεξεργαστής (ΚΜΕ) είναι η ΜΗΧΑΝΗ του υπολογιστή, η συσκευή που επεξεργάζεται σύμβολα, εικόνες και ήχους.
11) ΑΠΟΘΗΚΕΣ: Αποθήκες είναι οι συσκευές που κρατάνε μόνιμα την πληροφορία. Σκληρός-δίσκος (1TB), USB (4,8,16...GB), DVD (8GB), CD (<1GB),
12) ΜΝΗΜΗ-RAM: Μνήμη RAM είναι η συσκευή που κρατάει προσωρινά τις πληροφορίες που επεξεργάζεται ΚΑΙ τις οδηγίες επεξεργασίας για να γίνει η επεξεργασία πιο ΓΡΗΓΟΡΑ. Όταν κλείνει ο υπολογιστής το περιεχόμενό της ΧΑΝΕΤΑΙ. Οι 3 πιο σημαντικές συσκευές του υπολογιστή είναι: ο επεξεργαστής, οι αποθήκες και η RAM.
13) ΠΕΡΙΦΕΡΕΙΑΚΕΣ-ΣΥΣΚΕΥΕΣ: ονομάζουν τις συσκευές που συνδέουμε στο βασικό κουτί του υπολογιστή, την κεντρική-μονάδα.

ΚΕΦΑΛΑΙΟ-5: ΓΝΩΡΙΜΙΑ ΜΕ ΤΟ ΛΟΓΙΣΜΙΚΟ (σελ34):
14) ΑΡΧΕΙΟ: Αρχεία (files) είναι σύμβολα, εικόνες και ήχοι στις αποθήκες με όνομα.
15) ΦΑΚΕΛΟΣ: Φάκελος (folder|Directory) είναι κομμάτι αποθηκών.
16) ΠΡΟΓΡΑΜΜΑ: Πρόγραμμα είναι αρχείο|αρχεία με οδηγίες. ΠΡΟΣΟΧΗ, τα ονομάζουν ΚΑΙ λογισμικό/software.
17) ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ: Λειτουργικό-σύστημα (operating-system) είναι το σημαντικότερο πρόγραμμα που α) χωρίς αυτό ΔΕΝ δουλεύει ο υπολογιστής και β) εκτελείται με το άνοιγμα του υπολογιστή.
Υπάρχουν 4 σημαντικά, Linux, Windows, iOS, Android.
Με το λειτουργικό α) εκτελούμε τα προγράμματα-εφαρμογών β) βλέπουμε τα αρχεία και τους φακέλους γ) αλλάζουμε τις παραμέτρους.

2015-2016

ΚΕΦΑΛΑΙΟ-1: ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ:
1) ΕΦΑΡΜΟΓΕΣ: Οι βασικές ΕΦΑΡΜΟΓΕΣ/ΔΟΥΛΕΙΕΣ που κάνουμε με το κομπιούτερ είναι:
 1. Επικοινωνούμε.  2. Παίζουμε - Ψυχαγωγούμαστε.  3. Γράφουμε. 4. Ζωγραφίζουμε.
 5. Υπολογίζουμε.  6. Μαθαίνουμε και εκπαιδευόμαστε.
 7. Καταχωρούμε πληροφορίες από καρτέλες ή πίνακες.
Ξέρουμε κομπιούτερ, άν ξέρουμε να κάνουμε τις παραπάνω δουλειές.
2) ΥΠΟΛΟΓΙΣΤΗΣ: Υπολογιστής είναι ένα μηχάνημα με το οποίο επεξεργαζόμαστε σύμβολα, εικόνες και ήχους (πληροφορία).
3) BIT: bit λέγονται οι ΔΥΟ μορφές στις οποίες ΜΕΤΑΤΡΕΠΟΝΤΑΙ τα σύμβολα οι εικόνες και οι ήχοι μέσα στον υπολογιστή, συμβολικά τα λέμε 0, 1.
4) BYTE: byte είναι 8 bit.
5) ΠΟΛΛΑΠΛΑΣΙΑ-ΜΟΝΑΔΩΝ:
 K (kilo) = 1.000,      M (mega) = 1.000.000,
 G (giga) = 1 δις,      T (tera) = 1 τρις,
6) ΑΓΟΡΑ: Αγοράζουμε υπολογιστή ΜΟΝΟ όταν πραγματικά τον χρειαζόμαστε γιατί χάνουν γρήγορα τη αξία τους. Αγοράζουμε ακριβή οθόνη, φτηνή κεντρική-μονάδα.
7) ΓΙΑΤΙ ΠΡΕΠΕΙ ΝΑ ΜΑΘΟΥΜΕ: Γιατί έχει γίνει ΑΠΑΡΑΙΤΗΤΟΣ στην καθημερινότητά μας και στη δουλειά μας.

ΚΕΦΑΛΑΙΟ-2: ΤΟ ΥΛΙΚΟ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ:
1) HARDWARE: Hardware (Υλικό) είναι οι συσκευές του υπολογιστή.
2) SOFTWARE: Software (Λογισμικό) είναι ότι ΔΕΝ είναι συσκευές, δηλαδή σύμβολα, εικόνες και ήχοι που επεξεργάζεται και παράγει. Επομένως τα 2 βασικά μέρη ενός υπολογιστή είναι το υλικό και το λογισμικό.
3) ΕΠΕΞΕΡΓΑΣΤΗΣ: Επεξεργαστής (ΚΜΕ) είναι η ΜΗΧΑΝΗ του υπολογιστή, η συσκευή που επεξεργάζεται σύμβολα, εικόνες και ήχους.
4) ΑΠΟΘΗΚΕΣ: Αποθήκες είναι οι συσκευές που κρατάνε μόνιμα την πληροφορία. Σκληρός-δίσκος (1TB), USB (4,8,16...GB), DVD (8GB), CD (<1GB),
5) ΜΝΗΜΗ-RAM: Μνήμη RAM είναι η συσκευή που κρατάει προσωρινά τις πληροφορίες που επεξεργάζεται ΚΑΙ τις οδηγίες επεξεργασίας για να γίνει η επεξεργασία πιο ΓΡΗΓΟΡΑ. Όταν κλείνει ο υπολογιστής το περιεχόμενό της ΧΑΝΕΤΑΙ. Οι 3 πιο σημαντικές συσκευές του υπολογιστή είναι: ο επεξεργαστής, οι αποθήκες και η RAM.

ΚΕΦΑΛΑΙΟ-5: ΓΝΩΡΙΜΙΑ ΜΕ ΤΟ ΛΟΓΙΣΜΙΚΟ:
1) ΑΡΧΕΙΟ: Αρχεία (files) είναι σύμβολα, εικόνες και ήχοι στις αποθήκες με όνομα.
2) ΦΑΚΕΛΟΣ: Φάκελος (folder|Directory) είναι κομμάτι αποθηκών.
3) ΠΡΟΓΡΑΜΜΑ: Πρόγραμμα είναι αρχείο|αρχεία με οδηγίες. ΠΡΟΣΟΧΗ, τα ονομάζουν ΚΑΙ λογισμικό/software.
4) ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ: Λειτουργικό-σύστημα (operating-system) είναι το σημαντικότερο πρόγραμμα που α) χωρίς αυτό ΔΕΝ δουλεύει ο υπολογιστής και β) εκτελείται με το άνοιγμα του υπολογιστή.
Υπάρχουν 4 σημαντικά, Linux, Windows, iOS, Android.
Με το λειτουργικό α) εκτελούμε τα προγράμματα-εφαρμογών β) βλέπουμε τα αρχεία και τους φακέλους γ) αλλάζουμε τις παραμέτρους.

2012-2013

ΚΕΦΑΛΑΙΟ-1: ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ:
1) ΕΦΑΡΜΟΓΕΣ: Οι βασικές ΕΦΑΡΜΟΓΕΣ/ΔΟΥΛΕΙΕΣ που κάνουμε με το κομπιούτερ είναι:
 1. Επικοινωνούμε.  2. Παίζουμε - Ψυχαγωγούμαστε.
 3. Γράφουμε.    4. Ζωγραφίζουμε.
 5. Υπολογίζουμε.  6. Καταχωρούμε πληροφορίες από καρτέλες ή πίνακες.
 7. Μαθαίνουμε και εκπαιδευόμαστε.
Ξέρουμε κομπιούτερ, άν ξέρουμε να κάνουμε τις παραπάνω δουλειές.
2) ΥΠΟΛΟΓΙΣΤΗΣ: Υπολογιστής είναι ένα μηχάνημα με το οποίο επεξεργαζόμαστε σύμβολα, εικόνες και ήχους (πληροφορία).
3) ΔΕΔΟΜΕΝΑ: Δεδομένα είναι τα σύμβολα, οι εικόνες και οι ήχοι που ΔΙΝΟΥΜΕ στον υπολογιστή να επεξεργαστεί.
4) ΠΛΗΡΟΦΟΡΙΑ: Πληροφορία είναι α σύμβολα, οι εικόνες και οι ήχοι που ΠΑΙΡΝΟΥΜΕ από τον υπολογιστή μετά την επεξεργασία τους. ΠΡΟΣΟΧΗ πολλές φορές στα κείμενα τα δεδομένα τα λένε και πληροφορία.
5) ΠΛΗΡΟΦΟΡΙΚΗ: Πληροφορική είναι η επιστήμη με αντικείμενο τους υπολογιστές ΚΑΙ την επεξεργασία πληροφορίας.
6) BIT: bit λέγονται οι ΔΥΟ μορφές στις οποίες ΜΕΤΑΤΡΕΠΟΝΤΑΙ τα σύμβολα οι εικόνες και οι ήχοι μέσα στον υπολογιστή, συμβολικά τα λέμε 0, 1.
7) BYTE: byte είναι 8 bit.
8) ΠΟΛΛΑΠΛΑΣΙΑ-ΜΟΝΑΔΩΝ:
 K (kilo) = 1.000,      M (mega) = 1.000.000,
 G (giga) = 1 δις,      T (tera) = 1 τρις,
9) ΑΓΟΡΑ: Αγοράζουμε υπολογιστή ΜΟΝΟ όταν πραγματικά τον χρειαζόμαστε γιατί χάνουν γρήγορα τη αξία τους. Αγοράζουμε ακριβή οθόνη, φτηνή κεντρική-μονάδα.
10) ΓΙΑΤΙ ΠΡΕΠΕΙ ΝΑ ΜΑΘΟΥΜΕ: Γιατί έχει γίνει ΑΠΑΡΑΙΤΗΤΟΣ στην καθημερινότητά μας και στη δουλειά μας.

ΚΕΦΑΛΑΙΟ-2: ΤΟ ΥΛΙΚΟ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ:
1) HARDWARE: Hardware (Υλικό) είναι οι συσκευές του υπολογιστή.
2) SOFTWARE: Software (Λογισμικό) είναι ότι ΔΕΝ είναι συσκευές, δηλαδή σύμβολα, εικόνες και ήχοι που επεξεργάζεται και παράγει. Επομένως τα 2 βασικά μέρη ενός υπολογιστή είναι το υλικό και το λογισμικό.
3) ΚΕΝΤΡΙΚΗ-ΜΟΝΑΔΑ: Κεντρική Μονάδα λέγεται το βασικό κουτί του υπολογιστή.
4) ΠΕΡΙΦΕΡΕΙΑΚΕΣ-ΜΟΝΑΔΕΣ: Περιφερειακές Μονάδες ονομάζουν όλες τις άλλες συσκευές εκτός απο την κεντρική-μονάδα.
5) ΕΠΕΞΕΡΓΑΣΤΗΣ: Επεξεργαστής (ΚΜΕ) είναι η ΜΗΧΑΝΗ του υπολογιστή, η συσκευή που επεξεργάζεται σύμβολα, εικόνες και ήχους.
6) ΑΠΟΘΗΚΕΣ: Αποθήκες είναι οι συσκευές που κρατάνε μόνιμα την πληροφορία. Σκληρός-δίσκος (1TB), USB (4,8,16...GB), DVD (8GB), CD (<1GB),
7) ΜΝΗΜΗ-RAM: Μνήμη RAM είναι η συσκευή που κρατάει προσωρινά τις πληροφορίες που επεξεργάζεται ΚΑΙ τις οδηγίες επεξεργασίας για να γίνει η επεξεργασία πιο ΓΡΗΓΟΡΑ. Όταν κλείνει ο υπολογιστής το περιεχόμενό της ΧΑΝΕΤΑΙ. Οι 3 πιο σημαντικές συσκευές του υπολογιστή είναι: ο επεξεργαστής, οι αποθήκες και η RAM.
8) ΣΥΣΚΕΥΕΣ-ΕΙΣΟΔΟΥ: Συσκευές εισόδου είναι οι περιφερειακές συσκευές που εισάγουν πληροφορία: πληκτρολόγιο, ποντίκι, μικρόφωνο, ...
9) ΣΥΣΚΕΥΕΣ-ΕΞΟΔΟΥ: Συσκευές εξόδου είναι οι περιφερειακές συσκευές που εξάγουν πληροφορία: οθόνη, εκτυπωτής, ηχεία, ...
10) ΕΙΔΗ: Είδη Υπολογιστών με βάση το μέγεθος είνα: α) οι ΜΕΓΑΛΟΙ (υπερυπολογιστές) β) οι ΕΠΙΤΡΑΠΕΖΙΟΙ (προσωπικοί υπολογιστές) γ) ΜΙΚΡΟΙ (φορητοί, τσέπης, portable, notebook, laptop, mobile, netbook, smartphone, ...)

ΚΕΦΑΛΑΙΟ-3: ΕΡΓΟΝΟΜΙΑ:
1) ΕΡΓΟΝΟΜΙΑ: Εργονομία είναι η επιστήμη που ασχολείται με τη σωστή χρήση των εργαλείων και μηχανημάτων που έφτιαξε ο άνθρωπος.
2) ΣΩΣΤΗ-ΣΤΑΣΗ-ΕΡΓΑΣΙΑΣ: το δείχνει η εικόνα του βιβλιου σελ. 21.
3) PIXEL: pixel (εικονοστοιχείο) είναι τα μικρά κουτάκια με τα οποία φτιάχνουν τις εικόνες οι οθόνες (σαν τα ψηφιδωτά).
4) ΑΝΑΛΥΣΗ-ΟΘΟΝΗΣ: Ανάλυση οθόνης είναι η ποσότητα των pixel της οθόνης.
5) ΜΕΓΕΘΟΣ-ΟΘΟΝΗΣ: Μέγεθος οθόνης είναι το μέγεθος σε ίνσες της διαγωνίου της οθόνης.

ΚΕΦΑΛΑΙΟ-4: ΙΣΤΟΡΙΑ:
1) ΠΟΤΕ-ΚΑΤΑΣΚΕΥΑΣΤΗΚΕ: περίπου 1945.
2) ΗΛΕΚΤΡΟΝΙΚΗ-ΛΥΧΝΙΑ: Ηλεκτρονικές λυχνίες είναι μικρές λάμπες με τις οποίες παράσταιναν τα bit στους πρώτους υπολογιστές.
3) ΤΡΑΝΖΙΣΤΟΡ: Τα τρανζίστορ αντικατέστησαν τις ηλεκτρονικές λυχνίες, είναι μικρά και δεν καίγονται.
4) ΟΛΟΚΛΗΡΩΜΕΝΟ-ΚΥΚΛΩΜΑ: Τα ολοκληρωμένα κυκλώματα (τσιπ) περιέχουν μεγάλες ποσότητες τραντζίστορ και μείωσαν το μέγεθος και το κόστος των υπολογιστών.

ΚΕΦΑΛΑΙΟ-5: ΓΝΩΡΙΜΙΑ ΜΕ ΤΟ ΛΟΓΙΣΜΙΚΟ:
1) ΑΡΧΕΙΟ: Αρχεία (files) είναι σύμβολα, εικόνες και ήχοι στις αποθήκες με όνομα.
2) ΦΑΚΕΛΟΣ: Φάκελος (folder|Directory) είναι κομμάτι αποθηκών.
3) ΠΡΟΓΡΑΜΜΑ: Πρόγραμμα είναι αρχείο|αρχεία με οδηγίες. ΠΡΟΣΟΧΗ, τα ονομάζουν ΚΑΙ λογισμικό/software.
4) ΠΡΟΓΡΑΜΜΑ-ΕΦΑΡΜΟΓΩΝ: Προγράμματα/λογισμικό-εφαρμογών είναι τα προγράμματα που χρησιμοποιεί ο χρήστης.
5) ΠΡΟΓΡΑΜΜΑ-ΣΥΣΤΗΜΑΤΟΣ: Προγράμματα/λογισμικό-συστήματος είναι τα προγράμματα που χρησιμοποιεί ο υπολογιστής για να δουλέψει πχ οδηγοί συσκευών.
6) ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ: Λειτουργικό-σύστημα (operating-system) είναι το σημαντικότερο πρόγραμμα-συστήματος που χρειάζεται ο υπολογιστής για να δουλέψει. Εκτελείται με το άνοιγμα του υπολογιστή.
Υπάρχουν 4 σημαντικά, Linux, Windows, iOS, Android.
Με το λειτουργικό α) εκτελούμε τα προγράμματα-εφαρμογών β) βλέπουμε τα αρχεία και τους φακέλους γ) αλλάζουμε τις παραμέτρους.

ΚΕΦΑΛΑΙΟ-10: ΕΠΕΞΕΡΓΑΣΙΑ ΚΕΙΜΕΝΟΥ:
1) ΕΠΕΞΕΡΓΑΣΤΗΣ ΚΕΙΜΕΝΟΥ είναι ένα πρόγραμμα με το οποίο γράφουμε κείμενα. Εμείς στο εργαστήριο χρησιμοποιούμε τον επεξεργαστή-κειμένου του open-office επειδή είναι ΕΛΕΥΘΕΡΟ πρόγραμμα.
2) ΔΡΟΜΕΑΣ είναι η γραμμή που αναβοσβήνει και μας δείχνει σε ποιο σημείο της οθόνης εμφανίζονται τα σύμβολα που πληκτρολογούμε.
3) ΑΛΛΑΓΗ ΓΛΩΣΣΑΣ ονομάζουμε την αλλαγή της γλώσσας του πληκτρολογίου (ελληνικά / αγγλικά):
- alt + shift μαζί, δηλαδή α) συνέχεια πατημένο το alt, β) μια φορά το shift, γ) αφήνουμε το alt.
4) ΚΕΦΑΛΑΙΑ ΓΡΑΜΜΑΤΑ: με το caps lock γράφουμε συνέχεια κεφαλαία, ενώ με το shift μόνο ένα.
5) ΛΕΞΗ για το κομπιούτερ είναι μια σειρά γραμμάτων μεταξύ κενών και
ΠΑΡΑΓΡΑΦΟ είναι κείμενο μεταξύ enter. Το κείμενο αλλάζει γραμμή μόνο του, με enter αλλάζει παράγραφο.
6) ΤΟΝΟΥΣ: α) ελληνικό ερωτηματικό (πλήκτρο τόνου) και μετά β) αντίστοιχο φωνήεν.
- Διαλυτικά: α) shift+(;) β) φωνήεν.
- Διαλυτικά και τόνος: α) shift+ (;) β) (;) γ) φωνήεν
- ΕΙΔΙΚΟΙ ΧΑΡΑΚΤΗΡΕΣ είναι τα σύμβολα που δεν υπάρχουν στο πληκτρολόγιο: α) δρομέας β) εισαγωγή / ειδικός χαρακτήρας ή σύμβολο.
- Όταν το πληκτρολόγιο γράφει ελληνικά το (;) έχει μεταφερθεί στο πλήκρο Q.
7) ΣΒΗΣΙΜΟ ΓΡΑΜΜΑΤΩΝ: το backspace σβήνει ένα σύμβολο ΠΙΣΩ από το ΔΡΟΜΕΑ ενώ το delete μπροστά.
8) ΜΕΤΑΚΙΝΗΣΗ-ΔΡΟΜΕΑ:
- το ποντίκι (οποιοδήποτε σημείο, πιο γρήγορο μακριά)
- τα πλήκτρα με τα τέσσερα βελάκια (οποιοδήποτε σημείο, πιο γρήγορο μακριά)
- τα πλήκτρα home /end (αρχή /τέλος γραμμής)
- τα πλήκτρα ctrl + home /end (αρχή /τέλος κειμένου)
- τα πλήκτρα pageup /pagedown (αρχή /τέλος οθόνης)
9) ΑΠΟΘΗΚΕΥΣΗ είναι η διαδικασία μεταφοράς του κειμένου από την μνήμη ram στις αποθήκες: αρχείο / αποθήκευση.
ΑΝΑΚΤΗΣΗ είναι η διαδικασία μεταφοράς του κειμένου από τις αποθήκες στη μνήμη ram: αρχείο / άνοιγμα.
10) ΔΙΟΡΘΩΣΗ ΛΑΘΩΝ λέμε τη διαδικασία με την οποία το κομπιούτερ βρίσκει λάθη στο κείμενό μας.
- πατάμε το εικονίδιο ABC ή ΑΒΓ.
11) ΜΟΡΦΟΠΟΙΗΣΗ λέμε τη διαδικασία αλλαγής μορφής του κειμένου: χρώμα, στοίχιση, υπογράμμιση, …
12) ΕΠΙΛΟΓΗ ΚΕΙΜΕΝΟΥ είναι το "μαύρισμα" του κειμένου με την οποία δείχνουμε στο μηχάνημα ποιο κομμάτι κειμένου θέλουμε να μορφοποιήσουμε.
- λέξη: διπλό κλικ,
- παράγραφο: τριπλό κλικ,
- τυχαίο κείμενο: σέρνουμε το ποντίκι από το πρώτο γράμμα μέχρι το τελευταίο ΚΑΙ δεν το αφήνουμε πριν φτάσουμε στο τελευταίο γιατί αλλιώς πρέπει να δοκιμάσουμε πάλι από την αρχή.
13) ΓΡΑΜΜΑΤΟΣΕΙΡΑ είναι η ΜΟΡΦΗ των συμβόλων που χρησιμοποιεί το κομπιούτερ.
α) επιλογή κειμένου και β) επιλογή γραμματοσειράς από τη λίστα των γραμματοσειρών πχ Times New Roman.
14) ΜΕΓΕΘΟΣ λέμε το πόσο μεγάλα είναι τα γράμματα και δεν πρέπει να συγχέεται με το ζουμ και τα κεφαλαία.
α) επιλογή κειμένου β) επιλογή μεγέθους από τη λίστα των μεγεθών, τα νούμερα δεξιά από τις γραμματοσειρές.
15) ΕΝΤΟΝΑ-ΠΛΑΓΙΑ--ΥΠΟΓΡΑΜΜΙΣΜΕΝΑ: α) επιλογή κειμένου β) τα εικονίδια με τα 3 Α ή B/I/U.
16) ΣΤΟΙΧΙΣΗ ονομάζουμε την ευθεία στην οποία είναι στοιχισμένες οι ΓΡΑΜΜΕΣ του κειμένου.
α) επιλέγουμε το κείμενο β) εικονίδια "στοίχιση αριστερά" "κέντρο" "δεξιά" "πλήρη στοίχιση".
17) ΧΡΩΜΑ: α) χρώμα γραμμάτων με το εικονίδιο "χρώμα γραμματοσειράς" β) χρώμα φόντου (πίσω από τα γράμματα) με τα εικονίδια "επισήμανση" (φόντο στην επιλογή) και "χρώμα φόντου" (φόντο στην παράγραφο)
18) ΕΙΣΑΓΩΓΗ ΕΙΚΟΝΑΣ: α) δρομέας β) εισαγωγή / εικόνα.
19) ΑΝΤΙΓΡΑΦΗ-ΜΕΤΑΦΟΡΑ: Με την αντιγραφή το κείμενο υπάρχει και στην παλιά και στην καινούργια ΘΕΣΗ, με τη μεταφορά μόνο στην καινούργια.
α) αντιγραφή: επιλογή / αντιγραφή / δρομέας /επικόλληση.
β) μεταφορά: επιλογή /αποκοπή / δρομέας / επικόλληση.

ΚΕΦΑΛΑΙΟ-11: ΔΙΑΔΙΚΤΥΟ:
1) ΙΝΤΕΡΝΕΤ: Το μεγαλύτερο παγκόσμιο δίκτυο υπολογιστών.
2) ΥΠΗΡΕΣΙΕΣ: είναι οι δουλειές επικοινωνίας-πληροφορίας που κάνουμε στο διαδίκτυο όπως:
- εύρεση πληροφοριών
- ψυχαγωγία,
- κοινωνική δικτύωση,
- ηλεκτρονικό-ταχυδρομείο, τσατ, ομάδες συζητήσεων,
- τηλεδιάσκεψη,
- μεταφορά-αρχείων,
- παγκόσμιος ιστός,
3) ΠΡΩΤΟΚΟΛΛΟ-ΕΠΙΚΟΙΝΩΝΙΑΣ: είναι οι κοινοί κανόνες που χρησιμοποιούν τα κομπιούτερ για να επικοινωνούν, πχ http.
4) ΠΑΓΚΟΣΜΙΟΣ-ΙΣΤΟΣ: είναι η πιο σημαντικη υπηρεσία του ίντερνετ που χρησιμοποιεί το πρωτόκολλο επικοινωνίας http.
5) ΣΥΝΔΕΣΗ: Στο ιντερνετ συνδεόμαστε μέσω των εταιριών παροχής υπηρεσιών ίντερνετ (ISP).
6) bps (bit per second): είναι η μονάδα μέτρησης της ταχύτητας σύνδεσης του ίντερνετ.
7) ΤΙ ΠΡΕΠΕΙ ΝΑ ΠΡΟΣΕΧΟΥΜΕ:
α) δεν εμπιστευόμαστε αγνώστους.
β) αναληθείς πληροφορίες (ψευδείς, λανθασμένες)
γ) ιούς,

ΚΕΦΑΛΑΙΟ-12: ΠΑΓΚΟΣΜΙΟΣ-ΙΣΤΟΣ:
1) ΦΥΛΛΟΜΕΤΡΗΤΗΣ (browser): είναι το πρόγραμμα με το οποίο μπαίνουμε στον παγκόσμιο ιστό, πχ: google chrome, mozilla firefox, ms interntet explorer, safari, opera, κλπ.
2) ΙΣΤΟΣΕΛΙΔΑ (webpage): είναι ειδικό αρχείο που βλέπουμε στον παγκόσμιο-ιστό.
3) ΔΙΕΥΘΥΝΣΗ ΙΣΤΟΣΕΛΙΔΑΣ: είναι το όνομά της που αποτελείται α) από τα όνομα του κομπιούτερ, β) των φακέλων και γ) του αρχείου που βλέπουμε, πχ gym-eleous.ioa.sch.gr/2012/index2012.html.
4) ΙΣΤΟΤΟΠΟΣ (website): είναι ένα σύνολο ιστοσελίδων στο ίδιο κομπιούτερ.
5) ΠΛΟΗΓΗΣΗ (σερφάρισμα) λέμε την περιήγηση απο ιστοσελίδα σε ιστοσελίδα.
6) ΥΠΕΡΚΕΙΜΕΝΟ (hypertext) είναι κείμενο που δεν είναι σε σειρά με συνδέσεις ανάμεσα στα κομμάτια του.
7) ΣΥΝΔΕΣΜΟ (link) λέμε τη σύνδεση που υπάρχει ανάμεσα στα κομμάτια του υπερκειμένου.
8) ΘΕΡΜΗ ΛΕΞΗ ονομάζουμε το κείμενο που έχει σύνδεσμο προς άλλη θέση του υπερκειμένου. Το ποντίκι γίνεται 'χεράκι' πάνω του.
9) ΚΟΜΒΟΣ λέγεται κάθε κομμάτι του υπερκειμένου.

ΚΕΦΑΛΑΙΟ-13: ΑΝΤΛΗΣΗ-ΠΛΗΡΟΦΟΡΙΩΝ:
1) ΜΗΧΑΝΗ-ΑΝΑΖΗΤΗΣΗΣ είναι ειδική ιστοσελίδα με ένα κουτάκι στο οποίο γράφουμε λέξεις-κλειδιά και μας βρίσκει ΔΙΕΥΘΥΝΣΕΙΣ ιστοσελίδων που τις περιέχουν πχ google.com, bing.com.
2) ΘΕΜΑΤΙΚΟΣ ΚΑΤΑΛΟΓΟΣ είναι ειδική ιστοσελίδα με καταλόγους με διευθύνσεις ιστοσελίδων ανά θέμα.

ΚΕΦΑΛΑΙΟ-14: ΗΛΕΚΤΡΟΝΙΚΟ-ΤΑΧΥΔΡΟΜΕΙΟ:
1) EMAIL είναι η υπηρεσία ανταλλαγής γραπτών μηνυμάτων offline.
2) ΔΙΕΥΘΥΝΣΗ ΗΛ-ΤΑΧΥΔΡΟΜΕΙΟΥ περιέχει το σύμβολο @ και δεν πρέπει να τη συγχέουμε με τη διεύθυνση ιστοσελίδας.
3) ΕΙΔΗ: SMTP και webmail (http email).
4) ΛΟΓΑΡΙΑΜΟΣ ΗΛ-ΤΑΧ λέμε την απόκτηση κωδικών για αποστολή και λήψη ηλ.ταχυδρομείου.

2001-2002

ΝΟΜΟΘΕΣΙΑ:
** 2001-04-05: συμπληρωματικές οδηγίες.
** 1997: πρόγραμμα σπουδών.

Υλη τελική:
Α) Γνωρίζω τον Υπολογιστή:
1) Δεδομένα, Πληροφορίες και Υπολογιστές
2) Πως φθάσαμε στους σημερινούς υπολογιστές
· Το υλικό και το λογισμικό
· Προστασία υλικού, λογισμικού και δεδομένων, Εργονομία
Διδακτικές ώρες : 6

Β) Επικοινωνώ με τον Υπολογιστή
· Γραφικά περιβάλλοντα επικοινωνίας
Διδακτικές ώρες: 4

Γ) Διερευνώ-Δημιουργώ-Ανακαλύπτω
· Εργαλεία-Τεχνικές
· Συνθετικές εργασίες με λογισμικό εφαρμογών γενικής χρήσης, λογισμικό δικτύων και εκπαιδευτικό λογισμικό
Διδακτικές ώρες: 17

Πρόγραμμα Σπουδών 1997:
Γνωρίζω τον Υπολογιστή  
· Δεδομένα, Πληροφορίες και Υπολογιστές
· Πως φθάσαμε στους σημερινούς υπολογιστές
· Το υλικό και το λογισμικό
· Προστασία υλικού, λογισμικού και δεδομένων, Εργονομία
Διδακτικές ώρες : 6

Επικοινωνώ με τον Υπολογιστή
· Γραφικά περιβάλλοντα επικοινωνίας
Διδακτικές ώρες: 4

Διερευνώ-Δημιουργώ-Ανακαλύπτω
· Εργαλεία-Τεχνικές
· Συνθετικές εργασίες με λογισμικό εφαρμογών γενικής χρήσης, λογισμικό δικτύων και εκπαιδευτικό λογισμικό
Διδακτικές ώρες: 17

1995

1. Ο υπολογιστής και η επικοινωνία μαζί του, 7 ώρες [Γ2/7285/2οκτ1995]

2. Επεξεργασία κειμένου, 8 ώρες [Γ2/7285/2οκτ1995]

3. Ζωγραφική, 5 ώρες

4. Εφαρμογές, 7 ώρες [Γ2/449/29ιαν1996]

μγ02.ΤΑΞΗ.Β (25 ώρες)

name::
* McsElln.μγ02.ΤΑΞΗ.Β (25 ώρες)@cptIt,

μπγ.β,

2023-2024

ΕΝΝΟΙΕΣ ΤΑΞΗ.Β/ΕΝΟΤΗΤΑ.1:
* ΚΕΦ.1:

ΕΝΝΟΙΕΣ ΤΑΞΗ.Β/ΕΝΟΤΗΤΑ.2:
* ΚΕΦ.5: ΑΡΧΕΙΑ-ΦΑΚΕΛΟΙ

ΕΝΝΟΙΕΣ ΤΑΞΗ.Α/ΕΝΟΤΗΤΑ.3:
* ΚΕΦ.7: ΥΠΗΡΕΣΙΕΣ-ΑΝΑΖΗΤΗΣΗΣ

* ΚΕΦ.2:

* ΚΕΦ.3:

2015-2016

ΚΕΦΑΛΑΙΟ-1: Ψηφιακός Κόσμος:
1) ΨΗΦΙΑΚΗ ΠΛΗΡΟΦΟΡΙΑ (digital information): είναι πληροφορία που έχει μετατραπεί σε bit.
Λέγεται και δυαδική | binary, που είναι και πιο σωστό όνομα.
2) ΨΗΦΙΑΚΟ ΜΗΧΑΝΗΜΑ (digital machine): είναι μηχάνημα που χρησιμοποιεί ψηφιακή πληροφορία.
3) ΔΥΑΔΙΚΟ ΣΥΣΤΗΜΑ ΑΡΙΘΜΗΣΗΣ (binary numeral system): είναι η μέθοδος γραφής αριθμών με 2 μόνο ψηφία. Οι αριθμοί δεν γράφονται μόνο με τον τρόπο που ξέρετε με τα 10 ψηφία (δεκαδικό σύστημα). Οι αρχαίοι Έλληνες και Ρωμαίοι πχ έγραφαν αλλιώς τους αριθμούς. Τον αριθμό 6 τον έγραφαν στ και VI αντίστοιχα. Φυσικά τα κομπιούτερ χρησιμοποίησαν το "δυαδικό σύστημα αρίθμησης" για να παραστήσουν τους αριθμούς με bit.
4) ΣΥΝΔΥΑΣΜΟΙ BIT (bit permutations): Οι δυνατοί συνδυασμοί με bit που δημιουργούνται παίρνοντας ν ομάδες bit, βρίσκονται από το μαθηματικό τύπο 2ν, πχ: οι δυνατές δυάδες είναι 22=4 δηλ. 00, 01, 10, 11. Οι δυνατές τριάδες είναι 23=8 δηλ. 000, 001, 010, ... 111. Οι δυνατές οχτάδες είναι 28=256 κλπ. ΓΕΝΙΚΑ: χρησιμοποιούμε κώδικες με συνδυασμούς-bit για να παραστήσουμε|ψηφιοποιήσουμε την πληροφορία μέσα στον υπολογιστή.
5) ΨΗΦΙΟΠΟΙΗΣΗ ΣΥΜΒΟΛΩΝ (character digitizing): Τα πρώτα κομπιούτερ χρησιμοποιούσαν το κώδικα ASCII που χρησιμοποιούσε 8 bit, άρα μπορούσε να παραστήσει μόνο 256 σύμβολα (28). Με αυτόν είχαμε σύγκρουση συμβόλων στις διάφορες γλώσσες γιατί στην ίδια οχτάδα κάθε γλώσσα αντιστοιχούσε δικό της σύμβολο. Σήμερα χρησιμοποιούν τον κώδικα UNICODE που έχει μοναδικό κώδικα για κάθε σύμβολο κάθε γλώσσας.
6) ΨΗΦΙΟΠΟΙΗΣΗ ΕΙΚΟΝΑΣ (image digitizing): Η ψηφιοποίηση εικόνας απαιτεί 2 χαρακτηριστικά: α) ανάλυση εικόνας: η εικονα δημιουργείται όπως τα ψηφιδωτά, χωρίζεται σε κουτάκια, pixel. Η ποσότητα των pixel λέγεται ανάλυση εικόνας. β) βάθος χρώματος: στα pixel βάζουμε χρώματα. Για να παραστήσουμε τα χρώματα φιάχνουμε κώδικες με ομάδες bit που αντιστοιχούμε χρώματα. Αν φτιάξουμε κώδικα με 8 μπιτ, οι δυνατές οχτάδες είναι 256, άρα μπορούμε να αντιστοιχίσουμε 256 χρώματα με 00000000 πχ το μαύρο χρώμα και 11111111 το άσπρο. Αν χρησιμοποιήσουμε 16 μπιτ, αντιστοιχούμε περίπου 65000 χρώματα. Για να έχουμε ΦΥΣΙΚΗ ΕΙΚΟΝΑ πρέπει να χρησιμοποιήσουμε 24 bit δηλαδή περίπου 16 εκατ. χρώματα. Βάθος χρώματος ονομάζουν ή τον αριθμό των μπιτ που χρησιμοποιεί ο κώδικας ή τον αριθμό των χρωμάτων που αντιστοιχούνται.

ΚΕΦΑΛΑΙΟ-2: Το Εσωτερικό του Υπολογιστή:
Επεξεργαστής, αποθήκες, Μνήμη-RAM είναι οι ποιό σημαντικές συσκευές που έχει ένας υπολογιστής.

ΚΕΦΑΛΑΙΟ-4: Δίκτυα Υπολογιστών:
1) Δίκτυο-υπολογιστών (computer-network): είναι κομπιούτερ συνδεδεμένα μεταξύ τους.
2) Σύνδεση υπολογιστών (computer connection): α) ενσύρματη: όταν χρησιμοποιούμε καλώδια.
β) ασύρματη: όταν ΔΕΝ χρησιμοποιούμε καλώδια.
3) Πρωτόκολλα επικοινωνίας (communication protocol):
4) Πλεονεκτήματα-μειονεκτήματα δικτύων (network pros and cons): Πλεονεκτήματα: επικοινωνία, κοινή χρήση εξοπλισμού, εξοικονόμιση χρημάτων, αξιοπιστία.
Μειονεκτήματα: ασφάλεια.
5) Είδη δικτύων (specific network): Με κριτήριο ταξινόμησης τη γεωγραφική έκταση που καλύπτει: α) τοπικό δίκτυο - κτίριο (LAN), β) μητροπολιτικό δίκτυο - πόλη (LAN), γ) δίκτυο ευρείας περιοχής - χώρα|χώρες (WAN). Με κριτήριο ταξινόμησης το μέσο σύνδεσης: α) ενσύρματο δίκτυο, β) ασύρματο δίκτυο.
6) Διαδίκτυο (internet):
7) Εξυπηρετητής-πελάτης (server-client): Η μέθοδος λειτουργίας πολλών δικτύων όπου ένας υπολογιστής ή πρόγραμμα (εξυπηρετητής) είναι υπεύθυνος για την προσφορά της πληροφορίας σε άλλους υπολογιστές ή προγράμματα (πελάτες). Παράδειγμα οι φυλλομετρητές είναι πελάτες προγραμμάτων εξυπηρετητών που βρίσκονται σε κομπιούτερ μόνιμα συνδεδεμένα στο ίντερνετ. ¶
8) Σύνδεση στο ίντερνετ (internet connection):

ΚΕΦΑΛΑΙΟ-11 (Α' Γυμνασίου): Γνωριμία με το Διαδίκτυο:
1) INTERNET (Διαδίκτυο): Το μεγαλύτερο παγκόσμιο δίκτυο-υπολογιστών.
2) ΥΠΗΡΕΣΙΕΣ (internet services): είναι οι δουλειές επικοινωνίας πληροφορίας που κάνουμε στο διαδίκτυο όπως: - εύρεση πληροφοριών, - ψυχαγωγία, - κοινωνική δικτύωση (facebook, twitter), - ηλεκτρονικό-ταχυδρομείο, chat, ομάδες-συζητήσεων, - βιντεοκλήση (τηλεδιάσκεψη), - αγορές,
- μεταφορά-αρχείων, - παγκόσμιος ιστός.
3) ΠΡΩΤΟΚΟΛΛΟ-ΕΠΙΚΟΙΝΩΝΙΑΣ (communication-protocol): είναι οι κοινοί κανόνες που χρησιμοποιούν τα κομπιούτερ για να επικοινωνούν, πχ http.
4) ΠΑΓΚΟΣΜΙΟΣ-ΙΣΤΟΣ (world-wide-web): είναι η πιο σημαντική υπηρεσία του ίντερνετ που χρησιμοποιεί το πρωτόκολλο επικοινωνίας http. Σήμερα, η συντριπτική πλειοψηφία των υπηρεσιών-ίντερνετ γίνονται μέσα από τον παγκόσμιο ιστό. Αυτός είναι και ο λόγος για τον οποίον πολλοί άνθρωποι μπερδεύουν τον παγκόσμιο-ιστό (δημιουργήθηκε περίπου το 1990) με το ίντερνετ (δημιουργήθηκε περίπου το 1970).
5) ΣΥΝΔΕΣΗ (internet connection): Στο ίντερνετ συνδεόμαστε μέσω των εταιριών παροχής υπηρεσιών ίντερνετ (ISP).
6) bps (bit per second): είναι η μονάδα μέτρησης της ταχύτητας σύνδεσης του ίντερνετ. ¶
7) ΤΙ ΠΡΕΠΕΙ ΝΑ ΠΡΟΣΕΧΟΥΜΕ: α) δεν εμπιστευόμαστε αγνώστους. β) αναληθείς πληροφορίες (ψευδείς(= επίτηδες αναληθείς) ή λανθασμένες). Δεχόμαστε τις διαφορετικές απόψεις, ΔΕΝ συγχωρούμε όμως τους ψεύτες. Επίσης είναι πιο σημαντικό από την πληροφορία που βρήκαμε, το ΠΟΙΟΣ έγραψε αυτή την πληροφορία και επομένως ανώνυμες πληροφορίες έχουν μικρή έως καθόλου αξία!!! γ) ιούς. δ) εθισμό στο διαδίκτυο ("πάν μέτρον άριστον").

ΚΕΦΑΛΑΙΟ-12 (Α' Γυμνασίου): Ο Παγκόσμιος Ιστός-Εισαγωγή στην έννοια του Υπερκειμένου:
1) ΦΥΛΛΟΜΕΤΡΗΤΗΣ (περιηγητής) (web-browser): είναι το πρόγραμμα με το οποίο μπαίνουμε στον παγκόσμιο ιστό, πχ: google chrome, mozilla firefox, ms interntet explorer, safari, opera, κλπ.
2) ΙΣΤΟΣΕΛΙΔΑ (webpage): είναι ΕΓΓΡΑΦΟ γραμμένο στη γλώσσα-υπολογιστών HTML, που βλέπουμε στον παγκόσμιο-ιστό.
3) ΔΙΕΥΘΥΝΣΗ ΙΣΤΟΣΕΛΙΔΑΣ (webpage address): είναι το μοναδικό όνομά της που αποτελείται α) από το όνομα του κομπιούτερ, β) των φακέλων και γ) του αρχείου που βλέπουμε, πχ gym-eleous.ioa.sch.gr/2012/index2012.html. Δεν πρέπει να μπερδεύουμε τη διεύθυνση-ιστοσελίδας (το όνομά της) με την ίδια την ιστοσελίδα. Το google μας βρίσκει διευθύνσεις-ιστοσελίδων και όχι ιστοσελίδες!
4) ΙΣΤΟΤΟΠΟΣ (website): είναι ένα σύνολο ιστοσελίδων στο ίδιο κομπιούτερ με κοινή διεύθυνση.
5) ΠΛΟΗΓΗΣΗ (περιήγηση, σερφάρισμα) (web navigation): λέμε την περιπλάνησή μας από ιστοσελίδα σε ιστοσελίδα.

ΚΕΦΑΛΑΙΟ-13 (Α' Γυμνασίου): Άντληση Πληροφοριών από τον Παγκόσμιο Ιστό:
1) ΜΗΧΑΝΗ-ΑΝΑΖΗΤΗΣΗΣ (search engine): είναι ειδική ιστοσελίδα με ένα κουτάκι στο οποίο γράφουμε λέξεις-κλειδιά και μας βρίσκει ΔΙΕΥΘΥΝΣΕΙΣ ιστοσελίδων που τις περιέχουν πχ google.com, bing.com.

2001-2002

Β ΤΑΞΗ
Γνωρίζω τον Υπολογιστή  
· Τεχνολογία υπολογιστών
· Αναπαράσταση των πληροφοριών στον υπολογιστή
· Αποθήκευση των πληροφοριών στον υπολογιστή
· Πολυμέσα
Διδακτικές ώρες: 6

Επικοινωνώ με τον Υπολογιστή
· Διαχείριση αρχείων και φακέλων Διδακτικές ώρες: 6   -

Διερευνώ-Δημιουργώ-Ανακαλύπτω
· Εργαλεία-Τεχνικές
· Συνθετικές εργασίες με λογισμικό εφαρμογών γενικής χρήσης, λογισμικό δικτύων και εκπαιδευτικό λογισμικό
Διδακτικές ώρες: 15

1. Ο υπολογιστής και η επικοινωνία μαζί του; 7 ώρες [Γ2/7285/2οκτ1995]

1.1 Παράσταση πληροφορίας:
* Ο υπολογιστής επεξεργάζεται τις πληροφορίες σε δυαδική μορφή.
BIT είναι οι δύο καταστάσεις 0 και 1 που υπάρχουν μέσα στο κομπιούτερ (τρανζίστορ), βάση των οποίων μετατρέπεται η πληροφορία.
* τα σύμβολα χρησιμοποιούν 1 ή 2 byte.
* o ήχος CD-QUALITY 16bit και 44.1KHz δειγματοληψία
* η εικόνα 24bit για φυσικό χρώμα.

1.2 Η σύνθεση ενός υπολογιστή:

1.3 Ζητώντας βοήθεια:

1.4 Διαχείριση Αρχείων:

2. Λογιστικά φύλλα; 8 ώρες [Γ2/7285/2οκτ1995]

1. ΕΞΗΓΕΙΣΤΕ ΤΙ ΕΙΝΑΙ ΤΑ 2 ΠΡΑΓΜΑΤΑ ΠΟΥ ΒΑΖΟΥΜΕ ΣΤΑ ΚΕΛΙΑ.
α) ΤΙΜΕΣ: οι αριθμοί και οι σχέσειςμε τις οποίες κάνουμε υπολογισμούς.
β) ΕΤΙΚΕΤΕΣ: Λέξεις που επεξηγούν τα δεδομένα μας.

2. ΓΡΑΨΤΕ ΤΙΣ 4 ΟΜΑΔΕΣ ΤΩΝ ΤΙΜΩΝ ΜΕ ΕΝΑ ΠΑΡΑΔΕΙΓΜΑ.
α) ΑΡΙΘΜΗΤΙΚΕΣ ΣΤΑΘΕΡΕΣ: 3, 45, κλπ
β) ΑΠΛΟΙ ΤΥΠΟΙ: =B1+B5
γ) ΣΥΝΑΡΤΗΣΕΙΣ: sum(c3:c10)
δ) ΣΥΝΘΕΤΟΙ ΤΥΠΟΙ: =A2*count(c3:c7)

3. ΠΩΣ ΔΙΟΡΘΩΝΟΥΜΕ ΤΑ ΠΕΡΙΕΧΟΜΕΝΑ ΕΝΟΣ ΚΕΛΙΟΥ;
α) ΟΛΙΚΗ ΑΝΤΙΚΑΤΑΣΤΑΣΗ: Επιλέγουμε το κελί, γράφουμε την καινούργια πληροφορία και πατάμε εντερ.
β) ΜΕΡΙΚΗ ΑΝΤΙΚΑΤΑΣΤΑΣΗ: Επιλέγουμε το κελί, κάνουμε κλίκ στην περιοχή επεξεργασίας, σβήνουμε το μέρος που δέν θέλουμε, συμπληρώνουμε το καινούργιο και πατάμε εντερ.

4. ΤΙ ΕΙΝΑΙ ΠΕΡΙΟΧΗ ΚΑΙ ΠΩΣ ΤΗ ΔΗΛΩΝΟΥΜΕ;
Περιοχή είναι μια σειρά κελιών.
Τη δηλώνουμε με το πρώτο κελί, : για να δηλώσουμε το μέχρι και το τελευταίο κελί.

5. ΠΩΣ ΠΡΟΣΘΕΤΟΥΜΕ ΚΑΙΝΟΥΡΓΙΑ ΚΕΝΗ ΓΡΑΜΜΗ;
α) επιλέγουμε τη γραμμή πρίν από την οποία θέλουμε να προσθέσουμε γραμμή.
β) edit / insert row

6. ΓΡΑΨΤΕ ΤΟΝ ΣΥΝΘΕΤΟ ΤΥΠΟ ΠΟΥ ΥΠΟΛΟΓΙΖΕΙ ΤΟ ΑΘΡΟΙΣΜΑ ΤΩΝ ΚΕΛΙΩΝ C3 ΜΕΧΡΙ C10 ΚΑΙ ΣΤΡΟΓΓΥΛΟΠΟΙΕΙ ΤΟ ΑΠΟΤΕΛΕΣΜΑ ΣΕ ΑΚΕΡΑΙΟ ΜΕ ΤΙΣ ΣΥΝΑΡΤΗΣΕΙΣ SUM ΚΑΙ ROUND.
= round(sum(c3:c10);0)

7. ΓΡΑΨΤΕ ΤΟΝ ΣΥΝΘΕΤΟ ΤΥΠΟ ΠΟΥ ΥΠΟΛΟΓΙΖΕΙ ΤΟΝ ΜΕΣΟ ΟΡΟ ΤΩΝ ΚΕΛΙΩΝ C3 ΜΕΧΡΙ C10 ΜΕ ΤΙΣ ΣΥΝΑΡΤΗΣΕΙΣ SUM ΚΑΙ COUNT.
= sum(c3:c10)/count(c3:c10)

8. ΤΙ ΕΙΝΑΙ ΤΑ ΔΙΑΓΡΑΜΜΑΤΑ ΚΑΙ ΠΩΣ ΤΑ ΦΤΙΑΧΝΟΥΜΕ;
Διαγράμματα είναι γραφικές παραστάσεις (ζωγραφιές) των αρθμών ενός φύλλου εργασίας με τα οποία συγκρίνουμε καλλίτερα τους αριθμούς.
Για να φτιάξουμε ένα διάγραμμα
α) επιλέγουμε τους αριθμούς
β) πατάμε το εικονίδιο με το διάγραμμα.

3. Διερεύνηση με συμβολική έκφραση σε προγραμματιστικό περιβάλλον; 10 ώρες

ΕΝΤΟΛΕΣ:
ΔΙΕΥΘΥΝΣΗΣ:
1) fd (forward)
2) bk (back)
3) rt (right)
4) lt (left)
5) home (γυρνά στην αφετηρία και γράφει συγχρόνως)
ΟΘΟΝΗΣ:
6) cs (ClearScreen)
7) clean
8) ct (ClearText of commader)
9) setsc (SetScreenColor)
10) setfc, fill (SetFloodColor)
ΓΡΑΦΙΔΑΣ:
11) pu (PenUp)
12) pd (PenDown)
13) pe (PenErase)
14) ppt (PenPainT)
15) setpc [255 0 0] (SetPenColor)
16) setpensize [3 3]
ΔΙΑΦΟΡΕΣ:
17) repeat 4 [fd 60 rt 90]
18) pr 2*3, (print)

ΤΙ ΠΡΕΠΕΙ ΝΑ ΞΕΡΟΥΜΕ ΓΙΑ ΝΑ ΠΡΟΓΡΑΜΜΑΤΙΣΟΥΜΕ;
Τους κανόνες με τους οποίους γράφονται τα προγράμματα, δηλαδή μια ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ.

ΤΙ ΠΡΕΠΕΙ ΝΑ ΕΧΟΥΜΕ ΓΙΑ ΝΑ ΠΡΟΓΡΑΜΜΑΤΙΣΟΥΜΕ;
α) έναν EDITOR: το πρόγραμμα στο οποίο θα γράψουμε το πρόγραμμα.
β) έναν ΔΙΕΡΜΗΝΕΥΤΗ ή έναν ΜΕΤΑΦΡΑΣΤΗ: πρόγραμμα που θα μεταφράσει το πρόγραμμα στη δυαδική-γλώσσα που καταλαβαίνει το κομπιούτερ.

ΑΣΚΗΣΕΙΣ

ΤΡΑΠΕΖΑΡΙΑ:
to karekla fd 50 bk 30 rt 90 fd 25 rt 90 fd 20 end
to trapezi fd 40 rt 90 bk 5 fd 60 bk 5 rt 90 fd 40 end
to kareklaa fd 50 bk 30 lt 90 fd 25 lt 90 fd 20 end
to trapezaria cs pu lt 90 fd 75 rt 90 pd karekla pu lt 90 fd 20 lt 90 pd trapezi pu lt 90 fd 45 lt 90 pd kareklaa end

ΣΧΟΛΙΚΟ ΕΤΟΣ:
to ena fd 100 lt 140 fd 25 bk 25 rt 140 bk 100 pu rt 90 fd 30 lt 90 pd end
to ennia rt 90 fd 60 lt 90 fd 100 lt 90 fd 60 lt 90 fd 50 lt 90 fd 60 rt 90 fd 50 pu lt 90 fd 30 lt 90 pd end
to oxto rt 90 fd 60 lt 90 fd 100 lt 90 fd 60 lt 90 fd 50 lt 90 fd 60 rt 90 fd 50 rt 90 fd 60 rt 90 fd 50 bk 50 rt 90 fd 60 pu fd 30 lt 90 pd end

ΚΥΚΛΟΣ:
to kyklos :x repeat 180 [fd 6.28*:x/180 rt 360/180] end

ΣΕΛΙΔΑ 144:
1. repeat 12 [fd 100 bk 100 rt 30]
repeat 12 [pu fd 70 pd fd 30 pu bk 100 rt 30]
2. repeat 7 [fd 60 repeat 4 [fd 40 rt 90] bk 60 rt 360/7]
3. to skalaa repeat 5 [fd 20 rt 90 fd 20 lt 90] end
to skalad repeat 5 [fd 20 rt 90 fd 20 lt 90] end
to eksedra skalaa rt 90 fd 60 skalad bk 260 end

ΣΕΛΙΔΑ 151:
1. to polygon :x repeat :x [fd 60 rt 360/:x] end
repeat 6 [polygon 3 rt 360/6]

2. to pentagono :x repeat 5 [fd :x rt 360/5] end
repeat 5 [pentagono 60 pentagono 70 pentagono 80 rt 360/5]

3. kyklos 100
pu rt 90 fd 30 lt 90 pd
kyklos 70
pu rt 90 fd 70 lt 90 pd
repeat 12 [pu fd 70 pd fd 30 pu bk 100 rt 360/12]

4. Εφαρμογές; 2 ώρες [Γ2/449/29ιαν1996]

name::
* McsEngl.4. Εφαρμογές; 2 ώρες [Γ2/449/29ιαν1996]@cptIt,

μγ02.ΤΑΞΗ.Γ (25 ώρες)

name::
* McsElln.μγ02.ΤΑΞΗ.Γ (25 ώρες)@cptIt,

μπγ.γ,

2023-2024

ΚΕΦ.1: Εισαγωγή στην Έννοια του Αλγορίθμου και στον Προγραμματισμό:
1) Προγραμματισμος
2) Πρόγραμμα
3) Προγραμματιστής-Χρήστης
4) Αλγόριθμος
5) Γλώσσα-προγραμματισμού
6) Πρόβλημα
7) Ιδιότητες αλγορίθμου (ακρίβεια, περατότητα)
8) Χαρακτηριστικά Γλωσσών (Αλφ, Λεξιλόγιο, Συντακτικό)
9) Γλώσσα μηχανής
10) Γλώσσα υψηλού επιπέδου
11) Μεταφραστής (Μεταγλωτιστής, διερμηνέας)
12) Ολοκληρωμένο προγραμματιστικό περιβάλλον
13) Λάθυ (Λογικά, συντακτικά)
14) Στάδια εκτέλεσης αλγορίθμου.

ΚΕΦ.2: Ο Προγραμματισμός στην Πράξη:
1) Περιβάλλον MicroWorlds Pro
2) Εντολή
3) Εντολή δειξε
4) Εντολή ανακοινωση
5) Εντολή ερωτηση
6) Εντολές χελώνας
7) Εντολή επανάλαβε
8) Διαδικασία
9) Μεταβλετές

ΚΕΦ.1: Εισαγωγή στην Έννοια του Αλγορίθμου και στον Προγραμματισμό:
1) ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ: είναι η διαδικασία γραφής προγράμματος. Η γνώση του σας βοηθά να γίνετε καλύτεροι χρήστες των υπολογιστών, στο Λύκειο και στις Πανελλαδικές-εξετάσεις.
2) ΠΡΟΓΡΑΜΜΑ: είναι ΑΡΧΕΙΟ ή αρχεία που περιέχουν ένα ΕΓΓΡΑΦΟ με ΟΔΗΓΙΕΣ (εντολές) γραμμένες σε ειδική γλώσσα που
 α) καταλαβαίνει ένα κομπιούτερ και
 β) με τις οποίες ο ΕΠΕΞΕΡΓΑΣΤΗΣ επεξεργάζεται ΠΛΗΡΟΦΟΡΙΕΣ (κείμενα, εικόνες και ήχους).
ΦΤΙΑΧΝΟΥΜΕ προγράμματα γιατί τα κομπιούτερ είναι μηχανήματα που λειτουργούν με ρεύμα, χωρίς μυαλό και χρειάζονται οδηγίες για να δουλέψουν.
3) ΠΡΟΓΡΑΜΜΑΤΙΣΤΗΣ-ΧΡΗΣΤΗΣ: προγραμματιστής είναι ο άνθρωπος που φτιάχνει το πρόγραμμα και χρήστης είναι ο άνθρωπος που το εκτελεί.
4) ΓΛΩΣΣΑ-ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ: είναι η ΓΛΩΣΣΑ που καταλαβαίνει ο υπολογιστής και με την οποία γράφουμε τις εντολές. Η βασική διαφορά της με τις φυσικές-γλώσσες είναι η απόλυτη ΑΚΡΙΒΕΙΑ.
5) ΑΛΓΟΡΙΘΜΟΣ (προγραμματισμού): είναι ΕΓΓΡΑΦΟ που περιγράφει μια ΔΙΑΔΙΚΑΣΙΑ ΕΠΕΞΕΡΓΑΣΙΑΣ ΠΛΗΡΟΦΟΡΙΑΣ όπως την εκτελεί ένας ΥΠΟΛΟΓΙΣΤΗΣ.
 α) ο προγραμματιστής, στο μυαλό του, σκέφτεται τον αλγόριθμο στη μητρική του γλώσσα και μετά ή συγχρόνως τον μεταφράζει σε μια γλώσσα-προγραμματισμού.
 β) επειδή οι υπολογιστές δεν κάνουν καφέδες, γιαυτό ο αλγόριθμος περιγράφει μια διαδικασία επεξεργασίας πληροφορίας (= επεξεργασία συμβόλων, εικόνων και ήχων) και όχι μια οποιαδήποτε διαδικασία.
 γ) αν τη διαδικασία επεξεργασίας πληροφορίας του αλγορίθμου ΔΕΝ ΜΠΟΡΕΙ να την εκτελέσει ένας υπολογιστής, τότε ΔΕΝ είναι αλγόριθμος-προγραμματισμού.
6) ΠΡΟΒΛΗΜΑ (προγραμματισμού): είναι ΕΓΓΡΑΦΟ που περιγράφει μια διαδικασία-επεξεργασίας-πληροφορίας, όπως την κάνουν οι ΑΝΘΡΩΠΟΙ.
Ο αλγόριθμος είναι η λύση ενός προβλήματος.
7) ΙΔΙΟΤΗΤΕΣ-ΑΛΓΟΡΙΘΜΟΥ: α) να είναι σωστός και ακριβής β) να είναι περατός, δηλαδή να έχει τέλος.
8) ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ-ΓΛΩΣΣΩΝ: αλφάβητο, λεξιλόγιο, συντακτικό.
9) ΓΛΩΣΣΑ-ΜΗΧΑΝΗΣ: η γλώσσα που καταλαβαίνει ΑΜΕΣΑ το μηχάνημα, οι εντολές της γράφονται με 0 και 1.
10) ΓΛΩΣΣΑ-ΥΨΗΛΟΥ-ΕΠΙΠΕΔΟΥ: είναι η γλώσσα-προγραμματισμου που έχει τις εντολές της με λέξεις από τις φυσικές-γλώσσες. Σε αυτές γράφονται τα προγράμματα.
11) ΜΕΤΑΦΡΑΣΤΗΣ: είναι το ΠΡΟΓΡΑΜΜΑ που μεταφράζει το πρόγραμμα από γλώσσα-υψηλού-επιπέδου σε γλώσσα-μηχανής.
 Μεταγλωτιστής (compiler) λέγεται ο μεταφραστής που μεταφράζει ολόκληρα προγράμματα.
 Διερμηνέας (interpreter) λέγεται ο μεταφραστής που μεταφράζει εντολή εντολή.
12) ΟΛΟΚΛΗΡΩΜΕΝΟ-ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ-ΠΕΡΙΒΑΛΛΟΝ: είναι το πρόγραμμα (σύνολο προγραμμμάτων) με το οποίο οι προγραμματιστές φτιάχνουν προγράμματα. Περιέχει editor, μεταφραστή και εκσφαλματωτή.
13) ΛΑΘΗ: τα συντακτικά μπορεί να τα βρεί το ΟΠΠ τα λογικά όχι.
14) ΣΤΑΔΙΑ-ΕΚΤΕΛΕΣΗΣ-ΑΛΓΟΡΙΘΜΟΥ: α) πρόβλημα β) αλγόριθμος-πρόγραμμα γ) μετάφραση σε bit δ) εκτέλεση από ΚΜΕ.

ΚΕΦ.2: Ο Προγραμματισμός στην Πράξη:
1) ΟΠΠ-MicroWorlds Pro: α) επιφάνεια εργασίας β) κέντρο εντολών γ) περιοχή καρτελών.
2) ΕΝΤΟΛΗ: Εντολές είναι οι οδηγίες που καταλαβαίνει ο υπολογιστής έχουν:
 α) όνομα.
 β) κάνουν μια δουλειά. Αν δεν εκφράσουμε ΠΟΙΟΣ την κάνει, ο υπολογιστής, ο προγραμματιστής ή ο χρήστης, αυτό που λέμε είναι ασαφές.
 γ) ακολουθούν μοναδική σύνταξη.
· οι-εντολές είναι το αντίστοιχο των-προτάσεων των-φυσικών-γλωσσών.
3) ΕΝΤΟΛΗ-ΔΕΙΞΕ (show):
 α) όνομα: δειξε
 β) ενέργεια: ο υπολογιστής εμφανίζει πληροφορία στο κέντρο εντολών
 γ) σύνταξη: 1. δειξε 5 + 7 2. δειξε "λέξη 3. δείξε [πολλές λέξεις]
  4. δείξε (φρ [μήνυμα] 2 * 3 "λέξη)
4) ΕΝΤΟΛΗ-ΑΝΑΚΟΙΝΩΣΗ (announce):
 α) όνομα: ανακοινωση
 β) ενέργεια: Το κομπιουτερ εμφανίζει πληροφορία σε παράθυρο.
 γ) σύνταξη: 1. ανακοινωση 5 + 7 2. ανακοινωση "λέξη
3. ανακοινωση [πολλές λέξεις] 4. ανακοινωση (φρ [μήνυμα] 2 * 3 "λέξη)
5) ΕΝΤΟΛΗ-ΕΡΩΤΗΣΗ (question):
 α) όνομα: ερωτηση
 β) ενέργεια: Ο χρήστης δίνει πληροφορία στο κομπιούτερ που την κρατάσει ση RAM στη θέση ᾳπαντηση'.
 γ) σύνταξη: ερωτηση [μήνυμα που θα δει ο χρηστης για να δώσει πληροφορια]
6) ΕΝΤΟΛΕΣ-ΧΕΛΩΝΑΣ:
 α) όνομα: μπ(fd), πι(bk), αρ(lt), δε(rt), σβγ(clearscreen), στκ(pd), στα(pu), κεντρο(home)
 β) ενέργεια: Μετακινούν τη χελώνα και έτσι δημιουργούμε σχήματα.
 γ) σύνταξη: μπ 100, δε 90,
7) ΕΝΤΟΛΗ-ΕΠΑΝΑΛΑΒΕ (repeat):
 α) όνομα: επαναλαβε
 β) ενέργεια: εκτελεί πολλές φορές ένα σύνολο εντολών
 γ) σύνταξη: επαναλαβε 7[ εντολες ]
8) ΕΝΤΟΛΗ-ΓΙΑ (to):
 α) όνομα: για
 β) ενέργεια: δημιουργεί καινούργες εντολές που λέγονται ΔΙΑΔΙΚΑΣΙΕΣ.
 γ) σύνταξη:
  για όνομα
   εντολη
   εντολη
  τέλος
8) ΔΙΑΔΙΚΑΣΙΑ: Διαδικασίες είναι οι ΚΑΙΝΟΥΡΓΙΕΣ εντολές που κατασκευάζει ο προγραμματιστής με την εντολή 'για'.
 α) Ο προγραμματιστής τις ΓΡΑΦΕΙ στην καρτέλα "Διαδικασίες".
 β) Ο χρήστης τις ΕΚΤΕΛΕΙ στο κέντρο-εντολών γράφοντας το όνομά τους, αφού έχει ανοίξει το αρχείο που τις περιέχει.
9) ΜΕΤΑΒΛΗΤΗ:
 α) Στο πρόγραμμα είναι ένα ζευγάρι-ονόματος-τιμής. 'Τιμή' είναι διαφορετικές πληροφορίες ίδιου τύπου που εκχωρούνται (συσχετίζονται) στο αντίστοιχο 'όνομα'. Το 'όνομα' η logo στις διαδικασίες το συμβολίζει με ':λέξη', στην εντολή ερωτηση με ᾳπαντηση'.
 β) Εσωτερικά στο κομπιούτερ είναι ΘΕΣΗ της μνήμης RAM, όπου το κομπιούτερ κρατά διαφορετικές πληροφορίες ίδιου τύπου, που επεξεργάζεται και παράγει.
10) ONLINE-μεταφραστές: - https://www.calormen.com/jslogo/
 - http://logo.twentygototen.org/

2001-2002

Γ ΤΑΞΗ:
Διερευνώ-Δημιουργώ-Ανακαλύπτω
· Εργαλεία-Τεχνικές Συνθετικές εργασίες με λογισμικό εφαρμογών γενικής χρήσης, λογισμικό δικτύων, λογισμικό ανάπτυξης πολυμέσων, εκπαιδευτικό λογισμικό και προγραμματιστικά εργαλεία
Διδακτικές ώρες: 12

Ελέγχω - Προγραμματίζω τον Υπολογιστή
· Η έννοια του αλγορίθμου
· Ο κύκλος ανάπτυξης ενός προγράμματος
· Το περιβάλλον μιας γλώσσας προγραμματισμού
· Βασικές δομές μιας συμβολικής γλώσσας
Διδακτικές ώρες: 10

Ο υπολογιστής στη ζωή μας
· Γενική επισκόπηση των εφαρμογών της πληροφορικής
· Όλα αλλάζουν...
· Το μέλλον ...
Διδακτικές ώρες: 5

1. Ο υπολογιστής και η επικοινωνία μαζί του; 5 ώρες [Γ2/7285/2οκτ1995]

2. Βάσεις Δεδομένων; 10 ώρες [Γ2/7285/2οκτ1995]

name::
* McsEngl.2. Βάσεις Δεδομένων; 10 ώρες [Γ2/7285/2οκτ1995]@cptIt,

ΤΙ ΠΛΗΡΟΦΟΡΙΕΣ ΒΑΖΟΥΜΕ ΣΕ ΜΙΑ ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ;
Βάζουμε μόνο αυτές που μπορούν να γραφούν σε ένα πίνακα με γραμμές και στήλες.

ΤΙ ΕΙΝΑΙ ΕΓΓΡΑΦΗ ΚΑΙ ΤΙ ΠΕΔΙO ΣΕ ΜΙΑ ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ;
Εγγραφές είναι οι γραμμές του πίνακα και πεδία οι στήλες του πίνακα.

ΠΩΣ ΔΗΜΙΟΥΡΓΟΥΜΕ ΜΙΑ ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ;
α) file/create new file/εικονίδιο βάσης δεδομένων
β) στη λευκή καρτέλα, γράφουμε τα πεδία που θέλουμε βάζοντας : στο τέλος του ονόματος κάθε πεδίου και δηλώνουμε και το πλάτος κάθε πεδίου
γ) σώζουμε τη ΒΔ.

ΠΩΣ ΒΡΙΣΚΟΥΜΕ ΣΤΗ ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ ΤΩΝ ΦΙΛΩΝ ΜΑΣ ΑΥΤΟΥΣ ΠΟΥ ΤΟ ΕΠΙΘΕΤΟ ΤΟΥΣ ΑΡΧΙΖΕΙ ΑΠΟ Π;
α) πατάμε το εικονίδιο της καρτέλας με το ερωτηματικο.
β) στο πεδίο 'ΕΠΙΘΕΤΟ' γράφουμε Π*
γ) πατάμε το εικονίδιο του πίνακα.

ΠΩΣ ΒΡΙΣΚΟΥΜΕ ΣΤΗ ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ ΤΩΝ ΦΙΛΩΝ ΜΑΣ ΑΥΤΟΥΣ ΠΟΥ ΚΑΤΟΙΚΟΥΝ ΣΤΗΝ ΑΘΗΝΑ;
α) πατάμε το εικονίδιο της καρτέλας με το ερωτηματικο.
β) στο πεδίο 'ΠΟΛΗ' γράφουμε ΑΘΗΝΑ
γ) πατάμε το εικονίδιο του πίνακα.

ΠΩΣ ΤΑΞΙΝΟΥΜΟΥΜΕ ΤΙΣ ΕΓΓΡΑΦΕΣ ΩΣ ΠΡΟΣ ΕΝΑ ΠΕΔΙΟ;
α) select\sort records
b) στο καινούργιο παράθυρο στο πρώτο κουτί γράφουμε το όνομα του πεδίου και πατάμε ΟΚ.

ΤΙ ΚΑΝΟΥΜΕ ΜΕ ΤΙΣ ΑΝΑΦΟΡΕΣ ΚΑΙ ΠΩΣ ΤΙΣ ΔΗΜΙΟΥΡΓΟΥΜΕ ΣΥΝΟΠΤΙΚΑ;
Με τις αναφορές εκτυπώνουμε μερικά πεδία απο μια ΒΔ.
Για να τις δημιουργήσουμε:
α) view / create new report
β) στο καινούργιο παράθυρο δηλώνουμε πιά πεδία θέλουμε να εκτυπώσουμε και ΟΚ
γ) στο επόμενο παράθυρο δηλώνουμε τις στατιστικές πληροφορίες που θέλουμε για κάθε πεδίο

ΠΩΣ ΠΡΟΣΘΕΤΟΥΜΕ ΚΑΙΝΟΥΡΓΙΑ ΠΕΔΙΑ;
α) Απο τη μορφή καρτέλας: Βάζουμε το δρομέα σε ένα κενό σημείο της οθόνης γράφουμε το όνομα του νέου πεδίου και :. Τα πεδία προστίθενται στο τέλος.
β) Από τη μορφή πίνακα: 1) βάζουμε το δρομέα στο πεδίο πρίν απο το οποίο θέλουμε να μπεί το καινούργιο πεδίο. 2) edit / insert field 3) edit / field name.

3. Διερεύνηση με συμβολική έκφραση σε προγραμματιστικό περιβάλλον; 10 ώρες [Γ2/449/29ιαν1996]

ΔΙΔΑΣΚΑΛΙΑ:
** Εισαγωγή, Γλώσσα προγραμματισμού, editor, μετάφραση (διερμηνευτής/μεταφραστής), το πρόγραμμα της Logo, δημιουργία τετραγώνου,
** Διαδικασίες: καρέκλα, τραπεζι,
** Υπερδιαδικασίες: τραπεζαρία
** Μεταβλητές: τετράγωνο, κύκλος
** Περισσότερες μεταβλητές: πολύγωνο.


ΕΝΤΟΛΕΣ ΑΛΦΑΒΗΤΙΚΑ:
bf (ButFirst) "price >> δίνει έξοδο rice.
bk (BacK) 50 >> πηγαίνει τη χελώνα 50 βήματα πίσω.
bl (ButLast) [1 2 3] >> δίνει έξοδο [1 2].
clean >> καθαρίζει την οθόνη και παραμένει στη θέση του.
cos 90 >> δίνει έξοδο 0.
count [1 2 3] >> δίνει έξοδο 3.
cs (ClearScreen) >> καθαρίζει την οθόνη και γυρνά στην αφετηρία.
ct (ClearText) >> καθαρίζει το πλαίσιο εξόδου του παραθύρου εντολών.
emptyp [] >> δίνει έξοδο true.
erns (ΕraseNames) >> σβήνει τις καθολικές μεταβλητές του χώρου-εργασίας.
fd (ForwarD) 50 >> πηγαίνει 50 βήματα μπροστά.
fence, window, wrap >> μεταβάλλει τα όρια κίνησης της χελώνας στην οθόνη.
first [1 2 3] >> δίνει έξοδο 1.
fput (FirstPut) [a b] [c d] >> δίνει έξοδο [[ab]cd].
heading >> δίνει έξοδο τη κλίση της χελώνας.
home >> γυρνά στην αφετηρία και γράφει συγχρόνως.
ht (HideTurtle) >> κρύβεται η χελώνα.
if :x>200 [stop] >> εντολή διακλάδωσης.
int 23.3 >> δίνει έξοδο 23.
item 3 "price >> δίνει έξοδο i.
label [how are you?] >> εκτυπώνεται στην οθόνη το περιεχόμενο της λίστας.
last [1 2 3] >> δίνει έξοδο 3.
list "a [b c] >> δίνει έξοδο [a [b c]].
listp [256] >> δίνει έξοδο true.
lput (LastPut) "a [b c ] >> δίνει έξοδο [b c a].
lt (LefT) 90 >> στριβει 90 μοίρες αριστερά.
make "x 35, make "x :x+4 >> δημιουργεί και μεταβάλει καθολική μεταβλητή.
memberp "animal "animals >> δίνει έξοδο true.
minus 4 3 >> δίνει έξοδο 1.
number "animal >> δίνει έξοδο false.
op (OutPut) >> δημιουργεί έξοδο, και διακόπτει τη διαδικασία.
pd (PenDown) >> κατεβαίνει η χελώνα για να μπορεί να γράφει.
pe (PenErase) >> η χελώνα παίρνει σβηστήρι.
pos >> δίνει έξοδο τη θέση της χελώνας ως προς τον άξονα χ και y.
ppt (PenPainT) >> η χελώνα ξανακρατάει μολύβι.
pr 2*3, (PRint) >> τυπώνει στο πλαίσιο εξόδου.
product 4 3 >> δίνει έξοδο 12.
pu (PenUp) >> σηκώνεται η χελώνα έτσι ώστε να μή γράφει στην μετακίνησή της.
quotient 10 4 >> δίνει έξοδο 2.5.
remaider 10 4 >> δίνει έξοδο 2.
repeat 4 [fd 60 rt 90] >> επαναλαμβάνεται η εκτέλεση των εντολών της λίστας 4 φορές.
rl (ReadList) >> διαβάζει λίστα.
round 23.6 >> δίνει έξοδο 24.
rt (RighT) 90 >> στρίβει 90 μοίρες δεξιά.
run [fd 100 lt 30] >> εκτελεί τις εντολές της λίστας.
rw (ReadWord) >> διαβάζει λέξη.
se (SEntence) "a [bc] >> δίνει έξοδο [a b c].
setfc (SetFloodColor) [255 0 0], fill >> γεμίζει με χρώμα την κλειστή επιφάνει που βρίσκεται.
seth (setHeading) 45 >> ορίζει την κλίση της χελώνας.
setpc (SetPenColor) [255 0 0] >> η χελώνα παίρνει έγχρωμο μολύβι.
setpensize [3 3] >> η χελώνα αλλάζει μέγεθος μολυβιού.
setpos [50 50] >> πηγαίνει η χελώνα στη θέση x=50, y=50.
setsc (SetScreenColor) [255 0 0] >> δίνει στην οθόνη χρώμα κόκκινο.
setx 50 >> πηγαίνει η χελώνα στη θέση χ=50.
setxy 50 50 >> πηγαίνει η χελώνα στη θέση x=50, y=50.
sety 50 >> πηγαίνει η χελώνα στη θέση y=50.
show [2 3] >> τυπώνει στο πλαίσιο εξόδου [2 3].
sin 90 >> δίνει έξοδο 1.
sqrt 100 >> δίνει έξοδο 10.
st (ShowTurtle) >> εμφανίζεται ξανά η χελώνα.
sum 4 3 >> δίνει έξοδο 7.
type [23] pr " pr "nik >> τυπώνει στο πλαίσιο-εξόδου [23] nik στην ίδια γραμμή.
word "p "rice >> δίνει έξοδο price .
wordp 23 >> δίνει έξοδο true.
xcor >> δίνει έξοδο τη θέση της χελώνας ως προς τον άξονα χ.
ycor >> δίνει έξοδο τη θέση της χελώνας ως προς τον άξονα y.

ΕΝΤΟΛΕΣ ΤΗΣ LOGO:
1) fd (ForwarD) 50 >> πηγαίνει η χελώνα 50 βήματα μπροστά.
2) bk (BacK) 50 >> πηγαίνει η χελώνα 50 βήματα πίσω.
3) rt (RighT) 90 >> στρίβει η χελώνα 90 μοίρες δεξιά.
4) lt (LefT) 90 >> στριβει η χελώνα 90 μοίρες αριστερά.
5) home >> γυρνά η χελώνα στην αφετηρία και γράφει συγχρόνως.
6) cs (ClearScreen) >> καθαρίζει την οθόνη και γυρνά στην αφετηρία.
7) clean >> καθαρίζει την οθόνη και παραμένει στη θέση του.
8) ct (ClearText) >> καθαρίζει το πλαίσιο εξόδου του παραθύρου εντολών.
9) setsc (setScreenColor) [255 0 0] >> δίνει στην οθόνη χρώμα κόκκινο
10) setfc (setFloodColor) [255 0 0], fill >> γεμίζει με χρώμα την κλειστή επιφάνει που βρίσκεται.
11) pu (PenUp) >> σηκώνεται η χελώνα έτσι ώστε να μή γράφει στην μετακίνησή της.
12) pd (PenDown) >> κατεβαίνει η χελώνα για να μπορεί να γράφει.
13) pe (PenErase) >> η χελώνα παίρνει σβηστήρι.
14) ppt (PenPainT) >> η χελώνα ξανακρατάει μολύβι.
15) setpc (setPenColor) [255 0 0] >> η χελώνα παίρνει έγχρωμο μολύβι.
16) setpensize [3 3] >> η χελώνα αλλάζει μέγεθος μολυβιού.
17) repeat 4 [fd 60 rt 90] >> επαναλαμβάνεται η εκτέλεση των εντολών της λίστας 4 φορές.
18) pr 2*3, (PRint) >> τυπώνει στο πλαίσιο εξόδου 6.
19) make "x 35, make "x :x+4 >> δημιουργεί και μεταβάλλει καθολική μεταβλητή.
20) erns (EraseNames) >> σβήνει τις καθολικές μεταβλητές του χώρου-εργασίας.
21) if :x>200 [stop] >> εντολή διακλάδωσης.
22) sqrt 100 >> δίνει έξοδο 10.
23) sin 90 >> δίνει έξοδο 1.
24) cos 90 >> δίνει έξοδο 0.
25) int 23.3 >> δίνει έξοδο 23.
26) round 23.6 >> δίνει έξοδο 24.
27) sum 4 3 >> δίνει έξοδο 7.
28) minus 4 3 >> δίνει έξοδο 1.
29) product 4 3 >> δίνει έξοδο 12.
30) quotient 10 4 >> δίνει έξοδο 2.5.
31) remaider 10 4 >> δίνει έξοδο 2.
32) op (OutPut) >> δημιουργεί έξοδο, και διακόπτει τη διαδικασία.
33) run [fd 100 lt 30] >> εκτελεί τις εντολές της λίστας.
34) list "a [b c] >> δίνει έξοδο [a [b c]].
35) se (SEntence) "a [bc] >> δίνει έξοδο [a b c].
36) word "p "rice >> δίνει έξοδο price.
37) fput (FirstPut) [a b] [c d] >> δίνει έξοδο [[ab]cd].
38) lput (LastPut) "a [b c ] >> δίνει έξοδο [b c a].
39) first [1 2 3] >> δίνει έξοδο 1.
40) last [1 2 3] >> δίνει έξοδο 3.
41) bf (ButFirst) "price >> δίνει έξοδο rice.
42) bl (ButLast) [1 2 3] >> δίνει έξοδο [1 2].
43) item 3 "price >> δίνει έξοδο i.
44) count [1 2 3] >> δίνει έξοδο 3.
45) memberp "animal "animals >> δίνει έξοδο true.
46) wordp 23 >> δίνει έξοδο true.
47) number "animal >> δίνει έξοδο false.
48) listp [256] >> δίνει έξοδο true.
49) emptyp [] >> δίνει έξοδο true.
50) show [2 3] >> [2 3].
51) type [23] pr " pr "nik >> [23] nik στην ίδια γραμμή.
52) rw (ReadWord) >> διαβάζει λέξη.
53) rl (ReadList) >> διαβάζει λίστα.
54) setx 50 >> πηγαίνει η χελώνα στη θέση χ=50.
55) sety 50 >> πηγαίνει η χελώνα στη θέση y=50.
56) setxy 50 50 >> πηγαίνει η χελώνα στη θέση x=50, y=50.
57) setpos [50 50] >> πηγαίνει η χελώνα στη θέση x=50, y=50.
58) ht (ΗideΤurtle) >> κρύβεται η χελώνα.
st (ShowTurtle) >> εμφανίζεται ξανά η χελώνα.
59) fence, window, wrap >> μεταβάλλει τα όρια κίνησης της χελώνας στην οθόνη.
60) seth (setHeading) 45 >> ορίζει την κλίση της χελώνας.
61) xcor >> δίνει έξοδο τη θέση της χελώνας ως προς τον άξονα χ.
62) ycor >> δίνει έξοδο τη θέση της χελώνας ως προς τον άξονα y.
63) pos >> δίνει έξοδο τη θέση της χελώνας ως προς τον άξονα χ και y.
64) heading >> δίνει έξοδο τη κλίση της χελώνας.
65) label [how are you?] >> εκτυπώνεται στην οθόνη το περιεχόμενο της λίστας.

ΕΝΤΟΛΕΣ LOGO Β' ΓΥΜΝΑΣΙΟΥ:
ΔΙΕΥΘΥΝΣΗΣ:
1) fd (ForwarD) 50 >> πηγαίνει η χελώνα 50 βήματα μπροστά.
2) bk (BacK) 50 >> πηγαίνει η χελώνα 50 βήματα πίσω.
3) rt (RighT) 90 >> στρίβει η χελώνα 90 μοίρες δεξιά.
4) lt (LefT) 90 >> στριβει η χελώνα 90 μοίρες αριστερά.
5) home >> γυρνά η χελώνα στην αφετηρία και γράφει συγχρόνως.
ΟΘΟΝΗΣ:
6) cs (ClearScreen) >> καθαρίζει την οθόνη και γυρνά στην αφετηρία.
7) clean >> καθαρίζει την οθόνη και παραμένει στη θέση του.
8) ct (ClearText) >> καθαρίζει το πλαίσιο εξόδου του παραθύρου εντολών.
9) setsc (setScreenColor) [255 0 0] >> δίνει στην οθόνη χρώμα κόκκινο
10) setfc (setFloodColor) [255 0 0], fill >> γεμίζει με χρώμα την κλειστή επιφάνει που βρίσκεται.
ΜΟΛΥΒΙΟΥ:
11) pu (PenUp) >> σηκώνεται η χελώνα έτσι ώστε να μή γράφει στην μετακίνησή της.
12) pd (PenDown) >> κατεβαίνει η χελώνα για να μπορεί να γράφει.
13) pe (PenErase) >> η χελώνα παίρνει σβηστήρι.
14) ppt (PenPainT) >> η χελώνα ξανακρατάει μολύβι.
15) setpc (setPenColor) [255 0 0] >> η χελώνα παίρνει έγχρωμο μολύβι.
16) setpensize [3 3] >> η χελώνα αλλάζει μέγεθος μολυβιού.
ΔΙΑΦΟΡΕΣ:
17) repeat 4 [fd 60 rt 90] >> επαναλαμβάνεται η εκτέλεση των εντολών της λίστας 4 φορές.
18) pr 2*3, (PRint) >> τυπώνει στο πλαίσιο εξόδου 6.

ΕΝΤΟΛΕΣ LOGO Γ' ΓΥΜΝΑΣΙΟΥ:
19) make "x 35, make "x :x+4 >> δημιουργεί και μεταβάλλει καθολική μεταβλητή.
20) erns (EraseNames) >> σβήνει τις καθολικές μεταβλητές του χώρου-εργασίας.
21) if :x>200 [stop] >> εντολή διακλάδωσης.
ΕΝΤΟΛΕΣ ΜΕ ΕΞΟΔΟ:
22) sqrt 100 >> δίνει έξοδο 10.
23) sin 90 >> δίνει έξοδο 1.
24) cos 90 >> δίνει έξοδο 0.
25) int 23.3 >> δίνει έξοδο 23.
26) round 23.6 >> δίνει έξοδο 24.
27) sum 4 3 >> δίνει έξοδο 7.
28) minus 4 3 >> δίνει έξοδο 1.
29) product 4 3 >> δίνει έξοδο 12.
30) quotient 10 4 >> δίνει έξοδο 2.5.
31) remaider 10 4 >> δίνει έξοδο 2.
32) op (OutPut) >> δημιουργεί έξοδο, και διακόπτει τη διαδικασία.
33) run [fd 100 lt 30] >> εκτελεί τις εντολές της λίστας.
ΛΕΞΕΙΣ ΚΑΙ ΛΙΣΤΕΣ:
34) list "a [b c] >> δίνει έξοδο [a [b c]].
35) se (SEntence) "a [bc] >> δίνει έξοδο [a b c].
36) word "p "rice >> δίνει έξοδο price.
37) fput (FirstPut) [a b] [c d] >> δίνει έξοδο [[ab]cd].
38) lput (LastPut) "a [b c ] >> δίνει έξοδο [b c a].
39) first [1 2 3] >> δίνει έξοδο 1.
40) last [1 2 3] >> δίνει έξοδο 3.
41) bf (ButFirst) "price >> δίνει έξοδο rice.
42) bl (ButLast) [1 2 3] >> δίνει έξοδο [1 2].
43) item 3 "price >> δίνει έξοδο i.
44) count [1 2 3] >> δίνει έξοδο 3.
45) memberp "animal "animals >> δίνει έξοδο true.
46) wordp 23 >> δίνει έξοδο true.
47) number "animal >> δίνει έξοδο false.
48) listp [256] >> δίνει έξοδο true.
49) emptyp [] >> δίνει έξοδο true.
ΕΜΦΑΝΙΣΗ ΣΤΟ ΠΛΑΙΣΙΟ ΕΞΟΔΟΥ:
50) show [2 3] >> [2 3].
51) type [23] pr " pr "nik >> [23] nik στην ίδια γραμμή.
ΕΙΣΟΔΟΣ ΔΕΔΟΜΕΝΩΝ ΚΑΤΑ ΤΗΝ ΕΚΤΕΛΕΣΗ:
52) rw (ReadWord) >> διαβάζει λέξη.
53) rl (ReadList) >> διαβάζει λίστα.
ΚΑΡΤΕΣΙΑΝΕΣ ΣΥΝΤΕΤΑΓΜΕΝΕΣ:
54) setx 50 >> πηγαίνει η χελώνα στη θέση χ=50.
55) sety 50 >> πηγαίνει η χελώνα στη θέση y=50.
56) setxy 50 50 >> πηγαίνει η χελώνα στη θέση x=50, y=50.
57) setpos [50 50] >> πηγαίνει η χελώνα στη θέση x=50, y=50.
58) ht (ΗideΤurtle) >> κρύβεται η χελώνα.
st (ShowTurtle) >> εμφανίζεται ξανά η χελώνα.
59) fence, window, wrap >> μεταβάλλει τα όρια κίνησης της χελώνας στην οθόνη.
60) seth (setHeading) 45 >> ορίζει την κλίση της χελώνας.
61) xcor >> δίνει έξοδο τη θέση της χελώνας ως προς τον άξονα χ.
62) ycor >> δίνει έξοδο τη θέση της χελώνας ως προς τον άξονα y.
63) pos >> δίνει έξοδο τη θέση της χελώνας ως προς τον άξονα χ και y.
64) heading >> δίνει έξοδο τη κλίση της χελώνας.
65) label [how are you?] >> εκτυπώνεται στην οθόνη το περιεχόμενο της λίστας.

3.2 ΔΙΑΔΙΚΑΣΙΕΣ ΜΕ ΠΕΡΙΣΣΟΤΕΡΕΣ ΑΠΟ ΜΙΑ ΕΙΣΟΔΟΥΣ:
** polygono :n :x
ΑΣΚΗΣΕΙΣ ΣΕΛΙΔΑ 91:
2. to rodakas :n :x :k repeat :k [polygono :n :x rt 360/:k] end
3. to polygonomk :x :y repeat :x [fd :y rt 180-((360/:x)/2)] end

3.3 ΤΟΠΙΚΕΣ -ΚΑΘΟΛΙΚΕΣ ΜΕΤΑΒΛΗΤΕΣ:
** ΧΩΡΟΣ ΕΡΓΑΣΙΑΣ
είναι η περιοχή της μνήμης όπου φορτώνονται οι διαδικασίες που ορίζουμε εμείς καθώς και τα δεδομένα που χρησιμοποιούνται για την εκτέλεσή τους.
** Κάθε μεταβλητή έχει όνομα, διεύθυνση (θέση μνήμης), τιμή.
** ΤΟΠΙΚΗ ΜΕΤΑΒΛΗΤΗ είναι η μεταβλητή μιάς διαδικασίας που υπάρχουν όσο εκτελείται η διαδικασία.
** ΚΑΘΟΛΙΚΕΣ ΜΕΤΑΒΛΗΤΕΣ είναι οι μεταβλητές που υπάρχουν όλη την ώρα που δουλεύουμε με τη Logo. Δημιουργούνται με την εντολή make. Αποθηκεύονται στο αρχείο του 'χώρου εργασίας'.
** make "x :x+5
** Αντιμετωπίζονται ξεχωριστά και ας έχουν το ίδιο όνομα.
** erasenames (erns) = σβήνει όλες τις καθολικές μεταβλητές.
** Η τοπική-μεταβλητή μιας διαδικασίας μεταβάλλεται με την εντολή make.
ΑΣΚΗΣΕΙΣ ΣΕΛΙΔΑ 99:
1. to spires :x :k :n :a repeat :n [fd :x rt :a make "x :x+:k] end
α=120, β=45, γ=17, δ=119, ε=59
2.
ζ) to polygonomk :x :y repeat :x [fd :y rt 180-((360/:x)/2)] end
η) to asterim :x :k :n repeat :n [repeat 5 [fd :x rt 180-360/5/2 make "x :x+:k] end
θ) to asteris :x :k :n repeat :n [repeat 5 [fd :x rt 179-360/5/2 make "x :x+:k] end

3.4 ΑΝΑΔΡΟΜΗ - ΑΝΑΔΡΟΜΙΚΕΣ ΔΙΑΔΙΚΑΣΙΕΣ:
** ΑΝΑΔΡΟΜΙΚΗ ΔΙΑΔΙΚΑΣΙΑ είναι η διαδικασία που καλεί τον ευατό της.
** σε μια αναδρομικη-διαδικασία για τη μεταβολή μιας μεταβλητής ΔΕΝ χρειάζεται την εντολή make.
** o υπολογιστής μπορεί να κάνει συγκρίσεις ανάμεσα σε αριθμούς.
** if :x>200 [stop]
ΑΣΚΗΣΕΙΣ ΣΕΛΙΔΑ 108:
α) spires2 1 6
to spires2 :x :n if :x >300 [stop] fd :x rt 360/:n spires2 :x+5 :n end
b) lt 90 spires3 150
to spires3 :x if :x<5 [stop] repeat 4 [fd :x rt 90] rt 10 spires3 :x-15 end
c) lt 90 spires4 150
to spires4 :x if :x<5 [stop] repeat 4 [fd :x rt 90] rt 10 spires4 :x-7 end

ΑΣΚΗΣΕΙΣ ΣΕΛΙΔΑ 111:
1.
α) 111.1.a    to 111.1.a metra 1 artem 1 end
β) 111.1.b 0    to 111.1.b :x if :x>10 [stop] pr :x 111.1.b :x+2 end
c) 111.1.b 1

2. 111.2 5    to 111.2 :x if :x>20 [stop] pr :x 111.2 :x+1 end

2. 111.3 5    to 111.5 :x if :x>20 [stop] pr :x 111.5 :x+3 end

4. 111.4.b 0 20  to 111.4.b :x :y if :x>:y+1 [stop] 111.4.b :x+2 :y pr :x end

5.
tree x=30
 false
 fd 30
 rt 40
 tree x=20
   false
   fd 20
   rt 40
   tree x=13
     false
     fd 13
     rt 40
     tree x= 8
       true/stop
     lt 60
     tree x=8
       true/stop
     rt 20
     bk 13/end
   lt 60
   tree x=13
     false
     fd 13
     rt 40
     tree x= 8
       true/stop
     lt 60
     tree x=8
       true/stop
     rt 20
     bk 13/end
   rt 20
   bk 20/end
 lt 60
 tree x= 20
..........................
 bk 30/end

3.5 ΔΙΑΔΙΚΑΣΙΕΣ ΜΕ/ΧΩΡΙΣ ΕΙΣΟΔΟ/ΕΞΟΔΟ:
** οι συναρτήσεις είναι διαδικασίες με έξοδο
pr sqrt 100 -->10
pr sin 90 -->1
pr cos 90 -->0
pr int 23.3 -->23
pr round 23.6 -->24
pr sum 4 3 -->7
pr minus 4 3 -->1
pr product 4 3 -->12
pr quotient 10 4 -->2.5
pr remaider 10 4 -->2
** Τις διαδικασίες με είσοδο πρέπει να τις εκτελούμε ΜΕ τα κατάλληλα δεδομένα.
** Σις διαδικασίες με έξοδο ΠΡΕΠΕΙ να προσδιορίζουμε πως θα χρησιμοποιήσουμε το εξαγόμενό τους.
** εντολή op (OutPut) δημιουργεί έξοδο, και διακόπτει τη διαδικασία.

ΑΣΚΗΣΕΙΣ ΣΕΛΙΔΑ 124:
1.

3.6 ΠΡΟΓΡΑΜΜΑΤΑ ΜΕΤΑΓΛΩΤΤΙΣΗΣ - Η ΓΡΑΜΜΑΤΙΚΗ ΤΗΣ LOGO:
** ΓΛΩΣΣΑ ΜΗΧΑΝΗΣ είναι η γλώσσα-προγραμματισμού που καταλαβαίνει το κομπιούτερ που χρησιμοποιεί 2 μόνο σύμβολα.
** γλώσσες υψηλού επιπέδου
** διερμηνευτές - μεταφραστές
** εκτελέσιμο πρόγραμμα, πρωτογενές/πρωταρχικό πρόγραμμα
** Τα ΔΟΜΙΚΑ-ΣΤΟΙΧΕΙΑ της logo, με τα οποία δημιουργούνται τα προγράμματα, είναι οι λέξεις, οι αριθμοί και οι λίστες.
** στις λέξεις δέ βάζουμε κενά. Με τελείες δείχνουμε μία σύνθετη λέξη.
** run [fd 100 lt 30]

3.7 ΔΙΑΧΕΙΡΙΣΗ ΛΕΞΗΣ ΚΑΙ ΛΙΣΤΑΣ:
list "a [b c] >> [a [b c]]
se (sentence) "a [bc] >> [a b c]
word "p "rice >> price
fput (FirstPut) [a b] [c d] >>[[ab]cd]
lput (lastput) "a [b c ] >> [b c a]
** εντοπισμός στοιχείων
first [1 2 3] >> 1
last [1 2 3] >> 3
bf (butfirst) "price >> rice
bl (butlast) [1 2 3] >> [1 2]
item 3 "price >> i
** είδος των δεδομένων
count [1 2 3] >> 3
memberp "animal "animals >> true
wordp 23 >> true
number "animal >> false
listp [256] >> true
emptyp [] >> true
** show [2 3] >> [2 3]
** type [23] pr " pr "nik >> [23] nik

3.8 ΕΙΣΑΓΩΓΗ ΔΕΔΟΜΕΝΩΝ ΚΑΤΑ ΤΗΝ ΕΚΤΕΛΕΣΗ ΠΡΟΓΡΑΜΜΑΤΟΣ:
** rw (ReadWord)
** rl (ReadList)

3.9 ΚΑΡΤΕΣΙΑΝΕΣ ΣΥΝΤΕΤΑΓΜΕΝΕΣ:
setx 50
sety 50
setxy 50 50
setpos [50 50]
ht (hideturtle)
fence, window, wrap
seth (setHeading) 45: ορίζει την κλίση της χελώνας

pr xcor
pr ycor
pr pos
pr heading

label [how are you?] = εκτυπώνεται στην οθόνη

4. Εφαρμογές; 2 ώρες [Γ2/449/29ιαν1996]

μγ02'ΕΠΙΜΟΡΦΩΣΗ-ΕΚΠΑΙΔΕΥΤΙΚΩΝ

name::
* McsElln.μγ02'ΕΠΙΜΟΡΦΩΣΗ-ΕΚΠΑΙΔΕΥΤΙΚΩΝ@cptIt,

ΜΑΘΗΜΑΤΑ

ΜΑΘΗΜΑ 1ο: ΕΙΣΑΓΩΓΗ
** 1η ώρα: Γνωριμία - Στόχοι - Μεθοδολογία - Δουλειές Υπολογιστή.
** 2η ώρα: Γνώσεις Αγοράς (Υλικό).
** 3η ώρα: Γνώσεις Χρήσης. Αρχεία, Προγράμματα, Λειτουργικό (άνοιγμα-κλείσιμο, επιφάνεια-εργασίας, εκτέλεση-προγραμμάτων)
** ΘΕΩΡΙΑ: 1.1, 1.2, 1.6 αρχή, Οι δραστηριότητες και οι ασκήσεις δεν έχουν καμμία σχέση με τη θεωρία. Ανήκουν στο ΛΣ και στη Γραφή κειμένου.

ΜΑΘΗΜΑ 2ο: ΕΙΣΑΓΩΓΗ - ΛΕΙΤΟΥΡΓΙΚΟ
** 1η ώρα: Διαχείριση φακέλων και αρχείων
** 2η ώρα:
** 3η ώρα:
** ΘΕΩΡΙΑ: 1.3, 1.5

ΜΑΘΗΜΑ 3ο: ΕΙΣΑΓΩΓΗ - ΛΕΙΤΟΥΡΓΙΚΟ
1η ώρα: Βοήθεια, Ρυθμίσεις
2η ώρα:
3η ώρα:
ΘΕΩΡΙΑ: 1.4 πρώτο κομμάτι., 1.6 υπόλοιπο.

ΜΑΘΗΜΑ 4ο: ΕΠΕΞΕΡΓΑΣΙΑ-ΚΕΙΜΕΝΟΥ
1η ώρα:
2η ώρα:
3η ώρα:

ΜΑΘΗΜΑ 5ο: ΕΠΕΞΕΡΓΑΣΙΑ-ΚΕΙΜΕΝΟΥ
1η ώρα:
2η ώρα:
3η ώρα:

ΜΑΘΗΜΑ 6ο: ΕΠΕΞΕΡΓΑΣΙΑ-ΚΕΙΜΕΝΟΥ
1η ώρα:
2η ώρα:
3η ώρα:

ΜΑΘΗΜΑ 7ο: ΥΠΟΛΟΓΙΣΤΙΚΑ-ΦΥΛΛΑ
1η ώρα:
2η ώρα:
3η ώρα:

ΜΑΘΗΜΑ 8ο: ΥΠΟΛΟΓΙΣΤΙΚΑ-ΦΥΛΛΑ
1η ώρα:
2η ώρα:
3η ώρα:

ΜΑΘΗΜΑ 9ο: ΥΠΟΛΟΓΙΣΤΙΚΑ-ΦΥΛΛΑ
1η ώρα:
2η ώρα:
3η ώρα:

ΜΑΘΗΜΑ 10ο: ΥΠΟΛΟΓΙΣΤΙΚΑ-ΦΥΛΛΑ
1η ώρα:
2η ώρα:
3η ώρα:

ΜΑΘΗΜΑ 11ο: ΠΑΡΟΥΣΙΑΣΕΙΣ
1η ώρα:
2η ώρα:
3η ώρα:

ΜΑΘΗΜΑ 12ο: ΕΠΙΚΟΙΝΩΝΙΑ
1η ώρα:
2η ώρα:
3η ώρα:

ΜΑΘΗΜΑ 13ο: ΕΠΙΚΟΙΝΩΝΙΑ
1η ώρα:
2η ώρα:
3η ώρα:

ΜΑΘΗΜΑ 14ο: ΕΠΙΚΟΙΝΩΝΙΑ
1η ώρα:
2η ώρα:
3η ώρα:

ΜΑΘΗΜΑ 15ο: ΕΠΙΚΟΙΝΩΝΙΑ
1η ώρα:
2η ώρα:
3η ώρα:

ΜΑΘΗΜΑ 16ο: ΕΚΠΑΙΔΕΥΤΙΚΑ-ΠΡΟΓΡΑΜΜΑΤΑ
1η ώρα:
2η ώρα:
3η ώρα:

ΕΙΣΑΓΩΓΗ (9 ώρες)

Η εισαγωγή περιλαμβάνει τις γνώσεις που είναι ΑΠΑΡΑΙΤΗΤΕΣ για να μπορέσουμε να δουλέψουμε με ένα κομπιούτερ, δηλαδή:
α) Τι είναι - τι κάνει ένα κομπιούτερ (και αν μου χρειάζεται να πάω να το αγοράσω).
β) Γνώσεις Αγοράς (Πότε να το αγοράσω για να έχω απόσβεση της επένδυσής μου, Βασικές συσκευές).
γ) Γνώσεις Χρήσης (Λειτουργικό Σύστημα).

1. ΒΑΣΙΚΕΣ ΔΟΥΛΕΙΕΣ ΠΟΥ ΚΑΝΟΥΜΕ ΜΕ ΤΑ ΚΟΜΠΙΟΥΤΕΡ

Ο ΥΠΟΛΟΓΙΣΤΗΣ (κομπιούτερ, υπολογιστικό-σύστημα) είναι ένα μηχάνημα που επεξεργάζεται ΠΛΗΡΟΦΟΡΙΕΣ (δηλ. κείμενα, εικόνες και ήχους).

Η πληροφορία καταχωρείται μέσα στο κομπιούτερ ΨΗΦΙΟΠΟΙΗΜΕΝΗ. Δηλαδή έχει ΜΕΤΑΤΡΑΠΕΙ σε 2 καταστάσεις, και σχηματικά λέμε ότι έχει μετατραπεί σε 0 και 1. BIT ονομάζουμε το 0 και 1 που μετατρέπεται η πληροφορία. BYTE ονομάζουμε κάθε ομάδα των 8 bit. Το Byte (B) και τα πολλαπλάσιά του KB (kilobyte=1.000B), MB (megabyte=1.000.000B ), GB (gigabyte = 1 δις B) τα χρησιμοποιούμε να μετράμε την ποσότητα της πληροφορίας που έχουμε.

Οι βασικές ΔΟΥΛΕΙΕΣ που κάνουμε με το κομπιούτερ είναι:
1. Παίζουμε - Ψυχαγωγούμαστε.
2. Γράφουμε.
3. Επικοινωνούμε.
4. Ζωγραφίζουμε.
5. Υπολογίζουμε.
6. Καταχωρούμε πληροφορίες (από πίνακες/καρτέλες).
7. Μαθαίνουμε και εκπαιδευόμαστε.

Ξέρουμε κομπιούτερ, αν ξέρουμε να κάνουμε τις παραπάνω δουλειές. Προσοχή: ο στόχος μας είναι να γίνουμε ΧΡΗΣΤΕΣ κομπιούτερ και όχι ΤΕΧΝΙΚΟΙ. Και όπως πχ με τα αυτοκίνητα όλοι γίνονται οδηγοί (χρήστες) χωρίς να είναι συγχρόνως και τεχνικοί αυτοκινήτων, έτσι και στα κομπιούτερ όλοι, σχετικά εύκολα, γίνονται χρήστες μαθαίνοντας τις διαδικασίες που τους χρειάζονται για να κάνουν τη δουλειά τους ΧΩΡΙΣ να είναι απαραίτητο να ξέρουν τα πάντα για το μηχάνημα και να το φτιάχνουν όταν χαλάει.

2. ΓΝΩΣΕΙΣ ΑΓΟΡΑΣ

Πότε αγοράζω υπολογιστή;
Τα κομπιούτερ είναι τα μηχανήματα που εξελίσσονται πάρα πολύ γρήγορα (γρηγορότερα από όλα τα άλλα μηχανήματα που έχει φτιάξει ο άνθρωπος) και έτσι χάνουν γρήγορα την αξία τους, εμφανώς σε ένα εξάμηνο!!! Γι' αυτό αγοράζουμε κομπιούτερ μόνο όταν μας είναι ΑΝΑΓΚΑΙΟ να δουλέψουμε με αυτό. Στους μαθητές σήμερα ΔΕΝ είναι αναγκαία η χρήση κομπιούτερ. Έτσι η αγορά υπολογιστή εξελίσσεται συνήθως (όχι πάντα) σε αγορά ακριβής παιγνιδομηχανής.

Τα μέρη του υπολογιστή ταξινομούνται σε δύο βασικές ομάδες: hardware και software.
- HARDWARE (ΥΛΙΚΟ) ονομάζουν τα μηχανικά μέρη (συσκευές) του κομπιούτερ.
- SOFTWARE (ΛΟΓΙΣΜΙΚΟ) ονομάζουν ότι ΔΕΝ είναι hardware, δηλαδή τις ΠΛΗΡΟΦΟΡΙΕΣ που επεξεργάζεται και παράγει και τις οδηγίες επεξεργασίας.

Όταν πάμε να αγοράσουμε ένα κομπιούτερ πρέπει να ξέρουμε τα βασικά HARDWARE μέρη που θα έχει το μηχάνημά μας για να ξέρουμε τι πληρώνουμε. Αυτά είναι:
1. Ο ΕΠΕΞΕΡΓΑΣΤΗΣ (ΚΜΕ): Είναι η συσκευή που επεξεργάζεται τις πληροφορίες, ο 'κινητήρας' του υπολογιστή.
2. ΟΙ ΑΠΟΘΗΚΕΣ (ΠΕΡΙΦΕΡΕΙΑΚΗ ΜΝΗΜΗ): Στις αποθήκες ο υπολογιστής διατηρεί ΟΛΕΣ τις πληροφορίες του είτε είναι κλειστός είτε είναι ανοικτός. Παραδείγματα αποθηκών είναι ο σκληρός-δίσκος, οι δισκέτες, το CD-ROM, το DVD.
3. Η ΜΝΗΜΗ RAM (ΚΕΝΤΡΙΚΗ ΜΝΗΜΗ): Είναι η συσκευή όπου ο υπολογιστής βάζει ΜΟΝΟ τα προγράμματα (οδηγίες) που εκτελεί κάθε φορά και τις επεξεργαζόμενες πληροφορίες από αυτά. Ο λόγος ύπαρξης της RAM είναι ότι από εκεί (σε σχέση με τις αποθήκες) τα προγράμματα εκτελούνται πιο γρήγορα. Όμως κάθε χρήστης κομπιούτερ πρέπει να ξέρει ότι άν κλείσει ο υπολογιστής τα περιεχόμενα της RAM σβήνουν, και γιαυτό πρέπει να 'σώζουμε' τη δουλειά μας, δηλαδή να τη στέλνουμε στις αποθήκες.
4. Η ΟΘΟΝΗ: Είναι από τις συσκευές που ΔΕΝ χάνουν γρήγορα την αξία τους και γιᾳυτό αξίζει να δίνουμε λεφτά γιᾳυτές. Αν καθόμαστε πολύ ώρα στον υπολογιστή πρέπει να πάρουμε ακριβή που έχει και καλλίτερες προδιαγραφές υγείας. Σήμερα δε έχουν γίνει προσιτές οι λεπτές (TFT) που εκπέμπουν μηδαμινή ακτινοβολία σε σχέση με τις ογκώδεις.

Γενική συμβουλή αγοράς: Αγοράστε ακριβές οθόνες, όχι όμως ακριβό κομπιούτερ.

3. ΓΝΩΣΕΙΣ ΧΡΗΣΗΣ

ΑΡΧΕΙΑ (files) ονομάζουν οργανωμένες ομάδες ΠΛΗΡΟΦΟΡΙΩΝ με συγκεκριμένο ΟΝΟΜΑ αποθηκευμένες σε συγκεκριμένες ΘΕΣΕΙΣ.
Παλιά (πριν το 1995) τα ΟΝΟΜΑΤΑ των αρχείων αποτελούνταν από δύο μέρη που ενώνονταν με τελεία. Το πρώτο μέρος είχε το πολύ 8 σύμβολα και το δεύτερο, που λέγονταν ΕΠΕΚΤΑΣΗ/extension, είχε το πολύ 3 σύμβολα. Τα σύμβολα ήταν αγγλικά και όχι κόμματα, κενά κλπ.
Μετά το 1995 μπορούμε να τους δώσουμε ότι ονόματα θέλουμε μέχρι 255 σύμβολα και με ελληνικά γράμματα.

Τα αρχεία χωρίζονται σε 2 ομάδες: προγράμματα και δεδομένα.
ΠΡΟΓΡΑΜΜΑΤΑ (programms) ονομάζουν τα αρχεία που περιέχει οδηγίες (ΕΝΤΟΛΕΣ) για να κάνουμε μια δουλειά. Οι βασικές "επεκτάσεις" που έχουν αυτά τα αρχεία είναι .exe, .bat, .com, .sys, κλπ.
ΔΕΔΟΜΕΝΑ (data) ονομάζουν τα αρχεία που ΔΕΝ περιέχουν οδηγίες, πχ ένα κείμενο, μία εικόνα, μουσική κλπ. Οι βασικές επεκτάσεις που έχουν αυτά τα αρχεία είναι .doc, .xls, .txt, .html, .bmp, .jpg, .mp3, κλπ.

ΕΙΔΗ ΠΡΟΓΡΑΜΜΑΤΩΝ (1.6):
Τα προγράμματα χωρίζονται σε 2 βασικές ομάδες: προγράμματα συστήματος και προγράμματα εφαρμογών.

ΠΡΟΓΡΑΜΜΑΤΑ ΣΥΣΤΗΜΑΤΟΣ (λογισμικό συστήματος) ονομάζουν τα προγράμματα που μας βοηθούν στη διαχείριση του υπολογιστή. Το βασικότερο από αυτά είναι το ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ.

ΠΡΟΓΡΑΜΜΑΤΑ ΕΦΑΡΜΟΓΩΝ (λογισμικό εφαρμογών) ονομάζουν τα προγράμματα με τα οποία κάνουμε μια δουλειά από τη πραγματική ζωή. Τα βασικά είναι:
1) games/παιγνίδια = παίζουμε παιγνίδια.
2) word processors/επεξεργαστές κειμένου = γράφουμε κείμενα.
3) προγράμματα επικοινωνίας = επικοινωνούμε
4) graphics = ζωγραφίζουμε.
5) spreadsheets/Υπολογιστικά Φύλλα = υπολογίζουμε.
6) databases/Βάσεις Δεδομένων = καταχωρούμε πληροφορίες.
7) εκπαιδευτικά προγράμματα = μαθαίνουμε και εκπαιδευόμαστε.

ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ:
ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ (ΛΣ) είναι το βασικότερο από τα ΠΡΟΓΡΑΜΜΑΤΑ-ΣΥΣΤΗΜΑΤΟΣ και μας βοηθάει στη διαχείριση του υπολογιστή. Εκτελείται με το άνοιγμα του υπολογιστή και χωρίς αυτό δεν δουλεύει το κομπιούτερ. Το πιο γνωστό λειτουργικό σύστημα είναι τα WINDOWS (XP/2000/me/98/95/3.1). Άλλα είναι το DOS (παλιό), το LINUX, το UNIX, το MAC. Στα πρώτα ΛΣ ο χρήστης έγραφε οδηγίες (εντολές) για να κάνει κάτι, ενώ σήμερα με τη χρήση του ποντικιού δείχνει τι θέλει να κάνει και δεν είναι ανάγκη να θυμάται εντολές. Τα σημερινά λέγονται "γραφικά περιβάλλοντα εργασίας" (επειδή η επικοινωνία γίνεται μέσω γραφικών-εικόνων) ενώ τα παλιά "χαρακτήρων".

Τα βασικότερα πράγματα που πρέπει να μάθουμε να κάνουμε με κάθε λειτουργικό σύστημα είναι:
1) να ΑΝΟΙΓΟΥΜΕ και να ΚΛΕΙΝΟΥΜΕ τον υπολογιστή.
2) να χειριζόμαστε την ΕΠΙΦΑΝΕΙΑ-ΕΡΓΑΣΙΑΣ (γραμμή-εργασιών, κουμπί έναρξη, γρήγορη εκκίνηση, εικονίδια) το ποντίκι (κατάδειξη, κλικ, διπλό κλικ, σύρσιμο, δεξί κλικ) και τα ΠΑΡΑΘΥΡΑ (κουμπί-ελέγχου, εικονίδια ελαχιστοποίησης-μεγιστοποίησης-κλεισίματος, γραμμή-τίτλου, γραμμή-μενού/εντολών, γραμμή-εργαλείων, χειριστήριο αλλαγής μεγέθους, να αλλάζουμε μέγεθο/θέση, ενεργοποίηση).
3) να ΕΚΤΕΛΟΥΜΕ ΠΡΟΓΡΑΜΜΑΤΑ: Στα Windows έναρξη/προγράμματα/πρόγραμμαΧ.
4) να ΔΙΑΧΕΙΡΙΖΟΜΑΣΤΕ ΑΠΟΘΗΚΕΣ: δηλαδή να ξέρουμε να πηγαίνουμε στις διάφορες αποθήκες, να πηγαίνουμε στους διάφορους ΦΑΚΕΛΟΥΣ/καταλόγους (κομμάτια αποθηκών), και να δημιουργούμε/σβήνουμε φακέλους. Στα Windows χρησιμοποιούμε το πρόγραμμα εξερευνητής-των-windows. (1.5)
5) να ΔΙΑΧΕΙΡΙΖΟΜΑΣΤΕ ΑΡΧΕΙΑ: δηλαδή να βλέπουμε τα αρχεία φακέλων, να αντιγράφουμε ή να μεταφέρουμε αρχεία από κατάλογο σε κατάλογο, να σβήνουμε αρχεία, να αλλάζουμε όνομα σε αρχεία κλπ. Στα windows αυτό γίνεται με το ίδιο πρόγραμμα που κάνουμε διαχείριση αποθηκών. (1.5)
- αναζήτηση αρχείων και φακέλων, συμπίεση και αποσυμπίεση αρχείων.
6) να χρησιμοποιούμε τη ΒΟΗΘΕΙΑ του Λειτουργικού και των προγραμμάτων. (1.3)
7) να αλλάζουμε τις ΠΑΡΑΜΕΤΡΟΥΣ/ρυθμίσεις του μηχανήματος. Ποτέ οι αρχάριοι.
- Πίνακας-ελέγχου, (1.4)
- Ταξινόμηση των εγκαταστημένων προγραμμάτων.
- διαχείριση εκτυπωτών.
- προσθαφαίρεση προγραμμάτων. (1.6)
- προστασία από ιούς.

ΕΠΕΞΕΡΓΑΣΤΕΣ ΚΕΙΜΕΝΟΥ (MICROSOFT WORD) (9 ώρες)

Τα ΒΑΣΙΚΑ πράγματα που πρέπει να ξέρουμε είναι:

1. ΧΡΗΣΗ ΠΡΟΓΡΑΜΜΑΤΟΣ:
α) ΕΚΤΕΛΕΣΗ: έναρξη/προγράμματα/microsoft word
β) ΠΕΡΙΒΑΛΛΟΝ ΕΡΓΑΣΙΑΣ: Γραμμή-μενού, Γραμμές-εργαλείων, προβολή-κειμένου, ζουμ, αναίρεση, βοήθεια.
γ) ΚΛΕΙΣΙΜΟ: αρχείο/έξοδος

2. ΓΡΑΦΗ ΚΕΙΜΕΝΟΥ (ΠΛΗΚΤΡΟΛΟΓΗΣΗ):
1) ΑΛΛΑΓΗ ΠΛΗΚΤΡΟΛΟΓΙΟΥ (ελληνικά /αγγλικά): alt + shift
2) ΠΑΡΑΓΡΑΦΟ (κείμενο μεταξύ enter): το κείμενο αλλάζει γραμμή μόνο του με enter αλλάζει παράγραφο.
3) ΤΟΝΟΥΣ: ελληνικό ερωτηματικό(;) πρώτα και μετά το αντίστοιχο φωνήεν. Διαλυτικά: shift+(;), φωνήεν. Διαλυτικά και τόνος: ctrl + alt + (;), φωνήεν.
4) ΚΕΝΑ: το μακρύ πλήκτρο. Μεταξύ των λέξεων (γράμματα μεταξύ κενών) ένα κενό. Μετά από τελεία, δύο.
5) ΚΕΦΑΛΑΙΑ ΓΡΑΜΜΑΤΑ: με το caps lock γράφουμε συνέχεια κεφαλαία, ενώ με το shift μόνο ένα.
6) ΔΡΟΜΕΑΣ: Δρομέας είναι η γραμμή που αναβοσβήνει και μας δείχνει σε ποιο σημείο της οθόνης εμφανίζονται τα σύμβολα που πληκτρολογούμε. Η μετακίνηση του δρομέα γίνεται με:
- το ποντίκι (οποιοδήποτε σημείο)
- τα πλήκτρα με τα τέσσερα βελάκια (χαρακτήρα & γραμμή)
- τα πλήκτρα home /end (αρχή /τέλος γραμμής)
- τα πλήκτρα pageup /pagedown (αρχή /τέλος οθόνης)
- τα πλήκτρα ctrl + home /end (αρχή /τέλος κειμένου)
- ctrl+<-/-> (από λέξη σε λέξη)
7) ΣΒΗΣΙΜΟ ΓΡΑΜΜΑΤΩΝ: το backspace (?) σβήνει ένα σύμβολο ΠΙΣΩ από το δρομέα ενώ το delete ΜΕΤΑ.
8) ΠΛΗΚΤΡΑ ΜΕ 2 ΣΥΜΒΟΛΑ: Γράφουμε το ΠΑΝΩ σύμβολο πατώντας συγχρόνως το Shift.
9) ΕΙΔΙΚΑ-ΣΥΜΒΟΛΑ: εισαγωγή /σύμβολο (ctrl + alt + Ε = €, το (;) στο πλήκτρο Q όταν γράφουμε ελληνικά)
10) ΕΙΣΑΓΩΓΗ /ΑΝΤΙΚΑΤΑΣΤΑΣΗ-ΚΕΙΜΕΝΟΥ: insert.
11) ΕΜΦΑΝΙΣΗ /ΑΠΟΚΡΥΨΗ (μη εκτυπώσιμων χαρακτήρων): εικονίδιο (εντολή 'προβολή')
12) ΣΤΗΛΟΘΕΤΕΣ: Είναι θέσεις που πάει ο δρομέας με το πλήκτρο TAB για να γράφουμε εύκολα σε στήλες. Τις θέσεις αυτές τις ορίζουμε με κλικ στο χάρακα. Αν τις σύρουμε μέσα στο κείμενο, τις διώχνουμε.

3. ΔΙΑΧΕΙΡΙΣΗ ΕΓΓΡΑΦΩΝ/ΑΡΧΕΙΩΝ:
Κάθε κείμενο που γράφουμε είναι και ένα αρχείο.
α) ΔΗΜΙΟΥΡΓΙΑ ΚΑΙΝΟΥΡΓΙΟΥ ΑΡΧΕΙΟΥ: αρχείο /δημιουργία /αποθηκευση /φάκελος /όνομα
β) ΑΝΟΙΓΜΑ ΑΡΧΕΙΟΥ: αρχείο /ανοιγμα /φάκελος/όνομα. Πρόσφατα έγγραφα.
γ) ΑΠΟΘΗΚΕΥΣΗ ΑΡΧΕΙΟΥ: αρχειο /αποθηκευση (αποθήκευση ως = το αποθηκεύει με διαφορετικό όνομα)

4. ΕΠΙΛΟΓΗ ΚΕΙΜΕΝΟΥ:
Είναι πολύ βασικό να ξέρουμε να επιλέγουμε κομμάτια κειμένου διότι για να μπορέσουμε να κάνουμε οποιαδήποτε εργασία πρέπει πρώτα να ΔΕΙΞΟΥΜΕ στο κομπιούτερ για πιο κομμάτι κειμένου ενδιαφερόμαστε. Ετσι για να επιλέξουμε:
α) ΛΕΞΗ, κάνουμε διπλό κλικ πάνω στη λέξη.
β) ΓΡΑΜΜΗ, κάνουμε ΕΝΑ κλίκ με το ποντίκι σε μορφή βέλους, ΜΠΡΟΣΤΑ από τη γραμμή.
γ) ΠΑΡΑΓΡΑΦΟ ( κείμενο μεταξύ δύο enter), κάνουμε ΔΥΟ κλικ, πριν απο οποιαδήποτε γραμή της.
δ) ΟΛΟ ΤΟ ΚΕΙΜΕΝΟ, κάνουμε ΤΡΙΑ κλικ, πριν απο οποιαδήποτε γραμμή. (ή ctrl και 1 κλικ πριν απο γραμμή).
ε) ΤΥΧΑΙΟ ΚΕΙΜΕΝΟ, σύρουμε το ποντίκι πάνω σε αυτό το κείμενο, από το πρώτο μέχρι τελευταίο γράμμα.
στ) ΣΤΗΛΗ ΚΕΙΜΕΝΟΥ, πατάμε Alt και σύρουμε το ποντίκι.

5. ΔΙΟΡΘΩΣΗ ΛΑΘΩΝ ΚΕΙΜΕΝΟΥ/ΓΛΩΣΣΑ:
α) Πατάμε το εικονίδιο 'ΑΒΓ'.
- ΑΓΝΟΗΣΕ = όταν το λάθος που βρήκε το κομπιούτερ, ΔΕΝ είναι λάθος
- ΑΛΛΑΞΕ = όταν θέλουμε να αντικαταστήσουμε το σωστό με το λάθος
- ΠΡΟΣΘΕΣΕ = όταν το 'λάθος' του κομπιούτερ είναι σωστή λέξη ΚΑΙ θέλουμε να την προσθέσουμε στο λεξικό του κομπιούτερ έτσι ώστε να μή σταματήσει ξανά σαυτή.
β) ΑΥΤΟΜΑΤΗ ΔΙΟΡΘΩΣΗ: εργαλεία/αυτόματη διόρθωση.
γ) ΣΥΛΛΑΒΙΣΜΟΣ: εργαλεία/γλώσσα/συλλαβισμός.
δ) ΑΠΟΚΡΥΨΗ ΣΦΑΛΜΑΤΩΝ: εργαλεία/επιλογές/ορθογραφία & γραμματική
ε) ΣΥΝΩΝΥΜΑ: επιλογή/εργαλεία/γλώσσα/θησαυρός (shift + F7).

6. ΔΙΑΜΟΡΦΩΣΗ ΚΕΙΜΕΝΟΥ (ΕΜΦΑΝΙΣΗ):
1) ΑΝΤΙΓΡΑΦΗ /ΜΕΤΑΦΟΡΑ ΚΕΙΜΕΝΟΥ: Με την αντιγραφή το κείμενο υπάρχει και στην παλιά και στην καινούργια θέση. Η διαδικασία είναι: επιλογή /αντιγραφή /θέση-δρομέα /επικόλληση . Με τη μεταφορά το κείμενο υπάρχει μόνο στην καινούργια θέση. Η διαδικασία είναι ίδια με ᾳποκοπή' αντί για ᾳντιγραφή'.
2) ΜΟΡΦΟΠΟΙΗΣΗ ΧΑΡΑΚΤΗΡΩΝ: - ΓΡΑΜΜΑΤΟΣΕΙΡΑ: Γραμματοσειρά είναι η ΜΟΡΦΗ των συμβόλων που χρησιμοποιεί το κομπιούτερ. επιλογή κειμένου και επιλογή γραμματοσειράς από τη λίστα των γραμματοσειρών .
- ΜΕΓΕΘΟΣ: επιλογή κειμένου και επιλογή μεγέθους από τη λίστα των μεγεθών . - ΕΝΤΟΝΑ /ΠΛΑΓΙΑ /ΥΠΟΓΡΑΜΜΙΣΜΕΝΑ: επιλογή και B/I/U εικονίδια.
- ΧΡΩΜΑ: γραμμάτων (εικονίδιο Α έγχρωμο), φόντο γραμμάτων (εικονίδιο μικρού πινέλου με χρώμα).
- ΑΠΟΣΤΑΣΗ ΓΡΑΜΜΑΤΩΝ: μορφή /γραμματοσειρά /απόσταση-χαρακτήρων /απόσταση.
- ΕΚΘΕΤΕΣ /ΔΕΙΚΤΕΣ: ή με εικονίδια Χ2 Χ2 ή μορφή /γραμματοσειρά /απόσταση-χαρακτήρων /θέση.
- ΕΦΕ: μορφή /γραμματοσειρά /εφέ
3) ΜΟΡΦΟΠΟΙΗΣΗ ΠΑΡΑΓΡΑΦΩΝ: - ΣΤΟΙΧΙΣΗ ΚΕΙΜΕΝΟΥ: επιλογή /εικονίδια με τις παράλληλες γραμμές.
- ΕΣΟΧΕΣ (αριστερό περιθώριο): επιλογή /εικονίδια των εσοχών - ΑΡΙΣΤΕΡΑ /ΔΕΞΙΑ ΠΕΡΙΘΩΡΙΑ: επιλογή /εικονίδια που βρίσκονται στις άκρες του χάρακα.
- ΔΙΑΣΤΟΙΧΟ (απόσταση γραμμών): μορφή /παράγραφος /εσοχές και διαστήματα /διάστοιχο ή εικονίδιο - ΑΠΟΣΤΑΣΗ ΠΑΡΑΓΡΑΦΩΝ: μορφή /παράγραφος /εσοχές και διαστήματα / διάστημα πριν-μετά - ΕΙΣΑΓΩΓΗ ΑΡΙΘΜΗΣΗΣ /ΚΟΥΚΚΙΔΩΝ: επιλογή /εικονίδια ή Μορφή /Κουκκίδες και αρίθμηση
4) ΑΝΤΙΓΡΑΦΗ ΜΟΡΦΟΠΟΙΗΣΗΣ: επιλογή /πινέλο-μορφοποίησης /επιλογή-νέου-κειμένου
5) ΑΛΛΑΓΗ ΣΕΛΙΔΑΣ (πριν αλλάξει μόνη της): Εισαγωγή /Αλλαγή /αλλαγή-σελίδας ή ctrl+enter 6) ΑΡΙΘΜΟΣ ΣΕΛΙΔΩΝ: Εισαγωγή /Αριθμοί σελίδας
7) ΚΕΦΑΛΙΔΕΣ ΚΑΙ ΥΠΟΣΕΛΙΔΑ: Προβολή /Κεφαλίδες και υποσέλιδα
8) ΥΠΟΣΗΜΕΙΩΣΕΙΣ: δρομέας /Εισαγωγή (/Αναφορά) /Υποσημείωση
9) ΕΙΣΑΓΩΓΗ ΑΝΤΙΚΕΙΜΕΝΩΝ: - ΕΙΣΑΓΩΓΗ ClipArt: δρομέας /Εισαγωγή /Εικόνα /Έτοιµες εικόνες ClipArt … - ΕΙΣΑΓΩΓΗ ΕΙΚΟΝΑΣ ΑΠΟ ΑΡΧΕΙΟ: δρομέας /Εισαγωγή /Εικόνα /Από αρχείο /φάκελος /όνομα αρχείου - ΕΙΣΑΓΩΓΗ ΣΧΗΜΑΤΟΣ: από τη γραμμή-εργαλείων "Σχεδίαση". Προβολή /Γραμμές εργαλείων /Σχεδίαση ή - ΕΙΣΑΓΩΓΗ ΜΑΘΗΜΑΤΙΚΟΥ ΤΥΠΟΥ: δρομέας /Εισαγωγή /Αντικείμενο /Microsoft equation /επιλογή /γραφή /esc - ΕΙΣΑΓΩΓΗ ΚΑΛΛΙΤΕΧΝΙΚΟΥ ΚΕΙΜΕΝΟΥ: δρομέας / Εισαγωγή /Εικόνα /WordArt… - ΑΝΑΔΙΠΛΩΣΗ ΚΕΙΜΕΝΟΥ: δεξί κλικ στο αντικείμενο /Μορφοποίηση εικόνας /Μορφή - ΑΛΛΑΓΗ ΜΕΓΕΘΟΥΣ & ΘΕΣΗΣ: επιλογή / από τις 8 λαβές (κενά τετράγωνα) για μέγεθος, το σύρουμε για θέση
10) ΠΙΝΑΚΕΣ: - ΔΗΜΙΟΥΡΓΙΑ: δρομέας /Πίνακας /Εισαγωγή /Πίνακας ή το εικονίδιο ή Πίνακας /Σχεδίαση πίνακα.
- ΜΕΤΑΚΙΝΗΣΗ: με τα 4 βελάκια ή Tab, Shift + Tab.
- ΕΠΙΛΟΓΗ: σύρουμε το ποντίκι ή Πίνακας /Επιλογή - ΜΟΡΦΟΠΟΙΗΣΗ: με γραμμή-εργαλείων "πίνακες και περιγράμματα", Εργαλεία /Προσαρμογή ή από εικονίδιο . Όταν αφήνουμε το ποντίκι πάνω σε ένα εργαλείο βγαίνει ετικέτα που μας λέει τι κάνει.
- ΑΥΤΟΜΑΤΗ ΜΟΡΦΟΠΟΙΗΣΗ: το πρόγραμμα έχει στυλ πινάκων που εφαρμόζονται αυτόματα στους πίνακές μας.
- ΣΤΟΙΧΙΣΗ ΚΕΙΜΕΝΟΥ ΚΕΛΙΩΝ: δεξί κλικ σε κελί / Στοίχιση κελιών.
- ΥΨΟΣ / ΠΛΑΤΟΣ: αλλάζουμε το μέγεθος των κελιών πιάνοντας και σύροντας τις πλευρές ή Πίνακας /Ιδιότητες.
- ΚΑΤΕΥΘΥΝΣΗ-ΚΕΙΜΕΝΟΥ: με το εικονίδιο κάνουμε το κείμενο οριζόντιο ή κάθετο.
- ΣΥΓΧΩΝΕΥΣΗ - ΔΙΑΙΡΕΣΗ ΚΕΛΙΩΝ: συνεχόμενα κελιά μπορούμε να τα ενώσουμε ή ένα να το διαιρέσουμε.
- ΕΙΣΑΓΩΓΗ ΝΕΑΣ ΓΡΑΜΜΗΣ-ΣΤΗΛΗΣ: επιλογή /Πίνακας /Εισαγωγή.
- ΔΙΑΓΡΑΦΗ: γραμμών ή στηλών με εικονίδιο αποκοπής, κειμένου με πλήκτρο Delete. (πρώτα επιλογή) - ΧΡΩΜΑ: μπορούμε να γεμίσουμε τα κελιά με χρώμα και να αλλάξουμε τα χρώματα στα περιγράμματά τους .
- ΠΕΡΙΓΡΑΜΜΑΤΑ: επιλογή κελιών /εικονίδιο στυλ γραμμής /εικονίδιο περίγραμμα - ΤΑΞΙΝΟΜΗΣΗ: μπορούμε να ταξινομήσουμε τα περιεχόμενα ανά στήλη. Πίνακας /Ταξινόμηση.
- ΠΛΕΓΜΑ: τα όρια κελιών. Δεν εκτυπώνονται. Τα περιγράμματα εκτυπώνονται. Πίνακας /Απόκρυψη γρ. πλέγματος.
11) ΠΕΡΙΓΡΑΜΜΑΤΑ: σε λέξεις, παραγράφους, κελιά, εικόνες. επιλογή ή Μορφή /Περιγράμματα και σκίαση.
12) ΣΤΗΛΕΣ: επιλογή . Όταν γεμίζει η μία στήλη τότε συνεχίζουμε στην άλλη στήλη στην ίδια σελλίδα.

7. ΕΚΤΥΠΩΣΗ ΤΟΥ ΚΕΙΜΕΝΟΥ:
1) ΔΙΑΜΟΡΦΩΣΗ ΣΕΛΙΔΑΣ (ορισμός χαρτιού, προσανατολισμός, περιθώρια...): Αρχείο /Διαμόρφωση-σελίδας
2) ΠΡΟΕΠΙΣΚΟΠΙΣΗ-ΕΚΤΥΠΩΣΗΣ: Μη σπαταλάτε χαρτί, δέστε πώς θα είναι πριν. Αρχείο /Προεπισκόπιση.
3) ΕΚΤΥΠΩΣΗ: Αρχείο /Εκτύπωση ή πατάμε το εικονίδιο της εκτύπωσης και δηλώνουμε τις σελίδες που θα εκτυπώσουμε, αριθμό αντιγράφων, προσανατολισμό οριζόντιο|κατακόρυφο, ποιότητα εκτύπωσης.

ΩΡΕΣ ΠΡΟΤΕΙΝΟΜΕΝΕΣ:
1. Εξοικείωση µε το περιβάλλον εργασίας [1 ώρα]
2. Επιλογή, .ιόρθωση, Επεξεργασία [1 ώρα]
3. Μορφοποίηση γραµµατοσειρών και παραγράφων [1 ώρα]

4. .ιαµόρφωση σελίδας – Προεπισκόπηση – Εκτύπωση [2 ώρες]
5. Εισαγωγή και διαχείριση αντικειµένων [2 ώρες]

6. Πίνακες, περιγράµµατα και σκίαση [2 ώρες]

ΔΙΑΦΑΝΕΙΕΣ:
TPE21.ppt
TPE22.ppt
TPE23.ppt
TPE24.ppt
TPE25.ppt  Εισαγωγή αντικειμένων.
TPE26.ppt  Πίνακες

ΥΠΟΛΟΓΙΣΤΙΚΑ ΦΥΛΛΑ - MICROSOFT EXCEL (9 ώρες)

1. ΟΡΙΣΜΟΣ:
Τα λογιστικά φύλλα είναι προγράμματα με τα οποία κάνουμε υπολογισμούς. Στην ουσία είναι ένας μεγάλος πίνακας με γραμμές και στήλες.
ΚΕΛΙ λέγεται κάθε κουτί του πίνακα, και ΔΙΕΥΘΥΝΣΗ κελιού είναι ο μοναδικός συνδυασμός στήλης και γραμμής.
Περιοχή επεξεργασίας λέγεται η λωρίδα στην οποία γράφουμε.
Το φύλλο εργασίας που θα χρησιμοποιήσαμε είναι το MICROSOFT WORKS.
Βασική ιδιότητα του προγράμματος είναι ότι όταν αλλάξουμε έναν αριθμό σε ένα κελί, τότε το πρόγραμμα αυτόματα ξαναυπολογίζει όλες τις πράξεις που περιέχουν αυτό το κελί.

2. ΤΙ ΒΑΖΟΥΜΕ ΣΤΑ ΚΕΛΙΑ:
α) ΕΤΙΚΕΤΕΣ: Λέξεις που επεξηγούν τα δεδομένα μας.
β) ΤΙΜΕΣ: Οτι δεν είναι ετικέτες, δηλαδή οι αριθμοί και οι σχέσεις με τις οποίες κάνουμε υπολογισμούς.

3. ΤΑ ΕΙΔΗ ΤΩΝ ΤΙΜΩΝ.
α) ΑΡΙΘΜΟΙ: 3, 45, κλπ
β) ΤΥΠΟΙ πχ =c1+c5. Είναι οι σχέσεις που κάνουν τις πράξεις.
γ) ΣΥΝΑΡΤΗΣΕΙΣ πχ avg(c3:c10). Είναι έτοιμοι τύποι που έχει το πρόγραμμα.

4. ΠΩΣ ΔΙΟΡΘΩΝΟΥΜΕ ΤΑ ΠΕΡΙΕΧΟΜΕΝΑ ΕΝΟΣ ΚΕΛΙΟΥ;
α) ΟΛΙΚΗ ΑΝΤΙΚΑΤΑΣΤΑΣΗ: Επιλέγουμε το κελί, γράφουμε την καινούργια πληροφορία και πατάμε εντερ.
β) ΜΕΡΙΚΗ ΑΝΤΙΚΑΤΑΣΤΑΣΗ: Επιλέγουμε το κελί, κάνουμε κλίκ στην περιοχή επεξεργασίας, σβήνουμε το μέρος που δέν θέλουμε, συμπληρώνουμε το καινούργιο και πατάμε εντερ.

5. ΤΙ ΕΙΝΑΙ ΠΕΡΙΟΧΗ ΚΑΙ ΠΩΣ ΤΗ ΔΗΛΩΝΟΥΜΕ;
Περιοχή είναι μια σειρά κελιών.
Τη δηλώνουμε με το πρώτο κελί, : για να δηλώσουμε το μέχρι και το τελευταίο κελί.

6. ΠΩΣ ΠΡΟΣΘΕΤΟΥΜΕ ΚΑΙΝΟΥΡΓΙΑ ΚΕΝΗ ΓΡΑΜΜΗ;
α) επιλέγουμε τη γραμμή πρίν από την οποία θέλουμε να προσθέσουμε γραμμή.
β) edit / insert row.

7. ΣΥΝΑΡΤΗΣΕΙΣ:
α) sum πχ sum(c3:c10) υπολογίζει το άθροισμα περιοχής.
β) count πχ count(c3:c10) μετρά τα κελιά περιοχής.
γ) avg πχ avg(c3:c10) βρίσκει το μέσο όρο περιοχής.
δ) round πχ round(c3;0) στρογγυλοποιεί τον αριθμό κελιού.

8. ΓΡΑΦΗΜΑΤΑ|ΔΙΑΓΡΑΜΜΑΤΑ:
Διαγράμματα είναι γραφικές παραστάσεις (ζωγραφιές) των αριθμών ενός λογιστικού-φύλλου με τα οποία συγκρίνουμε καλλίτερα τους αριθμούς. Για να φτιάξουμε ένα διάγραμμα:
α) επιλέγουμε τους αριθμούς
β) πατάμε το εικονίδιο με το διάγραμμα.

Το Κεφάλαιο 3 χωρίζεται σε έξι (6) ενότητες και προτείνεται να διδαχθεί σε δώδεκα (12) ώρες:
1. Εξοικείωση µε το περιβάλλον εργασίας µιας εφαρµογής υπολογιστικού φύλλου  [2 ώρες]
2. Μορφοποίηση περιεχοµένου και εµφάνισης κελιών, γραµµών στηλών    [2 ώρες]
3. Αντιγραφή - Μετακίνηση περιεχοµένου κελιών          [1 ώρα]
4. Δηµιουργία γραφηµάτων                [2 ώρες]
5. Τύποι και Συναρτήσεις                [3 ώρες]
6. Διαµόρφωση φύλλου εργασίας.Προεπισκόπηση– Εκτύπωση        [2 ώρες]

ΒΙΒΛΙΟ - Βασικές Δεξιότητες στις Τεχνολογίες της Πληρ. και της Επικοινωνίας

name::
* McsElln.ΒΙΒΛΙΟ - Βασικές Δεξιότητες στις Τεχνολογίες της Πληρ. και της Επικοινωνίας@cptIt,

ΣΠΥΡΙΔΩΝΝ Χ. ΠΑΠΑΔΑΚΗΣ & ΝΙΚΟΛΑΟΣ Θ. ΧΑΤΖΗΠΕΡΗΣ, ΑΘΗΝΑ 2001

ΠΕΡΙΕΧΟΜΕΝΑ:
Εισαγωγή ..........................................................................................vi

1. Εισαγωγικές έννοιες πληροφορικής. Χρήση Η/Υ και γραφικά περιβάλλοντα επικοινωνίας .......................................... 1 1.1 .εδοµένα και Πληροφορίες - Αποθήκευση της πληροφορίας....................................3 / ι ι - ι -
1.2 Υλικό υπολογιστή. Οι βασικές µονάδες του Η Υ. Περιφερειακές συσκευές: Μονάδες εισόδου, εξόδου, µονάδες βοηθητικής µνήµης ........................................11
1.3 Εξοικείωση µε τον Υπολογιστή κα το Γραφικό Περιβάλλον Εργασίας .....................29
1.4 .ιαχείριση µονάδων εξόδου και αποθήκευσης.......................................................51
1.5 .ιαχείριση καταλόγων και αρχείων. Συµπίεση και αποσυµπίεση αρχείων.................69
1.6 Το λογισµικό κα οι βασικές κατηγορίες λογισµικού ...............................................89

2. Επεξεργασία Κειµένου ............................................................ 107
2.1 Εξοικείωση µε το περιβάλλον εργασίας............................................................... 109
2.2 Επιλογή – .ιόρθωση - Αναζήτηση...................................................................... 129
2.3 Μορφοποίηση γραµµατοσειρών και παραγράφων ............................................... 147
2.4 .ιαµόρφωση σελίδας. Προεπισκόπηση- Εκτύπωση.............................................. 165
2.5 Εισαγωγή αντικειµένων..................................................................................... 181
2.6 Πίνακες, περιγράµµατα και σκίαση ..................................................................... 197

3. Υπολογιστικά φύλλα ............................................................... 223
3.1 Εξοικείωση µε το περιβάλλον εργασίας µιας εφαρµογής υπολογιστικού φύλλου............................................................................................................225
3.2 Μορφοποίηση περιεχοµένου και εµφάνισης κελιών, γραµµών στηλών ................ 243
3.3 Αντιγραφή Μετακίνηση περιεχοµένου κελιών ....................................................259
3.4 .ηµιουργία γραφηµάτων ................................................................................. 271
3.5 Τύποι κα Συναρτήσεις ...................................................................................... 291
3.6 .ιαµόρφωση φύλλου εργασίας. Προεπισκόπηση – Εκτύπωση .............................. 313

4. .ιαχείριση πληροφοριών και επικοινωνίες ............................. 331
4.1 .ίκτυα Υπολογιστών, το .ιαδίκτυο Χρήση προγραµµάτων φυλλοµε τρητή, ............................................................................................................333
4.2 Πρόσβαση σε δικτυακό τόπο – Αξιοποίηση της δοµής υπερµέσων του Παγκόσµιου Ιστού ............................................................................................ 351
4.3 Πλοήγηση – Ανάκτηση και διαχείριση πληροφοριών............................................ 365
4.4 Μηχανές Αναζήτησης ........................................................................................ 381
4.5 Ηλεκτρονικό ταχυδροµείο ................................................................................ 401
4.6 Επικοινωνία πραγµατικού χρόνου ...................................................................... 423

5. Παρουσιάσεις .......................................................................... 445
5.1 .ηµιουργία διαφανειών, προβολή παρουσιάσεων................................................ 447

6. Πρακτική εξάσκηση ................................................................ 475
6.1 Οι εφαρµογές των ΤΠΕ στην εκπαίδευση ........................................................... 477
6.2 Παραδείγµατα των ΤΠΕ από έναν εκπαιδευτικό .................................................. 495

μγ02'ΕΙΣΑΓΩΓΗ-ΣΤΗΝ-ΠΛΗΡΟΦΟΡΙΚΗ

name::
* McsElln.μγ02'ΕΙΣΑΓΩΓΗ-ΣΤΗΝ-ΠΛΗΡΟΦΟΡΙΚΗ@cptIt,

Η τελευταία έκδοση είναι σε word.

Η εισαγωγή περιλαμβάνει τις γνώσεις που είναι ΑΠΑΡΑΙΤΗΤΕΣ για να μπορέσουμε να δουλέψουμε με ένα κομπιούτερ, και που πρέπει πάντα να ξέρουμε, δηλαδή:
α) Τι είναι - τι κάνει ένα κομπιούτερ (και άν μου χρειάζεται να πάω να το αγοράσω).
β) Γνώσεις Αγοράς (πότε να το αγοράσω, Βασικές συσκευές).
γ) Γνώσεις Χρήσης (Λειτουργικό Σύστημα).

1. ΒΑΣΙΚΕΣ ΔΟΥΛΕΙΕΣ (ΕΦΑΡΜΟΓΕΣ) ΠΟΥ ΚΑΝΟΥΜΕ ΜΕ ΤΑ ΚΟΜΠΙΟΥΤΕΡ

Ο ΥΠΟΛΟΓΙΣΤΗΣ (κομπιούτερ, υπολογιστικό-σύστημα) είναι ένα μηχάνημα που επεξεργάζεται ΠΛΗΡΟΦΟΡΙΕΣ (δηλ. κείμενα, εικόνες και ήχους).

Η πληροφορία καταχωρείται μέσα στο κομπιούτερ ΨΗΦΙΟΠΟΙΗΜΕΝΗ. Δηλαδή έχει ΜΕΤΑΤΡΑΠΕΙ σε 2 καταστάσεις, και σχηματικά λέμε ότι έχει μετατραπεί σε 0 και 1. BIT ονομάζουμε το 0 και 1 που μετατρέπεται η πληροφορία. BYTE ονομάζουμε κάθε ομάδα των 8 bit. Το Byte (B) και τα πολλαπλάσιά του KB (kilobyte=1.000B), MB (megabyte=1.000.000B ), GB (gigabyte = 1 δις B) τα χρησιμοποιούμε να μετράμε την ποσότητα της πληροφορίας που έχουμε.

Οι βασικές ΔΟΥΛΕΙΕΣ που κάνουμε με το κομπιούτερ είναι:
1. Παίζουμε - Ψυχαγωγούμαστε.
2. Γράφουμε.
3. Επικοινωνούμε.
4. Ζωγραφίζουμε.
5. Υπολογίζουμε.
6. Καταχωρούμε πληροφορίες από καρτέλες ή πίνακες.
7. Μαθαίνουμε και εκπαιδευόμαστε.

Ξέρουμε κομπιούτερ, άν ξέρουμε να κάνουμε τις παραπάνω δουλειές.

2. ΓΝΩΣΕΙΣ ΑΓΟΡΑΣ

Πότε αγοράζω υπολογιστή:
Τα κομπιούτερ είναι μηχανήματα που εξελίσσονται πάρα πολύ γρήγορα και έτσι χάνουν γρήγορα την αξία τους, εμφανώς σε ένα εξάμηνο!!! Γι' αυτό αγοράζουμε κομπιούτερ μόνο όταν μας είναι ΑΝΑΓΚΑΙΟ να δουλέψουμε με αυτό.

Τα μέρη του υπολογιστή ταξινομούνται σε δύο βασικές ομάδες: hardware και software.
- HARDWARE (ΥΛΙΚΟ) ονομάζουν τις συσκευές του κομπιούτερ.
- SOFTWARE (ΛΟΓΙΣΜΙΚΟ) ονομάζουν ότι ΔΕΝ είναι hardware, δηλαδή τις ΠΛΗΡΟΦΟΡΙΕΣ που επεξεργάζεται και παράγει και τις οδηγίες επεξεργασίας.

Οι βασικές συσκευές (hardware) είναι:
1. Ο ΕΠΕΞΕΡΓΑΣΤΗΣ (ΚΜΕ): Είναι η συσκευή που επεξεργάζεται τις πληροφορίες, ο 'κινητήρας' του υπολογιστή.
2. ΟΙ ΑΠΟΘΗΚΕΣ (ΔΕΥΤΕΡΕΟΥΣΑ ΜΝΗΜΗ): Στις αποθήκες ο υπολογιστής κρατάει τις πληροφορίες του είτε είναι κλειστός είτε είναι ανοικτός. Παραδείγματα αποθηκών είναι ο σκληρός-δίσκος, οι δισκέτες, το CD-ROM, το DVD.
3. Η ΜΝΗΜΗ RAM (ΠΡΟΣΩΡΙΝΗ|ΚΥΡΙΑ ΜΝΗΜΗ): Είναι η συσκευή όπου ο υπολογιστής βάζει ΜΟΝΟ τα προγράμματα (οδηγίες) που εκτελεί κάθε φορά και τις επεξεργαζόμενες πληροφορίες από αυτά. Ο λόγος ύπαρξης της RAM είναι ότι από εκεί (σε σχέση με τις αποθήκες) τα προγράμματα εκτελούνται πιο γρήγορα. Ομως κάθε χρήστης πρέπει να ξέρει ότι άν κλείσει ο υπολογιστής τα περιεχόμενα της RAM σβήνουν, και γιαυτό πρέπει να 'σώζουμε' τη δουλειά μας, δηλαδή να τη στέλνουμε στις αποθήκες.
4. Η ΟΘΟΝΗ: Είναι απο τις συσκευές που ΔΕΝ χάνουν γρήγορα την αξία τους και γιᾳυτό αξίζει να δίνουμε λεφτά γιαυτές. Αν καθόμαστε πολύ ώρα στον υπολογιστή πρέπει να πάρουμε ακριβή που έχει και καλύτερες προδιαγραφές υγείας. Σήμερα δε έχουν γίνει προσιτές οι λεπτές (TFT) που εκπέμπουν μηδαμινή ακτινοβολία σε σχέση με τις ογκώδεις.

Γενική συμβουλή αγοράς: Αγοράστε ακριβές οθόνες, όχι όμως ακριβό κομπιούτερ.

3. ΓΝΩΣΕΙΣ ΧΡΗΣΗΣ

ΑΡΧΕΙΑ (files) ονομάζουν τις ΠΛΗΡΟΦΟΡΙΕΣ στις αποθήκες με ΟΝΟΜΑ.
ΦΑΚΕΛΟΙ είναι κομμάτια αποθηκών.
Παλιά (πριν το 1995) τα ΟΝΟΜΑΤΑ των αρχείων αποτελούνταν απο δύο μέρη που ενώνονταν με τελεία. Το πρώτο μέρος είχε το πολύ 8 σύμβολα και το δεύτερο, που λέγονταν ΕΠΕΚΤΑΣΗ/extension, είχε το πολύ 3 σύμβολα. Τα σύμβολα ήταν αγγλικά και όχι κόμματα, κενά κλπ.
Μετά το 1995 μπορούμε να τους δώσουμε ότι ονόματα θέλουμε μέχρι 255 σύμβολα και με ελληνικά γράμματα.

Τα αρχεία χωρίζονται σε 2 ομάδες: προγράμματα και δεδομένα.
ΠΡΟΓΡΑΜΑΤΑ (programms) ονομάζουν τα αρχεία που περιέχει οδηγίες (ΕΝΤΟΛΕΣ) για να κάνουμε μια δουλειά. Οι βασικές "επεκτάσεις" που έχουν αυτά τα αρχεία είναι .exe, .bat, .com, .sys, κλπ.
ΔΕΔΟΜΕΝΑ (data) ονομάζουν τα αρχεία που ΔΕΝ περιέχουν οδηγίες, πχ ένα κείμενο, μία εικόνα, μουσική κλπ. Οι βασικές επεκτάσεις που έχουν αυτά τα αρχεία είναι .doc, .xls, .txt, .html, .bmp, .jpg, .mp3, κλπ.

ΕΙΔΗ ΠΡΟΓΡΑΜΜΑΤΩΝ:
Τα προγράματα χωρίζονται σε 2 βασικές ομάδες: προγράματα συστήματος και προγράματα εφαρμογών.

ΠΡΟΓΡΑΜΑΤΑ ΣΥΣΤΗΜΑΤΟΣ (λογισμικό συστήματος) ονομάζουν τα προγράματα με τη βοήθεια των οποίων λειτουργεί ο υπολογιστής. Το βασικότερο απο αυτά είναι το ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ.

ΠΡΟΓΡΑΜΜΑΤΑ ΕΦΑΡΜΟΓΩΝ (λογισμικό εφαρμογών) ονομάζουν τα προγράματα με τα οποία κάνουμε μια δουλειά απο τη πραγματική ζωή. Τα βασικά είναι:
1) games/παιγνίδια = παίζουμε παιγνίδια.
2) word processors/επεξεργαστές κειμένου = γράφουμε κείμενα.
3) προγράμματα επικοινωνίας = επικοινωνούμε
4) graphics/γραφικά = ζωγραφίζουμε.
5) spreadsheets/Υπολογιστικά Φύλλα = υπολογίζουμε.
6) databases/Βάσεις Δεδομένων = καταχωρούμε πληροφορίες από καρτέλες ή πίνακες.
7) εκπαιδευτικά προγράμματα = μαθαίνουμε και εκπαιδευόμαστε.

ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ:
ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ (ΛΣ) είναι το βασικότερο απο τα ΠΡΟΓΡΑΜΜΑΤΑ-ΣΥΣΤΗΜΑΤΟΣ και μας βοηθάει στη διαχείριση του υπολογιστή. Εκτελείται με το άνοιγμα του υπολογιστή και χωρίς αυτό δεν ΛΕΙΤΟΥΡΓΕΙ το κομπιούτερ.
Το πιό γνωστό λειτουργικό σύστημα είναι τα WINDOWS (XP/2000/me/98/95/3.1). Άλλα είναι το DOS (παλιό), το LINUX, το UNIX, το MAC. Στα πρώτα ΛΣ ο χρήστης έγραφε οδηγίες (εντολές) για να κάνει κάτι, ενώ σήμερα με τη χρήση του ποντικιού δείχνει τι θέλει να κάνει και δεν είναι ανάγκη να θυμάται εντολές. Τα σημερινά λέγονται "γραφικά περιβάλλοντα εργασίας" (επειδή η επικοινωνία γίνεται μέσω γραφικών-εικόνων) ενώ τα παλιά "χαρακτήρων".

Τα βασικότερα πράγματα που πρέπει να μάθουμε να κάνουμε με κάθε λειτουργικό σύστημα είναι:
1) να ΑΝΟΙΓΟΥΜΕ και να ΚΛΕΙΝΟΥΜΕ τον υπολογιστή.
2) να χειριζόμαστε την ΕΠΙΦΑΝΕΙΑ-ΕΡΓΑΣΙΑΣ (γραμμή-εργασιών, κουμπί έναρξη, εικονίδια), το ΠΟΝΤΙΚΙ (κατάδειξη, κλικ, διπλό κλικ, σύρσιμο, δεξί κλικ) και τα ΠΑΡΑΘΥΡΑ (κουμπί-ελέγχου, ελαχιστοποίηση-μεγιστοποίηση-κλείσιμο, γραμμή-τίτλου, γραμμή-μενού/εντολών, γραμμή-εργαλείων, αλλαγή μεγέθους/θέσης, ενεργοποίηση).
3) να ΕΚΤΕΛΟΥΜΕ ΠΡΟΓΡΑΜΜΑΤΑ: Στα Windows έναρξη/προγράμματα/πρόγραμμαΧ.
4) να ΔΙΑΧΕΙΡΙΖΟΜΑΣΤΕ ΑΡΧΕΙΑ & ΦΑΚΕΛΟΥΣ: δηλαδή να ξέρουμε να πηγαίνουμε στις διάφορες αποθήκες, να πηγαίνουμε στους διάφορους ΦΑΚΕΛΟΥΣ/καταλόγους (κομμάτια αποθηκών), και να να δημιουργούμε/σβήνουμε φακέλους. Να βλέπουμε τα αρχεία φακέλων, να αντιγράφουμε ή να μεταφέρουμε αρχεία από κατάλογο σε κατάλογο, να σβήνουμε αρχεία, να αλλάζουμε όνομα σε αρχεία κλπ. Να κάνουμε αναζήτηση αρχείων και φακέλων, συμπίεση και αποσυμπίεση αρχείων. Στα Windows χρηριμοποιούμε το πρόγραμμα εξερευνητής-των-windows.
5) να αλλάζουμε τις ΠΑΡΑΜΕΤΡΟΥΣ/ρυθμίσεις του μηχανήματος. Ποτέ οι αρχάριοι.
- Πίνακας-ελέγχου,
- Ταξινόμηση των εγκαταστημένων προγραμμάτων.
- διαχείριση εκτυπωτών.
- προσθαφαίρεση προγραμμάτων.
- προστασία από ιούς.
6) να χρησιμοποιούμε τη ΒΟΗΘΕΙΑ του Λειτουργικού και των προγραμμάτων.

Νίκος Κασσελούρης (http://users.otenet.gr/~nikkas) 2005-09-18

ΜΕΧΡΙ 2002

Οι ΠΡΩΤΕΣ ΕΡΩΤΗΣΕΙΣ-ΑΠΑΝΤΗΣΕΙΣ:
1) Τι πρέπει να ξέρω (πριν) για να πάω να αγοράσω κομπιούτερ.
2) Πότε να πάω να αγοράσω (για να έχω απόσβεση της επένδυσής μου).
3) Τι πρέπει να ξέρω όταν αγοράζω;
4) Τι πρέπει να ξέρω για να δουλέψω;

1. ΒΑΣΙΚΕΣ ΔΟΥΛΕΙΕΣ ΠΟΥ ΚΑΝΟΥΜΕ ΜΕ ΤΑ ΚΟΜΠΙΟΥΤΕΡ

Ο υπολογιστής (κομπιούτερ) είναι ένα μηχάνημα που επεξεργάζεται πληροφορίες (δηλ. κείμενα, εικόνες, ήχο).

Οι βασικές δουλειές που κάνουμε με το κομπιούτερ είναι:
1. Παίζουμε - Ψυχαγωγούμαστε.
2. Γράφουμε κείμενα.
3. Ζωγραφίζουμε.
4. Υπολογίζουμε.
5. Επικοινωνούμε.
6. Καταχωρούμε πληροφορίες (από πίνακες/καρτέλες).
7. Μαθαίνουμε και εκπαιδευόμαστε.

2. ΤΑ ΜΕΡΗ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ

Τα μέρη του υπολογιστή ταξινομούνται σε δύο βασικές ομάδες: hardware και software.

HARDWARE (ΥΛΙΚΟ) ονομάζουν τα μηχανικά μέρη (συσκευές) του κομπιούτερ.

SOFTWARE (ΛΟΓΙΣΜΙΚΟ) ονομάζουν ότι ΔΕΝ είναι hardware, τις πληροφορίες που επεξεργάζεται και παράγει και τις οδηγίες επεξεργασίας.

3. ΒΑΣΙΚΑ HARDWARE ΜΕΡΗ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ

1. ΕΠΕΞΕΡΓΑΣΤΗΣ (ΚΜΕ):
Είναι η συσκευή που επεξεργάζεται τις πληροφορίες, ο 'κινητήρας' του υπολογιστή.

2. ΑΠΟΘΗΚΕΣ (ΔΕΥΤΕΡΕΥΟΥΣΑ ΜΝΗΜΗ):
Στις αποθήκες ο υπολογιστής διατηρεί ΟΛΕΣ τις πληροφορίες του είτε είναι κλειστός είτε είναι ανοικτός. Παραδείγματα αποθηκών είναι ο σκληρός-δίσκος, οι δισκέτες, το CD-ROM, το DVD.

3. ΜΝΗΜΗ RAM (ΚΥΡΙΑ ΜΝΗΜΗ):
Είναι η συσκευή όπου ο υπολογιστής βάζει ΜΟΝΟ τα προγράμματα (οδηγίες) που εκτελεί κάθε φορά και τις επεξεργαζόμενες πληροφορίες από αυτά. Ο λόγος ύπαρξης της RAM είναι ότι από εκεί (σε σχέση με τις αποθήκες) τα προγράμματα εκτελούνται πιο γρήγορα. Ομως κάθε χρήστης κομπιούτερ πρέπει να ξέρει ότι άν κλείσει ο υπολογιστής τα περιεχόμενα της RAM σβήνουν, και γιαυτό πρέπει να 'σώζουμε' τη δουλειά μας, δηλαδή να τη στέλνουμε στις αποθήκες.

4. ΒΑΣΙΚΑ SOFTWARE ΜΕΡΗ (ΑΡΧΕΙΑ)

ΑΡΧΕΙΑ(files) ονομάζουν οργανωμένες ομάδες πληροφοριών με συγκεκριμένο όνομα.
TA ΟΝΟΜΑΤΑ των αρχείων αποτελούνται απο δύο μέρη που ενώνονται με τελεία. Το πρώτο μέρος έχει το πολύ 8 σύμβολα και το δεύτερο, που λέγεται επέκταση/extension, εχει το πολύ 3 σύμβολα. Τα σύμβολα είναι αγγλικά και όχι κόμματα, κενά κλπ.
Προσοχή: Μετά το 1995 μπορούμε να δώσουμε ότι ονόματα θέλουμε και ελληνικά σύμβολα.

Τα αρχεία χωρίζονται σε 2 ομάδες: προγράμματα και δεδομένα.
ΠΡΟΓΡΑΜΑΤΑ (programms) ονομάζουν τα αρχεία που περιέχει οδηγίες(ΕΝΤΟΛΕΣ) για να κάνουμε μια δουλειά.
ΔΕΔΟΜΕΝΑ (data) ονομάζουν τα αρχεία που ΔΕΝ περιέχουν οδηγίες, πχ ένα κείμενο, μία εικόνα κλπ.

5. ΕΙΔΗ ΠΡΟΓΡΑΜΜΑΤΩΝ

Τα προγράματα χωρίζονται σε 2 βασικές ομάδες: προγράματα συστηματος και προγράματα εφαρμογών.

ΠΡΟΓΡΑΜΑΤΑ ΣΥΣΤΗΜΑΤΟΣ (λογισμικό συστήματος) ονομάζουν τα προγράματα που μας βοηθούν στη διαχείριση του υπολογιστή. Το βασικότερο απο αυτά είναι το ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ.

ΠΡΟΓΡΑΜΜΑΤΑ ΕΦΑΡΜΟΓΩΝ (λογισμικό εφαρμογών) ονομάζουν τα προγράματα με τα οποία κάνουμε μια δουλεια απο τη πραγματική ζωή. Τα βασικά είναι:
1) games/παιγνίδια = παίζουμε παιγνίδια.
2) word processors/επεξεργαστές κειμένου = γράφουμε κείμενα.
3) graphics = ζωγραφίζουμε.
4) spreadsheets/Υπολογιστικά Φύλλα = υπολογίζουμε.
5) προγράμματα επικοινωνίας = επικοινωνούμε
6) databases/Βάσεις Δεδομένων = καταχωρούμε πληροφορίες.
7) εκπαιδευτικά προγράμματα = μαθαίνουμε και εκπαιδευόμαστε.

6. ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ

ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ είναι το βασικότερο απο τα ΠΡΟΓΡΑΜΜΑΤΑ-ΣΥΣΤΗΜΑΤΟΣ και μας βοηθάει στη διαχείριση του υπολογιστή. Εκτελείται με το άνοιγμα του υπολογιστή και χωρίς αυτό δεν δουλεύει το κομπιούτερ. Το πιό γνωστό λειτουργικό σύστημα είναι τα WINDOWS (3.1/95/98/2000). Άλλα είναι το DOS (παλιό), το LINUX, το UNIX, το MAC, το OS/2.

Τα βασικότερα πράγματα που πρέπει να μάθουμε να κάνουμε με κάθε λειτουργικό σύστημα είναι:
1) να ΕΚΤΕΛΟΥΜΕ ΠΡΟΓΡΑΜΜΑΤΑ: Στα Win3.1 διαλέγουμε το γκρούπ που έχει μέσα το πρόγραμμα και κάνουμε διπλό κλίκ στο εικονίδιο του προγράμματος. Στα Win9x έναρξη/προγράμματα/πρόγραμμαΧ.
2) να ΔΙΑΧΕΙΡΙΖΟΜΑΣΤΕ ΑΠΟΘΗΚΕΣ: δηλαδή να ξέρουμε να πηγαίνουμε στις διάφορες αποθήκες, να πηγαίνουμε στους διάφορους καταλόγους/φακέλους (κομμάτια αποθηκών), και να να δημιουργούμε/σβήνουμε καταλόγους. Στα Win3.1 με το πρόγραμμα διαχειριστής-αρχείων, στα Win9x με τον εξερευνητή-των-windows.
3) να ΔΙΑΧΕΙΡΙΖΟΜΑΣΤΕ ΑΡΧΕΙΑ: δηλαδή να βλέπουμε τα αρχεία φακέλων, να αντιγράφουμε ή να μεταφέρουμε αρχεία από κατάλογο σε κατάλογο, να σβήνουμε αρχεία, να αλλάζουμε όνομα σε αρχεία κλπ. Στα windows αυτό γίνεται με το ίδιο πρόγραμμα που κάνουμε διαχείριση αποθηκών.

ΠΩΣ ΕΚΤΕΛΟΥΜΕ ΠΡΟΓΡΑΜΜΑΤΑ

Εκτέλεση = Τρέξιμο = Φόρτωμα Προγράμματος
ονομάζουν τη διαδικασία με την οποία βάζουμε σε λειτουργία ένα πρόγραμμα.

ΣΤΟ DOS:
α) Πάμε στον κατάλογο που βρίσκεται το πρόγραμμα
β) γράφουμε το πρώτο μέρος του ονόματος του αρχείου και πατάμε 'enter'.

ΣΤΑ WINDOWS3.1:
Κάνουμε διπλο κλικ με το ποντίκι πάνω στο εικονίδιο του προγράμματος.

ΣΤΑ WINDOWS95:
START\PROGRAMS\...

ΔΙΑΧΕΙΡΙΣΗ ΑΠΟΘΗΚΩΝ

Στις αποθήκες δίνουμε για ονόματα τα γράμματα του αγγλικού αλφάβητου A, B, C, D, ...

ΚΑΤΑΛΟΓΟ/ΦΑΚΕΛΟ/DIRECTORY/FOLDER ονομάζουν καθε ΧΩΡΟ που προκύπτει απο το χωρισμο μιας αποθήκης. Στους καταλόγους δίνουμε ονόματα όπως και στα αρχεία.

Βασικές δουλειές στη διαχείριση αποθηκών είναι:
1. Να πηγαίνουμε από τη μία αποθήκη στην άλλη:
DOS : F:
WIN31: στον file-manager κλίκ στο εικονίδιο της αποθήκης
WIN95: στον explorer κλίκ στο εικονίδιο της αποθήκης.

2. Να πηγαίνουμε στον επόμενο κατάλογο:
DOS : CD
WIN31: στον file-manager κλίκ στον κατάλογο
WIN95: στον explorer κλίκ στον κατάλογο

3. Να πηγαίνουμε στον προηγούμενο κατάλογο:
DOS : CD..
WIN31: στον file-manager κλικ στον κατάλογο
WIN95: στον explorer κλικ στον κατάλογο

4. Να δημιουργούμε κατάλογο:
DOS : MD
WIN31: στον file-manager FILE/CREATE DIRECTORY
WIN95: στον explorer FILE/NEW/FOLDER

5. Να σβήνουμε κατάλογο:
DOS : RD
WIN31: στον file-manager DEL
WIN95: στον explorer DEL ή εικονίδιο που διαγράφει.

6. Να προετοιμάζουμε μία αποθήκη για να γράψουμε αρχεία:
DOS : FORMAT
WIN31: στον file-manager DISK/FORMAT DISK
WIN95: στον explorer δεξί κλικ στην αποθήκη και FORMAT

ΔΙΑΧΕΙΡΙΣΗ ΑΡΧΕΙΩΝ

Οι βασικές δουλειές στη διαχείριση αρχείων είναι:
1. Να βλέπουμε τα αρχεία ενός καταλόγου:
DOS : DIR
WIN31: στον file-manager κλίκ στον κατάλογο που θέλουμε
WIN95: στον explorer κλίκ στον κατάλογο που θέλουμε

2. Να αντιγράφουμε αρχεία από κατάλογο σε κατάλογο:
DOS : COPY
WIN31: στον file-manager σέρνουμε το αρχείο και πατάμε ctrl
WIN95: στον explorer με εικονίδια αντιγραφής

3. Να μεταφέρουμε αρχεία από κατάλογο σε κατάλογο:
DOS : MOVE
WIN31: στον file-manager σέρνουμε το αρχείο και πατάμε shift
WIN95: στον explorer με εικονίδια μεταφοράς

4. Να αντιγράψουμε ολόκληρη δισκέτα:
DOS : DISKCOPY
WIN31: στον file-manager DISK/COPY DISK
WIN95: στον explorer δεξί κλίκ στην αποθήκη δισκέτας και COPY DISK

5. Να αλλάξουμε όνομα σε αρχεία:
DOS : REN
WIN31: στον file-manager FILE/RENAME
WIN95: στον explorer δεξί κλικ στο αρχείο και RENAME

6. Να σβήσουμε αρχεία:
DOS : DEL
WIN31: στον file-manager με το πλήκτρο DEL
WIN95: στον explorer με το εικονίδιο διαγραφής

μγ02'ΥΛΗ-ΑΝΑ-ΘΕΜΑΤΑ

name::
* McsElln.μγ02'ΥΛΗ-ΑΝΑ-ΘΕΜΑΤΑ@cptIt,

1. ΒΑΣΙΚΕΣ ΔΟΥΛΕΙΕΣ ΠΟΥ ΚΑΝΟΥΜΕ ΜΕ ΤΑ ΚΟΜΠΙΟΥΤΕΡ

1. ΠΑΙΖΟΥΜΕ ΠΑΙΓΝΙΔΙΑ.

2. ΓΡΑΦΟΥΜΕ ΚΕΙΜΕΝΑ (ΓΡΑΦΟΜΗΧΑΝΗ)

3. ΚΑΝΟΥΜΕ ΥΠΟΛΟΓΙΣΜΟΥΣ.

4. ΚΑΤΑΧΩΡΟΥΜΕ ΠΛΗΡΟΦΟΡΙΕΣ.

5. ΖΩΓΡΑΦΙΖΟΥΜΕ.

6. ΕΠΙΚΟΙΝΩΝΟΝΟΥΜΕ.

2. ΤΑ ΜΕΡΗ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ

Τα μέρη του υπολογιστή ταξινομούνται σε δύο βασικά είδη.
α) τα μηχανικά μέρη (συσκευές) που λέγονται HARDWARE/ΥΛΙΚΟ.
β) οι πληροφορίες που επεξεργάζεται και παράγει που λέγονται SOFTWARE/ΛΟΓΙΣΜΙΚΟ.

ΥΛΗ ΒΙΒΛΙΟΥ: 1.1, 1.2, 1.3

3. ΒΑΣΙΚΑ HARDWARE ΜΕΡΗ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ

1. ΕΠΕΞΕΡΓΑΣΤΗΣ:
ΕΙΝΑΙ Η ΣΥΣΚΕΥΗ ΠΟΥ ΚΑΝΕΙ ΤΗΝ ΔΟΥΛΕΙΑ (επεξεργασία πληροφοριών).

2. ΜΝΗΜΗ RAM (ΚΥΡΙΑ ΜΝΗΜΗ):
Είναι ο χώρος που ο υπολογιστής βάζει τα προγράμματα που εκτελεί κάθε φορά. Τα περιεχόμενά της σβήνουν όταν κλείσουμε τον υπολογιστή.

3. ΑΠΟΘΗΚΕΣ (ΔΕΥΤΕΡΕΥΟΥΣΑ ΜΝΗΜΗ):
Εδώ οι πληροφορίες διατηρούνται όταν κλείσουμε τον υπολογιστη. (ΠΧ ΣΚΛΗΡΟΣ ΔΙΣΚΟΣ, ΔΙΣΚΕΤΕΣ)

4. ΟΘΟΝΗ

5. ΠΛΗΚΤΡΟΛΟΓΙΟ

6. ΜΝΗΜΗ ROM.
ΕΙΝΑΙ ΧΩΡΟΣ ΜΕ ΠΡΟΓΡΑΜΜΑΤΑ ΕΛΕΓΧΟΥ ΠΟΥ ΕΚΤΕΛΟΥΝΤΑΙ ΜΟΛΙΣ ΑΝΟΙΞΟΥΜΕ ΤΟΝ ΥΠΟΛΟΓΙΣΤΗ.

ΥΛΗ ΒΙΒΛΙΟΥ: 3.1

4. ΒΑΣΙΚΑ SOFTWARE ΜΕΡΗ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ

ΑΡΧΕΙΑ:
Κάθε πληροφορια που χρησιμοποιεί το κομπιουτερ φυλλάσεται στις αποθήκες σε ΟΡΓΑΝΩΝΟΜΕΝΕΣ ΟΜΑΔΕΣ, που λέγονται ΑΡΧΕΙΑ/FILES.

TA ΟΝΟΜΑΤΑ των αρχείων αποτελούνται απο δύο μέρη που ενώνονται με τελεία. Το πρώτο μέρος έχει το πολύ 8 σύμβολα και το δεύτερο που λέγεται επέκταση/extension εχει το πολύ 3 σύμβολα.

Τα αρχεία είναι 2 ειδών: Τα προγράμματα και τα δεδομένα.

ΑΡΧΕΙΑ ΔΕΔΟΜΕΝΩΝ:
ονομάζουν κάθε ΑΡΧΕΙΟ ΠΟΥ ΠΕΡΙΕΧΕΙ ΑΠΛΕΣ ΠΛΗΡΟΦΟΡΙΕΣ.

ΑΡΧΕΙΑ ΠΡΟΓΡΑΜΑΤΩΝ:
ονομάζουν κάθε ΑΡΧΕΙΟ που περιέχει οδηγίες/ΕΝΤΟΛΕΣ για να εκτελέσει μια δουλειά.

5. ΕΙΔΗ ΠΡΟΓΡΑΜΜΑΤΩΝ

Τα προγράματα χωρίζονται σε 2 βασικά ειδη:
α) προγράματα συστηματος και
β) προγράματα εφαρμογών.

ΠΡΟΓΡΑΜΑΤΑ ΣΥΣΤΗΜΑΤΟΣ ή λογισμικό συστηματος ή system software ονομάζουν τα προγράματα που μας βοηθουν στη διαχειριση του υπολογιστη. Το βασικότερο απο αυτά είναι το λειτουργικό σύστημα.

ΠΡΟΓΡΑΜΜΑΤΑ ΕΦΑΡΜΟΓΩΝ ή λογισμικό εφαρμογών ή application software ΟΝΟΜΑΖΟΥΝ τα προγράματα με τα οποία κάνουμε μια δουλεια απο τη πραγματική ζωή. Ετσι
1) games/παιγνίδια ονομάζουν τα προγράματα με τα οποία παίζουμε παιγνίδια.
2) word processors/επεξεργαστές κειμένου ονομάζουν τα προγράμματα με τα οποία γραφουμε κείμενα
3) spreadsheets/Λογιστικά Φύλλα
4) databases/Βάσεις Δεδομένων
5) graphics
6) communication programs

ΒΙΒΛΙΟ: 2.7

6. ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ

ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ:
Είναι το βασικότερο απο τα προγραμματα ΣΥΣΤΗΜΑΤΟΣ που μας βοηθαει στη διαχείριση του υπολογιστη. Εκτελείται με το άνοιγμα του υπολογιστη.

Θα μάθουμε να χειριζόμαστε 2 λειτουργικά συστήματα: το DOS και τα WINDOWS. Τις διάφορες εργασιες διαχειρισης στο DOS τις κάνουμε με ΕΝΤΟΛΕΣ που πρεπει να τις γράψουμε εμείς ενώ στα WINDOWS με τη βοήθεια του mouse διαλέγουμε πια εντολή θέλουμε να εκτελέσουμε απο ένα μενού εντολών.

Τα βασικότερα πράγματα που πρεπει να μάθουμε να κάνουμε με κάθε λειτουργικό σύστημα είναι:
1) να διαχειριζόμαστε τις αποθήκες
2) να διαχειριζόμαστε αρχεία και
3) να εκτελούμε ένα πρόγραμα.

ΔΙΑΧΕΙΡΙΣΗ ΑΠΟΘΗΚΩΝ:
Στις αποθήκες δίνουμε για ονοματα τα γράμματα του αγγλικού αλφάβητου A, B, C, D, ...

ΚΑΤΑΛΟΓΟ/DIRECTORY ονομάζουν καθε ΧΩΡΟ που προκύπτει απο το χωρισμο μιας αποθήκης. Στους καταλόγους δίνουμε ονόματα όπως και στα αρχεία.

ΕΝΤΟΛΕΣ ΤΟΥ DOS ΓΙΑ ΤΗ ΔΙΑΧΕΙΡΙΣΗ ΑΠΟΘΗΚΩΝ:
1. CD <name><-- = πηγαίνουμε στον καταλογο <name>
2. CD..<-- = ΠΗΓΑΙΝΕΙ ΣΤΟΝ ΠΡΟΗΓΟΥΜΕΝΟ ΚΑΤΑΛΟΓΟ
3. C:<-- = πηγαινει στην αποθήκη C.
4. MD <name><-- = δημιουργεί τον κατάλογο <name>
5. RD <name><-- = σβήνει τον κατάλογο <name>.
6. FORMAT A:<-- = διαμορφώνει την αποθήκη έτσι ώστε να είναι έτοιμη για τη φύλαξη αρχείων.

ΔΙΑΧΕΙΡΙΣΗ ΑΡΧΕΙΩΝ:
Με τη διαχείριση αρχείων εννοουμε να ξέρουμε να κάνουμε δουλειές με αρχεια όπως: ΕΜΦΑΝΙΣΗ ΛΙΣΤΑΣ ΑΡΧΕΙΩΝ, ΑΝΤΙΓΡΑΦΗ, ΔΙΑΓΡΑΦΗ, ΜΕΤΑΦΟΡΑ, ΑΛΛΑΓΗ ΟΝΟΜΑΤΟΣ κλπ αρχείω.

ΕΝΤΟΛΕΣ ΤΟΥ DOS ΣΤΗ ΔΙΑΧΕΙΡΙΣΗ ΑΡΧΕΙΩΝ:
1. DIR <-- = εμφάνιση λίστας αρχειων
2. COPY <filename> <directory> <-- = αντιγράφει αρχειο απο ένα κατάλογο σε έναν άλλο.
3. DISKCOPY A: B: <-- = αντιγράφει ολόκληρη δισκέτα σε μια άλλη
4. DEL <filename> <-- = διαγράφει αρχειο.
5. REN <filename1> <filename2> <-- = αλλαζει όνομα αρχείου.
6. MOVE <filename> <directory> <-- = μεταφέρει το αρχειο σε άλλον κατάλογο.

ΠΩΣ ΕΚΤΕΛΟΥΜΕ/ΤΡΕΧΟΥΜΕ ΕΝΑ ΠΡΟΓΡΑΜΜΑ:
ΣΤΟ DOS:
ΠΑΜΕ ΣΤΟΝ ΚΑΤΑΛΟΓΟ ΠΟΥ ΒΡΙΣΚΕΤΑΙ, ΓΡΑΦΟΥΜΕ ΤΟ ΟΝΟΜΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ ΚΑΙ ΠΑΤΑΜΕ @ENTER@.

ΣΤΑ WINDOWS:
Κάνουμε διπλο κλικ με το ποντίκι πάνω στο εικονίδιο του προγράμματος.

7. ΕΠΕΞΕΡΓΑΣΤΕΣ ΚΕΙΜΕΝΟΥ

1. ΕΠΕΞΕΡΓΑΣΤΗΣ ΚΕΙΜΕΝΟΥ είναι ένα πρόγραμμα με το οποίο γράφουμε κείμενα πχ open office

Εχουμε πει ότι επεξεργαστές κειμένου είναι προγράμματα με τα οποία γράφουμε κείμενα. Εμείς μάθαμε να χρησιμοποιούμε το Microsoft works. Οι βασικές δουλειές που πρέπει να ξέρουμε να κάνουμε με κάθε τέτοιο πρόγραμμα είναι:

1. ΧΡΗΣΗ ΠΡΟΓΡΑΜΜΑΤΟΣ:
Επειδή είναι ένα πρόγραμμα που δουλεύει με το λειτουργικό σύστημα WINDOWS, για να εκτελέσουμε το πρόγραμμα κάνουμε διπλό κλίκ πάνω στο εικονίδιο του προγράμματος και για να κλείσουμε το πρόγραμμα εκτελούμε την εντολή FILE/EXIT.

2. ΔΙΑΧΕΙΡΙΣΗ ΑΡΧΕΙΩΝ:
Κάθε κείμενο που γράφουμε είναι και ένα αρχείο.
α) ΔΗΜΙΟΥΡΓΙΑ ΚΑΙΝΟΥΡΓΙΟΥ ΑΡΧΕΙΟΥ:
file/create new file/εικονίδιο/file/save as/name & drive.
β) ΣΥΝΕΧΙΣΗ ΕΠΕΞΕΡΓΑΣΙΑΣ ΑΡΧΕΙΟΥ:
file/open existing file/drive & name.
γ) ΑΠΟΘΗΚΕΥΣΗ ΑΡΧΕΙΟΥ:
file/save.

3. ΓΡΑΦΗ ΚΕΙΜΕΝΟΥ:
α) ΔΡΟΜΕΑΣ: Δρομέας είναι η γραμμή που αναβοσβύνει και μας δείχνει σε ποιό σημειο της οθόνης εμφανίζονται τα γράμματα που πληκτρολογούμε. Η μετακίνηση του δρομέα γίνεται με:
- το ποντικι (οποιοδήποτε σημειο)
- τα πλήκτρα με τα τέσσερα βελάκια (χαρακτηρα & γραμή)
- τα πλήκτρα home/end (αρχή τέλος γραμμής)
- τα πλήκτρα pageup/pagedown (αρχη/τελος οθόνης)
- τα πληκτρα ctrl + home/end (αρχή/τέλος κειμένου)
β) ΑΛΛΑΓΗ ΠΛΗΚΤΡΟΛΟΓΙΑΟΥ: ctrl + alt + space
γ) ΤΟΝΟΥΣ: ελληνικό ερωτηματικο πρώτα και μετά το αντίστοιχο φωνήεν.
δ) ΚΕΦΑΛΑΙΑ ΓΡΑΜΜΑΤΑ: με το πλήκτρο caps lock γραφουμε συνέχεια κεφαλαία, ενώ με το shift γράφουμε μόνο ένα.
ε) ΣΒΗΣΙΜΟ ΓΡΑΜΜΑΤΩΝ: με τα πλήκτρα backspace & delete. To backspace σβήνει το γράμμα πρίν απο το δρομέα ενώ το delete το γράμμα μετά το δρομέα.

4. ΔΙΟΡΘΩΣΗ ΛΑΘΩΝ ΚΕΙΜΕΝΟΥ:
Πατάμε το εικονίδιο με το γράμμα S, και μετά στο τετραγωνάκι 'greek speller' για να διορθώσει συγχρόνως και αγγλικές και ελληνικές λέξεις.

5. ΕΠΙΛΟΓΗ ΚΕΙΜΕΝΟΥ:
Είναι πολύ βασικό να ξέρουμε να επιλέγουμε κομμάτια κειμένου διότι για να μπορέσουμε να κάνουμε οποιαδήποτε εργασία διαμόρωσης του κειμένου μας πρεπει πρώτα να έχουμε επιλέξει το κείμενο που θέλουμε να διαμορώσουμε. Ετσι για να επιλέξουμε:
- λέξη, κάνουμε διπλό κλικ πάνω στη λέξη.
- γραμμή, κάνουμε κλίκ πρίν απο το πρώτο γράμα της.
- παράγραφο ( κείμενο μεταξύ δύο enter), κάνουμε διπλό κλικ πριν απο οποιαδήποτε γραμή της.
- όλο το κείμενο, κρατάμε το ctrl και κάνουμε κλικ μπροστά απο οποιαδήποτε γραμμή.
- τυχαίο κείμενο, σύροντας το ποντίκι πάνω σε αυτό το κείμενο.

6. ΔΙΑΜΟΡΦΩΣΗ ΚΕΙΜΕΝΟΥ:
α) ΑΛΛΑΓΗ ΓΡΑΜΜΑΤΟΣΕΙΡΑΣ: Γραμματοσειρά είναι κάθε αντιστοιχία συμβόλων στα 256 σύμβολα που χρησιμοποιεί το κομπιουτερ. Επιλέγουμε το κείμενο που θέλουμε να του αλλάξουμε γραμματοσειρά και απο τη λίστα των γραμματοσειρών κάνουμε κλικ σε αυτή που επιθυμούμε.
β) ΑΛΛΑΓΗ ΜΕΓΕΘΟΥΣ ΓΡΑΜΜΑΤΩΝ: επιλογή κειμένου και επιλογη μεγέθους απο τη λίστα των μεγεθών.
γ) ΕΝΤΟΝΑ/ΠΛΑΓΙΑ/ΥΠΟΓΡΑΜΙΣΜΕΝΑ ΓΡΑΜΜΑΤΑ: Με τα εικονίδια B,I,U.
δ) ΣΤΟΙΧΙΣΗ ΚΕΙΜΕΝΟΥ: Με τα 4 εικονιδια που εχουν παράλληλες γραμμές.
ε) ΑΡΙΣΤΕΡΑ/ΔΕΞΙΑ ΠΕΡΙΘΩΡΙΑ: Με τα τριγωνάκια που βρίσκονται στο χάρακα στην επικεφαλίδα του κειμένου.
στ) ΑΝΤΙΓΡΑΦΗ/ΜΕΤΑΦΟΡΑ ΚΕΙΜΕΝΟΥ: Με την αντιγραφή το κείμενο υπάρχει και στην παλια και στην καινούργια θέση. Η διαδικασια είναι: επιλογη/edit/copy/θεση δρομέα/paste. Για τη μεταφορά κανουμε: επιλογη/edit/cut/δρομέας/paste.
ζ) ΣΤΗΛΟΘΕΤΕΣ: κάνοντας κλίκ κάτω απο τους αριθμους του χάρακα της επικεφαλίδας εμφανίζονται κάτι βελάκια. Στις θέσεις αυτές πάει αυτοματα ο δρομέας όταν πατάμε το πλήκτρο tab και έτσι μπορούμε να φτιάξουμε ένα κείμενο με κάθετες στήλες λέξεων.
η) ΕΙΣΑΓΩΓΗ ΕΙΚΟΝΩΝ:
δρομεας/insert/object/εικόνα/exit.

7. ΕΚΤΥΠΩΣΗ ΤΟΥ ΚΕΙΜΕΝΟΥ:
Αφου δηλώσουμε τι εκτυπωτή και τα περιθωρια του χαρτιου που θα χρησιμοποιήσουμε στην εκτύπωση, πατάμε το εικονίδιο της εκτύπωσης και αυτο είναι όλο.

7. ΕΠΕΞΕΡΓΑΣΤΕΣ ΚΕΙΜΕΝΟΥ (MICROSOFT WORKS)

Εχουμε πει ότι επεξεργαστές κειμένου είναι προγράμματα με τα οποία γράφουμε κείμενα. Εμείς μάθαμε να χρησιμοποιούμε το Microsoft works. Οι βασικές δουλειές που πρέπει να ξέρουμε να κάνουμε με κάθε τέτοιο πρόγραμμα είναι:

1. ΧΡΗΣΗ ΠΡΟΓΡΑΜΜΑΤΟΣ:
Επειδή είναι ένα πρόγραμμα που δουλεύει με το λειτουργικό σύστημα WINDOWS, για να εκτελέσουμε το πρόγραμμα κάνουμε διπλό κλίκ πάνω στο εικονίδιο του προγράμματος και για να κλείσουμε το πρόγραμμα εκτελούμε την εντολή FILE/EXIT.

2. ΔΙΑΧΕΙΡΙΣΗ ΑΡΧΕΙΩΝ:
Κάθε κείμενο που γράφουμε είναι και ένα αρχείο.
α) ΔΗΜΙΟΥΡΓΙΑ ΚΑΙΝΟΥΡΓΙΟΥ ΑΡΧΕΙΟΥ:
file/create new file/εικονίδιο/file/save as/name & drive.
β) ΣΥΝΕΧΙΣΗ ΕΠΕΞΕΡΓΑΣΙΑΣ ΑΡΧΕΙΟΥ:
file/open existing file/drive & name.
γ) ΑΠΟΘΗΚΕΥΣΗ ΑΡΧΕΙΟΥ:
file/save.

3. ΓΡΑΦΗ ΚΕΙΜΕΝΟΥ:
α) ΔΡΟΜΕΑΣ: Δρομέας είναι η γραμμή που αναβοσβύνει και μας δείχνει σε ποιό σημειο της οθόνης εμφανίζονται τα γράμματα που πληκτρολογούμε. Η μετακίνηση του δρομέα γίνεται με:
- το ποντικι (οποιοδήποτε σημειο)
- τα πλήκτρα με τα τέσσερα βελάκια (χαρακτηρα & γραμή)
- τα πλήκτρα home/end (αρχή τέλος γραμμής)
- τα πλήκτρα pageup/pagedown (αρχη/τελος οθόνης)
- τα πληκτρα ctrl + home/end (αρχή/τέλος κειμένου)
β) ΑΛΛΑΓΗ ΠΛΗΚΤΡΟΛΟΓΙΑΟΥ: ctrl + alt + space
γ) ΤΟΝΟΥΣ: ελληνικό ερωτηματικο πρώτα και μετά το αντίστοιχο φωνήεν.
δ) ΚΕΦΑΛΑΙΑ ΓΡΑΜΜΑΤΑ: με το πλήκτρο caps lock γραφουμε συνέχεια κεφαλαία, ενώ με το shift γράφουμε μόνο ένα.
ε) ΣΒΗΣΙΜΟ ΓΡΑΜΜΑΤΩΝ: με τα πλήκτρα backspace & delete. To backspace σβήνει το γράμμα πρίν απο το δρομέα ενώ το delete το γράμμα μετά το δρομέα.

4. ΔΙΟΡΘΩΣΗ ΛΑΘΩΝ ΚΕΙΜΕΝΟΥ:
Πατάμε το εικονίδιο με το γράμμα S, και μετά στο τετραγωνάκι 'greek speller' για να διορθώσει συγχρόνως και αγγλικές και ελληνικές λέξεις.

5. ΕΠΙΛΟΓΗ ΚΕΙΜΕΝΟΥ:
Είναι πολύ βασικό να ξέρουμε να επιλέγουμε κομμάτια κειμένου διότι για να μπορέσουμε να κάνουμε οποιαδήποτε εργασία διαμόρωσης του κειμένου μας πρεπει πρώτα να έχουμε επιλέξει το κείμενο που θέλουμε να διαμορώσουμε. Ετσι για να επιλέξουμε:
- λέξη, κάνουμε διπλό κλικ πάνω στη λέξη.
- γραμμή, κάνουμε κλίκ πρίν απο το πρώτο γράμα της.
- παράγραφο ( κείμενο μεταξύ δύο enter), κάνουμε διπλό κλικ πριν απο οποιαδήποτε γραμή της.
- όλο το κείμενο, κρατάμε το ctrl και κάνουμε κλικ μπροστά απο οποιαδήποτε γραμμή.
- τυχαίο κείμενο, σύροντας το ποντίκι πάνω σε αυτό το κείμενο.

6. ΔΙΑΜΟΡΦΩΣΗ ΚΕΙΜΕΝΟΥ:
α) ΑΛΛΑΓΗ ΓΡΑΜΜΑΤΟΣΕΙΡΑΣ: Γραμματοσειρά είναι κάθε αντιστοιχία συμβόλων στα 256 σύμβολα που χρησιμοποιεί το κομπιουτερ. Επιλέγουμε το κείμενο που θέλουμε να του αλλάξουμε γραμματοσειρά και απο τη λίστα των γραμματοσειρών κάνουμε κλικ σε αυτή που επιθυμούμε.
β) ΑΛΛΑΓΗ ΜΕΓΕΘΟΥΣ ΓΡΑΜΜΑΤΩΝ: επιλογή κειμένου και επιλογη μεγέθους απο τη λίστα των μεγεθών.
γ) ΕΝΤΟΝΑ/ΠΛΑΓΙΑ/ΥΠΟΓΡΑΜΙΣΜΕΝΑ ΓΡΑΜΜΑΤΑ: Με τα εικονίδια B,I,U.
δ) ΣΤΟΙΧΙΣΗ ΚΕΙΜΕΝΟΥ: Με τα 4 εικονιδια που εχουν παράλληλες γραμμές.
ε) ΑΡΙΣΤΕΡΑ/ΔΕΞΙΑ ΠΕΡΙΘΩΡΙΑ: Με τα τριγωνάκια που βρίσκονται στο χάρακα στην επικεφαλίδα του κειμένου.
στ) ΑΝΤΙΓΡΑΦΗ/ΜΕΤΑΦΟΡΑ ΚΕΙΜΕΝΟΥ: Με την αντιγραφή το κείμενο υπάρχει και στην παλια και στην καινούργια θέση. Η διαδικασια είναι: επιλογη/edit/copy/θεση δρομέα/paste. Για τη μεταφορά κανουμε: επιλογη/edit/cut/δρομέας/paste.
ζ) ΣΤΗΛΟΘΕΤΕΣ: κάνοντας κλίκ κάτω απο τους αριθμους του χάρακα της επικεφαλίδας εμφανίζονται κάτι βελάκια. Στις θέσεις αυτές πάει αυτοματα ο δρομέας όταν πατάμε το πλήκτρο tab και έτσι μπορούμε να φτιάξουμε ένα κείμενο με κάθετες στήλες λέξεων.
η) ΕΙΣΑΓΩΓΗ ΕΙΚΟΝΩΝ:
δρομεας/insert/object/εικόνα/exit.

7. ΕΚΤΥΠΩΣΗ ΤΟΥ ΚΕΙΜΕΝΟΥ:
Αφου δηλώσουμε τι εκτυπωτή και τα περιθωρια του χαρτιου που θα χρησιμοποιήσουμε στην εκτύπωση, πατάμε το εικονίδιο της εκτύπωσης και αυτο είναι όλο.

7β. ΕΠΕΞΕΡΓΑΣΤΕΣ ΚΕΙΜΕΝΟΥ (WRITE)

name::
* McsElln.7β. ΕΠΕΞΕΡΓΑΣΤΕΣ ΚΕΙΜΕΝΟΥ (WRITE)@cptIt,

Οι βασικές δουλειές που πρέπει να ξέρουμε να κάνουμε είναι:

1. ΧΡΗΣΗ ΠΡΟΓΡΑΜΜΑΤΟΣ:
α) ΕΚΤΕΛΕΣΗ: διπλό κλίκ πάνω στο εικονίδιό του
β) ΚΛΕΙΣΙΜΟ: εκτελούμε την εντολή FILE/EXIT.

2. ΔΙΑΧΕΙΡΙΣΗ ΑΡΧΕΙΩΝ:
Κάθε κείμενο που γράφουμε είναι και ένα αρχείο.
α) ΔΗΜΙΟΥΡΓΙΑ ΚΑΙΝΟΥΡΓΙΟΥ ΑΡΧΕΙΟΥ: file/new/file/save as/name & drive.
β) ΣΥΝΕΧΙΣΗ ΕΠΕΞΕΡΓΑΣΙΑΣ ΑΡΧΕΙΟΥ: file/open/drive & name.
γ) ΑΠΟΘΗΚΕΥΣΗ ΑΡΧΕΙΟΥ: file/save.

3. ΓΡΑΦΗ ΚΕΙΜΕΝΟΥ:
α) ΔΡΟΜΕΑΣ: Δρομέας είναι η γραμμή που αναβοσβύνει και μας δείχνει σε ποιό σημειο της οθόνης εμφανίζονται τα γράμματα που πληκτρολογούμε. Η μετακίνηση του δρομέα γίνεται με:
- το ποντικι (οποιοδήποτε σημειο)
- τα πλήκτρα με τα τέσσερα βελάκια (χαρακτηρα & γραμή)
- τα πλήκτρα home/end (αρχή/τέλος γραμμής)
- τα πλήκτρα pageup/pagedown (αρχη/τελος οθόνης)
- τα πληκτρα ctrl + home/end (αρχή/τέλος κειμένου)
- ctrl+<-/-> (από λέξη σε λέξη)
β) ΑΛΛΑΓΗ ΠΛΗΚΤΡΟΛΟΓΙΑΟΥ: ctrl + alt + space
γ) ΤΟΝΟΥΣ: ελληνικό ερωτηματικο πρώτα και μετά το αντίστοιχο φωνήεν.
δ) ΚΕΦΑΛΑΙΑ ΓΡΑΜΜΑΤΑ: με το πλήκτρο caps lock γραφουμε συνέχεια κεφαλαία, ενώ με το shift γράφουμε μόνο ένα.
ε) ΣΒΗΣΙΜΟ ΓΡΑΜΜΑΤΩΝ: To πλήκτρο backspace σβήνει το γράμμα πρίν απο το δρομέα ενώ το delete το γράμμα μετά το δρομέα.

4. ΔΙΟΡΘΩΣΗ ΛΑΘΩΝ ΚΕΙΜΕΝΟΥ:
Το write ΔΕΝ υποστηρίζει αυτή τη λειτουργία.

5. ΕΠΙΛΟΓΗ ΚΕΙΜΕΝΟΥ:
Είναι πολύ βασικό να ξέρουμε να επιλέγουμε κομμάτια κειμένου διότι για να μπορέσουμε να κάνουμε οποιαδήποτε εργασία διαμόρωσης του κειμένου μας πρεπει πρώτα να έχουμε επιλέξει το κείμενο που θέλουμε να διαμορώσουμε. Ετσι για να επιλέξουμε:
α) λέξη, κάνουμε διπλό κλικ πάνω στη λέξη.
β) γραμμή, κάνουμε κλίκ με το ποντίκι σε μορφή βέλους, πρίν απο το πρώτο γράμα της.
γ) παράγραφο ( κείμενο μεταξύ δύο enter), κάνουμε διπλό κλικ πριν απο οποιαδήποτε γραμή της.
δ) όλο το κείμενο, κρατάμε το ctrl και κάνουμε κλικ μπροστά απο οποιαδήποτε γραμμή.
ε) τυχαίο κείμενο, σύρουμε το ποντίκι πάνω σε αυτό το κείμενο.

6. ΔΙΑΜΟΡΦΩΣΗ ΚΕΙΜΕΝΟΥ:
α) ΑΛΛΑΓΗ ΓΡΑΜΜΑΤΟΣΕΙΡΑΣ: Γραμματοσειρά είναι κάθε αντιστοιχία συμβόλων στα 256 σύμβολα που χρησιμοποιεί το κομπιουτερ. επιλογή/character/fonts.
β) ΑΛΛΑΓΗ ΜΕΓΕΘΟΥΣ ΓΡΑΜΜΑΤΩΝ: επιλογή κειμένου και επιλογη μεγέθους απο τη λίστα των μεγεθών. επιλογή/character/fonts/size.
γ) ΕΝΤΟΝΑ/ΠΛΑΓΙΑ/ΥΠΟΓΡΑΜΙΣΜΕΝΑ ΓΡΑΜΜΑΤΑ:
επιλογή/character/bold|italic|uderline.
δ) ΣΤΟΙΧΙΣΗ ΚΕΙΜΕΝΟΥ: Με τα 4 εικονιδια που εχουν παράλληλες γραμμές.
ε) ΑΡΙΣΤΕΡΑ/ΔΕΞΙΑ ΠΕΡΙΘΩΡΙΑ: Με τα τριγωνάκια που βρίσκονται στο χάρακα στην επικεφαλίδα του κειμένου.
στ) ΑΝΤΙΓΡΑΦΗ/ΜΕΤΑΦΟΡΑ ΚΕΙΜΕΝΟΥ: Με την αντιγραφή το κείμενο υπάρχει και στην παλια και στην καινούργια θέση. Η διαδικασια είναι: επιλογη/edit/copy/θεση δρομέα/paste.
Με τη μεταφορά το κείμενο υπάρχει μόνο στην καινούργια θέση. Η διαδικασία είναι ίδια με cut αντί για copy.
ζ) ΣΤΗΛΟΘΕΤΕΣ: Είναι θέσεις στις οποίες πάει αυτοματα ο δρομέας όταν πατάμε το πλήκτρο tab και έτσι μπορούμε να φτιάξουμε ένα κείμενο με κάθετες στήλες λέξεων.
Τις θέσιες αυτές τις ορίζουμε με Documents/Tabs.
η) ΕΙΣΑΓΩΓΗ ΕΙΚΟΝΩΝ: δρομεας/edit/insert object.

7. ΕΚΤΥΠΩΣΗ ΤΟΥ ΚΕΙΜΕΝΟΥ:
Αφου δηλώσουμε τι εκτυπωτή και τις διαστάσεις του χαρτιου που θα χρησιμοποιήσουμε στην εκτύπωση με την εντολή File/Print setup, πατάμε File/Print και αυτο είναι όλο.

7γ. ΕΠΕΞΕΡΓΑΣΤΕΣ ΚΕΙΜΕΝΟΥ (MICROSOFT WORD)

name::
* McsElln.7γ. ΕΠΕΞΕΡΓΑΣΤΕΣ ΚΕΙΜΕΝΟΥ (MICROSOFT WORD)@cptIt,

Οι βασικές δουλειές που πρέπει να ξέρουμε να κάνουμε είναι:

1. ΧΡΗΣΗ ΠΡΟΓΡΑΜΜΑΤΟΣ:
α) ΕΚΤΕΛΕΣΗ: εναρξη/προγραμματα/microsoft word
β) ΚΛΕΙΣΙΜΟ: αρχειο/εξοδος

2. ΔΙΑΧΕΙΡΙΣΗ ΑΡΧΕΙΩΝ:
Κάθε κείμενο που γράφουμε είναι και ένα αρχείο.
α) ΔΗΜΙΟΥΡΓΙΑ ΚΑΙΝΟΥΡΓΙΟΥ ΑΡΧΕΙΟΥ: αρχειο/δημιουργια.../αποθηκευση ως...
β) ΣΥΝΕΧΙΣΗ ΕΠΕΞΕΡΓΑΣΙΑΣ ΑΡΧΕΙΟΥ: αρχειο/ανοιγμα
γ) ΑΠΟΘΗΚΕΥΣΗ ΑΡΧΕΙΟΥ: αρχειο/αποθηκευση

3. ΓΡΑΦΗ ΚΕΙΜΕΝΟΥ:
α) ΔΡΟΜΕΑΣ: Δρομέας είναι η γραμμή που αναβοσβύνει και μας δείχνει σε ποιό σημειο της οθόνης εμφανίζονται τα γράμματα που πληκτρολογούμε. Η μετακίνηση του δρομέα γίνεται με:
- το ποντικι (οποιοδήποτε σημειο)
- τα πλήκτρα με τα τέσσερα βελάκια (χαρακτηρα & γραμή)
- τα πλήκτρα home/end (αρχή/τέλος γραμμής)
- τα πλήκτρα pageup/pagedown (αρχη/τελος οθόνης)
- τα πληκτρα ctrl + home/end (αρχή/τέλος κειμένου)
- ctrl+<-/-> (από λέξη σε λέξη)
β) ΑΛΛΑΓΗ ΠΛΗΚΤΡΟΛΟΓΙΑΟΥ: alt + shift
γ) ΤΟΝΟΥΣ: ελληνικό ερωτηματικο πρώτα και μετά το αντίστοιχο φωνήεν.
δ) ΚΕΦΑΛΑΙΑ ΓΡΑΜΜΑΤΑ: με το πλήκτρο caps lock γραφουμε συνέχεια κεφαλαία, ενώ με το shift γράφουμε μόνο ένα.
ε) ΣΒΗΣΙΜΟ ΓΡΑΜΜΑΤΩΝ: To πλήκτρο backspace σβήνει το γράμμα πρίν απο το δρομέα ενώ το delete το γράμμα μετά το δρομέα.

4. ΔΙΟΡΘΩΣΗ ΛΑΘΩΝ ΚΕΙΜΕΝΟΥ:
Πατάμε το εικονίδιο 'ΑΒΓ'.
ΑΓΝΟΗΣΕ = όταν το λάθος που βρήκε το κομπιούτερ, ΔΕΝ είναι λάθος
ΑΛΛΑΞΕ = όταν θέλουμε να αντικαταστήσουμε το σωστό με το λάθος
ΠΡΟΣΘΕΣΕ = όταν το 'λάθος' του κομπιούτερ είναι σωστή λέξη ΚΑΙ θέλουμε να την προσθέσουμε στο λεξικό του κομπιούτερ έτσι ώστε να μή σταματήσει ξανά σαυτή.

5. ΕΠΙΛΟΓΗ ΚΕΙΜΕΝΟΥ:
Είναι πολύ βασικό να ξέρουμε να επιλέγουμε κομμάτια κειμένου διότι για να μπορέσουμε να κάνουμε οποιαδήποτε εργασία διαμόρωσης του κειμένου μας πρεπει πρώτα να έχουμε επιλέξει το κείμενο που θέλουμε να διαμορώσουμε. Ετσι για να επιλέξουμε:
α) ΛΕΞΗ, κάνουμε διπλό κλικ πάνω στη λέξη.
β) ΓΡΑΜΜΗ, κάνουμε κλίκ με το ποντίκι σε μορφή βέλους, πρίν απο το πρώτο γράμα της.
γ) ΠΑΡΑΓΡΑΦΟ ( κείμενο μεταξύ δύο enter), κάνουμε διπλό κλικ πριν απο οποιαδήποτε γραμή της.
δ) ΟΛΟ ΤΟ ΚΕΙΜΕΝΟ, κρατάμε το ctrl και κάνουμε κλικ μπροστά απο οποιαδήποτε γραμμή.
ε) ΤΥΧΑΙΟ ΚΕΙΜΕΝΟ, σύρουμε το ποντίκι πάνω σε αυτό το κείμενο.

6. ΔΙΑΜΟΡΦΩΣΗ ΚΕΙΜΕΝΟΥ:
α) ΑΛΛΑΓΗ ΓΡΑΜΜΑΤΟΣΕΙΡΑΣ: Γραμματοσειρά είναι η ΜΟΡΦΗ των συμβόλων που χρησιμοποιεί το κομπιουτερ. επιλογή κειμένου και επιλογή γραμματοσειράς από τη λίστα των γραμματοσειρών.
β) ΑΛΛΑΓΗ ΜΕΓΕΘΟΥΣ ΓΡΑΜΜΑΤΩΝ: επιλογή κειμένου και επιλογη μεγέθους απο τη λίστα των μεγεθών.
γ) ΕΝΤΟΝΑ/ΠΛΑΓΙΑ/ΥΠΟΓΡΑΜΙΣΜΕΝΑ ΓΡΑΜΜΑΤΑ:
επιλογή και B/I/U εικονίδια.
δ) ΣΤΟΙΧΙΣΗ ΚΕΙΜΕΝΟΥ: Με τα 4 εικονιδια που εχουν παράλληλες γραμμές.
ε) ΑΡΙΣΤΕΡΑ/ΔΕΞΙΑ ΠΕΡΙΘΩΡΙΑ: Με τα εικονίδια που βρίσκονται στις άκρες του χάρακα στην επικεφαλίδα του κειμένου.
στ) ΑΝΤΙΓΡΑΦΗ/ΜΕΤΑΦΟΡΑ ΚΕΙΜΕΝΟΥ: Με την αντιγραφή το κείμενο υπάρχει και στην παλια και στην καινούργια θέση. Η διαδικασια είναι: επιλογη/επεξεργασία/αντιγραφή/θεση δρομέα/επικόληση.
Με τη μεταφορά το κείμενο υπάρχει μόνο στην καινούργια θέση. Η διαδικασία είναι ίδια με ᾳποκοπή' αντί για ᾳντιγραφη'.
ζ) ΣΤΗΛΟΘΕΤΕΣ: Είναι θέσεις στις οποίες πάει αυτοματα ο δρομέας όταν πατάμε το πλήκτρο tab και έτσι μπορούμε να φτιάξουμε ένα κείμενο με κάθετες στήλες λέξεων.
Τις θέσιες αυτές τις ορίζουμε με κλίκ στο χάρακα.

7. ΕΚΤΥΠΩΣΗ ΤΟΥ ΚΕΙΜΕΝΟΥ:
Πατάμε το εικονίδιο της εκτύπωσης και δηλώνουμε τις σελίδες που θέλουμε να εκτυπώσουμε και τον αριθμό αντιγράφων. Είναι χρήσιμο να κάνουμε 'προεπισκόπηση εκτύπωσης' πριν τυπώσουμε το κείμενο.

8. ΛΟΓΙΣΤΙΚΑ ΦΥΛΛΑ (SPREADSHEETS)

1. ΟΡΙΣΜΟΣ:
Τα λογιστικά φύλλα είναι προγράμματα με τα οποία κάνουμε υπολογισμούς. Στην ουσία είναι ένας μεγάλος πίνακας με γραμμές και στήλες.
ΚΕΛΙ λέγεται κάθε κουτί του πίνακα, και ΔΙΕΥΘΥΝΣΗ κελιού είναι ο μοναδικός συνδυασμός στήλης και γραμμής.
Περιοχή επεξεργασίας λέγεται η λωρίδα στην οποία γράφουμε.
Το φύλλο εργασίας που θα χρησιμοποιήσαμε είναι το MICROSOFT WORKS.
Βασική ιδιότητα του προγράμματος είναι ότι όταν αλλάξουμε έναν αριθμό σε ένα κελί, τότε το πρόγραμμα αυτόματα ξαναυπολογίζει όλες τις πράξεις που περιέχουν αυτό το κελί.

2. ΤΙ ΒΑΖΟΥΜΕ ΣΤΑ ΚΕΛΙΑ:
α) ΕΤΙΚΕΤΕΣ: Λέξεις που επεξηγούν τα δεδομένα μας.
β) ΤΙΜΕΣ: Οτι δεν είναι ετικέτες, δηλαδή οι αριθμοί και οι σχέσεις με τις οποίες κάνουμε υπολογισμούς.

3. ΤΑ ΕΙΔΗ ΤΩΝ ΤΙΜΩΝ.
α) ΑΡΙΘΜΟΙ: 3, 45, κλπ
β) ΤΥΠΟΙ πχ =c1+c5. Είναι οι σχέσεις που κάνουν τις πράξεις.
γ) ΣΥΝΑΡΤΗΣΕΙΣ πχ avg(c3:c10). Είναι έτοιμοι τύποι που έχει το πρόγραμμα.

4. ΠΩΣ ΔΙΟΡΘΩΝΟΥΜΕ ΤΑ ΠΕΡΙΕΧΟΜΕΝΑ ΕΝΟΣ ΚΕΛΙΟΥ;
α) ΟΛΙΚΗ ΑΝΤΙΚΑΤΑΣΤΑΣΗ: Επιλέγουμε το κελί, γράφουμε την καινούργια πληροφορία και πατάμε εντερ.
β) ΜΕΡΙΚΗ ΑΝΤΙΚΑΤΑΣΤΑΣΗ: Επιλέγουμε το κελί, κάνουμε κλίκ στην περιοχή επεξεργασίας, σβήνουμε το μέρος που δέν θέλουμε, συμπληρώνουμε το καινούργιο και πατάμε εντερ.

5. ΤΙ ΕΙΝΑΙ ΠΕΡΙΟΧΗ ΚΑΙ ΠΩΣ ΤΗ ΔΗΛΩΝΟΥΜΕ;
Περιοχή είναι μια σειρά κελιών.
Τη δηλώνουμε με το πρώτο κελί, : για να δηλώσουμε το μέχρι και το τελευταίο κελί.

6. ΠΩΣ ΠΡΟΣΘΕΤΟΥΜΕ ΚΑΙΝΟΥΡΓΙΑ ΚΕΝΗ ΓΡΑΜΜΗ;
α) επιλέγουμε τη γραμμή πρίν από την οποία θέλουμε να προσθέσουμε γραμμή.
β) edit / insert row.

7. ΣΥΝΑΡΤΗΣΕΙΣ:
α) sum πχ sum(c3:c10) υπολογίζει το άθροισμα περιοχής.
β) count πχ count(c3:c10) μετρά τα κελιά περιοχής.
γ) avg πχ avg(c3:c10) βρίσκει το μέσο όρο περιοχής.
δ) round πχ round(c3;0) στρογγυλοποιεί τον αριθμό κελιού.

8. ΔΙΑΓΡΑΜΜΑΤΑ:
Διαγράμματα είναι γραφικές παραστάσεις (ζωγραφιές) των αριθμών ενός λογιστικού-φύλλου με τα οποία συγκρίνουμε καλλίτερα τους αριθμούς. Για να φτιάξουμε ένα διάγραμμα:
α) επιλέγουμε τους αριθμούς
β) πατάμε το εικονίδιο με το διάγραμμα.

Παραδείγματα:
α) = round(sum(c3:c10);0). Υπολογίζει το άθροισμα των κελιών c3 μέχρι c10 και στρογγυλοποιεί το αποτέλεσμα σε ακέραιο.
β) = sum(c3:c10)/count(c3:c10). Υπολογίζει το μέσο όρο των κελιών c3 μέχρι c10.

MICROSOFT WORKS (SPREADSHEET):
** WORKSHEET (φύλλο εργασίας) 256χ16.834
** κελί (cell), β2=διεύθυνση κελιού
** ενεργό κελί
** περιοχή επεξεργασίας (εκεί που γράφουμε)
** περιοχή ελέγχου (γραμμή εγαλείων ΚΑΙ περιοχή επεξεργασίας
** Λωρίδα κατάστασης = μηνύματα
** περιεχόμενο κελιού = ετικέτα ή τιμή ("=πρόθεμα ετικέτας)
** εισαγωγή ετικέτας
** πλάτος κελιού
** είδη τιμών (αριθμητική σταθερά, απλός τύπος, συνάρτηση, σύνθετος τύπος)
** διόρθωση περιεχομένων κελιών
** παρεμβολή γραμμής ή στήλης
** περιοχή (range) (:)
** συναρτήσεις sum, count, round
** διαγραφή γραμμής ή στήλης
** αποκοπή, αντιγραφή, προσάρτηση
** διαγράμματα
** ταξινόμηση
** edit/fill down/fill series

ΑΣΚΗΣΗ 1:
Δημιουργία ΕΛΕΓΧΟΥ ΕΠΙΔΟΣΗΣ μαθητή. Σελίδα 111. Να βρείτε και τον τελικό μέσο όρο.

ΑΣΚΗΣΗ 2:
ασκηση 2 σελίδα 189 (Ταξινόμηση βουνών)

ΑΣΚΗΣΗ 3:
σελίδα 157 (Ταμείο εκδρομής)

ΑΣΚΗΣΗ 4:
Πυρκαγιές 1979 (works/word file)

ΑΣΚΗΣΗ 5:
Να φτιάξετε φύλλο εργασίας που να υπολογίζει την ποσότητα χρημάτων που χρειάζονται για την αγορά 15 τετραδίων των 200 δρχ, 3 μολυβιών των 100 δρχ, 2 στυλό των 300 δρχ και μιας ξύστρας των 80 δρχ. Στις παραπάνω τιμές να προσθέσετε 18% ΦΠΑ.

ΤΕΣΤ στα Λογιστικά-Φύλλα

ΟΝΟΜΑ:

Α) Απαντήστε με σωστό/λάθος:
1. Το Υπολογιστικό φύλλο που χρησιμοποιούμε είναι το Microsoft Solution Series
______σωστό _______λάθος
2. 'Περιοχή' είναι η λωρίδα στην οποία γράφουμε.
______σωστό _______λάθος
3. 'Διεύθυνση κελιού' είναι η γραμμή και η στήλη στην οποία βρίσκεται.
______σωστό _______λάθος
4. Συναρήσεις είναι έτοιμοι τύποι που έχει το πρόγραμμα και κάνουν διάφορες πράξεις.
______σωστό _______λάθος
5. Σε ένα κελί μπορούμε να βάλουμε αριθμούς, λέξεις και τύπους.
______σωστό _______λάθος
6. Για να αντικαταστήσουμε ολικά το περιεχόμενο ενός κελιού, το επιλέγουμε, γράφουμε την καινούργια πληροφορία και πατάμε enter.
______σωστό _______λάθος
7. Ο καλλίτερος τρόπος για να μετακινούμαστε ανάμεσα στα κελιά είναι το ποντίκι.
______σωστό _______λάθος
8. Για να προσθέσουμε καινούργια κενή γραμμή ανάμεσα στην 3 και 4, επιλέγουμε την 3 και πατάμε edit/insert row.
______σωστό _______λάθος
9. Τα γραφήματα μας βοηθούν να συγκρίνουμε καλύτερα τα δεδομένα μας.
______σωστό _______λάθος
10. Για να φτιάξουμε ένα γράφημα πατάμε το εικονίδιο με το διάγραμμα.
______σωστό _______λάθος
11. Γραμμή επεξεργασίας είναι μια σειρά από κελιά με αριθμούς.
______σωστό _______λάθος
12. Ο τύπος =round(e1:3) μετρά τα κελιά στην περιοχή.
______σωστό _______λάθος
13. Ο τύπος =count(e1:e3) μετρά το πλήθος των κελιών από το e1 μέχρι το e3.
______σωστό _______λάθος
14. O τύπος =sum(e1;e3) βρίσκει το άθροισμα της περιοχής.
______σωστό _______λάθος

Β) Γράψε τον τύπο που υπολογίζει το άθροισμα των κελιών Β1 μέχρι Β9 και στρογγυλοποιεί το αποτέλεσμα σε ακέραιο με τις συναρτήσεις sum και round.

===========================================================

ΟΝΟΜΑ:

Α) Απαντήστε με σωστό/λάθος:
1. Τα γραφήματα μας βοηθούν να συγκρίνουμε καλύτερα τα δεδομένα μας.
______σωστό _______λάθος
2. Το λογιστικό φύλλο που χρησιμοποιούμε είναι το Microsoft Solution Series
______σωστό _______λάθος
3. 'Περιοχή' είναι η λωρίδα στην οποία γράφουμε.
______σωστό _______λάθος
4. Για να φτιάξουμε ένα γράφημα πατάμε το εικονίδιο με το διάγραμμα.
______σωστό _______λάθος
5. O τύπος =sum(e1:e3) βρίσκει το άθροισμα της περιοχής.
______σωστό _______λάθος
6. Για να προσθέσουμε καινούργια κενή γραμμή ανάμεσα στην 3 και 4, επιλέγουμε την 3 και πατάμε edit/insert row.
______σωστό _______λάθος
7. 'Διεύθυνση κελιού' είναι η γραμμή και η στήλη στην οποία βρίσκεται.
______σωστό _______λάθος
8. Ο τύπος =round(e1;3) μετρά τα κελιά στην περιοχή.
______σωστό _______λάθος
9. Γραμμή επεξεργασίας είναι μια σειρά από κελιά με αριθμούς.
______σωστό _______λάθος
10. Συναρήσεις είναι έτοιμοι τύποι που έχει το πρόγραμμα και κάνουν διάφορες πράξεις.
______σωστό _______λάθος
11. Σε ένα κελί μπορούμε να βάλουμε αριθμούς, λέξεις και τύπους.
______σωστό _______λάθος
12. Για να αντικαταστήσουμε ολικά το περιεχόμενο ενός κελιού, το επιλέγουμε, γράφουμε την καινούργια πληροφορία και πατάμε enter.
______σωστό _______λάθος
13. Ο καλλίτερος τρόπος για να μετακινούμαστε ανάμεσα στα κελιά είναι το ποντίκι.
______σωστό _______λάθος
14. Ο τύπος =count(e1:e3) μετρά το πλήθος των κελιών από το e1 μέχρι το e3.
______σωστό _______λάθος

Β) Γράψε τον τύπο που υπολογίζει το μέσο όρο των κελιών Β1 μέχρι Β9 με τις συναρτήσεις sum και count.

9. ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ (DATABASES)

1. ΟΡΙΣΜΟΣ:
ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ είναι προγράμματα με τα οποία καταχωρούμε πληροφορίες που μπορούν να γραφούν σε ένα πίνακα με γραμμές και στήλες (ή καρτέλες).
Η βάση δεδομένων που θα χρησιμοποιήσουμε είναι η Microsoft Works.

2. ΤΙ ΕΙΝΑΙ ΕΓΓΡΑΦΗ ΚΑΙ ΤΙ ΠΕΔΙO;
Εγγραφές είναι οι γραμμές του πίνακα (ή μια καρτέλα) και πεδία οι στήλες του πίνακα.

3. ΠΩΣ ΒΡΙΣΚΟΥΜΕ ΣΤΗ ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ ΤΩΝ ΦΙΛΩΝ ΜΑΣ ΑΥΤΟΥΣ ΠΟΥ ΤΟ ΕΠΙΘΕΤΟ ΤΟΥΣ ΑΡΧΙΖΕΙ ΑΠΟ Π;
α) πατάμε το εικονίδιο της καρτέλας με το ερωτηματικο.
β) στο πεδίο 'ΕΠΙΘΕΤΟ' γράφουμε Π*
γ) πατάμε το εικονίδιο του πίνακα.

4. ΠΩΣ ΒΡΙΣΚΟΥΜΕ ΣΤΗ ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ ΤΩΝ ΦΙΛΩΝ ΜΑΣ ΑΥΤΟΥΣ ΠΟΥ ΚΑΤΟΙΚΟΥΝ ΣΤΗΝ ΑΘΗΝΑ;
α) πατάμε το εικονίδιο της καρτέλας με το ερωτηματικο.
β) στο πεδίο 'ΠΟΛΗ' γράφουμε ΑΘΗΝΑ
γ) πατάμε το εικονίδιο του πίνακα.

5. ΠΩΣ ΤΑΞΙΝΟΥΜΟΥΜΕ ΤΙΣ ΕΓΓΡΑΦΕΣ ΩΣ ΠΡΟΣ ΕΝΑ ΠΕΔΙΟ;
α) select\sort records
β) στο καινούργιο παράθυρο στο πρώτο κουτί γράφουμε το όνομα του πεδίου και πατάμε ΟΚ.

6. ΠΩΣ ΔΗΜΙΟΥΡΓΟΥΜΕ ΜΙΑ ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ;
α) file/create new file/εικονίδιο βάσης δεδομένων
β) στη λευκή καρτέλα, γράφουμε τα πεδία που θέλουμε βάζοντας : στο τέλος του ονόματος κάθε πεδίου και δηλώνουμε και το πλάτος κάθε πεδίου
γ) σώζουμε τη ΒΔ.

7. ΤΙ ΚΑΝΟΥΜΕ ΜΕ ΤΙΣ ΑΝΑΦΟΡΕΣ ΚΑΙ ΠΩΣ ΤΙΣ ΔΗΜΙΟΥΡΓΟΥΜΕ ΣΥΝΟΠΤΙΚΑ;
Με τις αναφορές εκτυπώνουμε μερικά πεδία απο μια ΒΔ.
Για να τις δημιουργήσουμε:
α) view / create new report
β) στο καινούργιο παράθυρο δηλώνουμε πιά πεδία θέλουμε να εκτυπώσουμε και ΟΚ
γ) στο επόμενο παράθυρο δηλώνουμε τις στατιστικές πληροφορίες που θέλουμε για κάθε πεδίο.

8. ΠΩΣ ΠΡΟΣΘΕΤΟΥΜΕ ΚΑΙΝΟΥΡΓΙΑ ΠΕΔΙΑ;
α) Απο τη μορφή καρτέλας:
Βάζουμε το δρομέα σε ένα κενό σημείο της οθόνης γράφουμε το όνομα του νέου πεδίου και :. Τα πεδία προστίθενται στο τέλος.

β) Από τη μορφή πίνακα:
1) βάζουμε το δρομέα στο πεδίο πρίν απο το οποίο θέλουμε να μπεί το καινούργιο πεδίο.
2) edit / insert field
3) edit / field name.

=========================================================

DATABASES είναι προγράμματα με τα οποία καταχωρούμε ΔΟΜΗΜΕΝΕΣ ΠΛΗΡΟΦΟΡΙΕΣ με μορφή πίνακα γραμμών και στηλών πχ οι διευθύνσεις φίλων σας.
ΕΓΓΡΑΦΗ/RECORD λέγονται οι σχετικές μεταξύ τους πληροφορίες που βρίσκονται σε μια γραμμή πχ οι πληροφοριές για ΕΝΑ φίλο σας.
ΠΕΔΙΟ/FIELD λέγεται κάθε στήλη που περιέχει ανάλογες πληροφορίες πχ η στήλη που περιέχει το τηλέφωνο.
ΠΡΟΣΟΧΗ: Database λέγεται ΤΟ πρόγραμμα που χρησιμοποιούμε να καταχωρήσουμε πληροφορίες ΑΛΛΑ και το αρχείο που δημιουργούμε και περιέχει τις πληροφορίες.

Τρία είναι τα βασικά πράγματα που πρέπει να ξέρουμε να κάνουμε με ένα πρόγραμμα βάσεις δεδομένων:
α) Να ΔΗΜΙΟΥΡΓΟΥΜΕ ένα καινούργιο αρχείο-database ορίζοντας τα πεδία και το όνομα του αρχείου.
β) Να ΕΝΗΜΕΡΩΝΟΥΜΕ μια ήδη δημιουργημένη database, δηλαδή να αλλάζουμε, να σβήνουμε ή να προσθέτουμε εγγραφές.
γ) Να κάνουμε ΑΝΑΖΗΤΗΣΕΙΣ σε μια database με διάφορα κριτήρια.

MICROSOFT WORKS:
** εγγραφές, πεδία.
** view/list, view/form
** εισαγωγή πεδίων
** εισαγωγή εγγραφών
** γραμμή εργαλείων, γραμμή φόρμουλας, γραμμή κατάστασης,
** ενημέρωση βάσης:
** αναζητήσεις: select/find, query
** ταξινόμηση: select/sort

ΑΣΚΗΣΗ 1:
Να δημιουργήσετε μία βάση-δεδομένων με τις διευθύνσεις των φίλων σας
ΟΝΟΜΑ - 10
ΕΠΙΘΕΤΟ - 15
ΔΙΕΥΘΥΝΣΗ - 30
ΤΗΛΕΦΩΝΟ - 7
ΣΧΟΛΙΑ - 30

ΑΣΚΗΣΗ 2:
Να δημιουργήσετε μία βάση-δεδομένων με τα βιβλία της βιβλιοθήκης σας.
Α/Α - 4
ΤΙΤΛΟΣ - 30
ΣΥΓΓΡΑΦΕΑΣ - 15
ΕΚΔΟΤΗΣ - 15
ΕΤΟΣ - 4

10. ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

ΜΑΘΗΜΑΤΑ:
1) πρόγραμμα, γλώσσα-προγραμματισμού, αλγόριθμος.
2) παράσταση-αλγορίθμου, είδη γλωσσών, μεταγλωτιστής.
3) ΟΠΠ.
4) Μεταβλητές, εντολές.
5)

ΟΙ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ (2003-10-19)

ΕΝΝΟΙΕΣ:
1) Πρόγραμμα.
2) Προγραμματισμός.
3) Γλώσσα προγραμματισμού.
4) Γλώσσα-μηχανής, και γλώσσα υψηλού επιπέδου.
5) Αλγόριθμος.
6) Παράσταση Αλγορίθμου.
7) Αντικείμενο-πρόγραμμα, πηγαίο-πρόγραμμα.
8) Μεταγλωτιστής.
9) Ολοκληρωμένο προγραμματιστικό περιβάλλον.
10) Μεταβλητές, Σταθερές.
11) Είδη μεταβλητών: α) ως προς τη λειτουργία, β)ως προς το περιεχόμενο.
12) χρήστης/προγραμματιστής προγράμματος.
13) Απλές Εντολές: εκχώρησης, εισόδου, εξόδου.
14) Σύνθετες Εντολές: Επιλογής, Επανάληψης.
15) Δημιουργία προγράμματος.

1) ΠΡΟΓΡΑΜΜΑ είναι ΑΡΧΕΙΟ ή αρχεία που περιέχουν ένα σύνολο από ΟΔΗΓΙΕΣ (εντολές) που
α) καταλαβαίνει ένα κομπιούτερ και
β) με τις οποίες ο ΕΠΕΞΕΡΓΑΣΤΗΣ επεξεργάζεται ΠΛΗΡΟΦΟΡΙΕΣ (κείμενα, εικόνες και ήχοι).

2) ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ είναι η διαδικασία γραφής προγράμματος.

3) ΓΛΩΣΣΑ-ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ είναι οι ΚΑΝΟΝΕΣ που χρησιμοποιούμε για να γράψουμε τις εντολές ενός προγράμματος για να τις καταλάβει το μηχάνημα. (Σε αντιστοιχία με τη Φυσική-Γλώσσα που αντιστοιχεί "σημασίες" με "λόγο")

4) ΕΙΔΗ ΓΛΩΣΣΩΝ-ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ:
* ΓΛΩΣΣΑ-ΜΗΧΑΝΗΣ είναι η γλώσσα-προγραμματισμού με την οποία γράφουμε τις εντολές προγράμματος με 0 και 1 που καταλαβαίνει το κομπιούτερ.
* ΓΛΩΣΣΑ-ΥΨΗΛΟΥ-ΕΠΙΠΕΔΟΥ είναι η γλώσσα-προγραμματισμού με την οποία γράφουμε τις εντολές προγράμματος με λέξεις φυσικής-γλώσσας. Σε αυτή γράφουμε τα προγράμματα.
- ΕΙΔΗ: Δομημένες-γλώσσες, Αντικειμενοστραφείς-γλώσσες.

5) ΑΛΓΟΡΙΘΜΟΣ (προγραμματισμού) είναι η ΔΙΑΔΙΚΑΣΙΑ-ΕΠΕΞΕΡΓΑΣΙΑΣ-ΠΛΗΡΟΦΟΡΙΑΣ που θέλουμε να εκτελέσει ένα πρόγραμμα. Αν εμείς, στο μυαλό μας, δεν έχουμε ξεκαθαρίσει τον αλγόριθμο, ποτέ δε θα φτιάξουμε πρόγραμμα.

6) ΠΑΡΑΣΤΑΣΗ ΑΛΓΟΡΙΘΜΟΥ:
Η παράσταση/περιγραφή του αλγορίθμου εξαρτάται από τη γλώσσα-προγραμματισμού που θα χρησιμοποιήσουμε.
α) σε φυσική γλώσσα με βήματα,
β) με διαγράμματα ροής,
γ) με ψευδοκώδικα (πλησιάζει τον τρόπο που γράφονται τα προγράμματα).

7) ΑΝΤΙΚΕΙΜΕΝΟ-ΠΡΟΓΡΑΜΜΑ είναι ένα πρόγραμμα γραμμένο με γλώσσα-μηχανής.
ΠΗΓΑΙΟ-ΠΡΟΓΡΑΜΜΑ είναι ένα πρόγραμμα γραμμένο με γλώσσα υψηλού επιπέδου.

8) ΜΕΤΑΓΛΩΤΙΣΤΗΣ είναι πρόγραμμα που μετατρέπει ένα πηγαίο-πρόγραμμα σε αντικείμενο.

9) ΟΛΟΚΛΗΡΩΜΕΝΟ-ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ-ΠΕΡΙΒΑΛΛΟΝ είναι ένα σύνολο προγραμμάτων (περιέχει editor, μεταγλωτιστή, εκσφαλματωτή κλπ) με το οποίο φτιάχνουμε προγράμματα.
Δηλαδή για να ΦΤΙΑΞΟΥΜΕ ΠΡΟΓΡΑΜΜΑ μας χρειάζονται:
α) να ξέρουμε μια γλώσσα προγραματισμού.
β) να έχουμε ένα ολοκληρωμένο- προγραμματιστικό-περιβάλλον.
γ) να έχουμε φτιάξει έναν αλγόριθμο (σε ψευδοκώδικα κατά προτίμηση).

10) ΜΕΤΑΒΛΗΤΗ (κομπιούτερ) είναι ΘΕΣΗ της μνήμης RAM, όπου το κομπιούτερ κρατά διαφορετικές πληροφορίες ίδιου τύπου, που επεξεργάζεται και παράγει.
ΣΤΑΘΕΡΗ ονομάζουμε θέση της μνήμης RAM, όπου το κομπιούτερ κρατά μία συγκεκριμένη πληροφορία (ίδια) σε όλη τη διάρκεια εκτέλεσης προγράμματος.

11) ΕΙΔΗ ΜΕΤΑΒΛΗΤΩΝ:
α) με κριτήριο τη λειτουργία που επιτελούν:
- ΜΕΤΑΒΛΗΤΕΣ-ΕΙΣΟΔΟΥ: είναι οι μεταβλητές στις οποίες δίνει τιμές ο χρήστης.
- ΜΕΤΑΒΛΗΤΕΣ-ΕΞΟΔΟΥ: είναι οι μεταβλητές που περιέχουν τις πληροφορίες που θα δώσει το πρόγραμμα στον χρήστη.
- ΒΟΗΘΗΤΙΚΕΣ-ΜΕΤΑΒΛΗΤΕΣ: λέγονται όλες οι άλλες μεταβλητές που χρησιμοποιούνται στην εκτέλεση ενός προγράμματος.
β) με κριτήριο το περιεχόμενό τους (τύποι):
- αριθμητικές: όταν περιέχουν αριθμούς.
- αλφαριθμητικές: γράμματα και αριθμούς είτε ονόματα, μηνύματα.
- λογικές: όταν περιέχουν τις λογικές-τιμές ᾳληθής', 'ψευδής'.

12) ΠΡΟΓΡΑΜΜΑΤΙΣΤΗΣ-ΠΡΟΓΡΑΜΜΑΤΟΣ λέγεται ο άνθρωπος που φτιάχνει το πρόγραμμα. ΧΡΗΣΤΗΣ-ΠΡΟΓΡΑΜΜΑΤΟΣ λέγεται ο άνθρωπος που το εκτελεί.

13) ΑΠΛΕΣ ΕΝΤΟΛΕΣ: είναι οι εντολές που κάνουν απλές "επεξεργασίες" πληροφοριών.
α) ΕΝΤΟΛΗ-ΕΚΧΩΡΗΣΗΣ: είναι η εντολή με την οποία ο προγραμματιστής βάζει πληροφορία (τιμή) σε μιά μεταβλητή.
β) ΕΝΤΟΛΗ-ΕΙΣΟΔΟΥ: είναι η εντολή με την οποία το πρόγραμμα ζητάει πληροφορία από το χρήστη και τη βάζει σε μεταβλητή.
γ) ΕΝΤΟΛΗ-ΕΞΟΔΟΥ: είναι η εντολή με την οποία το πρόγραμμα παρουσιάζει στον χρήστη την τιμή μιας μεταβλητής.

14) ΣΥΝΘΕΤΕΣ ΕΝΤΟΛΕΣ: είναι οι εντολές που αποτελούνται από άλλες εντολές.
α) ΕΝΤΟΛΗ ΕΠΙΛΟΓΗΣ: Επιλέγει από ομάδες εντολών ποιά να εκτελέσει ανάλογα με την τιμή μιας συνθήκης ή μιας μεταβλητής.
(Συνθήκη ή λογική-συνθήκη είναι μια παράσταση με πράξεις με μεταβλητές και αριθμούς που παίρνει 2 τιμές, αληθής|ψευδής.)
β) ΕΝΤΟΛΗ ΕΠΑΝΑΛΗΨΗΣ: επαναλαμβάνει την εκτέλεση κάποιων εντολών (βρόχος) κάποιες φορές.

15) ΔΗΜΙΟΥΡΓΙΑ ΠΡΟΓΡΑΜΜΑΤΟΣ:
α) Αλγόριθμος.
β) Παράσταση-Αλγορίθμου σε μία γλώσσα:
 * στις δομημένες-γλώσσες: Δήλωση των μεταβλητών, Ανάπτυξη Διαδικασίας, Γραφή ψευδοκώδικα.
 * στις αντικειμενοστραφείς-γλώσσες: δημιουργία κλάσεων.
γ) Γραφή προγράμματος.

Νίκος Κασσελούρης (users.otenet.gr\~nikkas) 2003-10-19

ΟΙ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ (2002-11-21)

ΕΝΝΟΙΕΣ:
1) Πρόγραμμα.
2) Προγραμματισμός.
3) Γλώσσα προγραμματισμού.
4) Αλγόριθμος.
5) Παράσταση Αλγορίθμου.
6) Γλώσσα-μηχανής, και γλώσσα υψηλού επιπέδου.
7) Αντικείμενο-πρόγραμμα, πηγαίο-πρόγραμμα.
8) Μεταγλωτιστής.
9) Ολοκληρωμένο προγραμματιστικό περιβάλλον.
10) Μεταβλητές, Σταθερές.
11) Είδη μεταβλητών: α) ως προς τη λειτουργία, β)ως προς το περιεχόμενο.
12) χρήστης/προγραμματιστής προγράμματος.
13) Απλές Εντολές: εκχώρησης, εισόδου, εξόδου.
14) Σύνθετες Εντολές: Επιλογής, Επανάληψης.
15) Δημιουργία προγράμματος.

1) ΠΡΟΓΡΑΜΜΑ είναι ΑΡΧΕΙΟ ή αρχεία που περιέχουν ένα σύνολο από ΟΔΗΓΙΕΣ (εντολές) που
α) καταλαβαίνει ένα κομπιούτερ και
β) με τις οποίες ο ΕΠΕΞΕΡΓΑΣΤΗΣ επεξεργάζεται ΠΛΗΡΟΦΟΡΙΕΣ (κείμενα, εικόνες και ήχοι).

2) ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ είναι η διαδικασία γραφής προγράμματος.

3) ΓΛΩΣΣΑ-ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ είναι οι ΚΑΝΟΝΕΣ που χρησιμοποιούμε για να γράψουμε τις εντολές ενός προγράμματος για να τις καταλάβει το μηχάνημα. (Σε αντιστοιχία με τη Φυσική-Γλώσσα που αντιστοιχεί "σημασίες" με "λόγο")

4) ΑΛΓΟΡΙΘΜΟΣ (προγραμματισμού) είναι η ΔΙΑΔΙΚΑΣΙΑ-ΕΠΕΞΕΡΓΑΣΙΑΣ-ΠΛΗΡΟΦΟΡΙΑΣ που θέλουμε να εκτελέσει ένα πρόγραμμα. Αν εμείς, στο μυαλό μας, δεν έχουμε ξεκαθαρίσει τον αλγόριθμο, ποτέ δε θα φτιάξουμε πρόγραμμα.

5) ΠΑΡΑΣΤΑΣΗ ΑΛΓΟΡΙΘΜΟΥ:
α) σε φυσική γλώσσα με βήματα,
β) με διαγράμματα ροής,
γ) με ψευδοκώδικα (πλησιάζει τον τρόπο που γράφονται τα προγράμματα).

6) ΕΙΔΗ ΓΛΩΣΣΩΝ-ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ:
ΓΛΩΣΣΑ-ΜΗΧΑΝΗΣ είναι η γλώσσα-προγραμματισμού με την οποία γράφουμε τις εντολές προγράμματος με 0 και 1 που καταλαβαίνει το κομπιούτερ.
ΓΛΩΣΣΑ-ΥΨΗΛΟΥ-ΕΠΙΠΕΔΟΥ είναι η γλώσσα-προγραμματισμού με την οποία γράφουμε τις εντολές προγράμματος με λέξεις φυσικής-γλώσσας. Σε αυτή γράφουμε τα προγράμματα.

7) ΑΝΤΙΚΕΙΜΕΝΟ-ΠΡΟΓΡΑΜΜΑ είναι ένα πρόγραμμα γραμμένο με γλώσσα-μηχανής.
ΠΗΓΑΙΟ-ΠΡΟΓΡΑΜΜΑ είναι ένα πρόγραμμα γραμμένο με γλώσσα υψηλού επιπέδου.

8) ΜΕΤΑΓΛΩΤΙΣΤΗΣ είναι πρόγραμμα που μετατρέπει ένα πηγαίο-πρόγραμμα σε αντικείμενο.

9) ΟΛΟΚΛΗΡΩΜΕΝΟ-ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ-ΠΕΡΙΒΑΛΛΟΝ είναι ένα σύνολο προγραμμάτων (περιέχει editor, μεταγλωτιστή, εκσφαλματωτή κλπ) με το οποίο φτιάχνουμε προγράμματα.
Δηλαδή για να ΦΤΙΑΞΟΥΜΕ ΠΡΟΓΡΑΜΜΑ μας χρειάζονται:
α) να ξέρουμε μια γλώσσα προγραματισμού.
β) να έχουμε ένα ολοκληρωμένο- προγραμματιστικό-περιβάλλον.
γ) να έχουμε φτιάξει έναν αλγόριθμο (σε ψευδοκώδικα κατά προτίμηση).

10) ΜΕΤΑΒΛΗΤΗ (κομπιούτερ) είναι ΘΕΣΗ της μνήμης RAM, όπου το κομπιούτερ κρατά διαφορετικές πληροφορίες ίδιου τύπου, που επεξεργάζεται και παράγει.
(Το κομπιούτερ υποχρεωτικά κάπου πρέπει να κρατήσει τις πληροφορίες που επεξεργάζεται με ένα πρόγραμμα, αυτό το κάπου είναι οι μεταβλητές του. Αφού όμως ένα πρόγραμμα ΥΠΟΧΡΕΩΤΙΚΑ έχει μεταβλητές, ΑΡΑ και κάθε αλγόριθμος που θα γίνει πρόγραμμα ΠΡΕΠΕΙ να έχει μεταβλητές)
ΜΕΤΑΒΛΗΤΗ-ΠΡΟΓΡΑΜΜΑΤΟΣ είναι ΟΝΟΜΑ θέσης της ram που κρατά πληροφορίες.
ΜΕΤΑΒΛΗΤΗ-ΑΛΓΟΡΙΘΜΟΥ είναι καταχωρητής-πληροφοριών που επεξεργάζονται.
ΣΤΑΘΕΡΗ ονομάζουμε θέση της μνήμης RAM, όπου το κομπιούτερ κρατά μία συγκεκριμένη πληροφορία (ίδια) σε όλη τη διάρκεια εκτέλεσης προγράμματος.

11) ΕΙΔΗ ΜΕΤΑΒΛΗΤΩΝ:
α) με κριτήριο τη λειτουργία που επιτελούν:
- ΜΕΤΑΒΛΗΤΕΣ-ΕΙΣΟΔΟΥ: είναι οι μεταβλητές στις οποίες δίνει τιμές ο χρήστης.
- ΜΕΤΑΒΛΗΤΕΣ-ΕΞΟΔΟΥ: είναι οι μεταβλητές που περιέχουν τις πληροφορίες που θα δώσει το πρόγραμμα στον χρήστη.
- ΒΟΗΘΗΤΙΚΕΣ-ΜΕΤΑΒΛΗΤΕΣ: λέγονται όλες οι άλλες μεταβλητές που χρησιμοποιούνται στην εκτέλεση ενός προγράμματος.
β) με κριτήριο το περιεχόμενό τους (τύποι):
- αριθμητικές: όταν περιέχουν αριθμούς.
- αλφαριθμητικές: γράμματα και αριθμούς είτε ονόματα, μηνύματα.
- λογικές: όταν περιέχουν τις λογικές-τιμές ᾳληθής', 'ψευδής'.

12) ΠΡΟΓΡΑΜΜΑΤΙΣΤΗΣ-ΠΡΟΓΡΑΜΜΑΤΟΣ λέγεται ο άνθρωπος που φτιάχνει το πρόγραμμα. ΧΡΗΣΤΗΣ-ΠΡΟΓΡΑΜΜΑΤΟΣ λέγεται ο άνθρωπος που το εκτελεί.

13) ΑΠΛΕΣ ΕΝΤΟΛΕΣ: είναι οι εντολές που κάνουν απλές "επεξεργασίες" πληροφοριών.
α) ΕΝΤΟΛΗ-ΕΚΧΩΡΗΣΗΣ: είναι η εντολή με την οποία ο προγραμματιστής βάζει πληροφορία (τιμή) σε μιά μεταβλητή.
β) ΕΝΤΟΛΗ-ΕΙΣΟΔΟΥ: είναι η εντολή με την οποία το πρόγραμμα ζητάει πληροφορία από το χρήστη και τη βάζει σε μεταβλητή.
γ) ΕΝΤΟΛΗ-ΕΞΟΔΟΥ: είναι η εντολή με την οποία το πρόγραμμα παρουσιάζει στον χρήστη την τιμή μιας μεταβλητής.

14) ΣΥΝΘΕΤΕΣ ΕΝΤΟΛΕΣ: είναι οι εντολές που αποτελούνται από άλλες εντολές.
α) ΕΝΤΟΛΗ ΕΠΙΛΟΓΗΣ: Επιλέγει από ομάδες εντολών ποιά να εκτελέσει ανάλογα με την τιμή μιας συνθήκης ή μιας μεταβλητής.
(Συνθήκη ή λογική-συνθήκη είναι μια παράσταση με πράξεις με μεταβλητές και αριθμούς που παίρνει 2 τιμές, αληθής|ψευδής.)
β) ΕΝΤΟΛΗ ΕΠΑΝΑΛΗΨΗΣ: επαναλαμβάνει την εκτέλεση κάποιων εντολών (βρόχος) κάποιες φορές.

15) ΔΗΜΙΟΥΡΓΙΑ ΠΡΟΓΡΑΜΜΑΤΟΣ:
α) Δήλωση των μεταβλητών.
β) Δημιουργία αλγορίθμου.
γ) Γραφή ψευδοκώδικα.
δ) Γραφή προγράμματος σε μια γλώσσα προγραμματισμού.

Νίκος Κασσελούρης (users.otenet.gr\~nikkas) 2002-11-21

ΟΙ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ

ΕΝΝΟΙΕΣ:
1) ΠΡΟΓΡΑΜΜΑ,
2) Προγραμματισμός,
3) Φυσική γλώσσα,
4) Γλώσσα προγραμματισμού,
5) Παράσταση Αλγορίθμου,
6) Γλώσσα-μηχανής, και γλώσσα υψηλού επιπέδου,
7) Αντικείμενο-πρόγραμμα, πηγαίο-πρόγραμμα,
8) Μεταγλωτιστής,
9) Ολοκληρωμένο προγραμματιστικό περιβάλλον.
10) Μέρη προγράμματος/αλγορίθμου, (μεταβλητές/εντολές),
11) χρήστης/προγραμματιστής προγράμματος,
12) Είδη μεταβλητών: α) ως προς τη λειτουργία, β)ως προς το περιεχόμενο
13) Απλές Εντολές: εκχώρησης, εισόδου, εξόδου,
14) Σύνθετες Εντολές: Επιλογής, Επανάληψης.

1) ΠΡΟΓΡΑΜΜΑ είναι ένα σύνολο από ΟΔΗΓΙΕΣ (εντολές) που καταλαβαίνει ένα κομπιούτερ με το οποίο επεξεργάζεται πληροφορίες.

2) ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ είναι η διαδικασία γραφής προγράμματος.

3) ΦΥΣΙΚΗ-ΓΛΩΣΣΑ: είναι ένα σύστημα κανόνων και συμβόλων που αντιστοιχούν
- την ΠΛΗΡΟΦΟΡΙΑ που βρίσκεται στο μυαλό μας,
- σε ΛΟΓΟ (γραπτό ή προφορικό) και έτσι επιτυγχάνεται η επικοινωνία μεταξύ των ανθρώπων.

4) ΓΛΩΣΣΑ-ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ είναι (ανάλογα με τη φυσική-γλώσσα) το σύστημα κανόνων και συμβόλων που αντιστοιχεί
- μία διαδικασία που επεξεργάζεται πληροφορίες (ΑΛΓΟΡΙΘΜΟ )
- σε εντολές που καταλαβαίνει ένα κομπιούτερ (ΠΡΟΓΡΑΜΜΑ).

5) ΠΑΡΑΣΤΑΣΗ ΑΛΓΟΡΙΘΜΟΥ:
α) σε φυσική γλώσσα με βήματα,
β) με διαγράμματα ροής,
γ) με ψευδοκώδικα (πλησιάζει τον τρόπο που γράφονται τα προγράμματα).

6) ΓΛΩΣΣΑ-ΜΗΧΑΝΗΣ είναι η γλώσσα-προγραμματισμού που μετατρέπει έναν αλγόριθμο σε 01 που καταλαβαίνει το κομπιούτερ.
ΓΛΩΣΣΑ-ΥΨΗΛΟΥ ΕΠΙΠΕΔΟΥ είναι η γλώσσα-προγραμματισμού που μετατρέπει έναν αλγόριθμο σε εντολές με λέξεις φυσικής-γλώσσας. Σε αυτή γράφουμε τα προγράμματα.

7) ΑΝΤΙΚΕΙΜΕΝΟ-ΠΡΟΓΡΑΜΜΑ είναι ένα πρόγραμμα γραμμένο σε γλώσσα-μηχανής.
ΠΗΓΑΙΟ-ΠΡΟΓΡΑΜΜΑ είναι ένα πρόγραμμα γραμμένο σε γλώσσα υψηλού επιπέδου.

8) ΜΕΤΑΓΛΩΤΙΣΤΗΣ είναι πρόγραμμα που μετατρέπει ένα πηγαίο-πρόγραμμα σε αντικείμενο.

9) ΟΛΟΚΛΗΡΩΜΕΝΟ-ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ-ΠΕΡΙΒΑΛΛΟΝ είναι ένα σύνολο προγραμμάτων (περιέχει editor, μεταγλωτιστή κλπ) με το οποίο φτιάχνουμε προγράμματα. Δηλαδή για να ΦΤΙΑΞΟΥΜΕ ΠΡΟΓΡΑΜΜΑ μας χρειάζονται:
α) να ξέρουμε μια γλώσσα προγραματισμού.
β) να έχουμε ένα ολοκληρωμένο- προγραμματιστικό-περιβάλλον.
γ) να έχουμε φτιάξει έναν αλγόριθμο (σε ψευδοκώδικα κατά προτίμηση).

10) Ενα πρόγραμμα περιέχει εντολές και μεταβλητές. ΜΕΤΑΒΛΗΤΗ ΠΡΟΓΡΑΜΜΑΤΟΣ είναι θέση της μνήμης ram με όνομα, όπου το πρόγραμμα κρατά τις πληροφορίες που επεξεργάζεται και παράγει. (Το πρόγραμμα υποχρεωτικά κάπου πρέπει να κρατήσει τις υπό επεξεργασία πληροφορίες, αυτό το κάπου είναι οι μεταβλητές του).
Αφού ένα πρόγραμμα ΥΠΟΧΡΕΩΤΙΚΑ έχει μεταβλητές, ΑΡΑ και ο αλγόριθμος που γίνεται πρόγραμμα ΠΡΕΠΕΙ να έχει μεταβλητές, δηλαδή καταχωρητές (δοχεία) πληροφοριών.

11) ΠΡΟΓΡΑΜΜΑΤΙΣΤΗΣ-ΠΡΟΓΡΑΜΜΑΤΟΣ λέγεται ο άνθρωπος που φτιάχνει το πρόγραμμα. ΧΡΗΣΤΗΣ-ΠΡΟΓΡΑΜΜΑΤΟΣ λέγεται ο άνθρωπος που το εκτελεί.

12) ΕΙΔΗ ΜΕΤΑΒΛΗΤΩΝ:
α) με κριτήριο τη λειτουργία που επιτελούν:
- ΜΕΤΑΒΛΗΤΕΣ-ΕΙΣΟΔΟΥ: είναι οι μεταβλητές στις οποίες δίνει τιμές ο χρήστης.
- ΜΕΤΑΒΛΗΤΕΣ-ΕΞΟΔΟΥ: είναι οι μεταβλητές που περιέχουν τις πληροφορίες που θα δώσει το πρόγραμμα στον χρήστη.
- ΒΟΗΘΗΤΙΚΕΣ-ΜΕΤΑΒΛΗΤΕΣ: λέγονται όλες οι άλλες μεταβλητές που χρησιμοποιούνται στην εκτέλεση ενός προγράμματος.
β) με κριτήριο το περιεχόμενό τους (τύποι):
- αριθμητικές: όταν περιέχουν αριθμούς.
- αλφαριθμητικές: γράμματα και αριθμούς είτε ονόματα, μηνύματα.
- λογικές: όταν περιέχουν τις λογικές-τιμές ᾳληθής', 'ψευδής'.

13) ΑΠΛΕΣ ΕΝΤΟΛΩΝ: Εντολές υπάρχουν πολλές οι πρώτες βασικές είναι:
α) ΕΝΤΟΛΗ-ΕΚΧΩΡΗΣΗΣ: είναι η εντολή με την οποία ο προγραμματιστής δίνει τιμή σε μιά μεταβλητή.
β) ΕΝΤΟΛΗ-ΕΙΣΟΔΟΥ: είναι η εντολή με την οποία το πρόγραμμα ζητάει πληροφορία από το χρήστη και τη βάζει σε μεταβλητή.
γ) ΕΝΤΟΛΗ-ΕΞΟΔΟΥ: είναι η εντολή με την οποία το πρόγραμμα παρουσιάζει στον χρήστη την τιμή μιας μεταβλητής.

14) ΣΥΝΘΕΤΕΣ ΕΝΤΟΛΕΣ:
α) ΕΝΤΟΛΗ ΕΠΙΛΟΓΗΣ: Περιλαμβάνει μία συνθήκη και ανάλογα την τιμή της εκτελείται διαφορετική ομάδα εντολών.
β) ΕΝΤΟΛΗ ΕΠΑΝΑΛΗΨΗΣ: Όσο ικανοποιείται μία συνθήκη, μία ομάδα εντολών εκτελούνται επαναληπτικά.

ΤΕΣΤ

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

Α) Απαντείστε με ΣΩΣΤΟ/ΛΑΘΟΣ:
1) Πρόγραμμα είναι ένα σύνολο εντολών που καταλαβαίνει το κομπιούτερ και τις επεξεργάζεται.
2) Μεταβλητή-προγράμματος και μεταβλητή-αλγορίθμου είναι το ίδιο πράγμα.
3) Οι μεταβλητές χωρίζονται σε αριθμητικές, αλφαριθμητικές και λογικές με κριτήριο τη λειτουργία που εκτελούν μέσα στο πρόγραμμα.
4) Αλγόριθμος είναι η διαδικασία επεξεργασίας πληροφορίας που θέλουμε να κάνει ένα πρόγραμμα.
5) Γλώσσα-προγραμματισμού είναι η γλώσσα που καταλαβαίνει το κομπιούτερ.
6) Το πρόγραμμα με το οποίο φτιάχνουμε προγράμματα στην ουσία είναι ένα σύνολο προγραμμάτων.
7) Μεταβλητή-προγράμματος είναι οι πληροφορίες που επεξεργάζεται το πρόγραμμα.
8) Με την εντολή-επιλογής το πρόγραμμα επαναλαμβάνει την εκτέλεση ενός άλλου συνόλου εντολών.
9) Προγραμματιστής είναι εκείνος που εκτελεί ένα πρόγραμμα.
10) Με την εντολή-εισόδου ο προγραμματιστής εισάγει πληροφορία σε μεταβλητή.
11) Βοηθητικές-μεταβλητές λέγονται οι μεταβλητές που μας βοηθούν στον προγραμματισμό.
12) Λογικές-μεταβλητές λέγονται οι μεταβλητές που δέχονται τις πληροφορίες "αληθής" και "ψευδής.

Β) Συμπληρώστε με όσες λέξεις χρειάζεται τα κενά:
1) Οι γλώσσες-προγραμματισμού χωρίζονται σε γλώσσες υψηλού επιπέδου και _____________________________.
2) Οι μεταβλητές που δέχονται μηνύματα (λέξεις και αριθμούς) λέγονται ____________________.
3) ________________________________ λέγεται το πρόγραμμα που χρησιμοποιούμε για να γράψουμε ένα καινούργιο πρόγραμμα.
4) Η σύνθετη-εντολή που χρησιμοποιούμε για να επαναλάβουμε ένα άλλο σύνολο εντολών λέγεται _____________________.
5) ____________________ είναι το πρόγραμμα που μετατρέπει το πρόγραμμα που γράφουμε εμείς σε πρόγραμμα που καταλαβαίνει το κομπιούτερ με 01.

Γ) Διαλέξτε το σωστό/σωστά:
1) Ένας αλγόριθμος παρασταίνεται με:
α) ψευδοκώδικα, β) κώδικα, γ) διαγράμματα ροής, δ) περιγράμματα.
2) οι απλές-εντολές είναι:
α) καταχώρησης, β) εκχώρησης, γ) επιλογής, δ) εισόδου, ε) εξόδου.
3) Το πρόγραμμα που είναι γραμμένο με γλώσσα-μηχανής λέγεται:
α) πηγαίο, β) υποκείμενο, γ) αντικείμενο, δ) πηγή.

QBASIC

ΜΕΤΑΒΛΗΤΗ ΑΛΓΟΡΙΘΜΟΥ είναι ΓΕΝΙΚΕΣ-ΠΛΗΡΟΦΟΡΙΕΣ πχ ακέραιος Χ που χρησιμοποιούμε στην κατασκευή αλγορίθμου. Τα ονόματα αυτών των γενικών-πληροφοριών του αλγορίθμου αντιστοιχούνται σε ονόματα των μεταβλητών του προγράμματος κατά τη μετατροπή του αλγορίθμου σε πρόγραμμα.

BASIC:
10 REM υπολογισμός αθροίσματος και γινομένου 2 αριθμών
20 INPUT "A=";A
30 INPUT "B=";B
40 PRINT
50 PRINT "A+B=";A+B
60 PRINT "AxB=";A*B

LOGO:
to ATHRISMA :X :Y
PRINT [To athrisma einai:]
SHOW :X+:Y
PRINT [To ginomeno einai:]
SHOW :X*:Y
end

JAVA:
class Athrisma {
 public static void main(String args[])
 {
   int i1 = Integer.decode(args[0]).intValue();
   int i2 = Integer.decode(args[1]).intValue();
   int i3 = i1+i2;
   System.out.println("the sum is: " + i3);
 }
}

BASIC:
10 REM κύκλος με ένα ημικύκλιο φωτισμένο
20 SCREEN 2 //640X200 resolution
30 CIRCLE (160,100),100
40 LINE (160,20)-(160,180)
50 PAINT (100,100) //fill closed area
60 END

LOGO:

11. INTERNET

12. HTML

<!doctype html>
<html>
<head>
<title>Hello HTML</title>
</head>
<body>
<h1>Heading1</h1>
<h2>Heading2</h2>
<a href="URL">Θερμή-λέξη</a>
<img src="url">
<p>Hello World!</p>
</body>
</html>

μγ02'ΕΞΕΤΑΣΕΙΣ

name::
* McsElln.μγ02'ΕΞΕΤΑΣΕΙΣ@cptIt,

A ΤΡΙΜΗΝΟ

Α' ΤΑΞΗ

name::
* McsElln.Α' ΤΑΞΗ@cptIt,

2021-2022

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ: ..............................................

01) Ποιές είναι οι βασικές ΕΦΑΡΜΟΓΕΣ που κάνουμε με τον υπολογιστή;

02) Αναφέρετε ονομαστικά τις τρεις ποιο σημαντικές ΣΥΣΚΕΥΕΣ του υπολογιστή.

03) Τι είναι BIT και τι BYTE;

04) Ποιές είναι οι τρεις βασικές δουλειές που κάνουμε με το ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ;

05) Γράψτε ΑΠΟΘΗΚΕΣ που ξέρετε με τη σειρά χωρητικότητά τους.

06) Γράψτε τον ορισμό του ΛΕΙΤΟΥΡΓΙΚΟΥ-ΣΥΣΤΗΜΑΤΟΣ.

07) Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ:
1) Σ Λ Στο DVD μπορούμε να αποθηκεύσουμε περισσότερα δεδομένα από ότι στο σκληρό δίσκο.
2) Σ Λ Mega, Giga είναι μονάδες μέτρησης αποθήκευσης.
3) Σ Λ ΑΡΧΕΙΑ είναι σύμβολα, εικόνες και ήχοι στις αποθήκες με όνομα.
4) Σ Λ ΔΕΝ είναι σημαντικό και απαραίτητο να μάθουμε υπολογιστές.

08) Συμπληρώστε τα ΚΕΝΑ με όσες λέξεις χρειάζεται:
1) Ένας υπολογιστής αποτελείται από το ____________________ και το ____________________ .
2) __________________________ λέγεται το πρόγραμμα που είναι απαραίτητο για τη λειτουργία του υπολογιστή.

09) Τι είναι ένα ΠΡΟΓΡΑΜΜΑ;

10) Γιατί έχει ΜΝΗΜΗ-RAM ο υπολογιστής και ποιο είναι το μειονέκτημά της;

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ: ..............................................

01) Τι είναι BIT και τι BYTE;

02) Γράψτε ΑΠΟΘΗΚΕΣ που ξέρετε με σειρά χωρητικότητας.

03) Ποιές είναι οι τρεις βασικές δουλειές που κάνουμε με το ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ;

04) Αναφέρετε ονομαστικά τις ΤΡΕΙΣ ποιο σημαντικές ΣΥΣΚΕΥΕΣ του υπολογιστή.

05) Τι είναι ένα ΠΡΟΓΡΑΜΜΑ;

06) Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ:
1) Σ Λ Mega, Giga είναι μονάδες μέτρησης αποθήκευσης.
2) Σ Λ ΔΕΝ είναι σημαντικό και απαραίτητο να μάθουμε υπολογιστές.
3) Σ Λ Αρχεία είναι σύμβολα, εικόνες και ήχοι στις αποθήκες με όνομα.
4) Σ Λ Στο DVD μπορούμε να αποθηκεύσουμε περισσότερα δεδομένα από ότι στο σκληρό δίσκο.

07) Γράψτε τον ορισμό του ΛΕΙΤΟΥΡΓΙΚΟΥ-ΣΥΣΤΗΜΑΤΟΣ.

08) Συμπληρώστε τα ΚΕΝΑ με όσες λέξεις χρειάζεται:
1) __________________________ λέγεται το πρόγραμμα που είναι απαραίτητο για τη λειτουργία του υπολογιστή.
2) Ένα υπολογιστής αποτελείται από το ____________________ και το ____________________ .

09) Γιατί έχει ΜΝΗΜΗ-RAM ο υπολογιστής και ποιο είναι το μειονέκτημά της;

10) Ποιές είναι οι βασικές ΕΦΑΡΜΟΓΕΣ που κάνουμε με τον υπολογιστή;

ΑΠΑΝΤΗΣΕΙΣ

2015-2016

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ: ..............................................

01) Ποιές είναι οι βασικές ΕΦΑΡΜΟΓΕΣ που κάνουμε με τον υπολογιστή;

02) Τι είναι HARDWARE και τι SOFTWARE και πώς λέγονται στα ελληνικά;

03) Τι είναι BIT και τι BYTE;

04) Γράψτε ΑΠΟΘΗΚΕΣ που ξέρετε με τη σειρά χωρητικότητά τους.

05) Αναφέρετε ονομαστικά τις τρεις ποιο σημαντικές ΣΥΣΚΕΥΕΣ του υπολογιστή.

06) Γράψτε τον ορισμό του ΛΕΙΤΟΥΡΓΙΚΟΥ-ΣΥΣΤΗΜΑΤΟΣ.

07) Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ:
1) Σ Λ Στο DVD μπορούμε να αποθηκεύσουμε περισσότερα δεδομένα από ότι στο σκληρό δίσκο.
2) Σ Λ Mega, Giga είναι μονάδες μέτρησης αποθήκευσης.
3) Σ Λ ΑΡΧΕΙΑ είναι σύμβολα, εικόνες και ήχοι στις αποθήκες με όνομα.
4) Σ Λ ΔΕΝ είναι σημαντικό και απαραίτητο να μάθουμε υπολογιστές.

08) Συμπληρώστε τα ΚΕΝΑ με όσες λέξεις χρειάζεται:
1) Ένας υπολογιστής αποτελείται από το ____________________ και το ____________________ .
2) __________________________ λέγεται το πρόγραμμα που είναι απαραίτητο για τη λειτουργία του υπολογιστή.

09) Τι είναι ένα ΠΡΟΓΡΑΜΜΑ;

10) Γιατί έχει ΜΝΗΜΗ-RAM ο υπολογιστής και ποιο είναι το μειονέκτημά της;

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ: ..............................................

01) Τι είναι BIT και τι BYTE;

02) Γράψτε ΑΠΟΘΗΚΕΣ που ξέρετε με σειρά χωρητικότητας.

03) Τι είναι HARDWARE και τι SOFTWARE και πώς λέγονται στα ελληνικά;

04) Αναφέρετε ονομαστικά τις ΤΡΕΙΣ ποιο σημαντικές ΣΥΣΚΕΥΕΣ του υπολογιστή.

05) Τι είναι ένα ΠΡΟΓΡΑΜΜΑ;

06) Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ:
1) Σ Λ Mega, Giga είναι μονάδες μέτρησης αποθήκευσης.
2) Σ Λ ΔΕΝ είναι σημαντικό και απαραίτητο να μάθουμε υπολογιστές.
3) Σ Λ Αρχεία είναι σύμβολα, εικόνες και ήχοι στις αποθήκες με όνομα.
4) Σ Λ Στο DVD μπορούμε να αποθηκεύσουμε περισσότερα δεδομένα από ότι στο σκληρό δίσκο.

07) Γράψτε τον ορισμό του ΛΕΙΤΟΥΡΓΙΚΟΥ-ΣΥΣΤΗΜΑΤΟΣ.

08) Συμπληρώστε τα ΚΕΝΑ με όσες λέξεις χρειάζεται:
1) __________________________ λέγεται το πρόγραμμα που είναι απαραίτητο για τη λειτουργία του υπολογιστή.
2) Ένα υπολογιστής αποτελείται από το ____________________ και το ____________________ .

09) Γιατί έχει ΜΝΗΜΗ-RAM ο υπολογιστής και ποιο είναι το μειονέκτημά της;

10) Ποιές είναι οι βασικές ΕΦΑΡΜΟΓΕΣ που κάνουμε με τον υπολογιστή;

ΑΠΑΝΤΗΣΕΙΣ

2014-2015

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ: ..............................................
ΤΜΗΜΑ: ..............................................................
ΗΜΕΡΟΜΗΝΙΑ: ..................................................

01) Ποιές είναι οι βασικές ΕΦΑΡΜΟΓΕΣ που κάνουμε με τον υπολογιστή;

02) Τι είναι HARDWARE και τι SOFTWARE και πώς λέγονται στα ελληνικά;

03) Τι είναι BIT και τι BYTE; Τι σημαίνει Kilo, Mega, Giga, Tera;

04) Γράψτε ΑΠΟΘΗΚΕΣ που ξέρετε με τη σειρά χωρητικότητά τους.

05) Αναφέρετε ονομαστικά τις τρεις ποιο σημαντικές ΣΥΣΚΕΥΕΣ του υπολογιστή.

06) Γράψτε τον ορισμό του ΛΕΙΤΟΥΡΓΙΚΟΥ-ΣΥΣΤΗΜΑΤΟΣ.

07) Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ:
1) Σ Λ Στο DVD μπορούμε να αποθηκεύσουμε περισσότερα δεδομένα από ότι στο σκληρό δίσκο.
2) Σ Λ Η ανάλυση οθόνης είναι η διαγώνιος σε ίνσες.
3) Σ Λ ΑΡΧΕΙΑ είναι φάκελοι στις αποθήκες με όνομα.
4) Σ Λ Τα προγράμματα χωρίζεται σε δύο μεγάλες ομάδες: προγράμματα-εφαρμογών και προγράμματα-συστήματος.

08) Συμπληρώστε τα ΚΕΝΑ με όσες λέξεις χρειάζεται:
1) Ένας υπολογιστής αποτελείται από το ____________________ και το ____________________ .
2) __________________________ λέγεται το πρόγραμμα που είναι απαραίτητο για τη λειτουργία του υπολογιστή.

09) Τι είναι ένα ΠΡΟΓΡΑΜΜΑ;

10) Γράψτε τις κυριότερες ΣΥΣΚΕΥΕΣ ΕΞΟΔΟΥ του υπολογιστή.

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ: ..............................................
ΤΜΗΜΑ: ..............................................................
ΗΜΕΡΟΜΗΝΙΑ: .................................................

01) Τι είναι BIT και τι BYTE; Τι σημαίνει Kilo, Mega, Giga, Tera;

02) Γράψτε ΑΠΟΘΗΚΕΣ που ξέρετε με σειρά χωρητικότητας.

03) Τι είναι HARDWARE και τι SOFTWARE και πώς λέγονται στα ελληνικά;

04) Αναφέρετε ονομαστικά τις ΤΡΕΙΣ ποιο σημαντικές ΣΥΣΚΕΥΕΣ του υπολογιστή.

05) Τι είναι ένα ΠΡΟΓΡΑΜΜΑ;

06) Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ:
1) Σ Λ Η ανάλυση οθόνης μετριέται σε ίντσες.
2) Σ Λ Τα προγράμματα χωρίζεται σε δύο μεγάλες ομάδες: προγράμματα-εφαρμογών και προγράμματα-συστήματος.
3) Σ Λ ΦΑΚΕΛΟΙ είναι αρχεία στις αποθήκες με όνομα.
4) Σ Λ Στο DVD μπορούμε να αποθηκεύσουμε περισσότερα δεδομένα από ότι στο σκληρό δίσκο.

07) Γράψτε τον ορισμό του ΛΕΙΤΟΥΡΓΙΚΟΥ-ΣΥΣΤΗΜΑΤΟΣ.

08) Συμπληρώστε τα ΚΕΝΑ με όσες λέξεις χρειάζεται:
1) __________________________ λέγεται το πρόγραμμα που είναι απαραίτητο για τη λειτουργία του υπολογιστή.
2) Ένα υπολογιστής αποτελείται από το ____________________ και το ____________________ .

09) Γράψτε τις κυριότερες ΣΥΣΚΕΥΕΣ ΕΙΣΟΔΟΥ του υπολογιστή.

10) Ποιές είναι οι βασικές ΕΦΑΡΜΟΓΕΣ που κάνουμε με τον υπολογιστή;

ΑΠΑΝΤΗΣΕΙΣ

2011-2012

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ: ..............................................
ΤΜΗΜΑ: ..............................................................
ΗΜΕΡΟΜΗΝΙΑ: ..................................................

01) Ποιές είναι οι βασικές ΕΦΑΡΜΟΓΕΣ που κάνουμε με τον υπολογιστή;

02) Τι είναι HARDWARE και τι SOFTWARE και πώς λέγονται στα ελληνικά;

03) Τι είναι BIT και τι BYTE; Τι σημαίνει Kilo, Mega, Giga, Tera;

04) Γράψτε ΑΠΟΘΗΚΕΣ που ξέρετε και τη χωρητικότητά τους στο περίπου.

05) Αναφέρετε ονομαστικά τα τρία βασικά HARDWARE μέρη.

06) Γράψτε τον ορισμό του ΛΕΙΤΟΥΡΓΙΚΟΥ-ΣΥΣΤΗΜΑΤΟΣ.

07) Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ:
1) Σ Λ Ο ΣΑΡΩΤΗΣ μας βοηθάει να μεταφέρουμε τις φωτογραφίες μας από την ψηφιακή φωτογραφική μηχανή στον υπολογιστή.
2) Σ Λ Η ΕΡΓΟΝΟΜΙΑ εξετάζει με ποιο τρόπο ο άνθρωπος συνεργάζεται αρμονικά με τους γύρω του.
3) Σ Λ ΑΡΧΕΙΑ είναι φάκελοι στις αποθήκες με όνομα.
4) Σ Λ Το λογισμικό χωρίζεται σε δύο μεγάλες ομάδες: λογισμικό εφαρμογών και λογισμικό συστήματος.

08) Συμπληρώστε τα ΚΕΝΑ με όσες λέξεις χρειάζεται:
1) Ένας υπολογιστής αποτελείται από το ____________________ και το ____________________ .
2) __________________________ λέγεται το λογισμικό που είναι απαραίτητο για τη λειτουργία του υπολογιστή.

09) Τι είναι ένα ΠΡΟΓΡΑΜΜΑ;

10) Γράψτε τις κυριότερες ΣΥΣΚΕΥΕΣ ΕΞΟΔΟΥ του υπολογιστή.

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ: ..............................................
ΤΜΗΜΑ: ..............................................................
ΗΜΕΡΟΜΗΝΙΑ: .................................................

01) Τι είναι BIT και τι BYTE; Τι σημαίνει Kilo, Mega, Giga, Tera;

02) Γράψτε ΑΠΟΘΗΚΕΣ που ξέρετε και τη χωρητικότητά τους στο περίπου.

03) Τι είναι HARDWARE και τι SOFTWARE και πώς λέγονται στα ελληνικά;

04) Αναφέρετε ονομαστικά τα τρία βασικά HARDWARE μέρη.

05) Τι είναι ένα ΠΡΟΓΡΑΜΜΑ;

06) Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ:
1) Σ Λ Η ανάλυση οθόνης μετριέται σε ίντσες.
2) Σ Λ Το λογισμικό χωρίζεται σε δύο μεγάλες ομάδες: λογισμικό εφαρμογών και λογισμικό συστήματος.
3) Σ Λ ΑΡΧΕΙΑ είναι φάκελοι στις αποθήκες με όνομα.
4) Σ Λ Η ΕΡΓΟΝΟΜΙΑ εξετάζει με ποιο τρόπο ο άνθρωπος συνεργάζεται αρμονικά με τους γύρω του.

07) Γράψτε τον ορισμό του ΛΕΙΤΟΥΡΓΙΚΟΥ-ΣΥΣΤΗΜΑΤΟΣ.

08) Συμπληρώστε τα ΚΕΝΑ με όσες λέξεις χρειάζεται:
1) __________________________ λέγεται το λογισμικό που είναι απαραίτητο για τη λειτουργία του υπολογιστή.
2) Ένα υπολογιστής αποτελείται από το ____________________ και το ____________________ .

09) Γράψτε τις κυριότερες ΣΥΣΚΕΥΕΣ ΕΙΣΟΔΟΥ του υπολογιστή.

10) Ποιές είναι οι βασικές ΕΦΑΡΜΟΓΕΣ που κάνουμε με τον υπολογιστή;

ΑΠΑΝΤΗΣΕΙΣ

2008-2009

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ: ..............................................
ΤΜΗΜΑ: ..............................................................
ΗΜΕΡΟΜΗΝΙΑ: ..................................................

01) Ποιές είναι οι βασικές ΕΦΑΡΜΟΓΕΣ που κάνουμε με τον υπολογιστή;

02) Τι είναι HARDWARE και τι SOFTWARE και πώς λέγονται στα ελληνικά;

03) Τι είναι BIT και τι BYTE; Τι σημαίνει Kilo, Mega, Giga, Tera;

04) Γράψτε ΑΠΟΘΗΚΕΥΤΙΚΑ-ΜΕΣΑ που ξέρετε και τη χωρητικότητά τους στο περίπου.

05) Αναφέρετε ονομαστικά τα τρία βασικά HARDWARE μέρη.

06) Γράψτε τον ορισμό του ΛΕΙΤΟΥΡΓΙΚΟΥ-ΣΥΣΤΗΜΑΤΟΣ.

07) Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ:
1) Σ Λ Ο ΣΑΡΩΤΗΣ μας βοηθάει να μεταφέρουμε τις φωτογραφίες μας από την ψηφιακή φωτογραφική μηχανή στον υπολογιστή.
2) Σ Λ Η ΕΡΓΟΝΟΜΙΑ εξετάζει με ποιο τρόπο ο άνθρωπος συνεργάζεται αρμονικά με τους γύρω του.
3) Σ Λ ΑΡΧΕΙΑ είναι φάκελοι στις αποθήκες με όνομα.
4) Σ Λ Το λογισμικό χωρίζεται σε δύο μεγάλες ομάδες: λογισμικό εφαρμογών και λογισμικό συστήματος.

08) Συμπληρώστε τα ΚΕΝΑ με όσες λέξεις χρειάζεται:
1) Ένα υπολογιστικό-σύστημα αποτελείται από το ____________________ και το ____________________ .
2) __________________________ λέγεται το λογισμικό που είναι απαραίτητο για τη λειτουργία του υπολογιστή.

09) Τι είναι ένα ΠΡΟΓΡΑΜΜΑ;

10) Γράψτε τις κυριότερες ΣΥΣΚΕΥΕΣ ΕΞΟΔΟΥ του υπολογιστή.

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ: ..............................................
ΤΜΗΜΑ: ..............................................................
ΗΜΕΡΟΜΗΝΙΑ: .................................................

01) Τι είναι BIT και τι BYTE; Τι σημαίνει Kilo, Mega, Giga, Tera;

02) Γράψτε ΑΠΟΘΗΚΕΥΤΙΚΑ-ΜΕΣΑ που ξέρετε και τη χωρητικότητά τους στο περίπου.

03) Τι είναι HARDWARE και τι SOFTWARE και πώς λέγονται στα ελληνικά;

04) Αναφέρετε ονομαστικά τα τρία βασικά HARDWARE μέρη.

05) Τι είναι ένα ΠΡΟΓΡΑΜΜΑ;

06) Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ:
1) Σ Λ Το ύψος τοποθέτησης της οθόνης είναι σταθερό για όλους τους χρήστες.
2) Σ Λ Το λογισμικό χωρίζεται σε δύο μεγάλες ομάδες: λογισμικό εφαρμογών και λογισμικό συστήματος.
3) Σ Λ ΑΡΧΕΙΑ είναι φάκελοι στις αποθήκες με όνομα.
4) Σ Λ Η ΕΡΓΟΝΟΜΙΑ εξετάζει με ποιο τρόπο ο άνθρωπος συνεργάζεται αρμονικά με τους γύρω του.

07) Γράψτε τον ορισμό του ΛΕΙΤΟΥΡΓΙΚΟΥ-ΣΥΣΤΗΜΑΤΟΣ.

08) Συμπληρώστε τα ΚΕΝΑ με όσες λέξεις χρειάζεται:
1) __________________________ λέγεται το λογισμικό που είναι απαραίτητο για τη λειτουργία του υπολογιστή.
2) Ένα υπολογιστικό-σύστημα αποτελείται από το ____________________ και το ____________________ .

09) Γράψτε τις κυριότερες ΣΥΣΚΕΥΕΣ ΕΙΣΟΔΟΥ του υπολογιστή.

10) Ποιές είναι οι βασικές ΕΦΑΡΜΟΓΕΣ που κάνουμε με τον υπολογιστή;

ΑΠΑΝΤΗΣΕΙΣ

2007-2008

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ: .............................................
ΤΜΗΜΑ: ..............................................................
ΗΜΕΡΟΜΗΝΙΑ: ........................................ 2007

01. Ποιές είναι οι βασικές ΕΦΑΡΜΟΓΕΣ που κάνουμε με τον υπολογιστή;

02. Τι είναι HARDWARE και τι SOFTWARE;

03. Τι είναι BIT και τι BYTE;

04. Γράψτε ΑΠΟΘΗΚΕΥΤΙΚΑ-ΜΕΣΑ που ξέρετε και τη χωρητικότητά τους στο περίπου.

05. Αναφέρετε ονομαστικά τα τρία βασικά HARDWARE μέρη.

06. Γράψτε τον ορισμό του ΛΕΙΤΟΥΡΓΙΚΟΥ-ΣΥΣΤΗΜΑΤΟΣ.

07) Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ:
1) Σ Λ Ο ΣΑΡΩΤΗΣ μας βοηθάει να μεταφέρουμε τις φωτογραφίες μας από την ψηφιακή φωτογραφική μηχανή στον υπολογιστή.
2) Σ Λ Η ΕΡΓΟΝΟΜΙΑ εξετάζει με ποιο τρόπο ο άνθρωπος συνεργάζεται αρμονικά με τους γύρω του.
3) Σ Λ Το ύψος τοποθέτησης της οθόνης είναι σταθερό για όλους τους χρήστες.
4) Σ Λ Το λογισμικό χωρίζεται σε δύο μεγάλες ομάδες: λογισμικό εφαρμογών και λογισμικό συστήματος.

08) Συμπληρώστε με όσες λέξεις χρειάζεται τα κενά:
1) Ένα υπολογιστικό-σύστημα αποτελείται από το ____________________ και το ____________________ .
2) __________________________ λέγεται το λογισμικό που είναι απαραίτητο για τη λειτουργία του υπολογιστή.

09) Τι είναι ένα ΠΡΟΓΡΑΜΜΑ;

10) Γράψτε τις κυριότερες συσκευές ΕΞΟΔΟΥ του υπολογιστή.

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ: .............................................
ΤΜΗΜΑ: ..............................................................
ΗΜΕΡΟΜΗΝΙΑ: ........................................ 2007

01) Τι είναι BIT και τι BYTE;

02) Γράψτε ΑΠΟΘΗΚΕΥΤΙΚΑ-ΜΕΣΑ που ξέρετε και τη χωρητικότητά τους στο περίπου.

03) Τι είναι HARDWARE και τι SOFTWARE;

04) Αναφέρετε ονομαστικά τα τρία βασικά HARDWARE μέρη.

05) Τι είναι ένα ΠΡΟΓΡΑΜΜΑ;

06) Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ:
1) Σ Λ Το ύψος τοποθέτησης της οθόνης είναι σταθερό για όλους τους χρήστες.
2) Σ Λ Το λογισμικό χωρίζεται σε δύο μεγάλες ομάδες: λογισμικό εφαρμογών και λογισμικό συστήματος.
3) Σ Λ Ο ΣΑΡΩΤΗΣ μας βοηθάει να μεταφέρουμε τις φωτογραφίες μας από την ψηφιακή φωτογραφική μηχανή στον υπολογιστή.
4) Σ Λ Η ΕΡΓΟΝΟΜΙΑ εξετάζει με ποιο τρόπο ο άνθρωπος συνεργάζεται αρμονικά με τους γύρω του.

07) Γράψτε τον ορισμό του ΛΕΙΤΟΥΡΓΙΚΟΥ-ΣΥΣΤΗΜΑΤΟΣ.

08) Συμπληρώστε με όσες λέξεις χρειάζεται τα κενά:
1) __________________________ λέγεται το λογισμικό που είναι απαραίτητο για τη λειτουργία του υπολογιστή.
2) Ένα υπολογιστικό-σύστημα αποτελείται από το ____________________ και το ____________________ .

09) Γράψτε τις κυριότερες συσκευές ΕΞΟΔΟΥ του υπολογιστή.

10) Ποιές είναι οι βασικές ΕΦΑΡΜΟΓΕΣ που κάνουμε με τον υπολογιστή;

ΑΠΑΝΤΗΣΕΙΣ

2006-2007

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:
ΤΑΞΗ:
ΗΜΕΡΟΜΗΝΙΑ:

1. Ποιές είναι οι βασικές ΕΦΑΡΜΟΓΕΣ που κάνουμε με τον υπολογιστή;

2. Τι είναι HARDWARE και τι SOFTWARE;

3. Τι ξέρετε για τη μνήμη RAM;

4. Τι είναι τα ΑΡΧΕΙΑ και τι οι ΦΑΚΕΛΟΙ;

5. Τι είναι ΔΕΔΟΜΕΝΑ και τι ΠΡΟΓΡΑΜΜΑΤΑ;

6. Τι είναι BIT και τι BYTE;

7. Τι είναι ΠΛΗΡΟΦΟΡΙΑ και πως καταλαβαίνουμε (μερικές φορές) από μια λίστα με αρχεία το περιεχόμενό τους;

8. Αναφέρετε ονομαστικά τα τρία βασικά HARDWARE μέρη.

9. Γράψτε τον ορισμό του ΛΕΙΤΟΥΡΓΙΚΟΥ-ΣΥΣΤΗΜΑΤΟΣ.

10. Γράψτε δύο γνωστά λειτουργικά συστήματα.

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:
ΤΑΞΗ:
ΗΜΕΡΟΜΗΝΙΑ:

1. Ποιές είναι οι βασικές ΔΟΥΛΕΙΕΣ που κάνουμε με τον υπολογιστή;

2. Τι ξέρετε για τη μνήμη RAM;

3. Τι είναι HARDWARE και τι SOFTWARE;

4. Τι είναι ΔΕΔΟΜΕΝΑ και τι ΠΡΟΓΡΑΜΜΑΤΑ;

5. Ποιά είναι τα 3 βασικά πράγματα που κάνουμε με κάθε ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ;

6. Τι είναι ΑΡΧΕΙΑ και τι ονόματα τους δίνουμε;

7. Τι είναι ΠΡΟΓΡΑΜΜΑΤΑ-ΣΥΣΤΗΜΑΤΟΣ και τι ΠΡΟΓΡΑΜΜΑΤΑ-ΕΦΑΡΜΟΓΩΝ;

8. Τι είναι το ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ.

9. Αναφέρετε ονομαστικά τα βασικά HARDWARE μέρη.

10. Γράψτε τρία γνωστά λειτουργικά συστήματα.

ΑΠΑΝΤΗΣΕΙΣ

ΕΡΩΤΗΣΕΙΣ:
1. Τι ξέρετε για τη μνήμη RAM;
2. Τι είναι HARDWARE και τι SOFTWARE;
3. Τι είναι ΔΕΔΟΜΕΝΑ και τι ΠΡΟΓΡΑΜΜΑΤΑ;
4. Αναφέρετε τα 7 ΠΡΟΓΡΑΜΜΑΤΑ-ΕΦΑΡΜΟΓΩΝ.
5. Ποιά είναι η σημαντικότερη συσκευή του κομπιούτερ και τί κάνει;
1. Ποιές είναι οι βασικές ΔΟΥΛΕΙΕΣ που κάνουμε με τον υπολογιστή;
2. Τι είναι ΑΡΧΕΙΑ και τι ονόματα τους δίνουμε;
3. Τι είναι ΠΡΟΓΡΑΜΜΑΤΑ-ΣΥΣΤΗΜΑΤΟΣ και τι ΠΡΟΓΡΑΜΜΑΤΑ-ΕΦΑΡΜΟΓΩΝ;
4. Γράψτε είδη ΑΠΟΘΗΚΩΝ που έχει ένα κομπιούτερ.
5. Αναφέρετε ονομαστικά τα βασικά HARDWARE μέρη.

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:
ΤΑΞΗ:
ΗΜΕΡΟΜΗΝΙΑ:

1. Τι ξέρετε για τη μνήμη RAM;

2. Τι είναι HARDWARE και τι SOFTWARE;

3. Τι είναι ΔΕΔΟΜΕΝΑ και τι ΠΡΟΓΡΑΜΜΑΤΑ;

4. Γράψτε τα 7 ΠΡΟΓΡΑΜΜΑΤΑ-ΕΦΑΡΜΟΓΩΝ.

5. Ποιά είναι τα 3 βασικά πράγματα που κάνουμε με κάθε ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ;

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:
ΤΑΞΗ:
ΗΜΕΡΟΜΗΝΙΑ:

1. Ποιές είναι οι βασικές ΔΟΥΛΕΙΕΣ που κάνουμε με τον υπολογιστή;

2. Τι είναι ΑΡΧΕΙΑ και τι ονόματα τους δίνουμε;

3. Τι είναι ΠΡΟΓΡΑΜΜΑΤΑ-ΣΥΣΤΗΜΑΤΟΣ και τι ΠΡΟΓΡΑΜΜΑΤΑ-ΕΦΑΡΜΟΓΩΝ;

4. Τι είναι το ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ. Ποιά λ.σ. ξέρετε;

5. Αναφέρετε ονομαστικά τα βασικά HARDWARE μέρη.

ΑΠΑΝΤΗΣΕΙΣ

Β' ΤΑΞΗ

name::
* McsElln.Β' ΤΑΞΗ@cptIt,

2021-2022

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

01) Συμπληρώστε ότι λείπει:
1. Το κελί στο οποίο βρισκόμαστε λέγεται ...........................................................
2. Στο κάθε κελί δίνεται μοναδικό όνομα που αποτελείται από το γράμμα της στήλης και τον αριθμό της γραμμής στην οποία βρίσκεται και ονομάζεται ........................................................ .

02) Γράψτε τα 3 πράγματα που βάζουμε στα κελιά.

03) Απαντήστε με σωστό/λάθος:
1. Η γραμμή-τύπων εμφανίζει τη διεύθυνση των κελιών.
______σωστό _______λάθος
2. Οι αριθμοί στοιχίζονται αριστερά.
______σωστό _______λάθος
3. Συναρτήσεις είναι ειδικές λέξεις που έχει το πρόγραμμα και κάνουν διάφορες πράξεις.
______σωστό _______λάθος
4. Οι τύποι είναι μια σειρά από κελιά με αριθμούς που κάνουν πράξεις.
______σωστό _______λάθος

04) Τι είναι ΠΕΡΙΟΧΗ-ΚΕΛΙΩΝ και πως τη δηλώνουμε;

05) Τι είναι η ταξινόμηση;

06) Τι κάνει η συνάρτηση =SUM(E3:E16);

07) Τι κάνει η συνάρτηση =COUNT(C3:C16);

08) Στο κελί Α1 έχουμε τον τύπο =AVERAGE(B1:B5). Βρείτε τον τύπο που μπορεί να αντικαταστήσει αυτή τη συνάρτηση και δίνει το ίδιο αποτέλεσμα.

09) Ποια είναι η σημαντικότερη ευκολία των Υπολογιστικών-Φύλλων όταν αλλάζουμε τα περιεχόμενα των κελιών;

10) Ποια είναι τα 3 πράγματα που κάνουμε με ένα Υπολογιστικό-Φύλλο;

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

01) Ποια είναι τα 3 πράγματα που κάνουμε με ένα Υπολογιστικό-Φύλλο;

02) Συμπληρώστε ότι λείπει:
α. Στο κάθε κελί δίνεται μοναδικό όνομα που αποτελείται από το γράμμα της στήλης και τον αριθμό της γραμμής στην οποία βρίσκεται και ονομάζεται ........................................................ .
β. Το κελί στο οποίο βρισκόμαστε λέγεται ...........................................................

03) Γράψτε τα 3 πράγματα που βάζουμε στα κελιά.

04) Απαντήστε με σωστό/λάθος:
1. Οι αριθμοί στοιχίζονται αριστερά.
______σωστό _______λάθος
2. Συναρτήσεις είναι ειδικές λέξεις που έχει το πρόγραμμα και κάνουν διάφορες πράξεις.
______σωστό _______λάθος
3. Η γραμμή-τύπων εμφανίζει τη διεύθυνση των κελιών.
______σωστό _______λάθος
4. Οι τύποι είναι μια σειρά από κελιά με αριθμούς που κάνουν πράξεις.
______σωστό _______λάθος

05) Τι κάνει η συνάρτηση =SUM(E3:E16);

06) Τι είναι ΠΕΡΙΟΧΗ-ΚΕΛΙΩΝ και πως τη δηλώνουμε;

07) Τι είναι η ταξινόμηση;

08) Τι κάνει η συνάρτηση =COUNT(C3:C16);

09) Στο κελί Α1 έχουμε τον τύπο =AVERAGE(B1:B5). Βρείτε τον τύπο που μπορεί να αντικαταστήσει αυτή τη συνάρτηση και δίνει το ίδιο αποτέλεσμα.

10) Ποια είναι η σημαντικότερη ευκολία των Υπολογιστικών-Φύλλων όταν αλλάζουμε τα περιεχόμενα των κελιών;

ΑΠΑΝΤΗΣΕΙΣ

2015-2016
2011-2012

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:

01) Τι είναι ψηφιακή-πληροφορία και τι ψηφιακό-μηχάνημα?

02) Τι είναι ο κώδικας ASCII και τι ο UNICODE; και ποια η βασική διαφορά τους.

03) Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ:
1) Σ Λ Μια εργασία μας τη στιγμή που τη δημιουργούμε αποθηκεύεται στο σκληρό δίσκο.
2) Σ Λ Ο παγκόσμιος-ιστός και το διαδίκτυο είναι το ίδιο πράγμα.
3) Σ Λ Υπηρεσίες λέμε τις δουλειές επικοινωνίας που κάνουμε στο internet.
4) Σ Λ Οι φυλλομετρητές (browsers) είναι συσκευές.

04) Συμπληρώστε τα ΚΕΝΑ με όσες λέξεις χρειάζεται:
1) Οι κοινοί κανόνες που χρησιμοποιούν τα κομπιούτερ για να επικοινωνούν λέγονται ................................................
2) .............................. είναι η μονάδα μέτρησης της ταχύτητας σύνδεσης του ίντερνετ.

05) Τι είναι το INTERNET;

06) Τι είναι η ΑΝΑΛΥΣΗ μιας ψηφιακής εικόνας.

07) Γράψτε τις 3 ποιο σημαντικές ΣΥΣΚΕΥΕΣ ενός υπολογιστή.

08) Γράψτε τους ορισμούς των εννοιών ΙΣΤΟΣΕΛΙΔΑ και ΙΣΤΟΤΟΠΟΣ.

09) Γράψτε 3 είδη ΑΠΟΘΗΚΩΝ του υπολογιστή με σειρά χωρητικότητας.

10) Τί πρέπει να προσέχουμε στο διαδίκτυο;

ΑΠΑΝΤΗΣΕΙΣ

2011-2012

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:
ΤΜΗΜΑ:
ΗΜΕΡΟΜΗΝΙΑ:

01) Τι είναι ο κώδικας ASCII και τι ο UNICODE; και ποια η βασική διαφορά τους.

02) Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ:
1) Σ Λ Μια εργασία μας τη στιγμή που τη δημιουργούμε αποθηκεύεται στο σκληρό δίσκο.
2) Σ Λ Ένας σκληρός δίσκος με 500GB χωράει 500 δις χαρακτήρες σε ASCII.
3) Σ Λ Μια τυπωμένη εικόνα μετατρέπεται σε ψηφιακή με τον εκτυπωτή.
4) Σ Λ Μία εικόνα με ανάλυση 1000x1000 και βάθος χρώματος 16 bit καταλαμβάνει 2MB στο σκληρό δίσκο.

03) Συμπληρώστε τα ΚΕΝΑ με όσες λέξεις χρειάζεται:
1) Το πιο μεγάλο εξάρτημα στο εσωτερικό του υπολογιστή είναι η ................................................
2) .............................. λέγεται ένα πρόγραμμα (εφαρμογή) άν χρησιμοποιεί σύμβολα, εικόνες και ήχους.

04) Τι είναι ψηφιακή-πληροφορία και τι ψηφιακό-μηχάνημα?

05) Τι μπορεί να συνδεθεί στη θύρα USB.

06) Τι είναι η ΑΝΑΛΥΣΗ μιας ψηφιακής εικόνας και τι εννοούμε όταν λέμε ότι η εικόνα έχει ΒΑΘΟΣ ΧΡΩΜΑΤΟΣ 24 bit.

07) Γράψτε τις ΣΥΣΚΕΥΕΣ που πρέπει να παραγγείλετε για να αγοράσετε έναν υπολογιστή κομάτι-κομάτι.

08) Εξηγήστε τι είναι η ΔΕΙΓΜΑΤΟΛΕΙΨΙΑ στον ψηφιακό ήχο και γράψτε πιο είναι το δεύτερο χαρακτηριστικό του ψηφιακού ήχου.

09) Γράψτε 3 είδη ΑΠΟΘΗΚΩΝ του υπολογιστή με σειρά χωρητικότητας.

10) Τι σημαίνουν τα: Kilo, Mega, Giga, Tera, bit, byte.

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:
ΤΜΗΜΑ:
ΗΜΕΡΟΜΗΝΙΑ:

01) Τι είναι ψηφιακή-πληροφορία και τι ψηφιακό-μηχάνημα?

02) Τι είναι ο κώδικας ASCII και τι ο UNICODE;

03) Συμπληρώστε τα ΚΕΝΑ με όσες λέξεις χρειάζεται:
1) .............................. λέγεται ένα πρόγραμμα (εφαρμογή) άν χρησιμοποιεί σύμβολα, εικόνες και ήχους.
2) Το πιο μεγάλο εξάρτημα στο εσωτερικό του υπολογιστή είναι η ................................................

04) Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ:
1) Σ Λ Μια τυπωμένη εικόνα μετατρέπεται σε ψηφιακή με τον εκτυπωτή.
2) Σ Λ Μια εργασία μας τη στιγμή που τη δημιουργούμε αποθηκεύεται στο σκληρό δίσκο.
3) Σ Λ Μία εικόνα με ανάλυση 1000x1000 και βάθος χρώματος 16 bit καταλαμβάνει 2MB στο σκληρό δίσκο.
4) Σ Λ Ένας σκληρός δίσκος με 500GB χωράει 500 δις χαρακτήρες σε ASCII.

05) Τι σημαίνουν τα: Kilo, Mega, Giga, Tera, bit, byte.

06) Τι μπορεί να συνδεθεί στη θύρα USB.

07) Γράψτε τις ΣΥΣΚΕΥΕΣ που πρέπει να παραγγείλετε για να αγοράσετε έναν υπολογιστή κομάτι-κομάτι.

08) Τι είναι η ΑΝΑΛΥΣΗ μιας ψηφιακής εικόνας και τι εννοούμε όταν λέμε ότι η εικόνα έχει ΒΑΘΟΣ ΧΡΩΜΑΤΟΣ 24 bit.

09) Εξηγήστε τι είναι η ΔΕΙΓΜΑΤΟΛΕΙΨΙΑ στον ψηφιακό ήχο και γράψτε πιο είναι το δεύτερο χαρακτηριστικό του ψηφιακού ήχου.

10) Γράψτε 3 είδη ΑΠΟΘΗΚΩΝ του υπολογιστή με τη χωρητικότητά τους στο περίπου.

ΑΠΑΝΤΗΣΕΙΣ

20010-2011

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:
ΤΜΗΜΑ:
ΗΜΕΡΟΜΗΝΙΑ:

01) Τι είναι ο κώδικας ASCII και τι ο UNICODE;

02) Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ:
1) Σ Λ Μια εργασία μας τη στιγμή που τη δημιουργούμε αποθηκεύεται στο σκληρό δίσκο.
2) Σ Λ Ο Πάροχος Υπηρεσιών Διαδικτύου είναι ο υπολογιστής με τον οποίο συνδεόμαστε στο ίντερνετ.
3) Σ Λ Η μονάδα μέτρησης της ταχύτητας επικοινωνίας είναι το bps.
4) Σ Λ Μία εικόνα με ανάλυση 1000x1000 και βάθος χρώματος 16 bit καταλαμβάνει 2 MB στο σκληρό δίσκο.

03) Συμπληρώστε τα ΚΕΝΑ με όσες λέξεις χρειάζεται:
1) Τα δίκτυα, ανάλογα με τη γεωγραφική κάλυψη, τα χωρίζουμε σε ............................. και σε ................................................
2) Το ........................... συνδέει διάφορα δίκτυα και αυτόνομους υπολογιστές μεταξύ τους, χρησιμοποιώντας τις τηλεπικοινωνιακές γραμμές.

04) Τι είναι τα ΠΡΩΤΟΚΟΛΛΑ ΕΠΙΚΟΙΝΩΝΙΑΣ; Γράψτε ένα από τα πιο γνωστά.

05) Ποιος υπολογιστής λέγεται ΕΞΥΠΗΡΕΤΗΤΗΣ και ποιος ΠΕΛΑΤΗΣ;

06) Τι είναι η ΑΝΑΛΥΣΗ μιας ψηφιακής εικόνας και τι εννοούμε όταν λέμε ότι η εικόνα έχει ΒΑΘΟΣ ΧΡΩΜΑΤΟΣ 24 bit.

07) Γράψτε τις ΣΥΣΚΕΥΕΣ που πρέπει να παραγγείλετε για να αγοράσετε έναν υπολογιστή κομάτι-κομάτι.

08) Εξηγήστε τι είναι η ΔΕΙΓΜΑΤΟΛΕΙΨΙΑ στον ψηφιακό ήχο και γράψτε πιο είναι το δεύτερο χαρακτηριστικό του ψηφιακού ήχου.

09) Γράψτε 3 είδη ΑΠΟΘΗΚΩΝ του υπολογιστή με τη χωρητικότητά τους στο περίπου.

10) Τι σημαίνουν τα: Kilo, Mega, Giga, Tera, bit, byte.

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:
ΤΜΗΜΑ:
ΗΜΕΡΟΜΗΝΙΑ:

01) Συμπληρώστε τα ΚΕΝΑ με όσες λέξεις χρειάζεται:
1) Το ........................... συνδέει διάφορα δίκτυα και αυτόνομους υπολογιστές μεταξύ τους, χρησιμοποιώντας τις τηλεπικοινωνιακές γραμμές.
2) Τα δίκτυα, ανάλογα με τη γεωγραφική κάλυψη, τα χωρίζουμε σε ............................. και σε ................................................

02) Γράψτε τις ΣΥΣΚΕΥΕΣ που πρέπει να παραγγείλετε για να αγοράσετε έναν υπολογιστή κομάτι-κομάτι.

03) Τι είναι ο κώδικας ASCII και τι ο UNICODE;

04) Τι είναι τα ΠΡΩΤΟΚΟΛΛΑ ΕΠΙΚΟΙΝΩΝΙΑΣ; Γράψτε ένα από τα πιο γνωστά.

05) Τι είναι η ΑΝΑΛΥΣΗ μιας ψηφιακής εικόνας και τι εννοούμε όταν λέμε ότι η εικόνα έχει ΒΑΘΟΣ ΧΡΩΜΑΤΟΣ 24 bit.

06) Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ:
1) Σ Λ Η μονάδα μέτρησης της ταχύτητας επικοινωνίας είναι το bps.
2) Σ Λ Ο Πάροχος Υπηρεσιών Διαδικτύου είναι ο υπολογιστής με τον οποίο συνδεόμαστε στο ίντερνετ.
3) Σ Λ Μία εικόνα με ανάλυση 1000x1000 και βάθος χρώματος 16 bit καταλαμβάνει 2 MB στο σκληρό δίσκο.
4) Σ Λ Μια εργασία μας τη στιγμή που τη δημιουργούμε αποθηκεύεται στο σκληρό δίσκο.

07) Εξηγήστε τι είναι η ΔΕΙΓΜΑΤΟΛΕΙΨΙΑ στον ψηφιακό ήχο και γράψτε πιο είναι το δεύτερο χαρακτηριστικό του ψηφιακού ήχου.

08) Γράψτε 3 είδη ΑΠΟΘΗΚΩΝ του υπολογιστή με τη χωρητικότητά τους στο περίπου.

09) Τι σημαίνουν τα: Kilo, Mega, Giga, Tera, bit, byte.

10) Ποιος υπολογιστής λέγεται ΕΞΥΠΗΡΕΤΗΤΗΣ και ποιος ΠΕΛΑΤΗΣ;

ΑΠΑΝΤΗΣΕΙΣ

2008-2009

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:
ΤΜΗΜΑ:
ΗΜΕΡΟΜΗΝΙΑ:

01) Τι είναι ο κώδικας ASCII και τι ο UNICODE;

02) Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ:
1) Σ Λ Μια εργασία μας τη στιγμή που τη δημιουργούμε αποθηκεύεται στο σκληρό δίσκο.
2) Σ Λ Ο Πάροχος Υπηρεσιών Διαδικτύου είναι ο υπολογιστής με τον οποίο συνδεόμαστε στο ίντερνετ.
3) Σ Λ Η μονάδα μέτρησης της ταχύτητας επικοινωνίας είναι το bps.
4) Σ Λ Μία ψηφιακή φωτογραφία, όσο τη μεγεθύνουμε, τόσο καλύτερα τη βλέπουμε.

03) Συμπληρώστε τα ΚΕΝΑ με όσες λέξεις χρειάζεται:
1) Τα δίκτυα, ανάλογα με τη γεωγραφική κάλυψη, τα χωρίζουμε σε ............................. και σε ................................................
2) Το ........................... συνδέει διάφορα δίκτυα και αυτόνομους υπολογιστές μεταξύ τους, χρησιμοποιώντας τις τηλεπικοινωνιακές γραμμές.

04) Τι είναι τα ΠΡΩΤΟΚΟΛΛΑ ΕΠΙΚΟΙΝΩΝΙΑΣ; Γράψτε ένα από τα πιο γνωστά.

05) Γράψτε τα δυο βασικά χαρακτηριστικά των ΠΟΛΥΜΕΣΙΚΩΝ εφαρμογών.

06) Τι είναι η ΑΝΑΛΥΣΗ μιας ψηφιακής εικόνας και τι εννοούμε όταν λέμε ότι η εικόνα έχει ΒΑΘΟΣ ΧΡΩΜΑΤΟΣ 24 bit.

07) Γράψτε τις 3 βασικές ΣΥΣΚΕΥΕΣ ενός υπολογιστή και εξηγήστε συνοπτικά τη λειτουργία τους.

08) Εξηγήστε τι είναι η ΔΕΙΓΜΑΤΟΛΕΙΨΙΑ στον ψηφιακό ήχο και γράψτε πιο είναι το δεύτερο χαρακτηριστικό του ψηφιακού ήχου.

09) Γράψτε 3 είδη ΑΠΟΘΗΚΩΝ του υπολογιστή με τη χωρητικότητά τους στο περίπου.

10) Τι σημαίνουν τα: Kilo, Mega, Giga, Tera; Σήμερα, ένας δίσκος 500 GB, πόσα γράμματα χωράει;

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:
ΤΜΗΜΑ:
ΗΜΕΡΟΜΗΝΙΑ:

01) Τι σημαίνουν τα: Kilo, Mega, Giga, Tera; Σήμερα, ένας δίσκος 500 GB, πόσα γράμματα χωράει;

02) Τι είναι ο κώδικας ASCII και τι ο UNICODE;

03) Συμπληρώστε τα ΚΕΝΑ με όσες λέξεις χρειάζεται:
1) Το ........................... συνδέει διάφορα δίκτυα και αυτόνομους υπολογιστές μεταξύ τους, χρησιμοποιώντας τις τηλεπικοινωνιακές γραμμές.
2) Τα δίκτυα, ανάλογα με τη γεωγραφική κάλυψη, τα χωρίζουμε σε ............................. και σε ................................................

04) Γράψτε τα δυο βασικά χαρακτηριστικά των ΠΟΛΥΜΕΣΙΚΩΝ εφαρμογών.

05) Γράψτε τις 3 βασικές ΣΥΣΚΕΥΕΣ ενός υπολογιστή και εξηγήστε συνοπτικά τη λειτουργία τους.

06) Τι είναι η ΑΝΑΛΥΣΗ μιας ψηφιακής εικόνας και τι εννοούμε όταν λέμε ότι η εικόνα έχει ΒΑΘΟΣ ΧΡΩΜΑΤΟΣ 24 bit.

07) Εξηγήστε τι είναι η ΔΕΙΓΜΑΤΟΛΕΙΨΙΑ στον ψηφιακό ήχο και γράψτε πιο είναι το δεύτερο χαρακτηριστικό του ψηφιακού ήχου.

08) Τι είναι τα ΠΡΩΤΟΚΟΛΛΑ ΕΠΙΚΟΙΝΩΝΙΑΣ; Γράψτε ένα από τα πιο γνωστά.

09) Γράψτε 3 είδη ΑΠΟΘΗΚΩΝ του υπολογιστή με τη χωρητικότητά τους στο περίπου.

10) Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ:
1) Σ Λ Η μονάδα μέτρησης της ταχύτητας επικοινωνίας είναι το bps.
2) Σ Λ Μια εργασία μας τη στιγμή που τη δημιουργούμε αποθηκεύεται στο σκληρό δίσκο.
3) Σ Λ Μία ψηφιακή φωτογραφία, όσο τη μεγεθύνουμε, τόσο καλύτερα τη βλέπουμε.
4) Σ Λ Ο Πάροχος Υπηρεσιών Διαδικτύου είναι ο υπολογιστής με τον οποίο συνδεόμαστε στο ίντερνετ.

ΑΠΑΝΤΗΣΕΙΣ

2007-2008

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:
ΤΜΗΜΑ:
ΗΜΕΡΟΜΗΝΙΑ:

1. Ποιές είναι οι βασικές ΔΟΥΛΕΙΕΣ/ΕΦΑΡΜΟΓΕΣ που κάνουμε με τον υπολογιστή;

2. Γιατί ένα κομπιούτερ έχει μνήμη RAM; Ποιο είναι το μειονέκτημά της (αρνητικό);

3. Γράψτε τις βασικές ΣΥΣΚΕΥΕΣ ενός κομπιούτερ.

4. Τι είναι ΠΛΗΡΟΦΟΡΙΑ;

5. Τι είναι τα ΠΡΟΓΡΑΜΜΑΤΑ και τί τα ΔΕΔΟΜΕΝΑ;

6. Δώστε τους ορισμούς του ΑΡΧΕΙΟΥ και του ΦΑΚΕΛΟΥ;

7. Τι είναι τα ΠΡΟΓΡΑΜΜΑΤΑ-ΣΥΣΤΗΜΑΤΟΣ;

8. Γράψτε ονομαστικά τις βασικές ΑΠΟΘΗΚΕΣ που έχει ένα κομπιούτερ.

9. Τι είναι το ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ.

10. Τι κάνουμε με του Λειτουργικό-σύστημα

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:
ΤΜΗΜΑ:
ΗΜΕΡΟΜΗΝΙΑ:

1. Γιατί ένα κομπιούτερ έχει μνήμη RAM; Ποιο είναι το μειονέκτημά της (αρνητικό);

2. Γράψτε τις βασικές ΣΥΣΚΕΥΕΣ ενός κομπιούτερ.

3. Ποιές είναι οι βασικές ΔΟΥΛΕΙΕΣ/ΕΦΑΡΜΟΓΕΣ που κάνουμε με τον υπολογιστή;

4. Τι είναι ΒΙΤ και τι BYTE;

5. Δώστε τους ορισμούς του ΑΡΧΕΙΟΥ και του ΦΑΚΕΛΟΥ;

6. Τι είναι τα ΠΡΟΓΡΑΜΜΑΤΑ και τί τα ΔΕΔΟΜΕΝΑ;

7. Τι είναι το ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ.

8. Γράψτε ονομαστικά τις βασικές ΑΠΟΘΗΚΕΣ που έχει ένα κομπιούτερ.

9. Τι κάνουμε με του Λειτουργικό-σύστημα

10. Τι είναι τα ΠΡΟΓΡΑΜΜΑΤΑ-ΕΦΑΡΜΟΓΩΝ;

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:
ΤΑΞΗ:
ΗΜΕΡΟΜΗΝΙΑ:

1. Τι ξέρετε για τη μνήμη RAM;

2. Τι είναι HARDWARE και τι SOFTWARE;

3. Γράψτε τα είδη ΑΠΟΘΗΚΩΝ που έχει ένα κομπιούτερ.

4. Αναφέρετε τα 7 ΠΡΟΓΡΑΜΜΑΤΑ-ΕΦΑΡΜΟΓΩΝ.

5. Τι είναι το ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ;

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:
ΤΑΞΗ:
ΗΜΕΡΟΜΗΝΙΑ:

1. Ποιές είναι οι βασικές ΔΟΥΛΕΙΕΣ που κάνουμε με τον υπολογιστή;

2. Τι είναι ΑΡΧΕΙΑ και τι ονόματα τους δίνουμε;

3. Τι είναι ΔΕΔΟΜΕΝΑ και τι ΠΡΟΓΡΑΜΜΑΤΑ;

4. Ποιές είναι οι βασικές δουλειές που κάνουμε με το λειτουργικό-σύστημα;

5. Γράψτε και επεξηγείστε τις ομάδες των προγραμμάτων.

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:
ΤΑΞΗ:
ΗΜΕΡΟΜΗΝΙΑ:

1. Ποιές είναι οι βασικές ΔΟΥΛΕΙΕΣ που κάνουμε με τον υπολογιστή;

2. Τι ξέρετε για τη μνήμη RAM;

3. Τι είναι HARDWARE και τι SOFTWARE;

4. Αναφέρετε τις βασικές ΑΠΟΘΗΚΕΣ που έχει ένα κομπιούτερ.

5. Τι είναι ΔΕΔΟΜΕΝΑ και τι ΠΡΟΓΡΑΜΜΑΤΑ;

6. Τι είναι ΑΡΧΕΙΑ και τι ΦΑΚΕΛΟΙ;

7. Τι είναι ΠΡΟΓΡΑΜΜΑΤΑ-ΣΥΣΤΗΜΑΤΟΣ και τι ΠΡΟΓΡΑΜΜΑΤΑ-ΕΦΑΡΜΟΓΩΝ;

8. Τι είναι το ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ.

9. Ποιά είναι τα βασικά πράγματα που κάνουμε με κάθε ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ;

10. Γράψτε τρία γνωστά λειτουργικά συστήματα.

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:...............................................................
ΤΑΞΗ: ................. ΤΜΗΜΑ: ..............

1. Ποιές είναι οι βασικές ΔΟΥΛΕΙΕΣ/ΕΦΑΡΜΟΓΕΣ που κάνουμε με τον υπολογιστή;

2. Τι είναι η μνήμη RAM; Τι μειονέκτημα και τί πλεονέκτημα έχει;

3. Τι είναι HARDWARE και τι SOFTWARE;

4. Αναφέρετε τις βασικές ΑΠΟΘΗΚΕΣ που έχει ένα κομπιούτερ.

5. Δώστε τους ορισμούς του ΑΡΧΕΙΟΥ και του ΦΑΚΕΛΟΥ;

6. Τι είναι ΔΕΔΟΜΕΝΑ και τι ΠΡΟΓΡΑΜΜΑΤΑ;

7. Τι είναι ΠΡΟΓΡΑΜΜΑΤΑ-ΣΥΣΤΗΜΑΤΟΣ και τι ΠΡΟΓΡΑΜΜΑΤΑ-ΕΦΑΡΜΟΓΩΝ;

8. Τι είναι το ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ.

9. Ποιά είναι τα βασικά πράγματα που κάνουμε με κάθε ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ;

10. Πως λέγονται τα προγράμματα που 1) γράφουμε, 2) υπολογίζουμε και 3) καταχωρούμε πληροφορίες από πίνακες ή καρτέλες;

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑ:
ΤΑΞΗ:
ΗΜΕΡΟΜΗΝΙΑ:

1. Ποιές είναι οι βασικές ΔΟΥΛΕΙΕΣ που κάνουμε με τον υπολογιστή;

2. Τί είναι το ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ και τί κάνουμε με αυτό;

3. Ποιές είναι οι δουλειές που κάνουμε στη ΔΙΑΧΕΙΡΙΣΗ ΑΡΧΕΙΩΝ;

4. Ποιές είναι οι ΟΜΑΔΕΣ ΠΡΟΓΡΑΜΜΑΤΩΝ και τι κάνει οι κάθε μία;

5. Τί είναι τα ΑΡΧΕΙΑ και τί ονόματα τους δίνουμε;

ΟΝΟΜΑ:
ΤΑΞΗ:
ΗΜΕΡΟΜΗΝΙΑ:

1. Τί είναι η μνήμη RAM, ποιό είναι το πλεονέκτημά της και ποιό το μειονέκτημά της.

2. Αναφέρεται τα ΠΡΟΓΡΑΜΜΑΤΑ ΕΦΑΡΜΟΓΩΝ που ξέρουμε.

3. Ποιές είναι οι δουλειές που κάνουμε στη ΔΙΑΧΕΙΡΙΣΗ ΑΠΟΘΗΚΩΝ;

4. Ποιές είναι οι ΟΜΑΔΕΣ ΑΡΧΕΙΩΝ και τί είναι η κάθε μία;

5. Πως ΕΚΤΕΛΟΥΜΕ ΠΡΟΓΡΑΜΜΑΤΑ στα 2 λειτουργικά συστήματα που ξέρουμε;

Γ' ΤΑΞΗ

name::
* McsElln.Γ' ΤΑΞΗ@cptIt,

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:
ΤΜΗΜΑ:
ΗΜΕΡΟΜΗΝΙΑ:

01) Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ:
1) Σ Λ ΠΡΟΓΡΑΜΜΑΤΙΣΤΗΣ είναι εκείνος που εκτελεί ένα πρόγραμμα.
2) Σ Λ ΟΛΟΚΛΗΡΩΜΕΝΟ-ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ-ΠΕΡΙΒΑΛΛΟΝ λέγεται το σύνολο των προγραμμάτων που χρησιμοποιούμε για να γράψουμε ένα καινούργιο πρόγραμμα.
3) Σ Λ Υπάρχουν πολλές διαφορετικές γλώσσες για να προγραμματίσουμε έναν υπολογιστή.
4) Σ Λ Η γλώσσα που καταλαβαίνει άμεσα ο υπολογιστής είναι η ΓΛΩΣΣΑ-ΜΗΧΑΝΗΣ.

02) Τι είναι ΓΛΩΣΣΑ-ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ;

03) Τι είναι ΠΡΟΓΡΑΜΜΑ;

04) Τι είναι ΑΛΓΟΡΙΘΜΟΣ;

05) Διαλέξτε το σωστό/σωστά:
1) Τα ΛΑΘΗ που βρίσκουν οι μεταφραστές είναι:
α) λογικά, β) συντακτικά, γ) ερμηνευτικά.
2) οι κατηγορίες των ΜΕΤΑΦΡΑΣΤΩΝ είναι:
α) μεταγλωτιστές, β) εκγλωτιστές, γ) ερμηνευτές, δ) διερμηνείς .

06) Συμπληρώστε με όσες λέξεις χρειάζεται τα κενά:
1) Το ολοκληρωμένο-προγραμματιστικό-περιβάλλον περιλαμβάνει τον μεταφραστή και τον _____________________ .
2) ____________________ είναι η διαδικασία δημιουργίας ενός προγράμματος.

07) Ποια είναι τα ΣΤΑΔΙΑ για την εκτέλεση ενός αλγορίθμου από την ΚΜΕ;

08) Ποιο είναι το ΑΛΦΑΒΗΤΟ της γλώσσας μηχανής του υπολογιστή;

09) Ποια είναι τα βασικά ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ μιας γλώσσας προγραμματισμού;

10) Ποιες είναι οι βασικές ΙΔΙΟΤΗΤΕΣ ενός αλγορίθμου;

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:
ΤΜΗΜΑ:
ΗΜΕΡΟΜΗΝΙΑ:

01) Τι είναι ΓΛΩΣΣΑ-ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ;

02) Τι είναι ΠΡΟΓΡΑΜΜΑ;

03) Τι είναι ΑΛΓΟΡΙΘΜΟΣ;

04) Διαλέξτε το σωστό/σωστά:
1) οι κατηγορίες των ΜΕΤΑΦΡΑΣΤΩΝ είναι:
α) μεταγλωτιστές, β) εκγλωτιστές, γ) ερμηνευτές, δ) διερμηνείς .
2) Τα ΛΑΘΗ που βρίσκουν οι μεταφραστές είναι:
α) λογικά, β) συντακτικά, γ) ερμηνευτικά.

05) Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ:
1) Σ Λ ΟΛΟΚΛΗΡΩΜΕΝΟ-ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ-ΠΕΡΙΒΑΛΛΟΝ λέγεται το σύνολο των προγραμμάτων που χρησιμοποιούμε για να γράψουμε ένα καινούργιο πρόγραμμα.
2) Σ Λ ΠΡΟΓΡΑΜΜΑΤΙΣΤΗΣ είναι εκείνος που εκτελεί ένα πρόγραμμα.
3) Σ Λ Η γλώσσα που καταλαβαίνει άμεσα ο υπολογιστής είναι η ΓΛΩΣΣΑ-ΜΗΧΑΝΗΣ.
4) Σ Λ Υπάρχουν πολλές διαφορετικές γλώσσες για να προγραμματίσουμε έναν υπολογιστή.

06) Συμπληρώστε με όσες λέξεις χρειάζεται τα κενά:
1) ____________________ είναι η διαδικασία δημιουργίας ενός προγράμματος.
2) Το ολοκληρωμένο-προγραμματιστικό-περιβάλλον περιλαμβάνει τον μεταφραστή και τον _____________________ .

07) Ποια είναι τα ΣΤΑΔΙΑ για την εκτέλεση ενός αλγορίθμου από την ΚΜΕ;

08) Ποιες είναι οι βασικές ΙΔΙΟΤΗΤΕΣ ενός αλγορίθμου;

09) Ποια είναι τα βασικά ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ μιας γλώσσας προγραμματισμού;

10) Ποιο είναι το ΑΛΦΑΒΗΤΟ της γλώσσας μηχανής του υπολογιστή;

ΑΠΑΝΤΗΣΕΙΣ

2006

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:
ΤΜΗΜΑ:
ΗΜΕΡΟΜΗΝΙΑ: 2006

1. Ποιές είναι οι βασικές ΕΦΑΡΜΟΓΕΣ που κάνουμε με τον υπολογιστή; Γράψτε δίπλα και την τάξη του γυμνασίου που τη μαθαίνουμε.

2. Γιατί ένα κομπιούτερ έχει μνήμη RAM; Ποιο είναι το μειονέκτημά της (αρνητικό);

3. Γράψτε τις βασικές ΣΥΣΚΕΥΕΣ ενός κομπιούτερ.

4. Τι είναι ΠΛΗΡΟΦΟΡΙΑ και πως αποθηκεύεται στο κομπιούτερ;

5. Τι είναι τα ΠΡΟΓΡΑΜΜΑΤΑ και τί τα ΔΕΔΟΜΕΝΑ;

6. Δώστε τους ορισμούς του ΑΡΧΕΙΟΥ και του ΦΑΚΕΛΟΥ;

7. Τι είναι τα ΠΡΟΓΡΑΜΜΑΤΑ-ΣΥΣΤΗΜΑΤΟΣ;

8. Γράψτε ονομαστικά τις βασικές ΑΠΟΘΗΚΕΣ που έχει ένα κομπιούτερ.

9. Τι είναι το ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ.

10. Τι κάνουμε με του Λειτουργικό-σύστημα

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:
ΤΜΗΜΑ:
ΗΜΕΡΟΜΗΝΙΑ:

1. Ποιές είναι οι βασικές ΔΟΥΛΕΙΕΣ/ΕΦΑΡΜΟΓΕΣ που κάνουμε με τον υπολογιστή;

2. Τι ξέρετε για τη μνήμη RAM; Ποιο είναι το πλεονέκτημα και ποιο το μειονέκτημά της;

3. Γράψτε τις βασικές ΣΥΣΚΕΥΕΣ ενός κομπιούτερ.

4. Τι είναι ΠΛΗΡΟΦΟΡΙΑ;

5. Τι είναι τα ΠΡΟΓΡΑΜΜΑΤΑ και τί τα ΔΕΔΟΜΕΝΑ;

6. Δώστε τους ορισμούς του ΑΡΧΕΙΟΥ και του ΦΑΚΕΛΟΥ;

7. Τι είναι τα ΠΡΟΓΡΑΜΜΑΤΑ-ΣΥΣΤΗΜΑΤΟΣ;

8. Γράψτε ονομαστικά τις βασικές ΑΠΟΘΗΚΕΣ που έχει ένα κομπιούτερ.

9. Τι είναι τα ΠΡΟΓΡΑΜΜΑΤΑ-ΕΦΑΡΜΟΓΩΝ;

10. Τι είναι το ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ.

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:
ΤΑΞΗ: Γ, ΤΜΗΜΑ:
ΗΜΕΡΟΜΗΝΙΑ:

1. Ποιές είναι οι βασικές ΔΟΥΛΕΙΕΣ/ΕΦΑΡΜΟΓΕΣ που κάνουμε με τον υπολογιστή;

2. Τι είναι η μνήμη RAM; Τι μειονέκτημα και τί πλεονέκτημα έχει;

3. Τι είναι HARDWARE και τι SOFTWARE;

4. Αναφέρετε τις βασικές ΑΠΟΘΗΚΕΣ που έχει ένα κομπιούτερ.

5. Τι είναι τα ΠΡΟΓΡΑΜΜΑΤΑ και τί τα ΔΕΔΟΜΕΝΑ;

6. Δώστε τους ορισμούς του ΑΡΧΕΙΟΥ και του ΦΑΚΕΛΟΥ;

7. Τι είναι ΠΡΟΓΡΑΜΜΑΤΑ-ΣΥΣΤΗΜΑΤΟΣ και τι ΠΡΟΓΡΑΜΜΑΤΑ-ΕΦΑΡΜΟΓΩΝ;

8. Τι είναι το ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ.

9. Ποιά είναι τα βασικά πράγματα που κάνουμε με κάθε ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ;

10. Τι είναι το Internet και ποιά είναι τα βασικά πράγματα που κάνουμε με αυτό;

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑ:
ΤΑΞΗ:
ΗΜΕΡΟΜΗΝΙΑ:

1. Ποιές είναι οι βασικές ΔΟΥΛΕΙΕΣ που κάνουμε με τον υπολογιστή;

2. Τί είναι το ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ και τί κάνουμε με αυτό;

3. Ποιές είναι οι δουλειές που κάνουμε στη ΔΙΑΧΕΙΡΙΣΗ ΑΡΧΕΙΩΝ;

4. Ποιές είναι οι ΟΜΑΔΕΣ ΠΡΟΓΡΑΜΜΑΤΩΝ και τι κάνει οι κάθε μία;

5. Τί είναι τα ΑΡΧΕΙΑ και τί ονόματα τους δίνουμε;

ΟΝΟΜΑ:
ΤΑΞΗ:
ΗΜΕΡΟΜΗΝΙΑ:

1. Τί είναι η μνήμη RAM, ποιό είναι το πλεονέκτημά της και ποιό το μειονέκτημά της.

2. Αναφέρεται τα ΠΡΟΓΡΑΜΜΑΤΑ ΕΦΑΡΜΟΓΩΝ που ξέρουμε.

3. Ποιές είναι οι δουλειές που κάνουμε στη ΔΙΑΧΕΙΡΙΣΗ ΑΠΟΘΗΚΩΝ;

4. Ποιές είναι οι ΟΜΑΔΕΣ ΑΡΧΕΙΩΝ και τί είναι η κάθε μία;

5. Πως ΕΚΤΕΛΟΥΜΕ ΠΡΟΓΡΑΜΜΑΤΑ στα 2 λειτουργικά συστήματα που ξέρουμε;

1993-1994

1. ΠΟΙΑ ΕΙΝΑΙ ΤΑ ΒΑΣΙΚΑ ΜΕΡΗ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ, ΠΕΣΤΕ ΜΕ ΛΙΓΑ ΛΟΓΙΑ ΤΙ ΚΑΝΕΙ ΤΟ ΚΑΘΕΝΑ.

2. ΔΙΑΦΟΡΑ ΜΕΤΑΞΥ ΤΗΣ ΜΝΗΜΗΣ RAM ΚΑΙ ΤΩΝ ΒΟΗΘΗΤΙΚΩΝ (ΑΠΟΘΗΚΕΣ) ΜΝΗΜΩΝ.

3. ΤΙ ΕΙΝΑΙ BIT. TI EINAI TO BYTE; ΤΙ ΜΕΤΡΑΕΙ ΤΟ BYTE.

4. ΑΠΟ ΤΙΣ ΠΑΡΑΚΑΤΩ ΜΟΝΑΔΕΣ ΠΟΙΕΣ ΕΙΝΑΙ ΕΙΣΟΔΟΥ ΚΑΙ ΠΟΙΕΣ ΕΙΝΑΙ ΕΞΟΔΟΥ;
ΠΟΝΤΙΚΙ, ΑΝΑΓΝΩΣΤΗΣ ΡΑΒΔΩΤΟΥ ΚΩΔΙΚΑ, ΕΚΤΥΠΩΤΗΣ, ΟΠΤΙΚΟΣ ΑΝΑΓΝΩΣΤΗΣ, ΣΧΕΔΙΟΓΡΑΦΟΣ, ΟΘΟΝΗ.

4. ΤΙ ΕΙΝΑΙ ΤΟ ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ (DOS).

5. ΤΙ ΚΑΝΕΙ Η ΕΝΤΟΛΗ FORMAT B:/S

6. ΤΙ ΚΑΝΕΙ Η ΕΝΤΟΛΗ copy B:M*.* b:

7. ΝΑ ΣΥΝΔΕΣΕΤΕ ΚΑΘΕ ΕΝΤΟΛΗ ΤΗΣ ΠΡΩΤΗΣ ΣΤΗΛΗΣ ΜΕ ΤΗ ΦΡΑΣΗ ΣΤΗ ΔΕΥΤΕΡΗ ΣΤΗΛΗ.
FORMAT  ΕΜΦΑΝΙΖΕΙ ΤΟ ΕΥΡΕΤΗΡΙΟ ΤΗΣ ΔΙΣΚΕΤΑΣ.
COPY    ΑΝΤΙΓΡΑΦΕΙ ΜΙΑ ΔΙΣΚΕΤΑ ΣΕ ΜΙΑ ΑΛΛΗ.
DISKOPY  ΔΙΑΜΟΡΦΩΝΕΙ ΤΗ ΔΙΣΚΕΤΑ.
DIR    ΔΙΑΓΡΑΦΕΙ ΕΝΑ ΑΡΧΕΙΟ ΑΠΟ ΤΗ ΔΙΣΚΕΤΑ.
DEL    ΑΛΛΑΖΕΙ ΚΑΤΑΛΟΓΟ/DIRECTORY.
CD    ΑΝΤΙΓΡΑΦΕΙ ΕΝΑ ΑΡΧΕΙΟ.

9  Α) ΓΙΑΤΙ Ο ΥΠΟΛΟΓΙΣΤΗΣ ΚΑΤΑΛΑΒΑΙΝΕΙ ΔΥΑΔΙΚΟ ΣΥΣΤΗΜΑ.
Β) ΠΟΙΕΣ ΕΙΝΑΙ ΟΙ ΒΑΣΙΚΕΣ ΔΟΥΛΕΙΣ ΠΟΥ ΚΑΝΕΙ Ο ΥΠΟΛΟΓΙΣΤΗΣ ΚΑΙ ΠΩΣ ΛΕΓΟΝΤΑΙ ΤΑ ΑΝΤΙΣΤΟΙΧΑ ΠΡΟΓΡΑΜΜΑΤΑ.

B ΤΡΙΜΗΝΟ

Α ΤΑΞΗ

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

1. Πως μετακινούμε το δρομέα με ΜΙΑ ΚΙΝΗΣΗ:
α) στην αρχή / τέλος γραμμής
β) στην αρχή / τέλος του κειμένου
γ) στην προηγούμενη / επόμενη οθόνη
δ) σε οποιοδήποτε σημείο της οθόνης

2. Με ποια πλήκτρα ΣΒΗΝΟΥΜΕ σύμβολα και ποια είναι η διαφορά τους;

3. Πως ΣΤΟΙΧΙΖΟΥΜΕ το κείμενο;

4. Τι είναι η ΓΡΑΜΜΑΤΟΣΕΙΡΑ και πώς την αλλάζουμε;

5. Γράψτε τους δύο τρόπους που γράφουμε ΚΕΦΑΛΑΙΑ γράμματα και τη διαφορά τους.

6. Πώς ΕΠΙΛΕΓΟΥΜΕ τυχαίο κείμενο;

7. Διαλέξτε το ΣΩΣΤΟ: Ο Επεξεργαστής Κειμένου είναι εφαρμογή που επιτρέπει να:
α) δημιουργήσουμε, διορθώσουμε ένα κείμενο  γ) εισάγουμε εικόνες σε ένα κείμενο
β) αποθηκεύσουμε, ανακτήσουμε ένα κείμενο  δ) όλα τα προηγούμενα.

8. Γράψτε τη διαδικασία με την οποία ΑΝΤΙΓΡΑΦΟΥΜΕ ένα κομμάτι κειμένου.

9. Πώς βάζουμε ΤΟΝΟΥΣ και πώς γράφουμε ένα σύμβολο που δεν υπάρχει στο πληκτρολόγιο και δεν ξέρουμε κάποιον συνδυασμό πλήκτρων για να τον γράψουμε;

10. Πώς αλλάζουμε το ΜΕΓΕΘΟΣ των γραμμάτων;

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

1. Διαλέξτε το ΣΩΣΤΟ: Ο Επεξεργαστής Κειμένου είναι εφαρμογή που επιτρέπει να:
α) δημιουργήσουμε, διορθώσουμε ένα κείμενο  γ) εισάγουμε εικόνες σε ένα κείμενο
β) αποθηκεύσουμε, ανακτήσουμε ένα κείμενο  δ) όλα τα προηγούμενα.

2. Γράψτε τους δύο τρόπους που γράφουμε ΚΕΦΑΛΑΙΑ γράμματα και τη διαφορά τους.

3. Πως μετακινούμε το δρομέα με ΜΙΑ ΚΙΝΗΣΗ:
α) στην προηγούμενη / επόμενη οθόνη
β) σε οποιοδήποτε σημείο της οθόνης
γ) στην αρχή / τέλος γραμμής
δ) στην αρχή / τέλος του κειμένου

4. Πώς βάζουμε ΤΟΝΟΥΣ και πώς γράφουμε ένα σύμβολο που δεν υπάρχει στο πληκτρολόγιο και δεν ξέρουμε κάποιον συνδυασμό πλήκτρων για να τον γράψουμε;

5. Με ποια πλήκτρα ΣΒΗΝΟΥΜΕ σύμβολα και ποια είναι η διαφορά τους;

6. Τι είναι η ΓΡΑΜΜΑΤΟΣΕΙΡΑ και πώς την αλλάζουμε;

7. Πώς ΕΠΙΛΕΓΟΥΜΕ τυχαίο κείμενο;

8. Πώς αλλάζουμε το ΜΕΓΕΘΟΣ των γραμμάτων;

9. Γράψτε τη διαδικασία με την οποία ΑΝΤΙΓΡΑΦΟΥΜΕ ένα κομμάτι κειμένου.

10. Πως ΣΤΟΙΧΙΖΟΥΜΕ το κείμενο;

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

1. Πως μετακινούμε το δρομέα με ΜΙΑ ΚΙΝΗΣΗ:
α) στην αρχή/τέλος γραμμής
β) στην αρχή/τέλος του κειμένου
γ) στην επόμενη/προηγούμενη οθόνης
δ) σε οποιοδήποτε σημείο της οθόνης

2. Με ποιά πλήκτρα ΣΒΗΝΟΥΜΕ σύμβολα και ποιά είναι η διαφορά τους;

3. Πως ΣΤΟΙΧΙΖΟΥΜΕ το κείμενο;

4. Τί είναι η ΓΡΑΜΜΑΤΟΣΕΙΡΑ και πώς την αλλάζουμε;

5. Γράψτε τους δύο τρόπους που γράφουμε ΚΕΦΑΛΑΙΑ γράμματα.

6. Πώς ΕΠΙΛΕΓΟΥΜΕ:
α) λέξη
β) γραμμή
γ) όλο το κείμενο
δ) τυχαίο κείμενο

7. Πώς βάζουμε το ΕΥΡΩ;

8. Γράψτε τη διαδικασία με την οποία ΑΝΤΙΓΡΑΦΟΥΜΕ ένα κομμάτι κειμένου.

9. Πώς βάζουμε ΤΟΝΟΥΣ;

10. Πώς αλλάζουμε το ΜΕΓΕΘΟΣ των γραμμάτων;

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

1. Με ποιά πλήκτρα ΣΒΗΝΟΥΜΕ σύμβολα και ποιά είναι η διαφορά τους;

2. Πώς βάζουμε ΤΟΝΟΥΣ;

3. Τί είναι η ΓΡΑΜΜΑΤΟΣΕΙΡΑ και πώς την αλλάζουμε;

4. Πως μετακινούμε το δρομέα με ΜΙΑ ΚΙΝΗΣΗ:
α) στην αρχή/τέλος γραμμής
β) στην αρχή/τέλος του κειμένου
γ) στην αρχή/τέλος οθόνης
δ) σε οποιοδήποτε σημείο της οθόνης

5. Πώς αλλάζουμε το ΜΕΓΕΘΟΣ των γραμμάτων;

6. Γράψτε τους δύο τρόπους που γράφουμε ΚΕΦΑΛΑΙΑ γράμματα.

7. Πώς ΕΠΙΛΕΓΟΥΜΕ:
α) λέξη
β) γραμμή
γ) όλο το κείμενο
δ) τυχαίο κείμενο

8. Πώς βάζουμε το ΕΥΡΩ;

9. Γράψτε τη διαδικασία με την οποία ΑΝΤΙΓΡΑΦΟΥΜΕ ένα κομμάτι κειμένου.

10. Πως ΣΤΟΙΧΙΖΟΥΜΕ το κείμενο;

ΑΠΑΝΤΗΣΕΙΣ

Β ΤΑΞΗ

2016

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

01) Συμπληρώστε ότι λείπει:
1. Το κελί στο οποίο βρισκόμαστε λέγεται ...........................................................
2. Στο κάθε κελί δίνεται μοναδικό όνομα που αποτελείται από το γράμμα της στήλης και τον αριθμό της γραμμής στην οποία βρίσκεται και ονομάζεται ........................................................ .

02) Γράψτε τα 3 πράγματα που βάζουμε στα κελιά.

03) Απαντήστε με σωστό/λάθος:
1. Η γραμμή-τύπων εμφανίζει τη διεύθυνση των κελιών.
______σωστό _______λάθος
2. Οι αριθμοί στοιχίζονται αριστερά.
______σωστό _______λάθος
3. Συναρτήσεις είναι ειδικές λέξεις που έχει το πρόγραμμα και κάνουν διάφορες πράξεις.
______σωστό _______λάθος
4. Οι τύποι είναι μια σειρά από κελιά με αριθμούς που κάνουν πράξεις.
______σωστό _______λάθος

04) Τι είναι ΠΕΡΙΟΧΗ-ΚΕΛΙΩΝ και πως τη δηλώνουμε;

05) Τι είναι η ταξινόμηση;

06) Τι κάνει η συνάρτηση =SUM(E3:E16);

07) Τι κάνει η συνάρτηση =COUNTIF(C3:C16;"Καλλιτεχνικά");

08) Στο κελί Α1 έχουμε τον τύπο =AVERAGE(B1:B5). Βρείτε τον τύπο που μπορεί να αντικαταστήσει αυτή τη συνάρτηση και δίνει το ίδιο αποτέλεσμα.

09) Ποια είναι η σημαντικότερη ευκολία των Υπολογιστικών-Φύλλων όταν αλλάζουμε τα περιεχόμενα των κελιών;

10) Ποια είναι τα 3 πράγματα που κάνουμε με ένα Υπολογιστικό-Φύλλο;

ΑΠΑΝΤΗΣΕΙΣ

2010

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

01) Συμπληρώστε ότι λείπει:
2. Υπάρχουν δύο είδη Υπηρεσιών Αναζήτησης στον Παγκόσμιο Ιστό: οι ...................................... και οι ........................................................
1. Στο κάθε κελί δίνεται μοναδικό όνομα που αποτελείται από το γράμμα της στήλης και τον αριθμό της γραμμής στην οποία βρίσκεται και ονομάζεται ........................................................ .

02) Γράψτε τα 3 πράγματα που βάζουμε στα κελιά.

03) Απαντήστε με σωστό/λάθος:
1. Όλα τα αποτελέσματα μιας Μηχανής Αναζήτησης περιέχουν πληροφορίες σχετικές με το θέμα που θέλουμε.
______σωστό _______λάθος
2. Οι θεματικοί κατάλογοι περιέχουν ιστοσελίδες οργανωμένες σε θεματικές κατηγορίες.
______σωστό _______λάθος
3. Συναρτήσεις είναι ειδικές λέξεις που έχει το πρόγραμμα και κάνουν διάφορες πράξεις.
______σωστό _______λάθος
4. Οι τύποι είναι μια σειρά από κελιά με αριθμούς που κάνουν πράξεις.
______σωστό _______λάθος

04) Τι είναι ΠΕΡΙΟΧΗ-ΚΕΛΙΩΝ και πως τη δηλώνουμε;

05) Τι είναι οι Μηχανές αναζήτησης;

06) Τι κάνει η συνάρτηση =SUM(E3:E16);

07) Τι κάνει η συνάρτηση =COUNTIF(C3:C16;"Καλλιτεχνικά");

08) Στο κελί Α1 έχουμε τον τύπο =AVERAGE(B1:B5). Βρείτε τον τύπο που μπορεί να αντικαταστήσει αυτή τη συνάρτηση και δίνει το ίδιο αποτέλεσμα.

09) Ποια είναι η σημαντικότερη ευκολία των Υπολογιστικών-Φύλλων όταν αλλάζουμε τα περιεχόμενα των κελιών;

10) Ποια είναι τα 3 πράγματα που κάνουμε με ένα Υπολογιστικό-Φύλλο;

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

01) Απαντήστε με σωστό/λάθος:
1. Όλα τα αποτελέσματα μιας Μηχανής Αναζήτησης περιέχουν πληροφορίες σχετικές με το θέμα που θέλουμε.
______σωστό _______λάθος
2. Οι θεματικοί κατάλογοι περιέχουν ιστοσελίδες οργανωμένες σε θεματικές κατηγορίες.
______σωστό _______λάθος
3. Συναρτήσεις είναι ειδικές λέξεις που έχει το πρόγραμμα και κάνουν διάφορες πράξεις.
______σωστό _______λάθος
4. Οι τύποι είναι μια σειρά από κελιά με αριθμούς που κάνουν πράξεις.
______σωστό _______λάθος

02) Τι είναι οι Μηχανές αναζήτησης;

03) Γράψτε τα 3 πράγματα που βάζουμε στα κελιά.

04) Τι κάνει η συνάρτηση =COUNTIF(C3:C16;"Καλλιτεχνικά");

05) Τι είναι ΠΕΡΙΟΧΗ-ΚΕΛΙΩΝ και πως τη δηλώνουμε;

06) Στο κελί Α1 έχουμε τον τύπο =AVERAGE(B1:B5). Βρείτε τον τύπο που μπορεί να αντικαταστήσει αυτή τη συνάρτηση και δίνει το ίδιο αποτέλεσμα.

07) Ποια είναι η σημαντικότερη ευκολία των Υπολογιστικών-Φύλλων όταν αλλάζουμε τα περιεχόμενα των κελιών;

08) Ποια είναι τα 3 πράγματα που κάνουμε με ένα Υπολογιστικό-Φύλλο;

09) Τι κάνει η συνάρτηση =SUM(E3:E16);

10) Συμπληρώστε ότι λείπει:
2. Υπάρχουν δύο είδη Υπηρεσιών Αναζήτησης στον Παγκόσμιο Ιστό: οι ...................................... και οι ........................................................
1. Στο κάθε κελί δίνεται μοναδικό όνομα που αποτελείται από το γράμμα της στήλης και τον αριθμό της γραμμής στην οποία βρίσκεται και ονομάζεται ........................................................ .

ΑΠΑΝΤΗΣΕΙΣ

2009

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

01) Γράψτε τα 3 πράγματα που βάζουμε στα κελιά.

02) Τι είναι οι Μηχανές αναζήτησης;

03) Τι κάνει η συνάρτηση =COUNTIF(C3:C16;"Καλλιτεχνικά");

04) Απαντήστε με σωστό/λάθος:
1. Όλα τα αποτελέσματα μιας Μηχανής Αναζήτησης περιέχουν πληροφορίες σχετικές με το θέμα που θέλουμε.
______σωστό _______λάθος
2. Οι θεματικοί κατάλογοι περιέχουν ιστοσελίδες οργανωμένες σε θεματικές κατηγορίες.
______σωστό _______λάθος
3. Συναρτήσεις είναι ειδικοί τύποι που έχει το πρόγραμμα και κάνουν διάφορες πράξεις.
______σωστό _______λάθος
4. Οι τύποι είναι μια σειρά από κελιά με αριθμούς.
______σωστό _______λάθος

05) Τι είναι ΠΕΡΙΟΧΗ-ΚΕΛΙΩΝ και πως τη δηλώνουμε;

06) Στο κελί Α1 έχουμε τον τύπο =AVERAGE(B1:B5). Βρείτε τον τύπο που μπορεί να αντικαταστήσει αυτή τη συνάρτηση.

07) Ποια είναι η σημαντικότερη ευκολία των Υπολογιστικών-Φύλλων όταν αλλάζουμε τα περιεχόμενα των κελιών;

08) Ποια είναι τα 3 πράγματα που κάνουμε με ένα Υπολογιστικό-Φύλλο;

09) Τι κάνει η συνάρτηση =SUM(E3:E16);

10) Συμπληρώστε ότι λείπει:
2. Υπάρχουν δύο είδη Υπηρεσιών Αναζήτησης στον Παγκόσμιο Ιστό: οι ...................................... και οι ........................................................
1. Στο κάθε κελί δίνεται μοναδικό όνομα που αποτελείται από το γράμμα της στήλης και τον αριθμό της γραμμής στην οποία βρίσκεται και ονομάζεται ........................................................ .

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

01) Συμπληρώστε ότι λείπει:
1. Στο κάθε κελί δίνεται μοναδικό όνομα που αποτελείται από το γράμμα της στήλης και τον αριθμό της γραμμής στην οποία βρίσκεται και ονομάζεται ........................................................ .
2. Υπάρχουν δύο είδη Υπηρεσιών Αναζήτησης στον Παγκόσμιο Ιστό: οι ...................................... και οι ........................................................

02) Απαντήστε με σωστό/λάθος:
1. Συναρτήσεις είναι ειδικοί τύποι που έχει το πρόγραμμα και κάνουν διάφορες πράξεις.
______σωστό _______λάθος
2. Οι θεματικοί κατάλογοι περιέχουν ιστοσελίδες οργανωμένες σε θεματικές κατηγορίες.
______σωστό _______λάθος
3. Όλα τα αποτελέσματα μιας Μηχανής Αναζήτησης περιέχουν πληροφορίες σχετικές με το θέμα που θέλουμε.
______σωστό _______λάθος
4. Οι τύποι είναι μια σειρά από κελιά με αριθμούς.
______σωστό _______λάθος

03) Γράψτε τα 3 πράγματα που βάζουμε στα κελιά.

04) Στο κελί Α1 έχουμε τον τύπο =AVERAGE(B1:B5). Βρείτε τον τύπο που μπορεί να αντικαταστήσει αυτή τη συνάρτηση.

05) Τι κάνει η συνάρτηση =COUNTIF(C3:C16;"Καλλιτεχνικά");

06) Τι είναι ΠΕΡΙΟΧΗ-ΚΕΛΙΩΝ και πως τη δηλώνουμε;

07) Ποια είναι τα 3 πράγματα που κάνουμε με ένα Υπολογιστικό-Φύλλο;

08) Τι κάνει η συνάρτηση =SUM(E3:E16);

09) Ποια είναι η σημαντικότερη ευκολία των Υπολογιστικών-Φύλλων όταν αλλάζουμε τα περιεχόμενα των κελιών;

10) Τι είναι οι Μηχανές αναζήτησης;

ΑΠΑΝΤΗΣΕΙΣ

2005

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

1) (10 μονάδες)
Συμπληρώστε ότι λείπει:
1. Η γραμμή όπου εμφανίζονται τα περιεχόμενα ενός κελιού ονομάζεται ........................................................ .
2. Το κελί στο οποίο εφαρμόζεται κάθε ενέργειά μας ονομάζεται ...................................... κελί.

Απαντήστε με σωστό/λάθος:
3. 'Διεύθυνση κελιού' είναι η γραμμή και η στήλη στην οποία βρίσκεται.
______σωστό _______λάθος
4. Συναρτήσεις είναι ειδικές λέξεις που έχει το πρόγραμμα και κάνουν διάφορες πράξεις.
______σωστό _______λάθος
5. Στα κυκλικά-γραφήματα μπορούμε να αναπαραστήσουμε πολλές στήλες δεδομένων.
______σωστό _______λάθος
6. Ο καλλίτερος τρόπος για να μετακινούμαστε ανάμεσα στα κελιά είναι το ποντίκι.
______σωστό _______λάθος
7. Ένα βιβλίο-εργασίας μπορεί να έχει πολλά φύλλα-εργασίας.
______σωστό _______λάθος
8. Γραμμή-τύπου είναι μια σειρά από κελιά με αριθμούς.
______σωστό _______λάθος
9. Αν δούμε σε ένα κελί σύμβολα δίεσης (#) σημαίνει οτι υπάρχει τύπος και δεν χωράει.
______σωστό _______λάθος
10. Το Υπολογιστικό φύλλο που χρησιμοποιούμε είναι το Microsoft Excel
______σωστό _______λάθος

2) (2 μονάδες) Γράψτε τα 3 πράγματα που βάζουμε στα κελιά.

3) (2 μονάδες) Στο κελί Α1 έχουμε τον τύπο =AVERAGE(B1:B5). Βρείτε τον τύπο που μπορεί να αντικαταστήσει αυτή τη συνάρτηση.

4) (2 μονάδες) Τι είναι τα ΓΡΑΦΗΜΑΤΑ και πώς τα φτιάχνουμε;

5) (2 μονάδες) Τι είναι ΠΕΡΙΟΧΗ και πως τη δηλώνουμε;

6) (2 μονάδες) Τί μπορούμε να κάνουμε με ένα Υπολογιστικό-Φύλλο; (3 πράγματα)

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

1) (2 μονάδες) Στο κελί Α1 έχουμε τον τύπο: =AVERAGE(B1:B5). Βρείτε τον τύπο που μπορεί να αντικαταστήσει αυτή τη συνάρτηση.

2) (2 μονάδες) Τι είναι τα ΓΡΑΦΗΜΑΤΑ και πώς τα φτιάχνουμε;

3) (2 μονάδες) Γράψτε τα 3 πράγματα που βάζουμε στα κελιά.

4) (2 μονάδες) Τί μπορούμε να κάνουμε με ένα Υπολογιστικό-Φύλλο; (3 πράγματα)

5) (2 μονάδες) Τι είναι ΠΕΡΙΟΧΗ και πως τη δηλώνουμε;

6) (10 μονάδες)
Απαντήστε με σωστό/λάθος:
1. Το Υπολογιστικό φύλλο που χρησιμοποιούμε είναι το Microsoft Excel
______σωστό _______λάθος
2. 'Διεύθυνση κελιού' είναι η γραμμή και η στήλη στην οποία βρίσκεται.
______σωστό _______λάθος
3. Ένα βιβλίο-εργασίας μπορεί να έχει πολλά φύλλα-εργασίας.
______σωστό _______λάθος
4. Συναρτήσεις είναι ειδικές λέξεις που έχει το πρόγραμμα και κάνουν διάφορες πράξεις.
______σωστό _______λάθος
5. Ο καλλίτερος τρόπος για να μετακινούμαστε ανάμεσα στα κελιά είναι το ποντίκι.
______σωστό _______λάθος
6. Στα κυκλικά-γραφήματα μπορούμε να αναπαραστήσουμε πολλές στήλες δεδομένων.
______σωστό _______λάθος
7. Γραμμή-τύπου είναι η περιοχή όπου εμφανίζονται τα περιεχόμενα των κελιών.
______σωστό _______λάθος
8. Αν δούμε σε ένα κελί σύμβολα δίεσης (#) σημαίνει οτι υπάρχει τύπος και δεν χωράει.
______σωστό _______λάθος

Συμπληρώστε ότι λείπει:
9. Το κελί στο οποίο εφαρμόζεται κάθε ενέργειά μας ονομάζεται ...................................... κελί.
10. Η γραμμή όπου εμφανίζονται τα περιεχόμενα ενός κελιού ονομάζεται ........................................................ .

ΑΠΑΝΤΗΣΕΙΣ

ΣΣ ΛΣ ΛΛ ΛΛ

2004

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

1) (5 μονάδες) Σημειώστε με κύκλο το σωστό/λάθος:
1. Σ Λ Μπορούμε να μετονομάσουμε ένα αρχείο με κατάληξη .exe σε κάποιο άλλο με άλλη κατάληξη χωρίς να δημιουργήσουμε πρόβλημα στη χρήση του αρχείου.
2. Σ Λ Η εντολή "?.bmp" αναζητά όλα τα αρχεία με κατάληξη .bmp.
3. Σ Λ Κατά τη μορφοποίηση μιας αποθήκης τα περιεχόμενά της παραμένουν αναλλοίωτα.
4. Σ Λ Τα πρωτόκολλα επικοινωνίας στο ιντερνέτ είναι συμβάσεις/κανόνες που χρησιμοποιούνται για την επικοινωνία των πληροφοριών στο διαδίκτυο.
5. Σ Λ Η διεύθυνση www@ypepth.gr είναι διεύθυνση του παγκόσμιου ιστού.

2) (2 μονάδες) Γράψτε τη διαδικασία μεταφοράς αρχείου από φάκελο σε φάκελο.

3) (2 μονάδες) Πώς δημιουργούμε φάκελο;

4) (2 μονάδες) Πώς σβήνουμε αρχείο;

4) (2 μονάδες) Γράψτε τη διαδικασία αλλαγής ονόματος φακέλου.

6) (2 μονάδες) Τι είναι το Ιντερνέτ;

7) (3 μονάδες) Γράψτε τις 7 υπηρεσίες του ιντερνέτ.

8) (2 μονάδες) Τι είναι οι "παροχείς υπηρεσιών ιντερνέτ (ISP)";

ΑΠΑΝΤΗΣΕΙΣ

Α ΟΜΑΔΑ:
1. ΓΡΑΨΤΕ ΤΙΣ 4 ΟΜΑΔΕΣ ΤΩΝ ΤΙΜΩΝ ΜΕ ΕΝΑ ΠΑΡΑΔΕΙΓΜΑ.
2. ΠΩΣ ΠΡΟΣΘΕΤΟΥΜΕ ΚΑΙΝΟΥΡΓΙΑ ΚΕΝΗ ΓΡΑΜΜΗ;
3. ΤΙ ΕΙΝΑΙ ΤΑ ΔΙΑΓΡΑΜΜΑΤΑ ΚΑΙ ΠΩΣ ΤΑ ΦΤΙΑΧΝΟΥΜΕ;
4. ΓΡΑΨΤΕ ΤΟΝ ΣΥΝΘΕΤΟ ΤΥΠΟ ΠΟΥ ΥΠΟΛΟΓΙΖΕΙ ΤΟ ΑΘΡΟΙΣΜΑ ΤΩΝ ΚΕΛΙΩΝ C3 ΜΕΧΡΙ C10 ΚΑΙ ΣΤΡΟΓΓΥΛΟΠΟΙΕΙ ΤΟ ΑΠΟΤΕΛΕΣΜΑ ΣΕ ΑΚΕΡΑΙΟ ΜΕ ΤΙΣ ΣΥΝΑΡΤΗΣΕΙΣ SUM ΚΑΙ ROUND.
5. ΤΙ ΕΙΝΑΙ Η ΜΝΗΜΗ RAM;

Β ΟΜΑΔΑ:
1. ΕΞΗΓΕΙΣΤΕ ΤΙ ΕΙΝΑΙ ΤΑ 2 ΠΡΑΓΜΑΤΑ ΠΟΥ ΒΑΖΟΥΜΕ ΣΤΑ ΚΕΛΙΑ.
2. ΠΩΣ ΔΙΟΡΘΩΝΟΥΜΕ ΤΑ ΠΕΡΙΕΧΟΜΕΝΑ ΕΝΟΣ ΚΕΛΙΟΥ;
3. ΤΙ ΕΙΝΑΙ ΠΕΡΙΟΧΗ ΚΑΙ ΠΩΣ ΤΗ ΔΗΛΩΝΟΥΜΕ;
4. ΓΡΑΨΤΕ ΤΟΝ ΣΥΝΘΕΤΟ ΤΥΠΟ ΠΟΥ ΥΠΟΛΟΓΙΖΕΙ ΤΟΝ ΜΕΣΟ ΟΡΟ ΤΩΝ ΚΕΛΙΩΝ C3 ΜΕΧΡΙ C10 ΜΕ ΤΙΣ ΣΥΝΑΡΤΗΣΕΙΣ SUM ΚΑΙ COUNT.
5. ΤΙ ΕΙΝΑΙ ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ ΚΑΙ ΤΙ ΚΑΝΟΥΜΕ ΜΕ ΑΥΤΟ;

Γ ΤΑΞΗ

2016|2015

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:
ΤΜΗΜΑ:

01) ΑΝΤΙΣΤΟΙΧΙΣΤΕ τη σωστή ενέργεια στην αντίστοιχη εντολή:
ΕΝΤΟΛΗ    ΕΝΕΡΓΕΙΑ
α) δείξε    1) το κομπιούτερ εμφανίζει πληροφορία σε παράθυρο.
β) ερώτηση  2) το κομπιούτερ εμφανίζει πληροφορία στο κέντρο-εντολών.
γ) ανακοίνωση  3) ο χρήστης δίνει πληροφορία στο κομπιούτερ.
δ) επανάλαβε  4) το κομπιούτερ εκτελεί πολλές φορές ένα σύνολο εντολών.

02) Τι είναι οι ΔΙΑΔΙΚΑΣΙΕΣ στη Logo;

03) Τι ΣΧΗΜΑ κάνουν οι εντολές:
  σβγ στκ
  επανάλαβε 360[μπ 0 δε 1]

04) Πως ΔΗΜΙΟΥΡΓΟΥΜΕ τις διαδικασίες στο MicroWorlds Pro;

05) Γράψτε τις ΕΝΤΟΛΕΣ που κάνουν το σχήμα της σκάλας:
(η τελεία με το βελάκι δείχνει την αρχή της χελώνας)

06) Φτιάξτε τη ΔΙΑΔΙΚΑΣΙΑ που δημιουργεί ΠΕΝΤΑΓΩΝΟ με πλευρά 100 pixel.

07) Πως ΕΚΤΕΛΟΥΜΕ τις διαδικασίες στο MicroWorlds Pro;

08) Γράψτε τις ΕΝΤΟΛΕΣ που υψώνουν στο τετράγωνο τον αριθμό που δίνει ο χρήστης.

09) Τι ΣΧΗΜΑ κάνουν οι εντολές:
 σβγ στκ δε 45
 μπ 100 δε 90 μπ 100
 μπ 100 αρ 90 μπ 100

10) Γράψτε τις ΕΝΤΟΛΕΣ που κάνουν το σχήμα Π:

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:
ΤΜΗΜΑ:

01) Πώς ΔΗΜΙΟΥΡΓΟΥΜΕ τις διαδικασίες στο MicroWorlds Pro;

02) Φτιάξτε τη ΔΙΑΔΙΚΑΣΙΑ που δημιουργεί ΕΦΤΑΓΩΝΟ πλευράς 100 pixel.

03) Τι ΣΧΗΜΑ κάνουν οι εντολές:
  σβγ στκ
  επανάλαβε 360[μπ 1 δε 0]

04) Τί είναι οι ΔΙΑΔΙΚΑΣΙΕΣ στη Logo;

05) Γράψτε τις ΕΝΤΟΛΕΣ που κάνουν το σχήμα της σκάλας:
(η τελεία με το βελάκι δείχνει την αρχή της χελώνας)

06) Πως ΕΚΤΕΛΟΥΜΕ τις διαδικασίες στο MicroWorlds Pro;

07) Γράψτε τις ΕΝΤΟΛΕΣ που υψώνουν στον κύβο τον αριθμό που δίνει ο χρήστης.

08) Τι ΣΧΗΜΑ κάνουν οι εντολές:
 σβγ στκ δε 45
 μπ 100 δε 90 μπ 100
 μπ 100 αρ 90 δε 100

09) Γράψτε τις ΕΝΤΟΛΕΣ που κάνουν το σχήμα Π:

10) ΑΝΤΙΣΤΟΙΧΙΣΤΕ τη σωστή ενέργεια στην αντίστοιχη εντολή:
ΕΝΤΟΛΗ    ΕΝΕΡΓΕΙΑ
α) επανάλαβε  1) το κομπιούτρ εμφανίζει πληροφορία σε παράθυρο.
β) δείξε    2) το κομπιούτερ επαναλαμβάνει ένα σύνολο εντολών.
γ) ερώτηση  3) το κομπιούτερ εμφανίζει πληροφορία στο κέντρο-εντολών.
δ) ανακοίνωση  4) ο χρήστης δίνει πληροφορία στο κομπιούτερ.

ΑΠΑΝΤΗΣΕΙΣ

2013

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:
ΤΜΗΜΑ:

01) ΑΝΤΙΣΤΟΙΧΙΣΤΕ τη σωστή ενέργεια στην αντίστοιχη εντολή:
ΕΝΤΟΛΗ    ΕΝΕΡΓΕΙΑ
α) δείξε    1) το κομπιούτερ εμφανίζει πληροφορία σε παράθυρο.
β) ερώτηση  2) το κομπιούτερ εμφανίζει πληροφορία στο κέντρο-εντολών.
γ) ανακοίνωση  3) ο χρήστης δίνει πληροφορία στο κομπιούτερ.
δ) επανάλαβε  4) εκτελεί πολλές φορές ένα σύνολο εντολών.

02) Τι είναι οι ΔΙΑΔΙΚΑΣΙΕΣ στη Logo;

03) Τι ΣΧΗΜΑ κάνουν οι εντολές:
  σβγ στκ
  επανάλαβε 360[μπ 1 δε 1]

04) Πως ΔΗΜΙΟΥΡΓΟΥΜΕ τις διαδικασίες στο MicroWorlds Pro;

05) Γράψτε τις ΕΝΤΟΛΕΣ που κάνουν το σχήμα (σκάλα):

06) Φτιάξτε τη ΔΙΑΔΙΚΑΣΙΑ που δημιουργεί ΠΕΝΤΑΓΩΝΟ με πλευρά 100 pixel.

07) Πως ΕΚΤΕΛΟΥΜΕ τις διαδικασίες στο MicroWorlds Pro;

08) Γράψτε τη ΔΙΑΔΙΚΑΣΙΑ που μετατρέπει ευρώ σε δραχμές (1€=340,75δρχ).

09) Τι ΣΧΗΜΑ κάνουν οι εντολές:
 σβγ στκ δε 45
 μπ 100 δε 90 μπ 100
 μπ 100 αρ 90 μπ 100

10) Γράψτε τις ΕΝΤΟΛΕΣ που κάνουν το σχήμα Π:

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:
ΤΜΗΜΑ:

01) Πώς ΔΗΜΙΟΥΡΓΟΥΜΕ τις διαδικασίες στο MicroWorlds Pro;

02) Φτιάξτε τη ΔΙΑΔΙΚΑΣΙΑ που δημιουργεί ΕΦΤΑΓΩΝΟ πλευράς 100 pixel.

03) Τι ΣΧΗΜΑ κάνουν οι εντολές:
  σβγ στκ
  επανάλαβε 360[μπ 1 δε 0]

04) Τί είναι οι ΔΙΑΔΙΚΑΣΙΕΣ στη Logo;

05) Γράψτε τις ΕΝΤΟΛΕΣ που κάνουν το σχήμα (σκαλα):

06) Πως ΕΚΤΕΛΟΥΜΕ τις διαδικασίες στο MicroWorlds Pro;

07) Γράψτε τη ΔΙΑΔΙΚΑΣΙΑ που μετατρέπει δραχμές σε ευρώ (1€=340,75δρχ).

08) Τι ΣΧΗΜΑ κάνουν οι εντολές:
 σβγ στκ δε 45
 μπ 100 δε 90 μπ 100
 μπ 100 αρ 90 δε 100

09) Γράψτε τις ΕΝΤΟΛΕΣ που κάνουν το σχήμα Π:

10) ΑΝΤΙΣΤΟΙΧΙΣΤΕ τη σωστή ενέργεια στην αντίστοιχη εντολή:
ΕΝΤΟΛΗ    ΕΝΕΡΓΕΙΑ
α) επανάλαβε  1) το κομπιούτρ εμφανίζει πληροφορία σε παράθυρο.
β) δείξε    2) το κομπιούτερ επαναλαμβάνει ένα σύνολο εντολών.
γ) ερώτηση  3) το κομπιούτερ εμφανίζει πληροφορία στο κέντρο-εντολών.
δ) ανακοίνωση  4) ο χρήστης δίνει πληροφορία στο κομπιούτερ.

ΑΠΑΝΤΗΣΕΙΣ

2012

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:
ΤΜΗΜΑ:

01) ΑΝΤΙΣΤΟΙΧΙΣΤΕ τη σωστή ενέργεια στην αντίστοιχη εντολή:
ΕΝΤΟΛΗ    ΕΝΕΡΓΕΙΑ
α) δείξε    1) εμφανίζει πληροφορία σε παράθυρο.
β) ερώτηση  2) εμφανίζει πληροφορία στο κέντρο-εντολών.
γ) ανακοίνωση  3) ο χρήστης δίνει πληροφορία σε μεταβλητή.
δ) επανάλαβε  4) εκτελεί πολλές φορές ένα σύνολο εντολών.

02) Τι είναι οι ΔΙΑΔΙΚΑΣΙΕΣ στη Logo;

03) Τι ΣΧΗΜΑ κάνουν οι εντολές:
  σβγ στκ
  επανάλαβε 360[μπ 1 δε 1]

04) Πως ΔΗΜΙΟΥΡΓΟΥΜΕ τις διαδικασίες στο MicroWorlds Pro;

05) Γράψτε τις ΕΝΤΟΛΕΣ που κάνουν το σχήμα (βουνα):

06) Φτιάξτε τη ΔΙΑΔΙΚΑΣΙΑ που δημιουργεί ΠΕΝΤΑΓΩΝΟ με πλευρά 100 pixel.

07) Πως ΕΚΤΕΛΟΥΜΕ τις διαδικασίες στο MicroWorlds Pro;

08) Γράψτε τις ΕΝΤΟΛΕΣ που υπολογίζουν το τετράγωνο του αριθμού που δίνει ο χρήστης.

09) Τι ΣΧΗΜΑ κάνουν οι εντολές:
 σβγ στκ δε 45
 μπ 100 δε 90 μπ 100
 μπ 100 αρ 90 μπ 100

10) Γράψτε τις ΕΝΤΟΛΕΣ που κάνουν το σχήμα Π:

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:
ΤΜΗΜΑ:

01) Πώς ΔΗΜΙΟΥΡΓΟΥΜΕ τις διαδικασίες στο MicroWorlds Pro;

02) Φτιάξτε τη ΔΙΑΔΙΚΑΣΙΑ που δημιουργεί ΕΦΤΑΓΩΝΟ πλευράς 100 pixel.

03) Τι ΣΧΗΜΑ κάνουν οι εντολές:
  σβγ στκ
  επανάλαβε 360[μπ 1 δε 0]

04) Τί είναι οι ΔΙΑΔΙΚΑΣΙΕΣ στη Logo;

05) Γράψτε τις ΕΝΤΟΛΕΣ που κάνουν το σχήμα (σκαλα):

06) Πως ΕΚΤΕΛΟΥΜΕ τις διαδικασίες στο MicroWorlds Pro;

07) Γράψτε τις ΕΝΤΟΛΕΣ που υπολογίζουν τον κύβο του αριθμού που δίνει ο χρήστης.

08) Τι ΣΧΗΜΑ κάνουν οι εντολές:
 σβγ στκ δε 45
 μπ 100 δε 90 μπ 100
 μπ 100 αρ 90 δε 100

09) Γράψτε τις ΕΝΤΟΛΕΣ που κάνουν το σχήμα Π:

10) ΑΝΤΙΣΤΟΙΧΙΣΤΕ τη σωστή ενέργεια στην αντίστοιχη εντολή:
ΕΝΤΟΛΗ    ΕΝΕΡΓΕΙΑ
α) δείξε    1) εμφανίζει πληροφορία στο κέντρο-εντολών.
β) ερώτηση  2) εκτελεί πολλές φορές ένα σύνολο εντολών.
γ) ανακοίνωση  3) ο χρήστης δίνει πληροφορία σε μεταβλητή.
δ) επανάλαβε  4) εμφανίζει πληροφορία σε παράθυρο.

ΑΠΑΝΤΗΣΕΙΣ

2011

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:
ΤΜΗΜΑ:

01) ΑΝΤΙΣΤΟΙΧΙΣΤΕ τη σωστή ενέργεια στην αντίστοιχη εντολή:
ΕΝΤΟΛΗ    ΕΝΕΡΓΕΙΑ
α) δείξε    1) εμφανίζει πληροφορία σε παράθυρο.
β) ερώτηση  2) εμφανίζει πληροφορία στο κέντρο-εντολών.
γ) ανακοίνωση  3) ο χρήστης δίνει πληροφορία σε μεταβλητή.
δ) επανάλαβε  4) εκτελεί πολλές φορές ένα σύνολο εντολών.

02) Τι είναι οι ΜΕΤΑΒΛΗΤΕΣ στον προγραμματισμό και πως συνήθως τις συμβολίζει η Logo;

03) Τί ΚΑΝΕΙ η διαδικασία:  για όνομα
        επανάλαβε 360[μπ 1 δε 1]
       τέλος

04) Πως ΔΗΜΙΟΥΡΓΟΥΜΕ τις διαδικασίες στο MicroWorlds Pro;

05) Γράψτε τις ΕΝΤΟΛΕΣ που κάνουν το σχήμα της σκάλας αριστερά: .......

06) Φτιάξτε τη ΔΙΑΔΙΚΑΣΙΑ που δημιουργεί ΠΕΝΤΑΓΩΝΟ.

07) Πως ΕΚΤΕΛΟΥΜΕ τις διαδικασίες στο MicroWorlds Pro;

08) Γράψτε τις ΕΝΤΟΛΕΣ που μετατρέπουν τις δραχμές σε ευρώ (1€=340,75).

09) Τι ΣΧΗΜΑ κάνουν οι εντολές:
σβγ
στκ
δε 45
επανάλαβε 45 [μπ 100 δε 90]

10) Φτιάξτε τη ΔΙΑΔΙΚΑΣΙΑ που υπολογίζει το εμβαδό τριγώνου (βάση επί ύψος δια δύο).

ΑΠΑΝΤΗΣΕΙΣ

----------------------------------------------------------------------------------------------

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:
ΤΜΗΜΑ:

01) Τί είναι οι ΔΙΑΔΙΚΑΣΙΕΣ και πώς τις ΔΗΜΙΟΥΡΓΟΥΜΕ στο MicroWorlds Pro;

02) Φτιάξτε τη ΔΙΑΔΙΚΑΣΙΑ που δημιουργεί ΕΦΤΑΓΩΝΟ.

03) Τί κάνει η διαδικασία:  για όνομα
        επανάλαβε 360[μπ 1 δε 1]
       τέλος

04) Τι είναι οι μεταβλητές στον προγραμματισμό και τι ονοματα συνήθως τους δίνει η Logo;

05) Γράψτε τις ΕΝΤΟΛΕΣ που κάνουν ένα ορθογώνιο παραλληλόγραμμο.

06) Πως ΕΚΤΕΛΟΥΜΕ τις διαδικασίες στο MicroWorlds Pro;

07) Γράψτε τις ΕΝΤΟΛΕΣ που μετατρέπουν τα ευρώ σε δραχμές (1€=340,75).

08) Τι ΣΧΗΜΑ κάνουν οι εντολές:
σβγ στκ δε 45
μπ 100 δε 90 μπ 100
μπ 100 αρ 90

09) ΑΝΤΙΣΤΟΙΧΙΣΤΕ τη σωστή ενέργεια στην αντίστοιχη εντολή:
ΕΝΤΟΛΗ    ΕΝΕΡΓΕΙΑ
α) δείξε    1) εμφανίζει πληροφορία στο κέντρο-εντολών.
β) ερώτηση  2) εκτελεί πολλές φορές ένα σύνολο εντολών.
γ) ανακοίνωση  3) ο χρήστης δίνει πληροφορία σε μεταβλητή.
δ) επανάλαβε  4) εμφανίζει πληροφορία σε παράθυρο.

10) Φτιάξτε τη ΔΙΑΔΙΚΑΣΙΑ που υπολογίζει το εμβαδό παραλληλογράμμου (βάση επί ύψος).

ΑΠΑΝΤΗΣΕΙΣ

2010

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:
ΤΜΗΜΑ:

01) ΑΝΤΙΣΤΟΙΧΙΣΤΕ τη σωστή ενέργεια στην αντίστοιχη εντολή:
ΕΝΤΟΛΗ    ΕΝΕΡΓΕΙΑ
α) δείξε    1) εμφανίζει πληροφορία σε παράθυρο.
β) ερώτηση  2) εμφανίζει πληροφορία στο κέντρο-εντολών.
γ) ανακοίνωση  3) ο χρήστης δίνει πληροφορία σε μεταβλητή.
δ) επανάλαβε  4) εκτελεί πολλές φορές ένα σύνολο εντολών.

02) Τι είναι οι ΜΕΤΑΒΛΗΤΕΣ στον προγραμματισμό και πως συνήθως τις συμβολίζει η Logo;

03) Τί ΚΑΝΕΙ η διαδικασία:  για όνομα
        επανάλαβε 360[μπ 1 δε 1]
       τέλος

04) Γράψε δίπλα από τις εντολές τι θα εμφανιστεί στην οθόνη.
ΕΝΤΟΛΗ        ΟΘΟΝΗ
κάνε "χ "ζωο      ..................
δείξε :χ        ..................
δείξε "ζωο        ..................
δείξε "χ        ..................

05) Γράψτε τις ΕΝΤΟΛΕΣ που κάνουν το σχήμα της σκάλας αριστερά: .......

06) Φτιάξτε τη ΔΙΑΔΙΚΑΣΙΑ που δημιουργεί ΠΕΝΤΑΓΩΝΟ.

07) Πως ΕΚΤΕΛΟΥΜΕ τις διαδικασίες στο MicroWorlds Pro;

08) Γράψτε τις ΕΝΤΟΛΕΣ που μετατρέπουν τις δραχμές σε ευρώ (1€=340,75).

09) Τι ΣΧΗΜΑ κάνουν οι εντολές:
σβγ
στκ
δε 45
επανάλαβε 45 [μπ 100 δε 90]

10) Φτιάξτε τη ΔΙΑΔΙΚΑΣΙΑ που υπολογίζει το εμβαδό τριγώνου (βάση επί ύψος δια δύο).

ΑΠΑΝΤΗΣΕΙΣ

----------------------------------------------------------------------------------------------

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:
ΤΜΗΜΑ:

01) Γράψε δίπλα από τις εντολές τι θα εμφανιστεί στην οθόνη.
ΕΝΤΟΛΗ        ΟΘΟΝΗ
κάνε "y "σκύλος      ..................
δείξε :y        ..................
δείξε "σκύλος      ..................
δείξε "y        ..................

02) Φτιάξτε τη ΔΙΑΔΙΚΑΣΙΑ που δημιουργεί ΕΦΤΑΓΩΝΟ.

03) Τι είναι οι μεταβλητές στον προγραμματισμό και τι ονοματα συνήθως τους δίνει η Logo;

04) Τί κάνει η διαδικασία:  για όνομα
        επανάλαβε 360[μπ 1 δε 1]
       τέλος

05) Γράψτε τις ΕΝΤΟΛΕΣ που κάνουν ένα ορθογώνιο παραλληλόγραμμο.

06) Πως ΕΚΤΕΛΟΥΜΕ τις διαδικασίες στο MicroWorlds Pro;

07) Γράψτε τις ΕΝΤΟΛΕΣ που μετατρέπουν τα ευρώ σε δραχμές (1€=340,75).

08) Τι ΣΧΗΜΑ κάνουν οι εντολές:
σβγ στκ δε 45
μπ 100 δε 90 μπ 100
μπ 100 αρ 90

09) ΑΝΤΙΣΤΟΙΧΙΣΤΕ τη σωστή ενέργεια στην αντίστοιχη εντολή:
ΕΝΤΟΛΗ    ΕΝΕΡΓΕΙΑ
α) δείξε    1) εμφανίζει πληροφορία στο κέντρο-εντολών.
β) ερώτηση  2) εκτελεί πολλές φορές ένα σύνολο εντολών.
γ) ανακοίνωση  3) ο χρήστης δίνει πληροφορία σε μεταβλητή.
δ) επανάλαβε  4) εμφανίζει πληροφορία σε παράθυρο.

10) Φτιάξτε τη ΔΙΑΔΙΚΑΣΙΑ που υπολογίζει το εμβαδό παραλληλογράμμου (βάση επί ύψος).

ΑΠΑΝΤΗΣΕΙΣ

2009

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:
ΤΜΗΜΑ:

01) Τι είναι οι μεταβλητές στον προγραμματισμό;

02) Τί κάνει η διαδικασία:  για όνομα
        επανάλαβε 360[μπ 1 δε 1]
       τέλος

03) Γράψε δίπλα από τις εντολές τι θα εμφανιστεί στην οθόνη.
ΕΝΤΟΛΗ        ΟΘΟΝΗ
κάνε "χ 2        ..................
δείξε 2 - :χ * 2      ..................
κάνε "χ :χ + 2      ..................
δείξε 2 * :χ + 2      ..................

04) Γράψτε τις ΕΝΤΟΛΕΣ που κάνουν το σχήμα της σκάλας αριστερά: .......

05) Φτιάξτε τη ΔΙΑΔΙΚΑΣΙΑ που δημιουργεί ΠΕΝΤΑΓΩΝΟ.

06) Πως ΕΚΤΕΛΟΥΜΕ τις διαδικασίες στο MicroWorlds Pro;

07) Φτιάξτε τη ΔΙΑΔΙΚΑΣΙΑ που μετατρέπει τις δραχμές σε ευρώ (1€=340,75).

08) Τι ΣΧΗΜΑ κάνουν οι εντολές:
σβγ
στκ
δε 45
επανάλαβε 45 [μπ 100 δε 90]

09) Φτιάξτε τη ΔΙΑΔΙΚΑΣΙΑ που δημιουργεί το σχήμα "βουνά":

10) Φτιάξτε τη ΔΙΑΔΙΚΑΣΙΑ που υπολογίζει το εμβαδό τριγώνου (βάση επί ύψος δια δύο).

ΑΠΑΝΤΗΣΕΙΣ

----------------------------------------------------------------------------------------------

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:
ΤΜΗΜΑ:

03) Γράψε δίπλα από τις εντολές τι θα εμφανιστεί στην οθόνη.
ΕΝΤΟΛΗ        ΟΘΟΝΗ
κάνε "χ 2        ..................
δείξε "χ        ..................
κάνε "χ 3 + :χ      ..................
δείξε 2 * :χ + 1      ..................

05) Φτιάξτε τη ΔΙΑΔΙΚΑΣΙΑ που δημιουργεί ΕΦΤΑΓΩΝΟ.

01) Τι είναι οι μεταβλητές στον προγραμματισμό;

02) Τί κάνει η διαδικασία:  για όνομα
        επανάλαβε 360[μπ 1 δε 1]
       τέλος

04) Γράψτε τις ΕΝΤΟΛΕΣ που κάνουν ένα ορθογώνιο παραλληλόγραμμο.

06) Πως ΕΚΤΕΛΟΥΜΕ τις διαδικασίες στο MicroWorlds Pro;

07) Φτιάξτε τη ΔΙΑΔΙΚΑΣΙΑ που μετατρέπει τα ευρώ σε δραχμές (1€=340,75).

08) Τι ΣΧΗΜΑ κάνουν οι εντολές:
σβγ στκ δε 45
μπ 100 δε 90 μπ 100
μπ 100 αρ 90

09) Φτιάξτε τη ΔΙΑΔΙΚΑΣΙΑ που δημιουργεί το σχήμα "σταυρού":

10) Φτιάξτε τη ΔΙΑΔΙΚΑΣΙΑ που υπολογίζει το εμβαδό παραλληλογράμμου (βάση επί ύψος).

ΑΠΑΝΤΗΣΕΙΣ

=================== 2008 ======================

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:
ΤΜΗΜΑ:
ΗΜΕΡΟΜΗΝΙΑ:

01) Φτιάξτε τη ΔΙΑΔΙΚΑΣΙΑ που μετατρέπει τα δραχμές σε ευρώ (1€=340,75).

02) Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ:
1) Σ Λ Υπάρχουν πολλές διαφορετικές γλώσσες για να προγραμματίσουμε έναν υπολογιστή.
2) Σ Λ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ είναι η δουλειά που κάνει ένα πρόγραμμα.
3) Σ Λ Τα ΛΑΘΗ που βρίσκουν οι μεταφραστές είναι λογικά και ερμηνευτικά.
4) Σ Λ Η γλώσσα που καταλαβαίνει ο υπολογιστής είναι η ΓΛΩΣΣΑ-ΜΗΧΑΝΗΣ.

03) Γράψε δίπλα από τις εντολές τι θα εμφανιστεί στην οθόνη.
ΕΝΤΟΛΗ        ΟΘΟΝΗ
κάνε "χ 2        ..................
δείξε 2 - χ * 2      ..................
κάνε "χ :χ + 2      ..................
δείξε 2 * χ +2      ..................

04) Ποιά είναι η διαφορά Μεταγλωττιστή και Διερμηνέα;

05) Φτιάξτε τη διαδικασία που δημιουργεί ΠΕΝΤΑΓΩΝΟ.

06) Πως ΕΚΤΕΛΟΥΜΕ τις διαδικασίες στο MicroWorlds Pro;

07) Τί σχήμα κάνουν οι εντολές:
σβγ
στκ
δε 45
επανάλαβε 45 [μπ 100 δε 90]

08) Τι είναι ΑΛΓΟΡΙΘΜΟΣ;

09) Φτιάξτε τη διαδικασία που υπολογίζει το εμβαδό τριγώνου (βάση επί ύψος δια δύο).

10) Τι είναι ΓΛΩΣΣΑ-ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ;

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑ-ΕΠΩΝΥΜΟ:
ΤΜΗΜΑ:
ΗΜΕΡΟΜΗΝΙΑ: 2008

01) Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ:
1) Σ Λ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ είναι η δουλειά που κάνει ένα πρόγραμμα.
2) Σ Λ Υπάρχουν πολλές διαφορετικές γλώσσες για να προγραμματίσουμε έναν υπολογιστή.
3) Σ Λ Η γλώσσα που καταλαβαίνει ο υπολογιστής είναι η ΓΛΩΣΣΑ-ΜΗΧΑΝΗΣ.
4) Σ Λ Τα ΛΑΘΗ που βρίσκουν οι μεταφραστές είναι λογικά και ερμηνευτικά.

02) Φτιάξτε τη ΔΙΑΔΙΚΑΣΙΑ που μετατρέπει τα ευρώ σε δραχμές (1€=340,75).

03) Πως ΕΚΤΕΛΟΥΜΕ τις διαδικασίες στο MicroWorlds Pro;

04) Φτιάξτε τη διαδικασία που δημιουργεί ΕΦΤΑΓΩΝΟ.

05) Ποιά είναι η διαφορά Μεταγλωττιστή και Διερμηνέα;

06) Τί σχήμα κάνουν οι εντολές:
σβγ
στκ
δε 45
επανάλαβε 3 [μπ 100 δε 90 μπ 100 αρ 90]

07) Τι είναι ΑΛΓΟΡΙΘΜΟΣ;

08) Φτιάξτε τη διαδικασία που υπολογίζει το εμβαδό παραλληλογράμου (βάση επί ύψος).

09) Τι είναι ΓΛΩΣΣΑ-ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ;

10) Γράψε δίπλα από τις εντολές τι θα εμφανιστεί στην οθόνη.
ΕΝΤΟΛΗ        ΟΘΟΝΗ
κάνε "χ 3        ..................
δείξε 3 - χ * 2      ..................
κάνε "χ :χ + 1      ..................
δείξε 3 * χ +2      ..................

ΑΠΑΝΤΗΣΕΙΣ

2005

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

Α) (12 μονάδες)
Διαλέξτε το σωστό/σωστά
:
01) οι απλές-εντολές είναι:
α) καταχώρησης, β) εκχώρησης, δ) εισόδου, ε) επιλογής, στ) εξόδου.
02) Αντικείμενο πρόγραμμα είναι ένα πρόγραμμα γραμμένο:
α) με γλώσσα-μηχανής, β) με γλώσσα υψηλού-επιπέδου, γ) με 0-1, δ) με αγγλικές λέξεις.

Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ:
03) Σ Λ ΜΕΤΑΒΛΗΤΕΣ είναι οι πληροφορίες που επεξεργάζεται το πρόγραμμα.
04) Σ Λ Οι ΜΕΤΑΒΛΗΤΕΣ χωρίζονται σε αριθμητικές, αλφαριθμητικές και λογικές με κριτήριο τη λειτουργία που εκτελούν μέσα στο πρόγραμμα.
05) Σ Λ ΟΛΟΚΛΗΡΩΜΕΝΟ-ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ-ΠΕΡΙΒΑΛΛΟΝ λέγεται το σύνολο προγραμμάτων που χρησιμοποιούμε για να γράψουμε ένα καινούργιο πρόγραμμα.
06) Σ Λ ΑΛΓΟΡΙΘΜΟΣ είναι η διαδικασία επεξεργασίας πληροφορίας που θέλουμε να κάνει ένα κομπιούτερ.
07) Σ Λ Με την ΕΝΤΟΛΗ-ΕΞΟΔΟΥ ο χρήστης βάζει πληροφορία σε μεταβλητή.
08) Σ Λ ΠΡΟΓΡΑΜΜΑΤΙΣΤΗΣ είναι εκείνος που εκτελεί ένα πρόγραμμα.
09) Σ Λ Με την ΕΝΤΟΛΗ-ΕΙΣΟΔΟΥ ο προγραμματιστής εισάγει πληροφορία σε μεταβλητή.
10) Σ Λ Για να φτιάξουμε πρόγραμμα 1) γράφουμε τον αλγόριθμο σε φυσική γλώσσα, 2) γράφουμε τον ψευδοκώδικα και 3) γράφουμε το πρόγραμμα.

Συμπληρώστε με όσες λέξεις χρειάζεται τα κενά:
11) ____________________ είναι ένα αρχείο ή αρχεία που περιέχει ένα σύνολο από εντολές που τις καταλαβαίνει ένα κομπιούτερ και με τις οποίες ο επεξεργαστής επεξεργάζεται πληροφορίες.
12) _____________________ είναι οι κανόνες με τους οποίους γράφουμε τις εντολές ενός προγράμματος.

Β) (2 μονάδες) Γράψτε τον παρακάτω ψευδοκώδικα σε QBASIC (χωρίς μηνύματα για το χρήστη):
ΠΡΟΓΡΑΜΜΑ ανώνυμο
 Διάβασε Α
 Διάβασε Β
 Γ <== A / B * 1,5
 Γράψε Γ
ΤΕΛΟΣ ΠΡΟΓΡΑΜΜΑΤΟΣ

Γ) (6 μονάδες)
Να φτιάξετε πρόγραμμα που να ΜΕΤΑΤΡΕΠΕΙ τους βαθμούς Κελσίου σε Φαρενάιτ. Όταν F=1,8C+32.

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

Α) (12 μονάδες)
Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ
:
01) Σ Λ Για να φτιάξουμε πρόγραμμα 1) γράφουμε τον αλγόριθμο σε φυσική γλώσσα, 2) γράφουμε τον ψευδοκώδικα και 3) γράφουμε το πρόγραμμα.
02) Σ Λ ΠΡΟΓΡΑΜΜΑΤΙΣΤΗΣ είναι εκείνος που εκτελεί ένα πρόγραμμα.
03) Σ Λ ΟΛΟΚΛΗΡΩΜΕΝΟ-ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ-ΠΕΡΙΒΑΛΛΟΝ λέγεται το σύνολο προγραμμάτων που χρησιμοποιούμε για να γράψουμε ένα καινούργιο πρόγραμμα.
02) Σ Λ Οι ΜΕΤΑΒΛΗΤΕΣ χωρίζονται σε αριθμητικές, αλφαριθμητικές και λογικές με κριτήριο τη λειτουργία που εκτελούν μέσα στο πρόγραμμα.
05) Σ Λ ΜΕΤΑΒΛΗΤΕΣ είναι οι πληροφορίες που επεξεργάζεται το πρόγραμμα.
06) Σ Λ ΑΛΓΟΡΙΘΜΟΣ είναι η διαδικασία επεξεργασίας πληροφορίας που θέλουμε να κάνει ένα πρόγραμμα.
07) Σ Λ Με την ΕΝΤΟΛΗ-ΕΞΟΔΟΥ ο χρήστης βάζει πληροφορία σε μεταβλητή.
08) Σ Λ Με την ΕΝΤΟΛΗ-ΕΙΣΟΔΟΥ ο προγραμματιστής εισάγει πληροφορία σε μεταβλητή.

Διαλέξτε το σωστό/σωστά:
09) Πηγαίο πρόγραμμα είναι ένα πρόγραμμα γραμμένο:
α) με γλώσσα-μηχανής, β) με γλώσσα υψηλού-επιπέδου, γ) με 0-1, δ) με αγγλικές ειδικές λέξεις.
10) οι απλές-εντολές είναι:
α) καταχώρησης, β) εκχώρησης, γ) επιλογής, δ) εισόδου, ε) εξόδου.

Συμπληρώστε με όσες λέξεις χρειάζεται τα κενά:
11) _____________________ είναι ένα αρχείο ή αρχεία που περιέχει ένα σύνολο από εντολές που τις καταλαβαίνει ένα κομπιούτερ και με τις οποίες ο επεξεργαστής επεξεργάζεται πληροφορίες.
12) ____________________ είναι το πρόγραμμα που μετατρέπει το πρόγραμμα που γράφει ο προγραμματιστής σε πρόγραμμα που καταλαβαίνει το κομπιούτερ.

Β) (2 μονάδες) Γράψτε τον παρακάτω ψευδοκώδικα σε QBASIC χωρίς μηνύματα για τον χρήστη:
ΠΡΟΓΡΑΜΜΑ ανώνυμο
 Διάβασε Δ
 Διάβασε Ε
 Ζ <== Ε * 0,75 / Δ
 Γράψε Ζ
ΤΕΛΟΣ ΠΡΟΓΡΑΜΜΑΤΟΣ

Γ) (6 μονάδες)
Να φτιάξετε πρόγραμμα που να ΜΕΤΑΤΡΕΠΕΙ τις ίνσες (Ι) σε εκατοστά (Ε). Όταν Ε = 2,5 χ Ι.

ΑΠΑΝΤΗΣΕΙΣ

2004

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

Α) (12 μονάδες)
Διαλέξτε το σωστό/σωστά
:
01) οι απλές-εντολές είναι:
α) καταχώρησης, β) εκχώρησης, γ) επιλογής, δ) εισόδου, ε) εξόδου.
02) Αντικείμενο πρόγραμμα είναι ένα πρόγραμμα γραμμένο:
α) με γλώσσα-μηχανής, β) με γλώσσα υψηλού-επιπέδου, γ) με 0-1, δ) με αγγλικές λέξεις.

Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ:
03) Σ Λ ΜΕΤΑΒΛΗΤΕΣ είναι οι πληροφορίες που επεξεργάζεται το πρόγραμμα.
04) Σ Λ Οι ΜΕΤΑΒΛΗΤΕΣ χωρίζονται σε αριθμητικές, αλφαριθμητικές και λογικές με κριτήριο τη λειτουργία που εκτελούν μέσα στο πρόγραμμα.
05) Σ Λ ΟΛΟΚΛΗΡΩΜΕΝΟ-ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ-ΠΕΡΙΒΑΛΛΟΝ λέγεται το πρόγραμμα που χρησιμοποιούμε για να γράψουμε ένα καινούργιο πρόγραμμα.
06) Σ Λ ΑΛΓΟΡΙΘΜΟΣ είναι η διαδικασία επεξεργασίας πληροφορίας που θέλουμε να κάνει ένα πρόγραμμα.
07) Σ Λ Με την ΕΝΤΟΛΗ-ΕΞΟΔΟΥ ο χρήστης βάζει πληροφορία σε μεταβλητή.
08) Σ Λ ΠΡΟΓΡΑΜΜΑΤΙΣΤΗΣ είναι εκείνος που εκτελεί ένα πρόγραμμα.
09) Σ Λ Με την ΕΝΤΟΛΗ-ΕΙΣΟΔΟΥ ο προγραμματιστής εισάγει πληροφορία σε μεταβλητή.
10) Σ Λ Για να φτιάξουμε πρόγραμμα 1) γράφουμε τον αλγόριθμο σε φυσική γλώσσα, 2) δηλώνουμε τις μεταβλητές και γράφουμε τον ψευδοκώδικα και 3) γράφουμε τον κώδικα (το πρόγραμμα).

Συμπληρώστε με όσες λέξεις χρειάζεται τα κενά:
11) ____________________ είναι το πρόγραμμα που μετατρέπει το πρόγραμμα που γράφουμε εμείς σε πρόγραμμα που καταλαβαίνει το κομπιούτερ με 0 και 1.
12) _____________________ είναι οι κανόνες με τους οποίους γράφουμε τις εντολές ενός προγράμματος.

Β) (2 μονάδες) Γράψτε μόνο τι κάνει ο παρακάτω ψευδοκώδικας;
ΠΡΟΓΡΑΜΜΑ ανώνυμο
 Διάβασε Δ
 Ε <-- Δ / 340.75
 Γράψε Ε
ΤΕΛΟΣ ΠΡΟΓΡΑΜΜΑΤΟΣ

Γ) (6 μονάδες)
Να γραφεί πρόγραμμα που να ΖΗΤΑ από το χρήστη το συνολικό κόστος προϊόντος σε δραχμές και να ΔΙΝΕΙ στο χρήστη το ΦΠΑ του (18%) σε δραχμές και ευρώ
.

ΑΠΑΝΤΗΣΕΙΣ

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

Α) (12 μονάδες)
Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ
:
01) Σ Λ ΠΡΟΓΡΑΜΜΑΤΙΣΤΗΣ είναι εκείνος που εκτελεί ένα πρόγραμμα.
02) Σ Λ Οι ΜΕΤΑΒΛΗΤΕΣ χωρίζονται σε αριθμητικές, αλφαριθμητικές και λογικές με κριτήριο τη λειτουργία που εκτελούν μέσα στο πρόγραμμα.
03) Σ Λ Για να φτιάξουμε πρόγραμμα 1) γράφουμε τον αλγόριθμο σε φυσική γλώσσα, 2) δηλώνουμε τις μεταβλητές και γράφουμε τον ψευδοκώδικα και 3) γράφουμε τον κώδικα (το πρόγραμμα).
04) Σ Λ ΟΛΟΚΛΗΡΩΜΕΝΟ-ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ-ΠΕΡΙΒΑΛΛΟΝ λέγεται το πρόγραμμα που χρησιμοποιούμε για να γράψουμε ένα καινούργιο πρόγραμμα.
05) Σ Λ ΜΕΤΑΒΛΗΤΕΣ είναι οι πληροφορίες που επεξεργάζεται το πρόγραμμα.
06) Σ Λ ΑΛΓΟΡΙΘΜΟΣ είναι η διαδικασία επεξεργασίας πληροφορίας που θέλουμε να κάνει ένα πρόγραμμα.
07) Σ Λ Με την ΕΝΤΟΛΗ-ΕΞΟΔΟΥ ο χρήστης βάζει πληροφορία σε μεταβλητή.
08) Σ Λ Με την ΕΝΤΟΛΗ-ΕΙΣΟΔΟΥ ο προγραμματιστής εισάγει πληροφορία σε μεταβλητή.

Διαλέξτε το σωστό/σωστά:
09) οι απλές-εντολές είναι:
α) καταχώρησης, β) εκχώρησης, γ) επιλογής, δ) εισόδου, ε) εξόδου.
10) Αντικείμενο πρόγραμμα είναι ένα πρόγραμμα γραμμένο:
α) με γλώσσα-μηχανής, β) με γλώσσα υψηλού-επιπέδου, γ) με 0-1, δ) με αγγλικές λέξεις.

Συμπληρώστε με όσες λέξεις χρειάζεται τα κενά:
11) ____________________ είναι το πρόγραμμα που μετατρέπει το πρόγραμμα που γράφουμε εμείς σε πρόγραμμα που καταλαβαίνει το κομπιούτερ με 0 και 1.
12) _____________________ είναι οι κανόνες με τους οποίους γράφουμε τις εντολές ενός προγράμματος.

Β) (2 μονάδες) Γράψτε μόνο τι κάνει ο παρακάτω ψευδοκώδικας;
ΠΡΟΓΡΑΜΜΑ ανώνυμο
 Διάβασε Ε
 Δ <-- Ε * 340.75
 Γράψε Δ
ΤΕΛΟΣ ΠΡΟΓΡΑΜΜΑΤΟΣ

Γ) (6 μονάδες)
Να γραφεί πρόγραμμα που να ΖΗΤΑ από το χρήστη το συνολικό κόστος προϊόντος σε ευρώ και να ΔΙΝΕΙ στο χρήστη το ΦΠΑ του (18%) σε ευρώ και δραχμές
.

ΑΠΑΝΤΗΣΕΙΣ

=================================================================================

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

Α) (14 μονάδες)
Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ
:
1) Σ Λ Οι μεταβλητές χωρίζονται σε αριθμητικές, αλφαριθμητικές και λογικές με κριτήριο τη λειτουργία που εκτελούν μέσα στο πρόγραμμα.
2) Σ Λ Αλγόριθμος είναι η διαδικασία επεξεργασίας πληροφορίας που θέλουμε να κάνει ένα πρόγραμμα.
3) Σ Λ Το πρόγραμμα με το οποίο φτιάχνουμε προγράμματα στην ουσία είναι ένα σύνολο προγραμμάτων.
4) Σ Λ Μεταβλητή-προγράμματος είναι οι πληροφορίες που επεξεργάζεται το πρόγραμμα.
5) Σ Λ Με την εντολή-επιλογής το πρόγραμμα επαναλαμβάνει την εκτέλεση ενός άλλου συνόλου εντολών.
6) Σ Λ Προγραμματιστής είναι εκείνος που εκτελεί ένα πρόγραμμα.
7) Σ Λ Με την εντολή-εισόδου ο προγραμματιστής εισάγει πληροφορία σε μεταβλητή.
8) Σ Λ Βοηθητικές-μεταβλητές λέγονται οι μεταβλητές που μας βοηθούν στον προγραμματισμό.
9) Σ Λ Λογικές-μεταβλητές λέγονται οι μεταβλητές που δέχονται τις πληροφορίες "αληθής" και "ψευδής.
10) Σ Λ Ολοκληρωμένο προγραμματιστικό περιβάλλον λέγεται το πρόγραμμα που χρησιμοποιούμε για να γράψουμε ένα καινούργιο πρόγραμμα.

Συμπληρώστε με όσες λέξεις χρειάζεται τα κενά:
11) Η σύνθετη-εντολή που χρησιμοποιούμε για να επαναλάβουμε ένα άλλο σύνολο εντολών λέγεται _____________________.
12) ____________________ είναι το πρόγραμμα που μετατρέπει το πρόγραμμα που γράφουμε εμείς σε πρόγραμμα που καταλαβαίνει το κομπιούτερ με 0 και 1.

Διαλέξτε το σωστό/σωστά:
13) Ένας αλγόριθμος παρασταίνεται με:
α) ψευδοκώδικα, β) κώδικα, γ) διαγράμματα ροής, δ) περιγράμματα.
14) οι απλές-εντολές είναι:
α) καταχώρησης, β) εκχώρησης, γ) επιλογής, δ) εισόδου, ε) εξόδου.

Β) (6 μονάδες)
Να γραφεί αλγόριθμος που διαβάζει το συνολικό κόστος προϊόντος σε ευρώ και υπολογίζει το ΦΠΑ του (18%) σε ευρώ και δραχμές
.

ΑΡΧΑΡΙΟΙ

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

Α) (14 μονάδες)
Σημειώστε με κύκλο το ΣΩΣΤΟ/ΛΑΘΟΣ
:
1) Σ Λ Οι μεταβλητές χωρίζονται σε αριθμητικές, αλφαριθμητικές και λογικές με κριτήριο τη λειτουργία που εκτελούν μέσα στο πρόγραμμα.
2) Σ Λ Αλγόριθμος είναι η διαδικασία επεξεργασίας πληροφορίας που θέλουμε να κάνει ένα πρόγραμμα.
3) Σ Λ Το πρόγραμμα με το οποίο φτιάχνουμε προγράμματα στην ουσία είναι ένα σύνολο προγραμμάτων.
4) Σ Λ Μεταβλητή-προγράμματος είναι οι πληροφορίες που επεξεργάζεται το πρόγραμμα.
5) Σ Λ Με την εντολή-επιλογής το πρόγραμμα επαναλαμβάνει την εκτέλεση ενός άλλου συνόλου εντολών.
6) Σ Λ Προγραμματιστής είναι εκείνος που εκτελεί ένα πρόγραμμα.
7) Σ Λ Με την εντολή-εισόδου ο προγραμματιστής εισάγει πληροφορία σε μεταβλητή.
8) Σ Λ Βοηθητικές-μεταβλητές λέγονται οι μεταβλητές που μας βοηθούν στον προγραμματισμό.
9) Σ Λ Λογικές-μεταβλητές λέγονται οι μεταβλητές που δέχονται τις πληροφορίες "αληθής" και "ψευδής.
10) Σ Λ Ολοκληρωμένο προγραμματιστικό περιβάλλον λέγεται το πρόγραμμα που χρησιμοποιούμε για να γράψουμε ένα καινούργιο πρόγραμμα.
11) Σ Λ Η σύνθετη-εντολή που χρησιμοποιούμε για να επαναλάβουμε ένα άλλο σύνολο εντολών λέγεται επανάληψης.
12) Σ Λ Μεταγλωτιστής είναι το πρόγραμμα που μετατρέπει το πρόγραμμα που γράφουμε εμείς σε πρόγραμμα που καταλαβαίνει το κομπιούτερ με 0 και 1.

Διαλέξτε το σωστό/σωστά:
13) Ένας αλγόριθμος παρασταίνεται με:
α) ψευδοκώδικα, β) κώδικα, γ) διαγράμματα ροής, δ) περιγράμματα.
14) οι απλές-εντολές είναι:
α) καταχώρησης, β) εκχώρησης, γ) επιλογής, δ) εισόδου, ε) εξόδου.

Β) (6 μονάδες)
Να γραφεί αλγόριθμος σε ψευδοκώδικα που διαβάζει το συνολικό κόστος προϊόντος και υπολογίζει το ΦΠΑ του (18%)
.

OLD

Α ΟΜΑΔΑ:
α) ΤΙ ΠΛΗΡΟΦΟΡΙΕΣ ΒΑΖΟΥΜΕ ΣΕ ΜΙΑ ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ;
β) ΠΩΣ ΔΗΜΙΟΥΡΓΟΥΜΕ ΜΙΑ ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ;
γ) ΠΩΣ ΒΡΙΣΚΟΥΜΕ ΣΤΗ ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ ΤΩΝ ΦΙΛΩΝ ΜΑΣ ΑΥΤΟΥΣ ΠΟΥ ΤΟ ΕΠΙΘΕΤΟ ΤΟΥΣ ΑΡΧΙΖΕΙ ΑΠΟ Π;
δ) ΠΩΣ ΠΡΟΣΘΕΤΟΥΜΕ ΚΑΙΝΟΥΡΓΙΑ ΠΕΔΙΑ;
ε) Τι είναι ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ και τί κάνουμε με αυτό;

Β ΟΜΑΔΑ:
α) ΤΙ ΕΙΝΑΙ ΕΓΓΡΑΦΗ ΚΑΙ ΤΙ ΠΕΔΙO ΣΕ ΜΙΑ ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ;
β) ΠΩΣ ΒΡΙΣΚΟΥΜΕ ΣΤΗ ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ ΤΩΝ ΦΙΛΩΝ ΜΑΣ ΑΥΤΟΥΣ ΠΟΥ ΚΑΤΟΙΚΟΥΝ ΣΤΗΝ ΑΘΗΝΑ;
γ) ΠΩΣ ΤΑΞΙΝΟΥΜΟΥΜΕ ΤΙΣ ΕΓΓΡΑΦΕΣ ΩΣ ΠΡΟΣ ΕΝΑ ΠΕΔΙΟ;
δ) ΤΙ ΚΑΝΟΥΜΕ ΜΕ ΤΙΣ ΑΝΑΦΟΡΕΣ ΚΑΙ ΠΩΣ ΤΙΣ ΔΗΜΙΟΥΡΓΟΥΜΕ ΣΥΝΟΠΤΙΚΑ;
ε) Τι είναι η μνήμη RAM, μειονέκτημα και πλεονέκτημα.

1994

1. Τι κάνουν οι εντολές
INPUT
LET
PRINT
IF...THEN ELSE

2. Ποιά είναι η διαφορά COMMANDS and INSTRUCTIONS

3. Ti κάνει ένα πρόγραμμα που δίνουμε.

4. Να φτιάξουν ένα πρόγραμμα.

5.  Τι είναι hardware, software και ποιά τα είδη τού software.

6.  Tι ειναι πηγαίο και τι αντικείμενο πρόγραμμα και τι είναι τα μεταγλωτιστικά προγράμματα.

7.  Ποιά είναι η διαφορά Μεταφραστών και διερμηνέων. Πως λέγονται στα αγγλικα.

8.  Τι είναι γλωσσα προγραμματισμου και τα είδη τους.

9.  Ποιοί είναι οι κύριοι τύποι υπολογιστών.

ΤΕΛΙΚΕΣ

Α ΤΑΞΗ

2022-2023

ΓΥΜΝΑΣΙΟ ΕΛΕΟΥΣΑΣ            Σχ.Ετος 2022-2023

ΓΡΑΠΤΕΣ ΕΞΕΤΑΣΕΙΣ ΠΕΡΙΟΔΟΥ ΙΟΥΝΙΟΥ
ΣΤΟ ΜΑΘΗΜΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ
ΤΑΞΗ Α'

ΘΕΜΑΤΑ
(Απαντήστε σε 6 θέματα. Οι απαντήσεις μόνο στην κόλλα.)

1. Ποιές είναι οι ΒΑΣΙΚΕΣ ΔΟΥΛΕΙΕΣ που κάνουμε με τον υπολογιστή;

2. Τί είναι το ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ;

3. ΣΥΜΠΛΗΡΩΣΤΕ με όσες λέξεις χρειάζεται τα κενά:
1) Ένας υπολογιστής αποτελείται από το ____________________ και το ____________________ .
2) __________________________ λέγεται το πρόγραμμα που είναι απαραίτητο για τη λειτουργία του υπολογιστή.

4. Τί είναι το ΑΡΧΕΙΟ και τί ο ΦΑΚΕΛΟΣ;

5. Γράψτε τον ορισμό του ΔΙΑΔΙΚΤΥΟΥ.

6. ΔΙΑΛΕΞΤΕ το σωστό/σωστά:
1) Σ Λ Στο DVD μπορούμε να αποθηκεύσουμε περισσότερα δεδομένα από ότι στο σκληρό δίσκο.
2) Σ Λ Mega, Giga είναι μονάδες μέτρησης αποθήκευσης.
3) Σ Λ ΑΡΧΕΙΑ είναι σύμβολα, εικόνες και ήχοι στις αποθήκες με όνομα.
4) Σ Λ ΔΕΝ είναι σημαντικό και απαραίτητο να μάθουμε υπολογιστές.

7. Γράψτε ονομαστικά ΥΠΗΡΕΣΙΕΣ διαδικτύου.

8. Τι είναι οι ΜΗΧΑΝΕΣ-ΑΝΑΖΗΤΗΣΗΣ;

9. Ποιοι είναι οι ΚΙΝΔΥΝΟΙ του διαδικτύου;

               Ελεούσα 19 Ιουνίου 2023

Ο ΔΙΕΥΘΥΝΤΗΣ            Ο ΕΙΣΗΓΗΤΗΣ

2001-2002

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

1. Πως μετακινούμε το δρομέα με ΜΙΑ ΚΙΝΗΣΗ:
α) στην αρχή/τέλος γραμμής
β) στην αρχή/τέλος του κειμένου
γ) στην αρχή/τέλος οθόνης
δ) σε οποιοδήποτε σημείο της οθόνης

2. Με ποιά πλήκτρα ΣΒΗΝΟΥΜΕ σύμβολα και ποιά είναι η διαφορά τους;

3. Πως ΣΤΟΙΧΙΖΟΥΜΕ το κείμενο;

4. Τί είναι η ΓΡΑΜΜΑΤΟΣΕΙΡΑ και πώς την αλλάζουμε;

5. Γράψτε τους δύο τρόπους που γράφουμε ΚΕΦΑΛΑΙΑ γράμματα.

6. Πώς ΕΠΙΛΕΓΟΥΜΕ:
- γραμμή
- παράγραφο
- όλο το κείμενο
- τυχαίο κείμενο

7. Πώς ΣΥΝΕΧΙΖΟΥΜΕ ΝΑ ΓΡΑΦΟΥΜΕ σε ένα παλιό κείμενο;

8. Γράψτε τη διαδικασία με την οποία ΑΝΤΙΓΡΑΦΟΥΜΕ ένα κομμάτι κειμένου.

9. Πώς βάζουμε ΤΟΝΟΥΣ;

10. Πώς αλλάζουμε το ΜΕΓΕΘΟΣ των γραμμάτων;

ΑΠΑΝΤΗΣΕΙΣ

1998-1999

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

1. Πως μετακινούμε το δρομέα με ΜΙΑ ΚΙΝΗΣΗ:
α) στην αρχή/τέλος γραμμής
β) στην αρχή/τέλος του κειμένου
γ) στην αρχή/τέλος οθόνης
δ) σε οποιοδήποτε σημείο της οθόνης

2. Με ποιά πλήκτρα ΣΒΗΝΟΥΜΕ γράμματα και ποιά είναι η διαφορά τους;

3. Πως ΣΤΟΙΧΙΖΟΥΜΕ το κείμενο;

4. Τί είναι η ΓΡΑΜΜΑΤΟΣΕΙΡΑ και πώς την αλλάζουμε;

5. Γράψτε τους δύο τρόπους που γράφουμε ΚΕΦΑΛΑΙΑ γράμματα.

ΑΠΑΝΤΗΣΕΙΣ

----------------------------------------------------------------------------------

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

1. Πώς ΕΠΙΛΕΓΟΥΜΕ:
- γραμμή
- παράγραφο
- όλο το κείμενο
- τυχαίο κείμενο

2. Πώς ΣΥΝΕΧΙΖΟΥΜΕ ΝΑ ΓΡΑΦΟΥΜΕ σε ένα παλιό κείμενο;

3. Γράψτε τη διαδικασία με την οποία ΑΝΤΙΓΡΑΦΟΥΜΕ ένα κομμάτι κειμένου.

4. Πώς βάζουμε ΤΟΝΟΥΣ;

5. Πώς αλλάζουμε το ΜΕΓΕΘΟΣ των γραμμάτων;

ΑΠΑΝΤΗΣΕΙΣ

1996-1997

ΟΝΟΜΑ:

ΤΜΗΜΑ: Α

1. Πως μετακινούμε το δρομέα με ΜΙΑ ΚΙΝΗΣΗ στο WRITE:
α) στην αρχή/τέλος γραμμής
β) στην αρχή/τέλος του κειμένου
γ) στην αρχή/τέλος οθόνης
δ) σε οποιοδήποτε σημείο της οθόνης

2. Με ποιά πλήκτρα σβήνουμε γράμματα στο write και ποιά είναι η διαφορά τους;

3. Τί είναι το λειτουργικό σύστημα και ποιά μάθαμε;

4. Τί είναι η Γραμματοσειρά και πώς την αλλάζουμε στο write;

5. Ποιές είναι οι βασικές δουλειές που κάνει ένα κομπιούτερ;

----------------------------------------------------------------------------------

ΟΝΟΜΑ:

ΤΜΗΜΑ: Α

1. Πώς επιλέγουμε στο Write:
- γραμμή
- παράγραφο
- όλο το κείμενο
- τυχαίο κείμενο

2. Πώς συνεχίζουμε να γράφουμε σε ένα παλιό κείμενο στο write;

3. Τί είναι η μνήμη RAM;

4. Πώς σβήνουμε γράμματα στο write;

5. Ποιά είναι τα 3 βασικά πράγματα που πρέπει να ξέρουμε να κάνουμε με κάθε Λειτουργικό Σύστημα;

------------------------------------------------------------------------

Β ΤΑΞΗ

2002-2003

ΟΝΟΜΑΤΕΠΩΝΥΜΟ:

ΤΜΗΜΑ:

Α) (12 μονάδες) Απαντήστε με σωστό/λάθος:
1. Το Υπολογιστικό φύλλο που χρησιμοποιούμε είναι το Microsoft Excel
______σωστό _______λάθος
2. Ένα βιβλίο-εργασίας μπορεί να έχει πολλά φύλλα-εργασίας.
______σωστό _______λάθος
3. 'Διεύθυνση κελιού' είναι η γραμμή και η στήλη στην οποία βρίσκεται.
______σωστό _______λάθος
4. Συναρτήσεις είναι έτοιμες-παραστάσεις που έχει το πρόγραμμα και κάνουν διάφορες πράξεις.
______σωστό _______λάθος
5. Για να αντικαταστήσουμε ολικά το περιεχόμενο ενός κελιού, το επιλέγουμε, γράφουμε την καινούργια πληροφορία και πατάμε enter.
______σωστό _______λάθος
6. Ο καλλίτερος τρόπος για να μετακινούμαστε ανάμεσα στα κελιά είναι το ποντίκι.
______σωστό _______λάθος
7. Για να προσθέσουμε καινούργια κενή γραμμή ανάμεσα στην 3 και 4, επιλέγουμε την 3 και πατάμε edit/insert row.
______σωστό _______λάθος
8. Στα κυκλικά-γραφήματα μπορούμε να αναπαραστήσουμε πολλές στήλες δεδομένων.
______σωστό _______λάθος
9. Γραμμή-τύπου είναι μια σειρά από κελιά με αριθμούς.
______σωστό _______λάθος
10. O τύπος =sum(e1;e3) βρίσκει το άθροισμα της περιοχής e1 μέχρι e3.
______σωστό _______λάθος
11. Αν δούμε σε ένα κελί σύμβολα δίεσης (#) σημαίνει οτι υπάρχει τύπος και δεν χωράει.
______σωστό _______λάθος
12. Όταν τα κελιά που συμμετέχουν σ' ένα τύπο αναφέρονται με σχετικό τρόπο ως προς τη θέση του τύπου, λέμε ότι έχουμε σχετική αναφορά κελιών.
______σωστό _______λάθος

Β) (2 μονάδες) Στο κελί Α1 έχουμε τον τύπο: =AVERAGE(B1:B5). Βρείτε τον τύπο που μπορεί να αντικαταστήσει αυτή τη συνάρτηση.

Γ) (2 μονάδες) Τι είναι τα ΓΡΑΦΗΜΑΤΑ και πώς τα φτιάχνουμε;

Δ) (2 μονάδες) Γράψτε τα 3 πράγματα που βάζουμε στα κελιά.

1996-1997

ΟΝΟΜΑ:

ΤΜΗΜΑ: Β__

1. Πως μετακινούμε το δρομέα με ΜΙΑ ΚΙΝΗΣΗ στο Microsoft Works:
α) στην αρχή/τέλος γραμμής
β) στην αρχή/τέλος του κειμένου
γ) στην αρχή/τέλος οθόνης
δ) σε οποιοδήποτε σημείο της οθόνης

2. Με ποιά πλήκτρα σβήνουμε γράμματα στο works και ποιά είναι η διαφορά τους;

3. Τί είναι το λειτουργικό σύστημα και ποιά μάθαμε;

4. Τί είναι η Γραμματοσειρά και πώς την αλλάζουμε στο works;

5. Ποιές είναι οι βασικές δουλειές που κάνει ένα κομπιούτερ;

----------------------------------------------------------------------------------

ΟΝΟΜΑ:

ΤΜΗΜΑ: Β__

1. Πώς επιλέγουμε στο Microsoft Works:
α) γραμμή
β) παράγραφο
γ) όλο το κείμενο
δ) τυχαίο κείμενο

2. Πώς συνεχίζουμε να γράφουμε σε ένα παλιό κείμενο στο works;

3. Τί είναι η μνήμη RAM;

4. Πώς αντιγράφουμε κείμενο στο works;

5. Πώς στοιχίζουμε κείμενο στο works;

----------------------------------------------------------

1993-1994

1. Τι είναι hardware, τι software και ποια τα βασικά είδη του software (σχήμα βιβλίου).

2. Τι είναι τα μεταγλωττιστικά προγράμματα. Τι ονομάζουμε πηγαίο και τι αντικείμενο πρόγραμμα.

3. Ποιά είναι η διαφορά μεταφραστών και διερμηνέων και πως λέγονται στα Αγγλικά.

4. Τι είναι γλώσσα προγραμματισμού, και τι είναι γλώσσα υψηλού επιπέδου.

5. Πως ταξινομούμε τους υπολογιστές (τύποι).

6. Τι κάνουν οι εντολές: LIST, INPUT, LET, SAVE, NEW, RUN, REM, IF...THEN...ELSE, FOR...NEXT, LOAD.

7. Τι ονομάζουμε μεταβλητή στη BASIC, πόσα είδη έχουμε και πως τις παριστάνουμε.

8. Να γράψετε ένα απλό πρόγραμμα που να ζητάει απο το χρήστη το μήκος και το πλάτος ορθογωνίου και να τυπώνει στην οθόνη το εμβαδό του.

9. Τι κάνει το ακόλουθο πρόγραμμα:
10 FOR A=1 TO 20
20 PRINT 3*A
30 NEXT A.

Γ ΤΑΞΗ

ΓΥΜΝΑΣΙΟ ΕΛΕΟΥΣΑΣ            Σχ.Ετος 2004-2005

ΓΡΑΠΤΕΣ ΑΠΟΛΥΤΗΡΙΕΣ ΕΞΕΤΑΣΕΙΣ ΠΕΡΙΟΔΟΥ ΜΑΙΟΥ-ΙΟΥΝΙΟΥ
ΣΤΟ ΜΑΘΗΜΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ
ΤΑΞΗ Γ'

ΘΕΜΑΤΑ
(Απαντήστε σε 6 θέματα. Οι απαντήσεις μόνο στην κόλλα.)

1. Ποιές είναι οι ΒΑΣΙΚΕΣ ΔΟΥΛΕΙΕΣ που κάνουμε με τον υπολογιστή και πώς λέγονται τα αντίστοιχα προγράμματα με τα οποία κάνουμε αυτές τις δουλειές;

2. Τί είναι το ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ και ποιά είναι τα βασικά πράγματα που κάνουμε με αυτό;

3. ΣΥΜΠΛΗΡΩΣΤΕ με όσες λέξεις χρειάζεται τα κενά:
1) ____________________ είναι το πρόγραμμα που μετατρέπει το πρόγραμμα που γράφουμε εμείς σε πρόγραμμα που καταλαβαίνει το κομπιούτερ με 0 και 1.
2) _____________________ είναι οι κανόνες με τους οποίους γράφουμε τις εντολές ενός προγράμματος.

4. Τι κάνει ο παρακάτω ΨΕΥΔΟΚΩΔΙΚΑΣ;
ΠΡΟΓΡΑΜΜΑ όνομα
   ΔΙΑΒΑΣΕ Χ
   Υ f Χ / 340,75
   ΓΡΑΨΕ Υ
ΤΕΛΟΣ ΠΡΟΓΡΑΜΜΑΤΟΣ

5. Να γραφεί ΠΡΟΓΡΑΜΜΑ που ΔΙΑΒΑΖΕΙ το συνολικό εισόδημα ενός φορολογούμενου και ΥΠΟΛΟΓΙΖΕΙ το φόρο που πρέπει να πληρώσει. Ο φόρος είναι το 20% του συνολικού εισοδήματος.

6. ΔΙΑΛΕΞΤΕ το σωστό/σωστά:
1) Ένας αλγόριθμος παρασταίνεται με:
α) ψευδοκώδικα, β) κώδικα, γ) διαγράμματα ροής, δ) περιγράμματα.
2) οι απλές-εντολές είναι:
α) καταχώρησης, β) εκχώρησης, γ) επιλογής, δ) εισόδου, ε) εξόδου.

7. Τί είναι οι ΕΓΓΡΑΦΕΣ και τί τα ΠΕΔΙΑ σε μια Βάση-Δεδομένων;

8. Θέλετε να εμφανίσετε, με ερώτημα, όλους τους μαθητές των οποίων το επώνυμο αρχίζει το "Ν" μέχρι το "Ω". Δώστε το κριτήριο που θα θέσετε στο πεδίο του επωνύμου.

9. Τί κάνουμε με τα Ερωτήματα, τις Φόρμες και τις Αναφορές/Εκθέσεις σε μιά Βάση-Δεδομένων;

               Ελεούσα 30 Μαΐου 2005

Ο ΔΙΕΥΘΥΝΤΗΣ            Ο ΕΙΣΗΓΗΤΗΣ

2005 ΣΕΠ

ΓΥΜΝΑΣΙΟ ΕΛΕΟΥΣΑΣ            Σχ.Ετος 2004-2005

ΓΡΑΠΤΕΣ ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΠΕΡΙΟΔΟΥ ΣΕΠΤΕΜΒΡΙΟΥ
ΣΤΟ ΜΑΘΗΜΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ
ΤΑΞΗ Γ'

ΘΕΜΑΤΑ
(Απαντήστε σε 6 θέματα. Οι απαντήσεις μόνο στην κόλλα.)

1. Ποιές είναι οι ΒΑΣΙΚΕΣ ΔΟΥΛΕΙΕΣ που κάνουμε με τον υπολογιστή;

2. Τί είναι το ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ και ποιά είναι τα βασικά πράγματα που κάνουμε με αυτό;

3. ΣΥΜΠΛΗΡΩΣΤΕ με όσες λέξεις χρειάζεται τα κενά:
1) ____________________ είναι το πρόγραμμα που μετατρέπει το πρόγραμμα που γράφουμε εμείς σε πρόγραμμα που καταλαβαίνει το κομπιούτερ με 0 και 1.
2) _____________________ είναι οι κανόνες με τους οποίους γράφουμε τις εντολές ενός προγράμματος.

4. Τι κάνει ο παρακάτω ΨΕΥΔΟΚΩΔΙΚΑΣ;
ΠΡΟΓΡΑΜΜΑ όνομα
   ΔΙΑΒΑΣΕ Χ
   Υ f Χ / 340,75
   ΓΡΑΨΕ Υ
ΤΕΛΟΣ ΠΡΟΓΡΑΜΜΑΤΟΣ

5. Να γραφεί ΠΡΟΓΡΑΜΜΑ που ΔΙΑΒΑΖΕΙ το συνολικό εισόδημα ενός φορολογούμενου και ΥΠΟΛΟΓΙΖΕΙ το φόρο που πρέπει να πληρώσει. Ο φόρος είναι το 20% του συνολικού εισοδήματος.

6. ΔΙΑΛΕΞΤΕ το σωστό/σωστά:
1) Ένας αλγόριθμος παρασταίνεται με:
α) ψευδοκώδικα, β) κώδικα, γ) διαγράμματα ροής, δ) περιγράμματα.
2) οι απλές-εντολές είναι:
α) καταχώρησης, β) εκχώρησης, γ) επιλογής, δ) εισόδου, ε) εξόδου.

7. Τί είναι οι ΕΓΓΡΑΦΕΣ και τί τα ΠΕΔΙΑ σε μια Βάση-Δεδομένων;

8. Τί είναι το ΑΡΧΕΙΟ και τί ο ΦΑΚΕΛΟΣ;

9. Τί κάνουμε με τα Ερωτήματα, τις Φόρμες και τις Αναφορές/Εκθέσεις σε μιά Βάση-Δεδομένων;

               Ελεούσα 07 Σεπτεμβρίου 2005

Ο ΔΙΕΥΘΥΝΤΗΣ            Ο ΕΙΣΗΓΗΤΗΣ

2003-2004

ΓΥΜΝΑΣΙΟ ΕΛΕΟΥΣΑΣ            Σχ.Ετος 2003-2004

ΓΡΑΠΤΕΣ ΑΠΟΛΥΤΗΡΙΕΣ ΕΞΕΤΑΣΕΙΣ ΠΕΡΙΟΔΟΥ ΜΑΙΟΥ-ΙΟΥΝΙΟΥ
ΣΤΟ ΜΑΘΗΜΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ
ΤΑΞΗ Γ'

ΘΕΜΑΤΑ
(Απαντήστε σε 6 θέματα. Οι απαντήσεις μόνο στην κόλλα.)

1. Ποιές είναι οι ΒΑΣΙΚΕΣ ΔΟΥΛΕΙΕΣ που κάνουμε με τον υπολογιστή και πώς λέγονται τα αντίστοιχα προγράμματα με τα οποία κάνουμε αυτές τις δουλειές;

2. Τί είναι το ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ και ποιά είναι τα βασικά πράγματα που κάνουμε με αυτό;

3. Γράψτε τα είδη των ΜΕΤΑΒΛΗΤΩΝ με κριτήριο το περιεχόμενό τους.

4. Τι κάνει ο παρακάτω ΨΕΥΔΟΚΩΔΙΚΑΣ;
ΠΡΟΓΡΑΜΜΑ όνομα
   ΔΙΑΒΑΣΕ Χ
   Υ f Χ / 340,75
   ΓΡΑΨΕ Υ
ΤΕΛΟΣ ΠΡΟΓΡΑΜΜΑΤΟΣ

5. Να γραφεί ΠΡΟΓΡΑΜΜΑ (ψευδοκώδικας) που ΔΙΑΒΑΖΕΙ το συνολικό εισόδημα ενός φορολογούμενου και ΥΠΟΛΟΓΙΖΕΙ το φόρο που πρέπει να πληρώσει. Ο φόρος είναι το 20% του συνολικού εισοδήματος.

6. ΔΙΑΛΕΞΤΕ το σωστό/σωστά:
1) Ένας αλγόριθμος παρασταίνεται με:
α) ψευδοκώδικα, β) κώδικα, γ) διαγράμματα ροής, δ) περιγράμματα.
2) οι απλές-εντολές είναι:
α) καταχώρησης, β) εκχώρησης, γ) επιλογής, δ) εισόδου, ε) εξόδου.

7. Τί είναι οι ΕΓΓΡΑΦΕΣ και τί τα ΠΕΔΙΑ σε μια Βάση-Δεδομένων;

8. Θέλετε να εμφανίσετε, με ερώτημα, όλους τους μαθητές των οποίων το επώνυμο αρχίζει το "Ν" μέχρι το "Ω". Δώστε το κριτήριο που θα θέσετε στο πεδίο του επωνύμου.

9. Τί κάνουμε με τα Ερωτήματα, τις Φόρμες και τις Αναφορές/Εκθέσεις σε μιά Βάση-Δεδομένων;

               Ελεούσα 15 Ιουνίου 2004

Ο ΔΙΕΥΘΥΝΤΗΣ            Ο ΕΙΣΗΓΗΤΗΣ

2002-2003

ΓΥΜΝΑΣΙΟ ΕΛΕΟΥΣΑΣ              Σχ.Ετος 2002-2003

ΓΡΑΠΤΕΣ ΑΠΟΛΥΤΗΡΙΕΣ ΕΞΕΤΑΣΕΙΣ ΠΕΡΙΟΔΟΥ ΜΑΙΟΥ-ΙΟΥΝΙΟΥ
ΣΤΟ ΜΑΘΗΜΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ
ΤΑΞΗ Γ'

ΘΕΜΑΤΑ
(Απαντήστε σε 6 θέματα. Οι απαντήσεις μόνο στην κόλλα.)

1. Ποιές είναι οι ΒΑΣΙΚΕΣ ΔΟΥΛΕΙΕΣ που κάνουμε με τον υπολογιστή και πώς λέγονται τα αντίστοιχα προγράμματα;

2. Τί είναι το ΛΕΙΤΟΥΡΓΙΚΟ-ΣΥΣΤΗΜΑ και τί κάνουμε με αυτό;

3. Γράψτε τα είδη των ΜΕΤΑΒΛΗΤΩΝ με κριτήριο το περιεχόμενό τους.

4. Τι κάνει ο παρακάτω ΑΛΓΟΡΙΘΜΟΣ;
ΠΡΟΓΡΑΜΜΑ όνομα
 'εισαγωγή δεδομένων
   ΔΙΑΒΑΣΕ Χ
 'επεξεργασία δεδομένων
   Υ <-- Χ / 340,75
   ΓΡΑΨΕ Υ
ΤΕΛΟΣ ΠΡΟΓΡΑΜΜΑΤΟΣ

5. Να γραφεί ΠΡΟΓΡΑΜΜΑ (μεταβλητές, φυσική-γλώσσα, ψευδοκώδικας) που διαβάζει το συνολικό εισόδημα ενός φορολογούμενου και υπολογίζει το φόρο που πρέπει να πληρώσει. Ο φόρος είναι το 20% του συνολικού εισοδήματος.

6. ΔΙΑΛΕΞΤΕ το σωστό/σωστά:
1) Ένας αλγόριθμος παρασταίνεται με:
α) ψευδοκώδικα, β) κώδικα, γ) διαγράμματα ροής, δ) περιγράμματα.
2) οι απλές-εντολές είναι:
α) καταχώρησης, β) εκχώρησης, γ) επιλογής, δ) εισόδου, ε) εξόδου.

7. Τί είναι οι ΕΓΓΡΑΦΕΣ και τί τα ΠΕΔΙΑ σε μια Βάση-Δεδομένων;

8. Γράψτε τη διαδικασία δημιουργίας πίνακα στη Βάση-Δεδομένων του εργαστηρίου μας.

9. Τί κάνουμε με τα Ερωτήματα, τις Φόρμες και τις Αναφορές/Εκθέσεις σε μιά Βάση-Δεδομένων;

               Ελεούσα 13 Ιουνίου 2003

Ο ΔΙΕΥΘΥΝΤΗΣ            Ο ΕΙΣΗΓΗΤΗΣ

2001-2002

ΓΥΜΝΑΣΙΟ ΒΑΣΙΛΙΚΗΣ              Σχ.Ετος 2001-2002

ΓΡΑΠΤΕΣ ΑΠΟΛΥΤΗΡΙΕΣ ΕΞΕΤΑΣΕΙΣ ΠΕΡΙΟΔΟΥ ΜΑΙΟΥ-ΙΟΥΝΙΟΥ
ΣΤΟ ΜΑΘΗΜΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ
ΤΑΞΗ Γ'

ΘΕΜΑΤΑ
(Απαντήστε σε 6 θέματα. Οι απαντήσεις μόνο στην κόλλα.)

1. Ποιές είναι οι ΒΑΣΙΚΕΣ ΔΟΥΛΕΙΕΣ που κάνουμε με τον υπολογιστή και πώς λέγονται τα αντίστοιχα προγράμματα;

2. Τί είναι το ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ και ποιά είναι τα 3 βασικά πράγματα που κάνουμε με αυτό;

3. Τί είναι η μνήμη RAM; Ποιο είναι το πλεονέκτημα και ποιό το μειονέκτημά της.

4. Γράψτε τα είδη των ΜΕΤΑΒΛΗΤΩΝ με κριτήριο το περιεχόμενό τους.

5. Τι κάνει ο παρακάτω ΑΛΓΟΡΙΘΜΟΣ;
ΠΡΟΓΡΑΜΜΑ όνομα
 'εισαγωγή δεδομένων
   ΔΙΑΒΑΣΕ Χ
 'επεξεργασία δεδομένων
   Υ <-- Χ / 340,75
   ΓΡΑΨΕ Υ
ΤΕΛΟΣ ΠΡΟΓΡΑΜΜΑΤΟΣ

6. Να γραφεί αλγόριθμος σε ψευδοκώδικα που διαβάζει το συνολικό εισόδημα ενός φορολογούμενου και υπολογίζει το φόρο που πρέπει να πληρώσει. Ο φόρος είναι το 20% του συνολικού εισοδήματος.

7. ΔΙΑΛΕΞΤΕ το σωστό/σωστά:
1) Ένας αλγόριθμος παρασταίνεται με:
α) ψευδοκώδικα, β) κώδικα, γ) διαγράμματα ροής, δ) περιγράμματα.
2) οι απλές-εντολές είναι:
α) καταχώρησης, β) εκχώρησης, γ) επιλογής, δ) εισόδου, ε) εξόδου.

8. Πώς κάνουμε ΑΝΑΖΗΤΗΣΕΙΣ στη Βάση-Δεδομένων του εργαστηρίου μας;

9. Τί είναι οι ΕΓΓΡΑΦΕΣ και τί τα ΠΕΔΙΑ σε μια Βάση-Δεδομένων;

               Βασιλική 3 Ιουνίου 2002

Ο ΔΙΕΥΘΥΝΤΗΣ            Ο ΕΙΣΗΓΗΤΗΣ

2000-2001

ΓΥΜΝΑΣΙΟ ΒΑΣΙΛΙΚΗΣ              Σχ.Ετος 2000-2001

ΓΡΑΠΤΕΣ ΑΠΟΛΥΤΗΡΙΕΣ ΕΞΕΤΑΣΕΙΣ ΠΕΡΙΟΔΟΥ ΜΑΙΟΥ-ΙΟΥΝΙΟΥ
ΣΤΟ ΜΑΘΗΜΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ
ΤΑΞΗ Γ'

ΘΕΜΑΤΑ
(Απαντήστε σε 6 θέματα. Οι απαντήσεις μόνο στην κόλλα.)

1. Ποιες είναι οι ΒΑΣΙΚΕΣ ΔΟΥΛΕΙΕΣ που κάνουμε με τον υπολογιστή και πως λέγονται τα αντίστοιχα προγράμματα;

2. Τι είναι το ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ και ποια είναι τα 3 βασικά πράγματα που κάνουμε με αυτό;

3. Τι είναι η μνήμη RAM; Ποιο είναι το πλεονέκτημα και ποιο το μειονέκτημά της.

4. Απαντήστε με ΣΩΣΤΟ/ΛΑΘΟΣ:
α) Hardware είναι οι πληροφορίες και software οι συσκευές του κομπιούτερ.
β) Επεξεργαστής είναι ο 'κινητήρας' του κομπιούτερ.
γ) Αρχεία είναι οργανωμένες ομάδες πληροφοριών με συγκεκριμένο όνομα.
δ) Δεδομένα είναι τα προγράμματα που περιέχουν κείμενα, εικόνες,…
ε) Προγράμματα εφαρμογών είναι τα προγράμματα με τα οποία κάνουμε δουλειές από τη καθημερινή ζωή μας.

5. Για να φτιάξουμε έναν αλγόριθμο πρέπει πρώτα να δηλώσουμε τις ΜΕΤΑΒΛΗΤΕΣ που θα χρησιμοποιήσουμε. Γράψτε τα τρία είδη των μεταβλητών και εξηγείστε τι είναι το καθένα.

6. Τι είναι και τι περιέχει ένα ΟΛΟΚΛΗΡΩΜΕΝΟ-ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ-ΠΕΡΙΒΑΛΛΟΝ;

7. Τι κάνει ο παρακάτω ΑΛΓΟΡΙΘΜΟΣ;
Αλγόριθμος όνομα
 δεδομένα πραγματικός Β,β,υ
 αποτελέσματα πραγματικός Ε
 αρχή
   διάβασε Β,β,υ
   Ε:=(Β+β)*υ/2
   εμφάνισε Ε
 τέλος

8. Σε μερικές χώρες η μέτρηση της θερμοκρασίας γίνεται σε βαθμούς Φαρενάιτ (Fahrenheit). Θερμοκρασία C βαθμών Κελσίου (Celsius) αντιστοιχεί σε F=1,8xC+32 βαθμούς Φαρενάιτ. Να γραφεί πρόγραμμα που να κάνει τη μετατροπή από βαθμούς Φαρενάιτ σε βαθμούς Κελσίου.

9. Να γράψετε ΑΛΓΟΡΙΘΜΟ που να μετατρέπει δραχμές σε ευρώ. (1 ευρώ=340 δραχμές).

               Βασιλική 6 Ιουνίου 2001

Ο ΔΙΕΥΘΥΝΤΗΣ            Ο ΕΙΣΗΓΗΤΗΣ

1999-2000

1. Ποιες είναι οι ΒΑΣΙΚΕΣ ΔΟΥΛΕΙΕΣ που κάνουμε με τον υπολογιστή και πως λέγονται τα αντίστοιχα προγράμματα;

2. Τι είναι το ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ και ποια είναι τα 3 βασικά πράγματα που κάνουμε με αυτό;

3. Τι είναι η μνήμη RAM; Ποιο το πλεονέκτημά της και ποιο το μειονέκτημά της.

4. Τι πληροφορίες βάζουμε σε μια ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ και τι είναι εγγραφή και πεδίο;

5. Πως βρίσκουμε στη βάση δεδομένων των φίλων μας αυτούς που το επίθετό τους αρχίζει από Κ;

6. Πως ΔΗΜΙΟΥΡΓΟΥΜΕ μια βάση δεδομένων;

7. Τι υπολογίζουν οι παρακάτω ΤΥΠΟΙ;
α) = round(avg(c1:c9);0)
β) = sum(b1:b10)/count(b1:b10)

8. Απαντήστε με ΣΩΣΤΟ/ΛΑΘΟΣ:
α) Hardware είναι οι πληροφορίες και software οι συσκευές του κομπιούτερ.
β) Επεξεργαστής είναι ο 'κινητήρας' του κομπιούτερ.
γ) Αρχεία είναι οργανωμένες ομάδες πληροφοριών με συγκεκριμένο όνομα.
δ) Δεδομένα είναι τα προγράμματα που περιέχουν κείμενα, εικόνες,…
ε) Προγράμματα εφαρμογών είναι τα προγράμματα με τα οποία κάνουμε δουλειές από τη καθημερινή ζωή μας.

9. Τι είναι τα ΔΙΑΓΡΑΜΜΑΤΑ και πώς τα φτιάχνουμε;

1998-1999

1. Ποιές είναι οι ΒΑΣΙΚΕΣ ΔΟΥΛΕΙΕΣ που κάνουμε με τον υπολογιστή και πως λέγονται τα αντίστοιχα προγράμματα;

2. Τι είναι το ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ και ποιά είναι τα 3 βασικά πράγματα που κάνουμε με αυτό;

3. Τι είναι η μνήμη RAM;

4. Συνδέστε πώς μετακινούμε το δρομέα στον επεξεργαστή κειμένου μας:
α) το ποντικι        1) χαρακτήρα & γραμμή
β) τα πλήκτρα με τα τέσσερα βελάκια  2) αρχή/τέλος γραμμής
γ) τα πλήκτρα home/end      3) οποιοδήποτε σημείο
δ) τα πλήκτρα pageup/pagedown    4) αρχή/τέλος κειμένου
ε) τα πληκτρα ctrl + home/end    5) αρχη/τελος οθόνης

5. Τι πληροφορίες βάζουμε σε μια ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ και τί είναι εγγραφή και πεδίο;

6. Πως βρίσκουμε στη βάση δεδομένων των φίλων μας αυτούς που το επίθετό τους αρχίζει από Κ;

7. Πως ΔΗΜΙΟΥΡΓΟΥΜΕ μια βάση δεδομένων;

8. Περιγράψτε τα 5 βήματα που ακολουθούμε για να φτιάξουμε ένα πρόγραμμα στη Logo.

9. Φτιάξτε το σχήμα που κάνει το ακόλουθο πρόγραμμα:
to_pp_:x
repeat_15_[fd_:x_rt_90_make_"x_:x+5]
end

1997-1998

1. Ποιές είναι οι ΒΑΣΙΚΕΣ ΔΟΥΛΕΙΕΣ που κάνουμε με τον υπολογιστή και πως λέγονται τα αντίστοιχα προγράμματα;

2. Τι είναι το ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ και ποιά είναι τα 3 βασικά πράγματα που κάνουμε με αυτό;

3. Τι είναι η μνήμη RAM;

4. Συνδέστε πώς μετακινούμε το δρομέα στον επεξεργαστή κειμένου μας:
α) το ποντικι        1) χαρακτήρα & γραμμή
β) τα πλήκτρα με τα τέσσερα βελάκια  2) αρχή/τέλος γραμμής
γ) τα πλήκτρα home/end      3) οποιοδήποτε σημείο
δ) τα πλήκτρα pageup/pagedown    4) αρχή/τέλος κειμένου
ε) τα πληκτρα ctrl + home/end    5) αρχη/τελος οθόνης

5. Γράψτε τη διαδικασία με την οποία αντιγράφουμε ένα κομμάτι κειμένου στον επεξεργαστή κειμένου.

6. Τι πληροφορίες βάζουμε σε μια ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ και τί είναι εγγραφή και πεδίο;

7. Πως βρίσκουμε στη βάση δεδομένων των φίλων μας αυτούς που το επίθετό τους αρχίζει από Κ;

8. Περιγράψτε τα 5 βήματα που ακολουθούμε για να φτιάξουμε ένα πρόγραμμα στη Logo.

9. Φτιάξτε το σχήμα που κάνει το ακόλουθο πρόγραμμα:
to_pp_:x
repeat_15_[fd_:x_rt_90_make_"x_:x+5]
end

1996-1997

1. δουλειές-προγράμματα

2. λειτουργικο - ποια μαθαμε

3. RAM

4. Συνδέστε DIR, COPY, CD.., MD

5. Επιλογή κειμένου

6. αντιγραφή κειμένου

7. φύλλα εργασίες και ποιες οι λειτουργίες/ιδιοτητες

8. εγγραφή πεδίο

9. 3 πράγματα σε database

μγ02'πηγή

name::
* McsElln.μγ02'πηγή@cptIt,
* McsEngl.mg02'resource@cptIt,

_ADDRESS.WPG:
* http://pliroforikiatschool.blogspot.gr/2011/09/10.html,

SPECIFIC

ΥΛΗ ΠΟΥ ΔΙΔΑΞΑ ΤΟ 1993-1994 ΣΤΟ 5ο Γυμν Ηλιούπολης

ΤΑ ΤΡΙΑ ΒΑΣΙΚΑ ΠΡΑΓΜΑΤΑ ΝΑ ΞΕΚΙΝΗΣΕΙΣ ΝΑ ΧΡΗΣΙΜΟΠΟΙΕΙΣ ΥΠΟΛΟΓΙΣΤΗ

 Α. ΒΑΣΙΚΕΣ ΔΟΥΛΕΙΕΣ ΠΟΥ ΚΑΝΟΥΜΕ ΜΕ ΥΠΟΛΟΓΙΣΤΗ

 Β. ΒΑΣΙΚΑ ΜΕΡΗ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ

 Γ. ΠΩΣ ΤΡΕΧΟΥΜΕ ΕΝΑ ΠΡΟΓΡΑΜΜΑ.

ΒΑΣΙΚΕΣ ΟΜΑΔΕΣ ΥΠΟΛΟΓΙΣΤΩΝ

ΓΕΝΙΚΗΣ ΧΡΗΣΗΣ - ΕΙΔΙΚΗΣ ΧΡΗΣΗΣ:

ΒΑΣΙΚΕΣ ΔΟΥΛΕΙΕΣ ΠΟΥ ΚΑΝΟΥΜΕ ΜΕ ΥΠΟΛΟΓΙΣΤΕΣ

1. ΠΑΙΓΝΙΔΙΑ (GAMES PROGRAMS)

2. ΓΡΑΦΟΜΗΧΑΝΗ (WORD PROCESSORS/ΕΠΕΞΕΡΓΑΣΤΕΣ ΚΕΙΜΕΝΟΥ)

3. ΥΠΟΛΟΓΙΣΜΟΥΣ (SPREADSHEETS/ΦΥΛΛΑ ΕΡΓΑΣΙΑΣ)

4. ΚΑΤΑΧΩΡΗΣΗ ΠΛΗΡΟΦΟΡΙΩΝ (DATABASES/ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ)

5. ΖΩΓΡΑΦΙΚΗ (ΓΡΑΦΙΚΑ/GRAPHICS)

6. ΕΠΙΚΟΙΝΩΝΙΑ (COMMUNICATION PROGRAMS)  

ΒΑΣΙΚΑ ΜΕΡΗ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ

1. ΕΠΕΞΕΡΓΑΣΤΗΣ. ΕΙΝΑΙ ΑΥΤΟΣ ΠΟΥ ΚΑΝΕΙ ΤΗΝ ΔΟΥΛΕΙΑ.

2. ΜΝΗΜΗ RAM (ΚΥΡΙΑ ΜΝΗΜΗ). ΕΙΝΑΙ ΧΩΡΟΣ ΣΤΟΝ ΟΠΟΙΟ Ο ΥΠΟΛΟΓΙΣΤΗΣ ΒΑΖΕΙ ΤΟ ΠΡΟΓΡΑΜΜΑ ΠΟΥ ΕΚΤΕΛΕΙ ΚΑΘΕ ΦΟΡΑ. ΤΑ ΠΕΡΙΕΧΟΜΕΝΑ-ΤΟΥ ΖΒΗΝΟΥΝ ΧΩΡΙΣ ΡΕΥΜΑ.

3. ΑΠΟΘΗΚΗ ΠΛΗΡΟΦΟΡΙΩΝ. ΔΙΑΤΗΡΟΥΝΤΑΙ ΟΙ ΠΛΗΡΟΦΟΡΙΕΣ ΧΩΡΙΣ ΡΕΥΜΑ (ΠΧ ΚΛΗΡΟΣ ΔΙΣΚΟΣ, ΔΙΣΚΕΤΕΣ)

4. ΟΘΟΝΗ

5. ΠΛΗΚΤΡΟΛΟΓΙΟ

6. ΜΝΗΜΗ ROM. ΕΙΝΑΙ ΧΩΡΟΣ ΜΕ ΠΡΟΓΡΑΜΜΑΤΑ ΕΛΕΓΧΟΥ ΠΟΥ ΕΚΤΕΛΟΥΝΤΑΙ ΜΟΛΙΣ ΑΝΟΙΞΟΥΜΕ ΤΟΝ ΥΠΟΛΟΓΙΣΤΗ.

ΟΡΓΑΝΩΣΗ ΑΠΟΘΗΚΩΝ

-ΤΟΥΣ ΑΠΟΘΗΚΕΥΤΙΚΟΥΣ ΧΩΡΟΥΣ ΤΟΥΣ ΟΝΟΜΑΖΟΥΜΕ A, B, C, D, ...
ΣΥΝΗΘΩΣ ΤΙΣ ΔΙΣΚΕΤΕΣ ΤΙΣ ΟΝΟΜΑΖΟΥΝ Α, Β, ΚΑΙ Ο ΣΚΛΗΡΟΣ ΔΙΣΚΟΣ C.
-ΚΑΘΕ ΑΠΟΘΗΚΕΥΤΙΚΟΣ ΧΩΡΟΣ ΧΩΡΙΖΕΤΑΙ ΣΕ ΠΕΡΙΣΟΤΕΡΑ ΚΟΜΑΤΙΑ ΠΟΥ ΛΕΓΟΝΤΑΙ ΚΑΤΑΛΟΓΟΙ/DIRECTORY, ΠΟΥ ΤΟΥΣ ΔΙΝΟΥΝ ΟΝΟΜΑΤΑ ΟΠΩΣ ΚΑΙ ΣΤΑ ΑΡΧΕΙΑ.
-ΕΝΤΟΛΕΣ ΤΟΥ DOS ΧΡΗΣΙΜΕΣ ΣΤΗΝ ΕΞΕΡΕΥΝΗΣΗ ΤΩΝ ΑΠΟΘΗΚΕΥΤΙΚΩΝ ΧΩΡΩΝ ΚΑΙ ΤΩΝ ΚΑΤΑΛΟΓΩΝ-ΤΩΝ:
DIR      ΔΕΙΧΝΕΙ ΤΑ ΠΕΡΙΕΧΟΜΕΝΑ ΚΑΤΑΛΟΓΟΥ
A:      ΠΗΓΑΙΝΕΙ ΣΤΟΝ ΑΠΟΘΗΚΕΥΤΙΚΟ ΧΩΡΟ Α
CD GAMES    ΠΗΓΑΙΝΕΙ ΣΤΟΝ ΥΠΟΚΑΤΑΛΟΓΟ GAMES
CD..      ΠΗΓΑΙΝΕΙ ΣΤΟΝ ΠΡΟΗΓΟΥΜΕΝΟ ΚΑΤΑΛΟΓΟ

ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ

ΕΙΝΑΙ ΕΝΑ ΣΥΝΟΛΟ ΒΑΣΙΚΩΝ ΠΡΟΓΡΑΜΑΤΩΝ ΠΟΥ ΕΚΤΕΛΟΥΝΤΑΙ ΜΕ ΤΟ ΑΝΟΙΓΜΑ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ ΜΕΤΑ ΑΠΟ ΤΑ ΠΡΟΓΡΑΜΜΑΤΑ ΤΗΣ ΜΝΗΜΗΣ ROM, ΚΑΙ ΠΡΙΝ ΑΠΟ ΤΗΝ ΕΚΤΕΛΕΣΗ ΟΠΟΙΟΥΔΗΠΟΤΕ ΑΛΛΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ.

ΠΩΣ ΤΡΕΧΟΥΜΕ ΕΝΑ ΠΡΟΓΡΑΜΜΑ

-ΠΑΜΕ ΣΤΟΝ ΑΠΟΘΗΚΕΥΤΙΚΟ ΧΩΡΟ ΠΟΥ ΒΡΙΣΚΕΤΑΙ, ΓΡΑΦΟΥΜΕ ΤΟ ΟΝΟΜΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ ΚΑΙ ΠΑΤΑΜΕ @ENTER@.

ΕΠΕΞΕΡΓΑΣΙΑ ΚΕΙΜΕΝΟΥ

ΟΙ ΒΑΣΙΚΕΣ ΔΟΥΛΕΙΕΣ ΠΟΥ ΠΡΕΠΕΙ ΝΑ ΞΕΡΟΥΜΕ ΝΑ ΚΑΝΟΥΜΕ ΜΕ ΕΝΑ ΠΡΟΓΡΑΜΜΑ ΕΠΕΞΕΡΓΑΣΙΑΣ ΚΕΙΜΕΝΟΥ ΕΙΝΑΙ:

1. ΔΗΜΙΟΥΡΓΙΑ ΚΕΙΜΕΝΟΥ: ΔΗΛ. ΠΩΣ ΝΑ ΔΗΜΙΟΥΡΓΟΥΜΑΙ ΚΑΙΝΟΥΡΓΙΑ ΚΕΙΜΕΝΑ (ΑΡΧΕΙΑ).

2. ΑΝΟΙΓΜΑ ΚΕΙΜΕΝΟΥ: ΔΗΛ. ΠΩΣ ΝΑ ΣΥΝΕΧΙΖΟΥΜΕ ΤΗΝ ΕΠΕΞΕΡΓΑΣΙΑ ΕΝΟΣ ΗΔΗ ΔΗΜΙΟΥΡΓΗΜΕΝΟΥ ΚΕΙΜΕΝΟΥ.

3. ΑΠΟΘΗΚΕΥΣΗ (ΜΕ ΕΠΙΣΤΡΟΦΗ ή ΕΞΟΔΟ): ΔΗΛ. ΠΩΣ ΝΑ ΜΕΤΑΦΕΡΟΥΜΕ ΤΟ ΚΕΙΜΕΝΟ ΑΠΟ ΤΗ RAM, ΣΤΗΝ ΑΠΟΘΗΚΗ ΚΑΙ ΝΑ ΞΑΝΑΓΥΡΙΖΟΥΜΕ ΣΤΗ ΣΗΜΕΙΟ ΠΟΥ ΕΙΜΑΣΤΑΝ ΠΡΙΝ ή ΝΑ ΕΓΚΑΤΑΛΕΙΠΟΥΜΕ ΚΑΙ ΤΟ ΠΡΟΓΡΑΜΜΑ.

4. ΔΙΟΡΘΩΣΕΙΣ: ΔΗΛ. ΠΩΣ ΝΑ ΚΑΝΟΥΜΕ ΔΙΟΡΘΩΣΕΙΣ ΣΤΟ ΚΕΙΜΕΝΟ ΜΑΣ. ΠΧ
Α. ΝΑ ΜΕΤΑΚΙΝΟΥΜΕ ΤΟ ΔΡΟΜΕΑ ΣΤΑ ΔΙΑΦΟΡΑ ΜΕΡΗ ΤΟΥ ΚΕΙΜΕΝΟΥ.
Β. ΝΑ ΠΑΡΕΜΒΑΛΟΥΜΕ ΛΕΞΕΙΣ ή ΝΑ ΓΡΑΦΟΥΜΕ ΠΑΝΩ ΣΕ ΛΕΞΕΙΣ.
Γ. ΝΑ ΣΒΗΝΟΥΜΕ ΓΡΑΜΜΑΤΑ, ΛΕΞΕΙΣ, ΓΡΑΜΜΕΣ.
Δ. ΝΑ ΑΝΤΙΓΡΑΦΟΥΜΕ, ΝΑ ΜΕΤΑΦΕΡΟΥΜΕ ή ΝΑ ΣΒΗΝΟΥΜΕ @ΚΟΜΜΑΤΙ@ ΚΕΙΜΕΝΟΥ.

5. ΕΜΦΑΝΙΣΗ: ΔΗΛ. ΝΑ ΜΑΘΟΥΜΕ ΝΑ ΒΑΖΟΥΜΕ ΑΡΙΣΤΕΡΑ ΚΑΙ ΔΕΞΙΑ ΠΕΡΙΘΩΡΙΑ ΣΤΟ ΚΕΙΜΕΝΟ-ΜΑΣ, ΚΑΙ ΥΠΟΓΡΑΜΜΙΖΟΥΜΕ ή ΟΧΙ ΛΕΞΕΙΣ, ΝΑ ΣΤΟΙΧΙΖΟΥΜΕ ΤΟ ΚΕΙΜΕΝΟ ΑΥΤΟΜΑΤΑ ή ΟΧΙ Κ.Λ.Π.

ΠΑΡΑΣΤΑΣΗ ΠΛΗΡΟΦΟΡΙΩΝ ΣΤΟΝ ΥΠΟΛΟΓΙΣΤΗ

O ΥΠΟΛΟΓΙΣΤΗΣ, ΣΑ ΜΗΧΑΝΗΜΑ ΑΠΟΤΕΛΕΙΤΑΙ ΑΠΟ ΗΛΕΚΤΡΟΝΙΚΑ ΚΥΚΛΩΜΑΤΑ, ΤΑ ΟΠΟΙΑ ΜΠΟΡΟΥΝ ΝΑ ΒΡΕΘΟΥΝ ΣΕ ΔΥΟ ΚΑΤΑΣΤΑΣΕΙΣ, ΝΑ ΠΕΡΝΑ ή ΝΑ ΜΗ ΠΕΡΝΑ ΡΕΥΜΑ.
ΟΜΩΣ Ο ΥΠΟΛΟΓΙΣΤΗΣ ΜΠΟΡΕΙ ΝΑ ΕΠΕΞΕΡΓΑΖΕΤΑΙ ΠΛΗΡΟΦΟΡΙΕΣ (ΣΥΜΒΟΛΑ, ΗΧΟ, ΕΙΚΟΝΕΣ) ΕΠΕΙΔΗ Ο ΑΝΘΡΩΠΟΣ ΜΕ ΚΑΠΟΙΟ ΤΡΟΠΟ ΑΝΤΙΠΡΟΣΩΠΕΥΕΙ/ΠΑΡΑΣΤΑΙΝΕΙ/ΚΩΔΙΚΟΠΟΙΕΙ ΤΙΣ ΠΛΗΡΟΦΟΡΙΕΣ ΜΕΣΑ ΣΤΟΝ ΥΠΟΛΟΓΙΣΤΗ.
ΚΑΘΕ ΔΥΑΔΙΚΗ ΚΑΤΑΣΤΑΣΗ, ΠΟΥ ΣΥΝΗΘΩΣ ΠΑΡΑΣΤΑΙΝΕΤΑΙ ΜΕ ΤΟ 0 ή 1, ΤΗΝ ΟΝΟΜΑΖΟΥΝ BIT (BInary digiT).
ΣΥΝΔΥΑΣΜΟΙ ΤΩΝ 8 BIT, ΟΝΟΜΑΖΟΝΤΑΙ BYTE, ΚΑΙ Μ'ΑΥΤΟΥΣ ΑΝΤΙΠΡΟΣΩΠΕΥΟΥΝ ΣΥΜΒΟΛΑ ΣΤΟΝ ΥΠΟΛΟΓΙΣΤΗ.
ΕΠΕΙΔΗ ΟΛΟΙ ΔΥΝΑΤΟΙ ΜΟΝΑΔΙΚΟΙ ΣΥΝΔΥΑΣΜΟΙ 8 ΒΙΤ ΕΙΝΑΙ 256 (2^8), ΓΙΑΥΤΟ ΚΑΙ ΤΑ ΣΥΜΒΟΛΑ ΠΟΥ ΧΡΗΣΙΜΟΠΟΙΕΙ Ο ΥΠΟΛΟΓΙΣΤΗΣ ΕΙΝΑΙ 256.
Ο ΚΩΔΙΚΑΣ ΑΥΤΟΣ ΤΩΝ 8 BIT ΛΕΓΕΤΑΙ ASCII ΚΑΙ ΒΡΙΣΚΟΝΤΑΙ ΣΤΗ ΣΕΛΙΔΑ 42 ΤΟΥ ΒΙΒΛΙΟΥ.
TA BYTE ΕΙΝΑΙ ΚΑΙ ΜΟΔΑΔΑ ΜΕΤΡΗΣΗΣ ΠΛΗΡΟΦΟΡΙΩΝ.
ΕΡΩΤΗΣΗ:   ΑΠΟ ΠΟΣΑ BYTE ΑΠΟΤΕΛΕΙΤΑΙ Η ΦΡΑΣΗ @COPY MS.COM B:@=14.

Ο ΗΧΟΣ ΑΝΤΙΠΡΟΣΩΠΕΥΕΤΑΙ ΜΕ ΣΥΝΔΙΑΣΜΟΥΣ ΤΩΝ 8 ή 16 ΒΙΤ, ΕΞΑΡΤΑΤΑΙ ΑΠΟ ΤΟ ΜΗΧΑΝΗΜΑ.
Η ΕΙΚΟΝΑ ΑΝΤΙΠΡΟΣΩΠΕΥΤΑΙ ΜΕ ΣΥΝΔΙΑΣΜΟΥΣ ΤΩΝ 8 ή 16 ή 24 ΒΙΤ.
2^8=256, 2^16=65.536, 2^24=16.777.216. ΟΣΟ ΠΙΟ ΠΟΛΑ ΒΙΤ ΕΧΟΥΝ ΟΙ ΚΩΔΙΚΟΙ, ΤΟΣΟΥΣ ΠΙΟ ΠΟΛΛΟΥΣ ΜΟΝΑΔΙΚΟΥΣ ΣΥΝΔΙΑΣΜΟΥΣ ΔΗΜΙΟΥΡΓΟΥΝ ΚΑΙ ΑΡΑ ΤΟΣΟ ΠΙΟ ΠΟΛΛΕΣ ΠΛΗΡΟΦΟΡΙΕΣ ΜΠΟΡΟΥΝ ΝΑ ΑΝΤΙΠΡΟΣΩΠΕΥΤΟΥΝ.r

ΠΕΡΙΦΕΡΕΙΑΚΕΣ ΜΟΝΑΔΕΣ

ΤΙΣ ΣΥΣΚΕΥΕΣ ΕΠΙΚΟΙΝΩΝΙΑΣ ΜΕ ΤΟΝ ΥΠΟΛΟΓΙΣΤΗ ΤΙΣ ΛΕΝΕ ΚΑΙ ΠΕΡΙΦΕΡΕΙΑΚΕΣ ΜΟΝΑΔΕΣ. ΤΙΣ ΤΑΞΙΝΟΜΟΥΝ ΣΕ

1. ΜΟΝΑΔΕΣ ΕΙΣΟΔΟΥ:

 ΠΛΗΚΤΡΟΛΟΓΙΟ.

 ΟΘΟΝΗ.

 ΟΠΤΙΚΟΣ ΑΝΑΓΝΩΣΤΗΣ.

 ΑΝΑΓΝΩΣΤΗΣ ΡΑΒΔΩΤΩΝ ΚΩΔΙΚΩΝ.

 ΑΙΣΘΗΤΗΡΕΣ, ΓΡΑΦΙΔΑ, ΠΟΝΤΙΚΙ, ΧΕΙΡΙΣΤΗΡΙΑ/JOYSTICKS,

 ΔΙΑΤΡΗΤΕΣ ΚΑΡΤΕΛΕΣ, ΑΝΑΓΝΩΣΤΗΣ ΧΑΡΤΟΤΑΙΝΙΩΝ.

2. ΜΟΝΑΔΕΣ ΕΞΟΔΟΥ:

 ΕΚΤΥΠΩΤΗΣ.

 ΣΧΕΔΙΟΓΡΑΦΟΙ.

 ΔΙΑΤΡΗΡΙΚΕΣ ΜΗΧΑΝΕΣ

 ΣΥΣΚΕΥΕΣ ΓΙΑ ΜΙΚΡΟΦΙΛΜΣ.

 ΜΕΓΑΦΩΝΟ, ΠΑΛΜΟΓΡΑΦΟΙ, ΣΕΙΣΜΟΓΡΑΦΟΙ, ΕΡΓΑΛΕΙΟΜΗΧΑΝΕΣ.

 ΟΘΟΝΗ.

3. ΠΕΡΙΦΕΡΕΙΑΚΕΣ ΜΟΝΑΔΕΣ ΜΝΗΜΕΣ.

 ΜΑΓΝΗΤΙΚΕΣ ΤΑΙΝΙΕΣ (DRIVES + TAPES).

 ΜΑΓΝΗΤΙΚΟΙ ΔΙΣΚΟΙ (HARD DISKS, FLOPPY DISKS

 ΜΑΓΝΗΤΟΟΠΤΙΚΟΙ ΔΙΣΚΟΙ: CD-ROM, WORM, WRITABLE DISKS.

ΔΙΑΓΩΝΙΣΜΑ'Α'ΕΞΑΜΗΝΟΥ

name::
* McsElln.ΔΙΑΓΩΝΙΣΜΑ'Α'ΕΞΑΜΗΝΟΥ@cptIt,

1. ΠΟΙΑ ΕΙΝΑΙ ΤΑ ΒΑΣΙΚΑ ΜΕΡΗ ΤΟΥ ΥΠΟΛΟΓΙΣΤΗ, ΠΕΣΤΕ ΜΕ ΛΙΓΑ ΛΟΓΙΑ ΤΙ ΚΑΝΕΙ ΤΟ ΚΑΘΕΝΑ.
2. ΔΙΑΦΟΡΑ ΜΕΤΑΞΥ ΤΗΣ ΜΝΗΜΗΣ RAM ΚΑΙ ΤΩΝ ΒΟΗΘΗΤΙΚΩΝ (ΑΠΟΘΗΚΕΣ) ΜΝΗΜΩΝ.
3. ΤΙ ΕΙΝΑΙ BIT. TI EINAI TO BYTE; ΤΙ ΜΕΤΡΑΕΙ ΤΟ BYTE.
4. ΑΠΟ ΤΙΣ ΠΑΡΑΚΑΤΩ ΜΟΝΑΔΕΣ ΠΟΙΕΣ ΕΙΝΑΙ ΕΙΣΟΔΟΥ ΚΑΙ ΠΟΙΕΣ ΕΙΝΑΙ ΕΞΟΔΟΥ;
ΠΟΝΤΙΚΙ, ΑΝΑΓΝΩΣΤΗΣ ΡΑΒΔΩΤΟΥ ΚΩΔΙΚΑ, ΕΚΤΥΠΩΤΗΣ, ΟΠΤΙΚΟΣ ΑΝΑΓΝΩΣΤΗΣ, ΣΧΕΔΙΟΓΡΑΦΟΣ, ΟΘΟΝΗ.
4. ΤΙ ΕΙΝΑΙ ΤΟ ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ (DOS).
5. ΤΙ ΚΑΝΕΙ Η ΕΝΤΟΛΗ FORMAT B:/S
6. ΤΙ ΚΑΝΕΙ Η ΕΝΤΟΛΗ copy B:M*.* b:
7. ΝΑ ΣΥΝΔΕΣΕΤΕ ΚΑΘΕ ΕΝΤΟΛΗ ΤΗΣ ΠΡΩΤΗΣ ΣΤΗΛΗΣ ΜΕ ΤΗ ΦΡΑΣΗ ΣΤΗ ΔΕΥΤΕΡΗ ΣΤΗΛΗ.
FORMAT  ΕΜΦΑΝΙΖΕΙ ΤΟ ΕΥΡΕΤΗΡΙΟ ΤΗΣ ΔΙΣΚΕΤΑΣ.
COPY    ΑΝΤΙΓΡΑΦΕΙ ΜΙΑ ΔΙΣΚΕΤΑ ΣΕ ΜΙΑ ΑΛΛΗ.
DISKOPY  ΔΙΑΜΟΡΦΩΝΕΙ ΤΗ ΔΙΣΚΕΤΑ.
DIR    ΔΙΑΓΡΑΦΕΙ ΕΝΑ ΑΡΧΕΙΟ ΑΠΟ ΤΗ ΔΙΣΚΕΤΑ.
DEL    ΑΛΛΑΖΕΙ ΚΑΤΑΛΟΓΟ/DIRECTORY.
CD    ΑΝΤΙΓΡΑΦΕΙ ΕΝΑ ΑΡΧΕΙΟ.
9  Α) ΓΙΑΤΙ Ο ΥΠΟΛΟΓΙΣΤΗΣ ΚΑΤΑΛΑΒΑΙΝΕΙ ΔΥΑΔΙΚΟ ΣΥΣΤΗΜΑ.

Β) ΠΟΙΕΣ ΕΙΝΑΙ ΟΙ ΒΑΣΙΚΕΣ ΔΟΥΛΕΙΣ ΠΟΥ ΚΑΝΕΙ Ο ΥΠΟΛΟΓΙΣΤΗΣ ΚΑΙ ΠΩΣ ΛΕΓΟΝΤΑΙ ΤΑ ΑΝΤΙΣΤΟΙΧΑ ΠΡΟΓΡΑΜΜΑΤΑ.

ΖΩΓΡΑΦΙΚΗ

* ΓΙΑ ΝΑ ΤΡΕΞΟΥΜΕ ΤΟ ΠΡΟΓΡΑΜΜΑ MAP ENTER.
* ΓΙΑ ΝΑ ΣΥΛΛΕΞΟΥΜΕ ΕΡΓΑΛΕΙΟ ΠΑΜΕ ΜΕ ΤΑ ΒΕΛΑΚΙΑ ΤΟΝ ΚΕΡΣΟΡΑ ΠΑΝΩ ΣΤΑ ΕΡΓΑΛΕΙΑ ΚΑΙ ΜΕΤΑΚΙΝΟΥΜΕ ΠΑΝΩ ΚΑΤΩ.
* ΓΙΑ ΝΑ ΓΡΑΨΟΥΜΕ ΠΑΤΑΜΕ SPACEBAR ΣΤΗΝ ΑΡΧΗ ΚΑΙ ΣΤΟ ΤΕΛΟΣ, ΕΝΩ ΜΕ ΤΑ ΒΕΛΑΚΙΑ ΔΕΙΧΝΟΥΜΕ ΠΟΣΟ ΜΕΓΑΛΟ ΝΑ ΕΙΝΑΙ ΤΟ ΑΝΤΙΚΕΙΜΕΝΟ.
* ΤΟ ΜΕΝΟΥ @STYLE@ ΜΑΣ ΔΙΝΕΙ ΔΙΑΦΟΡΕΤΙΚΕΣ ΕΠΙΛΟΓΕΣ ΣΤΑ ΑΝΤΙΚΕΙΜΕΝΑ.

ΥΠΟΛΟΓΙΣΜΟΙ ΜΕ ΤΟ ΚΟΜΠΙΟΥΤΕΡ (ΦΥΛΑ ΕΡΓΑΣΙΑΣ)

ΦΥΛΑ ΕΡΓΑΣΙΑΣ ΕΙΝΑΙ ΠΡΟΓΡΑΜΜΑΤΑ ΠΟΥ ΕΠΙΤΡΕΠΟΥΝ ΣΤΟΥΣ ΧΡΗΣΤΕΣ ΝΑ ΕΠΕΞΕΡΓΑΖΟΝΤΑΙ ΔΕΔΟΜΕΝΑ (ΒΑΣΙΚΑ ΑΡΙΘΜΟΥΣ) ΠΟΥ ΜΠΟΡΟΥΝ ΝΑ ΤΟΠΟΘΕΤΗΘΟΥΝ ΣΕ ΓΡΑΜΜΕΣ ΚΑΙ ΣΤΗΛΕΣ.
ΟΙ ΓΡΑΜΕΣ ΟΝΟΜΑΖΟΝΤΑΙ ΜΕ ΑΡΙΘΜΟΥΣ ΚΑΙ ΟΙ ΣΤΗΛΕΣ ΜΕ ΓΡΑΜΑΤΑ. TA ΣΗΜΕΙΑ ΤΟΜΗΣ ΓΡΑΜΜΩΝ ΚΑΙ ΣΤΗΛΩΝ ΟΝΟΜΑΖΟΝΤΑΙ ΚΕΛΙΑ ΚΑΙ ΧΑΡΑΚΤΗΡΙΖΟΝΤΑΙ ΜΕ ΤΟ ΓΡΑΜΑ ΤΗΣ ΣΤΗΛΗΣ ΚΑΙ ΤΟΝ ΑΡΙΜΟ ΤΗΣ ΓΡΑΜΜΗΣ.
ΚΑΘΕ ΚΕΛΙ ΕΧΕΙ ή ΚΕΙΜΕΝΟ ή ΑΡΙΜΟΥΣ ή ΣΥΝΑΡΤΗΣΕΙΣ ΠΟΥ ΜΑΣ ΔΙΝΟΥΝ ΠΧ ΑΘΡΟΙΣΜΑ, ΜΕΣΟ ΟΡΟ ΚΛΠ ΑΡΙΘΜΟ.

ΜΙΑ ΒΑΣΙΚΗ ΙΔΙΟΤΗΤΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ ΕΙΝΑΙ ΟΤΙ ΟΤΑΝ ΑΛΛΑΞΟΥΜΕ ΕΝΑ ΑΡΙΜΟ ΣΕ ΕΝΑ ΚΕΛΙ, ΤΟ ΠΡΟΓΡΑΜΑ ΑΥΤΟΜΑΤΑ ΥΠΟΛΟΓΙΖΕΙ ΞΑΝΑ ΟΛΕΣ ΤΙΣ ΣΧΕΣΕΙΣ ΣΤΟ ΦΥΛΟ ΕΡΓΑΣΙΑΣ.
ΤΕΛΟΣ ΕΝΑ ΑΛΛΟ ΣΗΜΑΝΤΙΚΟ ΧΑΡΑΚΤΗΡΙΣΤΙΚΟ ΑΥΤΩΝ ΤΩΝ ΠΡΟΓΡΑΜΜΑΤΩΝ ΕΙΝΑΙ Η ΔΗΜΙΟΥΡΓΙΑ ΔΙΑΓΡΑΜΜΑΤΩΝ ΜΕ ΤΑ ΟΠΟΙΑ ΕΧΟΥΜΕ ΕΠΟΠΤΙΚΗ ΕΙΚΟΝΑ ΤΩΝ ΔΕΔΟΜΕΝΩΝ.


ENA ΠΑΡΑΔΕΙΓΜΑ ΥΠΟΛΟΓΙΣΜΟΣ ΒΑΘΜΟΛΟΓΙΑ ΜΑΘΗΤΗ:

   Ατρ  Βτρ  Γτρ  Αεξ  Βεξ  ΜΕΣΟΣ ΟΡΟΣ
MATH.        =(b1+c1+d1+@avg(e1,f1))/4
PHYS.
HIST.

ΓΕΝΙΚΟΣ ΜΕΣΟΣ ΟΡΟΣ: =@avg(g1..g4)

ΚΑΤΑΧΩΡΗΣΗ ΠΛΗΡΟΦΟΡΙΩΝ (DATABASES)

DATABASES ονομάζουν τα προγράμματα με τα οποία καταχωρούμε δομημένες πληροφορίες με μορφή πίνακα γραμμών και στηλών.
Database επίσης ονομάζουν ΚΑΙ τις καταχωρημένες πληροφορίες.

Κάθε συσχετιζόμενη πληροφορία λέγεται εγγραφή/record και είναι μια γραμμή στον πίνακα.
Κάθε αναλογη πληροφορία λέγεται πεδίο/field και είναι μια στήλη του πίνακα.

3 είναι τα βασικά πράγματα που πρέπει να ξέρουμε να κάνουμε σε μια βάση δεδομένων.
α) να τη δημιουργούμε.
β) να την ενημερώνουμε (να αλλάζουμε, να σβήνουμε, να προσθέτουμε εγγραφές).
γ) να κάνουμε αναζητήσεις με διάφορα κριτήρια.

ΕΝΑ ΠΑΡΑΔΕΙΓΜΑ ΒΑΣΗΣ ΔΕΔΟΜΕΝΩΝ ΕΙΝΑΙ ΟΙ ΠΛΗΡΟΦΟΡΙΕΣ ΓΙΑ ΤΑ ΒΙΒΛΙΑ ΤΗΣ ΒΙΒΛΙΟΘΗΚΗΣ ΜΑΣ:
ΓΙΑ ΚΑΘΕ ΒΙΒΛΙΟ, ΕΧΟΥΜΕ ΠΧ ΤΑ ΕΞΗΣ @ΙΔΙΑ@ ΕΙΔΗ ΠΛΗΡΟΦΟΡΙΑΣ:

CODE, 4
TITLE, 30
AUTHOR, 20
PUBLISHER, 15
DATE,4

1, ΙΛΙΑΔΑ, ΟΜΗΡΟΣ, ΟΕΔΒ,1988
2, ΖΟΡΜΠΑΣ, ΚΑΖΑΝΤΖΑΚΗΣ Ν., ΚΑΣΤΑΝΙΩΤΗΣ, 1955
3, ΡΑΜ/20, ΟΜΑΔΑ ΣΥΝΕΡΓΑΤΩΝ, ΟΕΔΒ, 1988

BASIC

Η ΕΝΝΟΙΑ ΤΟΥ ΑΛΓΟΡΙΘΜΟΥ

ΜΙΑ ΑΚΟΛΟΥΘΙΑ ΒΗΜΑΤΩΝ, ΣΑΦΩΣ ΟΡΙΣΜΕΝΩΝ ΚΑΙ ΜΕ ΚΑΘΟΡΙΣΜΕΝΗ ΣΕΙΡΑ, ΟΝΟΜΑΖΕΤΑΙ ΑΛΓΟΡΙΘΜΟΣ.

ΔΟΜΕΣ ΑΛΓΟΡΙΘΜΟΥ

ΑΚΟΛΟΥΘΙΑΚΗ ΔΟΜΗ

ΔΟΜΕΣ ΕΛΕΓΧΟΥ (ΑΝ...ΤΟΤΕ...ΔΙΑΦΟΡΕΤΙΚΑ)

ΔΟΜΕΣ ΕΠΑΝΑΛΗΨΗΣ

ΔΟΜΕΣ ΔΙΑΚΛΑΔΩΣΗΣ (ΤΟ ΑΝΤΙΘΕΤΟ ΤΗΣ ΑΚΟΛΟΥΘΙΑΚΗΣ ΔΟΜΗΣ).

2.1 ΤΑ ΔΟΜΙΚΑ ΣΤΟΙΧΕΙΑ ΤΗΣ BASIC

Είναι γλώσσα υψηλού επιπέδου.

ΑΛΦΑΒΗΤΟ:
λατινικό αλφάβητο,
κενο
αριθμητικά ψηφία
τα σύμβολα πράξεων (+-*/^)
τα σύμβολα σύγκρισης
τα σημεία στίξης (.,;:?)
ειδικοί χαρακτήρες ($!@%"&())

ΛΕΞΙΛΟΓΙΟ= 200 περίπου λέξεις (δεσμευμένες λέξεις) με ειδική σημασία.

ΣΥΝΤΑΚΤΙΚΟ.

2.2 ΤΟ ΠΕΡΙΒΑΛΛΟΝ της BASIC

O INTERPRETER(διερμηνέας) μας δίνει τη δυνατότητα να βρισκόμαστε σε συνεχή διάλογο με το σύστημα.

SYSTEM=EXIT.

2.3 ΕΠΕΞΕΡΓΑΣΙΑ-ΕΞΟΔΟΣ-ΜΕΤΑΒΛΗΤΕΣ

1. Η ΕΝΤΟΛΗ ΕΞΟΔΟΥ PRINT:
PRINT "ΝΙΚΟΣ ΚΑΣΣΕΛΟΥΡΗΣ"
PRINT 5+7
PRINT "5+7"

ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ:
ΑΡΙΘΜΗΤΙΚΑ, ΑΛΦΑΡΙΘΜΗΤΙΚΑ.
H διάκρισή τους γίνεται με τα εισαγωγικά.

2. ΜΕΤΑΒΛΗΤΕΣ-LET:
LET A=20
LET B=2*35
LET C$="NIKOS"
Αν δώσουμε σε αλφαριθμητική μεταβλητή, αριμητικο δεδομένο παίρνουμε το μήνυμα <type mismatch>.

2.4 ΑΝΑΠΤΥΞΗ ΠΡΟΓΡΑΜΜΑΤΟΣ
1. ΓΡΑΜΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ

Περιέχει ακέραιους αριθμούς στην αρχη κάθε γραμμής, και τελειώνει με ΕΝΤΕΡ.

2. ΟΙ ΕΝΤΟΛΕΣ RUN; LIST
3. ΔΙΟΡΘΩΣΗ ΠΡΟΓΡΑΜΜΑΤΟΣ

Αν θέλουμε να αλλάξουμε εντελώς το περιεχόμενο γραμμής την ξανταγράφουμε με τον ίδιο αριθμό μπροστα.
LIST n: μας δίνει τη γραμμή n για να τη διορθώσουμε.

4. ΑΠΟΘΗΚΕΥΣΗ ΠΡΟΓΡΑΜΜΑΤΟΣ

SAVE "DOKIMH"
FILES = list the basic files

5. ΕΝΤΟΛΗ ΕΙΣΟΔΟΥ (INPUT)
6. ΣΧΟΛΙΑ (REM)
7. ΕΚΤΥΠΩΣΗ ΔΙΕΥΚΡΙΝΙΣΤΙΚΩΝ ΣΤΗ ΟΘΟΝΗ

INPUT "A=";A

10. ΚΑΘΑΡΙΣΜΟΣ ΤΟΥ ΧΩΡΟΥ ΕΡΓΑΣΙΑΣ (NEW)
2.5 ΟΙ ΑΛΓΟΡΙΘΜΙΚΕΣ ΔΟΜΕΣ ΤΗΣ BASIC

ΣΥΝΘΗΚΕΣ ΕΛΕΓΧΟΥ:

Α. ΑΚΟΛΟΥΘΙΑΚΗ ΔΟΜΗ:

Β. ΔΟΜΗ ΕΛΕΓΧΟΥ:

Γ. ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ:

Ε. Η ΕΠΑΝΑΛΗΠΤΙΚΗ ΔΟΜΗ FOR...NEXT:

2.6 ΟΙ ΣΥΝΑΡΤΗΣΕΙΣ ΤΗΣ BASIC

Στην πληροφορικη συνάρτηση είναι ενα ετοιμο προγραμμα που μας δίνει αποτελέσματα ανάλογα με τα δεδομένα που εισάγουμε.

A. INT(X):

2.7 ΓΡΑΦΙΚΑ ΚΑΙ ΗΧΟΣ ΣΤΗ BASIC

1. ΓΡΑΦΙΚΑ:

2.8 ΠΡΟΓΡΑΜΜΑΤΑ ΓΕΝΙΚΩΝ ΕΦΑΡΜΟΓΩΝ

ΔΙΑΓΩΝΙΣΜΑ Β'ΕΞΑΜΗΝΟΥ

name::
* McsElln.ΔΙΑΓΩΝΙΣΜΑ Β'ΕΞΑΜΗΝΟΥ@cptIt,

1. Τι κάνουν οι εντολές
INPUT
LET
PRINT
IF...THEN ELSE

2. Ποιά είναι η διαφορά COMMANDS and INSTRUCTIONS

3. Ti κάνει ένα πρόγραμμα που δίνουμε.

4. Να φτιάξουν ένα πρόγραμμα.

5.  Τι είναι hardware, software και ποιά τα είδη τού software.

6.  Tι ειναι πηγαίο και τι αντικείμενο πρόγραμμα και τι είναι τα μεταγλωτιστικά προγράμματα.

7.  Ποιά είναι η διαφορά Μεταφραστών και διερμηνέων. Πως λέγονται στα αγγλικα.

8.  Τι είναι γλωσσα προγραμματισμου και τα είδη τους.

9.  Ποιοί είναι οι κύριοι τύποι υπολογιστών.

ΕΞΕΤΑΣΕΙΣ ΙΟΥΝΙΟΥ Γ' ΓΥΜΝΑΣΙΟΥ

name::
* McsElln.ΕΞΕΤΑΣΕΙΣ ΙΟΥΝΙΟΥ Γ' ΓΥΜΝΑΣΙΟΥ@cptIt,

1. Τι είναι hardware, τι software και ποια τα βασικά είδη του software (σχήμα βιβλίου).

2. Τι είναι τα μεταγλωττιστικά προγράμματα. Τι ονομάζουμε πηγαίο και τι αντικείμενο πρόγραμμα.

3. Ποιά είναι η διαφορά μεταφραστών και διερμηνέων και πως λέγονται στα Αγγλικά.

4. Τι είναι γλώσσα προγραμματισμού, και τι είναι γλώσσα υψηλού επιπέδου.

5. Πως ταξινομούμε τους υπολογιστές (τύποι).

6. Τι κάνουν οι εντολές: LIST, INPUT, LET, SAVE, NEW, RUN, REM, IF...THEN...ELSE, FOR...NEXT, LOAD.

7. Τι ονομάζουμε μεταβλητή στη BASIC, πόσα είδη έχουμε και πως τις παριστάνουμε.

8. Να γράψετε ένα απλό πρόγραμμα που να ζητάει απο το χρήστη το μήκος και το πλάτος ορθογωνίου και να τυπώνει στην οθόνη το εμβαδό του.

9. Τι κάνει το ακόλουθο πρόγραμμα:
10 FOR A=1 TO 20
20 PRINT 3*A
30 NEXT A.

FvMcs.MIDI DATA

name::
* McsEngl.conceptIt551,
* McsEngl.MIDI DATA@cptIt,
* McsEngl.FvMcs.MIDI DATA@cptIt,
* McsEngl.midi-data@cptIt,
* McsEngl.midi'data@cptIt551,
* McsEngl.midi@cptIt551,

DEFINITION

Whereas sampled audio is a direct representation of a sound itself, MIDI data can be thought of as a recipe for creating a sound, especially a musical sound. MIDI data, unlike audio data, does not describe sound directly. Instead, it describes events that affect the sound a synthesizer is making. MIDI data is analogous to a graphical user interface's keyboard and mouse events. In the case of MIDI, the events can be thought of as actions upon a musical keyboard, along with actions on various pedals, sliders, switches, and knobs on that musical instrument. These events need not actually originate with a hardware musical instrument; they can be simulated in software, and they can be stored in MIDI files.
[jdk 140]

midi'PORT#cptIt159#

name::
* McsEngl.midi'PORT@cptIt,

midi'SYNTHESIZER

name::
* McsEngl.midi'SYNTHESIZER@cptIt,

_DEFINITION:
The synthesizers interpret the MIDI events that they receive and produce audio output. Usually the sound synthesized from MIDI data is musical sound (as opposed to speech, for example). MIDI synthesizers are also capable of generating various kinds of sound effects.
Many computer sound cards include MIDI-controllable music synthesizer chips to which sequencers can send their MIDI events. Synthesizers can also be implemented entirely in software.
[jdk 140]

midi'SEQUENCER

name::
* McsEngl.midi'SEQUENCER@cptIt,

_DEFINITION:
A program that can create, edit, and perform these files [with midi data] is called a sequencer.

SPECIFIC

_SPECIFIC:#ql:_GENERIC cptIt551#

FvMcs.HDMI

name::
* McsEngl.conceptIt558,
* McsEngl.HDMI@cptIt,
* McsEngl.FvMcs.HDMI@cptIt,
* McsEngl.HDMI@cptIt,

DEFINITION

What is HDMI?
HDMI (High-Definition Multimedia Interface) is the first industry-supported, uncompressed, all-digital audio/video interface. HDMI provides an interface between any audio/video source, such as a set-top box, DVD player, and A/V receiver and an audio and/or video monitor, such as a digital television (DTV).

HDMI supports standard, enhanced, or high-definition video, plus multi-channel digital audio on a single cable. It transmits all ATSC HDTV standards and supports 8-channel digital audio, with bandwidth to spare to accommodate future enhancements and requirements.

Who supports HDMI?
The HDMI Founders include leading consumer electronics manufacturers Hitachi, Matsushita Electric Industrial (Panasonic), Philips, Sony, Thomson (RCA), Toshiba, and Silicon Image. Digital Content Protection, LLC (a subsidiary of Intel) is providing High-bandwidth Digital Content Protection (HDCP) for HDMI. In addition, HDMI has the support of major motion picture producers Fox and Universal, and system operators DirecTV, EchoStar (Dish Network) as well as CableLabs.

How do consumers benefit from HDMI?
The new HDMI digital interconnect provides:

* Superior, uncompressed digital video and audio quality
* Simple, user-friendly connector that replaces the maze of cabling behind the entertainment center
* Integrated remote control
* A popular interface enabling the transmission of high-definition content. HDMI opens the floodgate of digital content from major motion picture producers


When will the HDMI specification be released?
The HDMI 1.0 specification is available now. CE manufacturers may begin designing products incorporating the HDMI standard-addressing consumer demand for HD programming and for DTVs that display this content.

When will prototypes of HDMI products be available?
HDMI-based prototype devices were first demonstrated at CES in January 2003. The CE industry is currently transitioning from DVI to HDMI connections. Backward- compatible with the DVI 1.0 specification, HDMI enables both multi-channel digital audio and uncompressed video transmission over a single cable and connector, and in combination with HDCP addresses content providers' requirement for a secure interface to protect high-quality content from unauthorized redistribution.

What is the life expectancy of HDMI?
HDTV uses less than 1/2 of HDMI's available 5 Gbps bandwidth. With capacity to spare, HDMI can incorporate new technology advancements and capabilities long into the foreseeable future.

Does HDMI provide a secure interface?
HDMI, when used in combination with HDCP, provides a secure audio/video interface that meets the security requirements of content providers and systems operators.

What are the advantages of HDMI over existing analog interfaces such as composite, S-Video and component video?

* Quality HDMI transfers uncompressed digital audio and video for the highest, crispest image quality.
* All Digital HDMI ensures an all-digital rendering of video without the losses associated with analog interfaces and their unnecessary digital-to-analog conversions.
* Low-cost HDMI provides the quality and functionality of a digital interface while also supporting uncompressed video formats in a simple, cost-effective manner.
* Audio HDMI supports multiple audio formats, from standard stereo to multi-channel surround-sound.
* Ease-of-use HDMI combines video and multi-channel audio into a single cable, eliminating the cost, complexity, and confusion of multiple cables currently used in A/V systems.
* Intelligence HDMI supports communication between the video source (such as a DVD player) and the DTV, enabling new functionality.


Is HDMI backward-compatible with DVI (Digital Visual Interface)?
Yes, HDMI is fully backward-compatible with DVI using the CEA-861 profile for DTVs. HDMI DTVs will display video received from existing DVI-equipped products, and DVI-equipped TVs will display video from HDMI sources.

Will current HD TVs and set-top boxes using DVI-HDTV be compatible with HDMI devices?
Yes. Currently there are TVs with DVI-HDTV inputs available from a variety of manufacturers. Those devices will be compatible with future HDMI-equipped products.

What types of video does HDMI support?
HDMI has the capacity to support existing high-definition video formats (720p, 1080i, and even 1080p). It also has the flexibility to support enhanced definition formats such as 480p, as well as standard definition formats such as NTSC or PAL.

Does HDMI accommodate long cable lengths?
Yes. HDMI technology has been designed to use standard copper cable construction at long lengths. In order to allow cable manufacturers to improve their products through the use of new technologies, HDMI specifies the required performance of a cable but does not specify a maximum cable length. Cables are expected to be lengths of up to 15 meters. As semiconductor technology improves, even longer stretches can be reached with fiber optic cables, and with active cable technologies such as amplifiers or repeaters.
[http://www.pacificcable.com/HDMI_Tutorial.htm]

FvMcs.MIO_DigiWalker_P560

_CREATED: {2008-05-21}

name::
* McsEngl.conceptIt571,
* McsEngl.mio-p560@cptIt571,
* McsEngl.miop560@cptIt,
* McsEngl.p560@cptIt571,

p560'ATTRIBUTE

name::
* McsEngl.p560'ATTRIBUTE@cptIt,

ARM920T S3C2443
RAM 53,43 MB
WM6 classic 5.2.1438 2007


P560 Specifications
Hardware
CPU    Samsung 2443 - 400Mhz
GPS Chipset  20-channel SiRFstarIII
TMC    Yes (External/Optional) Antenna for receiving Traffic Channel Messaging data that can inform about traffic jams, accidents, and other incidents that can slow down driving. Connects to TMC receiver.
Memory / ROM  512MB to 4GB (Depends on Region)
Memory / RAM  64MB
Memory Slot  SD/MMC (SD/IO compatible)
Color Display  3.5" Anti-glare TFT Touchscreen
Resolution    320 x 240
Display Orientation  Landscape/Portrait
Battery    Lithium-Ion
Battery Capacity  1350mAh
Battery Life    4.5hrs (With active GPS)
Bluetooth Technology  V2.0
Wi-Fi    802.11b+g
USB    V2.0
Microphone  Yes (Built-in)
Speaker    Yes (Built-in)
Earphone Jack  2.5mm
Depth    17.8mm (0.6")
Width    72mm (2.9")
Height    115 (4.6")
Weight    170g (5.9oz)
Software
Operating System    Windows Mobile® 6 Classic
Navigation Software  Varies by region
Video Player    Yes
Picture Viewer    Yes
Audio Player    Yes
Microsoft Office Mobile  Yes
Calculator      Yes
Calendar      Yes
Contacts Synchronization  Yes
Other Preinstalled Software  Varies by region

p560'BLUETOOTH

name::
* McsEngl.p560'BLUETOOTH@cptIt,

p560'CONNECTION-PC

name::
* McsEngl.p560'CONNECTION-PC@cptIt,

WinXP:
Needs ActiveSync (Mio Getting Starting)

Win7:
nothing

p560'GPS

name::
* McsEngl.p560'GPS@cptIt,

20-channel SiRFstarIII GPS Receiver
The latest SiRFstarIII GPS receiver provides accurate navigation in challenging environments. Whether you're downtown or out in the countryside, trust SiRFstarIII to keep track of where you are.

p560'PROCESSOR

name::
* McsEngl.p560'PROCESSOR@cptIt,

Samsung 2443 - 400Mhz
ARM920T S3C2443

Features
- ARM Core
- ARM9TDMI 32-bit RISC CPU
- Integrated system for hand-held devices and general embedded applications
- 16/32-Bit RISC architecture with powerful instruction set
- Memory Subsystem
- ROM/SRAM/NAND/NOR interface
- NAND flash memory for boot loader and data storage
- NAND Interface
- One-NAND™/SRAM/ROM/NOR Flash Interface
- DRAM interface
- Standard SDRAM/mSDRAM/mDDR
- Display Controller
- STN LCD / TFT LCD interface
- TFT LCD Interface
- Camera Interface
- Up to 4M pixel for scaled or 16M pixel for unscaled resolution
- Image flip supports Y-mirror, X-mirror, 180° rotation
- H/W Color Space Conversion
- A/D Converter and Touch Screen Interface
- 10-ch multiplexed ADC
- Connectivity
- I2S Bus Interface
- I2C Bus Interface
- 4-ch UART
- USB Host : Compatible with USB Specification version 1.1
- USB Device : Compatible with the USB Specification version 2.0
- MMC/SD/SDIO/HS-MMC
- CF/ATA I/F
- SPI Interface
- AC97 Audio Interface
- System Peripheral
- Clock & Power Manager
- Interrupt Controller
- Timer with Pulse Width Modulation (PWM)
- Real Time Clock (RTC)
- 6-ch DMA controller
- 16-bit Watchdog Timer
- 24-port GPIO
- 24 External interrupt ports
- 174 Multiplexed input/output ports
- Operating Conditions
- Supply Voltage for Logic Core : 1.3 V for 400MHz, 1.375 V for 533MHz
- External Memory Interface :
- ROM/SRAM : 1.8V/2.5V/3.0V/3.3V
- SDRAM : 1.8V
- External I/O Interface : 1.8V/2.5V/3.3V
- Package
- 400 FBGA 13x13
Benefits
- Optimum system BOM cost
- Support MLC NAND flash
- Full set of on-chip peripherals
[http://www.samsung.com/global/business/semiconductor/productInfo.do?fmly_id=229&partnum=S3C2443]

p560'OS

name::
* McsEngl.p560'OS@cptIt,

Windows Mobile® 6 Classic

p560'resourceInfHmn#cptResource843#

name::
* McsEngl.p560'resourceInfHmn@cptIt,

http://www.mio.com/gps-navigation-products-p560-overview.htm

p560'STORAGE

name::
* McsEngl.p560'STORAGE@cptIt,

Δέχεται κάρτα SD (Secure Digital), SDHC (Secure Digital High Capacity) ή MMC (MultiMediaCard.

p560'WiFi

name::
* McsEngl.p560'WiFi@cptIt,

Integrated Wi-Fi
Browse the web, receive data updates for your applications, access your Outlook® email, and connect to wireless networks with Wi-Fi connectivity.

p560'GENERIC

_GENERIC:
* Pocket PC.
* PDA,

p560'SPECIFIC

_SPECIFIC:#ql:_GENERIC cptIt571#

FvMcs.Cmrpgm.Version-Control-System

_CREATED: {2010-11-05}

name::
* McsEngl.conceptIt573,
* McsEngl.Cmrpgm.Version-Control-System@cptIt,
* McsEngl.FvMcs.Cmrpgm.Version-Control-System@cptIt,
* McsEngl.version-control-system@cptIt573,
* McsEngl.version-control-tool@cptIt573,
* McsEngl.pvc@cptIt,

DEFINITION

_DESCRIPTION:
A version control system allows you to track the history of a collection of files and includes the functionality to revert the collection of files to another version. Each version captures a snapshot of the files at a certain point in time. The collection of files is usually source code for a programming language but a typical version control system can put any type of file under version control.
[http://www.vogella.com/articles/Git/article.html#git]

vcs'GENERIC

_GENERIC:
* computer-program#cptItsoft59#

vcs'conflict

name::
* McsEngl.vcs'conflict@cptIt,

_DESCRIPTION:
Conflicts
What if the latest update or commit results in a conflict? That is, what if your changes are so similar to the changes that another team member made that the version control system can’t determine which is the correct and authoritative change? In most cases, the version control system will provide a way to view the difference between the conflicting versions, allowing you to make a choice. You can either edit the files manually to merge the options, or allow one revision to wins over the other. You may want to collaborate with the person who made the other commit to make sure you’re not undoing their important work!
...
In some cases the version control system might not be able to figure out which change to apply between two revisions when doing a merge. If this happens a conflict will arise. A conflict in this scenario is the same as the conflict mentioned above and requires manual intervention to decide which files or lines of code should remain.
[http://guides.beanstalkapp.com/version-control/intro-to-version-control.html]

vcs'evaluation

name::
* McsEngl.vcs'evaluation@cptIt,

vcs'importance

name::
* McsEngl.vcs'importance@cptIt,

_DESCRIPTION:
Why is version control important?
If you are reading this, it’s possible that you are updating documents that look something like this: index-v12-old2.html. Let’s get away from this and on to something that will not only allow you to control your source code and files, but become more productive as a team. If this sounds familiar:

Communicated with your team via email about updates.
Made updates directly on your production server.
Accidentally overwrote some files, which can never be retrieved again.
You can now look forward to this instead:

File names and directory structures that are consistent for all team members.
Making changes with confidence, and even reverting when needed.
Relying on source control as the communication medium for your team.
Easily deploying different versions of your code to staging or production servers.
Understanding who made a change and when it happened.
[http://guides.beanstalkapp.com/version-control/intro-to-version-control.html]

vcs'doing

name::
* McsEngl.vcs'doing@cptIt,

vcs'brancing

name::
* McsEngl.vcs'brancing@cptIt,

vcs'committing

name::
* McsEngl.vcs'committing@cptIt,

_DESCRIPTION:
As you work with your files that are under version control, each change is tracked automatically. This can include modifying a file, deleting a directory, adding a new file, moving files or just about anything else that might alter the state of the file. Instead of recording each change individually, the version control system will wait for you to submit your changes as a single collection of actions. In version control, this collection of actions is known as a commit.
[http://guides.beanstalkapp.com/version-control/intro-to-version-control.html]

vcs'copying

name::
* McsEngl.vcs'copying@cptIt,
* McsEngl.vcs'cloning@cptIt,

_DESCRIPTION:
The user can copy an existing repository. This copying process is typically called cloning in a distributed version control system and the resulting repository can be referred to as clone.
[http://www.vogella.com/articles/Git/article.html#git]

vcs'diffing

name::
* McsEngl.vcs'diffing@cptIt,
* McsEngl.vcs'viewing-differences@cptIt,

_DESCRIPTION:
Diffing (or, viewing the differences)
Since each commit is recorded as a change to a file or set of files and directories, it is sometimes useful to view what changed between revisions. For instance, if a recent deployment of your web site is broken and you narrowed down the cause to a particular file, the best action to take is to see what recently changed in that file. By viewing a diff, you can compare two files or even a set of files to see what lines of code changed, when it changed and who changed it. Most version control tools let you compare two sequential revisions, but also two revisions from anywhere in the history.
[http://guides.beanstalkapp.com/version-control/intro-to-version-control.html]

vcs'getting-updates

name::
* McsEngl.vcs'getting-updates@cptIt,

_DESCRIPTION:
Getting updates
As members of your team commit changes, it is important that you have the latest version. Having the latest version reduces the chance of a conflict. Getting the latest changes from a repository is as simple as doing a pull or update from another computer (usually a hosted or centralized server). When an update or pull is requested, only the changes since your last request are downloaded.
[http://guides.beanstalkapp.com/version-control/intro-to-version-control.html]

vcs'installing

name::
* McsEngl.vcs'installing@cptIt,

vcs'merging

name::
* McsEngl.vcs'merging@cptIt,

_DESCRIPTION:
Once you’re comfortable with the experimental code, you will want to make it part of the trunk or master again. This is where merging comes in. Since the version control system has recorded every change so far, it knows how each file has been altered. By merging the branch with the trunk or master (or even another branch), your version control tool will attempt to seamlessly merge each file and line of code automatically. Once a branch is merged it then updates the trunk or master with the latest files.

For example, let’s say you want to experiment with a new layout for a web site. This may require heavy changes in many files, could break existing code and it may not turn out as expected. It could also take a long time, so you want to continue committing the changes. Instead of committing to the trunk or master set of files, you create a branch. From this point forward, any changes made in the new branch will not affect others in the trunk or master. Days or weeks may go by allowing you to commit changes, test and refine. When the new layout is working properly and you are comfortable with the result you are probably ready to make it a permanent part of the site. This is the point where you will merge the branch with the trunk or master. Once the merge is complete, it will combine the changes from the branch with the most recent version of the trunk or master.
[http://guides.beanstalkapp.com/version-control/intro-to-version-control.html]

vcs'repository

name::
* McsEngl.vcs'repository@cptIt,

_DESCRIPTION:
The set of files or directories that are under version control are more commonly called a repository.
[http://guides.beanstalkapp.com/version-control/intro-to-version-control.html]

vcs'changeset

name::
* McsEngl.vcs'changeset@cptIt,
* McsEngl.vcs'delta@cptIt,

_DESCRIPTION:
When a commit is made, the changes are recorded as a changeset and given a unique revision. This revision could be in the form of an incremented number (1, 2, 3) or a unique hash (like 846eee7d92415cfd3f8a936d9ba5c3ad345831e5) depending on the system. By knowing the revision of a changeset it makes it easy to view or reference it later. A changset will include a reference to the person who made the commit, when the change was made, the files or directories affected, a comment and even the changes that happened within the files (lines of code).

When it comes to collaboration, viewing past revisions and changesets is a valuable tool to see how your project has evolved and for reviewing teammates’ code. Each version control system has a formatted way to view a complete history (or log) of each revision and changeset in the repository.
[http://guides.beanstalkapp.com/version-control/intro-to-version-control.html]

vcs'repository.CLONE

name::
* McsEngl.vcs'repository.CLONE@cptIt,
* McsEngl.vcs'clone@cptIt,

_DESCRIPTION:
The user can copy an existing repository. This copying process is typically called cloning in a distributed version control system and the resulting repository can be referred to as clone.

Typically there is a central server for keeping a repository but each cloned repository is a full copy of this repository. The decision which of the copies is considered to be the central server repository is pure convention and not tied to the capabilities of the distributed version control system itself.

Every clone contains the full history of the collection of files and a cloned repository has the same functionality as the original repository.
[http://www.vogella.com/articles/Git/article.html#git]

vcs'repository.BRANCH

name::
* McsEngl.vcs'repository.BRANCH@cptIt,
* McsEngl.vcs'branch@cptIt,

_DESCRIPTION:
There are some cases when you want to experiment or commit changes to the repo that could break things elsewhere in your code (like working on a new feature). Instead of committing this code directly to the main set of files (usually referred to as trunk or master), you can create something called a branch. A branch allows you to create a copy (or snapshot) of the repository that you can modify in parallel without altering the main set. You can continue to commit new changes to the branch as you work, while others commit to the trunk or master without the changes affecting each other.
[http://guides.beanstalkapp.com/version-control/intro-to-version-control.html]

vcs'repository.MASTER

name::
* McsEngl.vcs'repository.MASTER@cptIt,
* McsEngl.vcs'main-set@cptIt,
* McsEngl.vcs'master@cptIt,
* McsEngl.vcs'trunk@cptIt,

_DESCRIPTION:
set of files (usually referred to as trunk or master),
[http://guides.beanstalkapp.com/version-control/intro-to-version-control.html]

vcs'repository.VERSION

name::
* McsEngl.vcs'repository.VERSION@cptIt,
* McsEngl.vcs'version@cptIt,

_DESCRIPTION:
The process of creating different versions (snapshots) in the repository is depicted in the following graphic. Please note that this picture fits primarily to Git, other version control systems like CVS don't create snapshots but store file deltas.
[http://www.vogella.com/articles/Git/article.html#git]

vcs'resource

name::
* McsEngl.vcs'resource@cptIt,

_ADDRESS.WPG:
* http://guides.beanstalkapp.com/version-control/intro-to-version-control.html,
* http://www.vogella.com/articles/Git/article.html,

Distributed Version Control Systems: A Not-So-Quick Guide Through
Posted by Sebastien Auvray on May 07, 2008
* http://www.infoq.com/articles/dvcs-guide

SPECIFIC

name::
* McsEngl.vcs.specific,

_SPECIFIC:
* CVS
* git#cptItsoft569#
* Subversion,
* VCS

vcs.SPECIFIC_DIVISION.distribution

_SPECIFIC:
* distributed-vcs##
* distributedNo-vcs##
===
The three most popular version control systems are broken down into two main categories, centralized and decentralized (also known as distributed).
[http://guides.beanstalkapp.com/version-control/intro-to-version-control.html]

vcs.SPECIFIC_DIVISION.storage_method

_SPECIFIC:
* delta-storage-vcs##
* deltaNo-storage-vcs##

vcs.DELTA_STORAGE

_DESCRIPTION:
Different from SVN
It is important to note that this is very different from most SCM systems that you may be familiar with. Subversion, CVS, Perforce, Mercurial and the like all use Delta Storage systems - they store the differences between one commit and the next. Git does not do this - it stores a snapshot of what all the files in your project look like in this tree structure each time you commit. This is a very important concept to understand when using Git.
[http://book.git-scm.com/1_the_git_object_model.html]

vcs.DELTA.NO_STORAGE

name::
* McsEngl.vcs.snapshot-storage,

_DESCRIPTION:
Different from SVN
It is important to note that this is very different from most SCM systems that you may be familiar with. Subversion, CVS, Perforce, Mercurial and the like all use Delta Storage systems - they store the differences between one commit and the next. Git does not do this - it stores a snapshot of what all the files in your project look like in this tree structure each time you commit. This is a very important concept to understand when using Git.
[http://book.git-scm.com/1_the_git_object_model.html]

vcs.DISTRIBUTED

name::
* McsEngl.vcs.centralizedNo,
* McsEngl.vcs.decentralized,

_DESCRIPTION:
Distributed systems are a newer option. In distributed version control, each user has their own copy of the entire repository, not just the files but the history as well. Think of it as a network of individual repositories. In many cases, even though the model is distributed, services like Beanstalk are used for simplifying the technical challenges of sharing changes. The two most popular distributed version control systems are Git and Mercurial.

The primary benefits of Git and Mercurial are:

More powerful and detailed change tracking, which means less conflicts.
No server necessary – all actions except sharing repositories are local (commit offline).
Branching and merging is more reliable, and therefore used more often.
It’s fast.
At the same time, Git and Mercurial do have some drawbacks:

The distributed model is harder to understand.
It’s new, so not as many GUI clients.
The revisions are not incremental numbers, which make them harder to reference.
It can be easier to make mistakes until you are familiar with the model.
Which one is right for you? This really depends on how you work. We usually recommend Subversion if you are just getting started, are not comfortable with the command line or do not plan to do a lot of branching and merging. Otherwise, we encourage you to try Git or Mercurial and see if you like it. With Beanstalk, you’re free to go back and forth as needed without switching hosts.
[http://guides.beanstalkapp.com/version-control/intro-to-version-control.html]

_SPECIFIC:
* git#cptItsoft569#
* Mercurial,
* Bazaar,

vcs.DISTRIBUTED.NO (centralized)

name::
* McsEngl.vcs.centralized,

_DESCRIPTION:
At the time of this writing, the most popular version control system is known as Subversion, which is considered a centralized version control system. The main concept of a centralized system is that it works in a client and server relationship. The repository is located in one place and provides access to many clients. It’s very similar to FTP in where you have an FTP client which connects to an FTP server. All changes, users, commits and information must be sent and received from this central repository.

The primary benefits of Subversion are:

It is easy to understand.
You have more control over users and access (since it is served from one place).
More GUI & IDE clients (Subversion has been around longer).
Simple to get started.
At the same time, Subversion has some drawbacks:

Dependent on access to the server.
Hard to manage a server and backups (well, not with Beanstalk of course!)
It can be slower because every command connects to the server.
Branching and merging tools are difficult to use.
[http://guides.beanstalkapp.com/version-control/intro-to-version-control.html]

vcs.Git

_CREATED: {2010-10-28}

name::
* McsEngl.conceptIt569,
* McsEngl.git,
* McsEngl.gitpgm,
* McsEngl.pgmGit,
* McsEngl.cmrpgm.git@cptIt569,
* McsEngl.git@cptIt569,
* McsEngl.git-program@cptIt569,

git'DEFINITION

Git is a distributed version-control-system developed by Junio Hamano and Linus Torvalds mainly used for source-code-managment.

Git is a distributed version control system developed by Junio Hamano and Linus Torvalds.
Git does not use a centralized server.
[https://git.wiki.kernel.org/index.php/GitFaq]

Git is a Source Code Management (SCM) tool for software developers which supports collaborative development of software within a team, and the tracking of changes to software source code over time.
[https://sourceforge.net/scm/?type=git&group_id=588]

If you think about Git as a tool for storing and comparing and merging snapshots of your project, it may be easier to understand what is going on and how to do things properly.
[http://gitref.org/]

git'GENERIC

_GENERIC:
* version control system,
* source control managment, SCM,

git'Synopsis

name::
* McsEngl.git'Synopsis@cptIt,

>git
usage: git [--version] [--help] [-C <path>] [-c name=value]
[--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
[-p | --paginate | --no-pager] [--no-replace-objects] [--bare]
[--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
<command> [<args>]

These are common Git commands used in various situations:

start a working area (see also: git help tutorial)
clone Clone a repository into a new directory
init Create an empty Git repository or reinitialize an existing one

work on the current change (see also: git help everyday)
add Add file contents to the index
mv Move or rename a file, a directory, or a symlink
reset Reset current HEAD to the specified state
rm Remove files from the working tree and from the index

examine the history and state (see also: git help revisions)
bisect Use binary search to find the commit that introduced a bug
grep Print lines matching a pattern
log Show commit logs
show Show various types of objects
status Show the working tree status

grow, mark and tweak your common history
branch List, create, or delete branches
checkout Switch branches or restore working tree files
commit Record changes to the repository
diff Show changes between commits, commit and working tree, etc
merge Join two or more development histories together
rebase Reapply commits on top of another base tip
tag Create, list, delete or verify a tag object signed with GPG

collaborate (see also: git help workflows)
fetch Download objects and refs from another repository
pull Fetch from and integrate with another repository or a local branch
push Update remote refs along with associated objects

'git help -a' and 'git help -g' list available subcommands and some
concept guides. See 'git help <command>' or 'git help <concept>'
to read about a specific subcommand or concept.

git'command

name::
* McsEngl.git'command@cptIt,
* McsEngl.git'cmd@cptIt,
* McsEngl.gitcmd@cptIt,

gitcmd.gen.REPO-CREATING

name::
* McsEngl.gitcmd.gen.REPO-CREATING@cptIt,
* McsEngl.gitcmd.repo-creating@cptIt,
* McsEngl.git'creating-repo-command@cptIt,
* McsEngl.git'repo-creating-command@cptIt,
* McsEngl.git'project-creating-command@cptIt,

List:
* init#ql:git'init# = Create repository from existing directory of working-files
* clone#ql:git'clone# = Copy a remote repo

gitcmd.gen.VERSIONING

name::
* McsEngl.gitcmd.gen.VERSIONING@cptIt,
* McsEngl.git'versioning-command@cptIt,
* McsEngl.git'committing-command@cptIt,
* McsEngl.git'staging-command@cptIt,
* McsEngl.git'Snapshotting-command@cptIt,

List:
* add#ql:git'add# = Add files to be included in next commit
* commit#ql:git'commit# = Record changes to the repository
* status#ql:git'status# = List files changed since last commit
* diff#ql:git'diff# = Find differences between commits etc
* reset#ql:git'reset# = Go to previous states
* rm#ql:git'rm# = Remove files from the working tree and from the index
* mv#ql:git'mv# = Move or rename a file, a directory, or a symlink

gitcmd.gen.BRANCHING-MERGING

name::
* McsEngl.gitcmd.gen.BRANCHING-MERGING@cptIt,
* McsEngl.gitcmd.branching-merging@cptIt,
* McsEngl.git'Branching-command@cptIt,
* McsEngl.git'merging-command@cptIt,

List:
* branch#ql:git'branch# = List, create, or delete branches
* merge#ql:git'merge# = Join two or more development histories together
* checkout#ql:git'checkout# = Update files in working-tree to match what specified
* log#ql:git'log# = Show history of commits
* tag#ql:git'tag# = Give name to commit
* stash#ql:git'stash# = Stores all changes in temporary location

gitcmd.gen.INFORMING

name::
* McsEngl.gitcmd.gen.INFORMING@cptIt,
* McsEngl.gitcmd.informing@cptIt,
* McsEngl.git'info-command-group@cptIt,
* McsEngl.git'inspection-command@cptIt,
* McsEngl.Inspection-and-Comparison@cptIt,

List:
* status#ql:git'status# = List all files changed since last commit
* log#ql:git'log# = Show the history of commits
* diff#ql:git'diff# = Find difference between commits
* show#ql:git'show# = Show various types of objects
* grep#ql:git'grep# = Print lines matching a pattern

gitcmd.gen.NAVIGATING

name::
* McsEngl.gitcmd.gen.NAVIGATING@cptIt,
* McsEngl.gitcmd.navigating@cptIt,
* McsEngl.git'navigating-command@cptIt,

List:
* checkout#ql:git'checkout# = Update files in working-tree to match what specified
* tag#ql:git'tag# = Give name to commit
* stash#ql:git'stash# = Stores all changes in temporary location

gitcmd.gen.COLLABORATING

name::
* McsEngl.gitcmd.gen.COLLABORATING@cptIt,
* McsEngl.gitcmd.collaborating@cptIt,
* McsEngl.git'collaborating-command@cptIt,
* McsEngl.git'collaboration-command@cptIt,
* McsEngl.Sharing-and-Updating-Projects@cptIt,

List:
* clone#ql:git'clone# = Copies a remote-repo
* fetch#ql:git'fetch# = Retrieves new commits from remote-repo
* pull#ql:git'pull# = Fetch from and merge with another repository or a local branch
* push#ql:git'push# = Update remote
* remote#ql:git'remote# = Manage set of tracked remote-repositories

gitcmd.gen.MISC

name::
* McsEngl.gitcmd.gen.MISC@cptIt,
* McsEngl.gitcmd.misc@cptIt,
* McsEngl.git'misc-command@cptIt,

Vampire Vampire@jedit.org via lists.sourceforge.net
2012-08-20 3:16 AM (9 hours ago)
to jEdit-devel
Dale Anson schrieb:
> Yes, a "cheat sheet" with that handful of commands would be useful,
> something like "do this" to get the latest files, "do that" to put your
> files in the distributed repository, "do this other thing" to see what
> you've changed, etc. That would make it easier for those of us with less
> experience to get going quickly and with minimal pain.
>
Do you really think this is necessary?
I think there are enough Git cheatsheets, some especially for people
coming from SVN out there.
If you prefer I can of course list some useful commands with usecases
here, but I'd recommend everyone to read through the documentation of
Git to discover its true potentials. :-)

Here are some:
Get the code anonymously: git clone
git://jedit.git.sourceforge.net/gitroot/jedit/jEdit
Get the code as committer: git clone ssh://<SF
user>@jedit.git.sourceforge.net/gitroot/jedit/jEdit
Get the current state of changed and untracked files: git status

Create a new branch from the currently checked out commit: git
branch <branchname>
Switch to a different branch: git checkout <branchname>
Create a new branch from the currently checked out commit and switch to
it: git checkout -b <branchname>

Add an untracked file or changes to a tracked file to the index:
git add <file>
Add all untracked files or changes to tracked files to the index:
git add .
Add all changes to tracked files (including deletions) to the index:
git add -u
Review each hunk whether to add it to the index: git add -p
(essentially "git add -i" with subcommand patch, just try it also)

Commit the index: git commit
Commit the index with message from commandline: git commit -m
"Commit message"
Rephrase last commit message: git commit --amend
Merge a commit to a release branch: git cherry-pick -x <commitish>

Get latest changes from remote repository: git fetch
Forward-port your local changes on top of the latest change in the
remote branch: git rebase origin
Get latest changes from remote repository and forward port you local
changes on top: git pull --rebase (or configure rebasing as the
default behaviour for the branch, otherwise merging is the default
behaviour which should not be done for local changes to maintain a
linear history instead of a "ladder" history)

Reorder commits, squash multiple commits into one or rephrase commit
messages: git rebase -i (should only be done on local changes
before pushing them to the central repo)

Push you local changes to the remote repository: git push

Move away your local changes in the worktree and index temporarily:
git stash
Get back those changes: git stash pop
Get back those changes but leave them on the stack: git stash apply
Discard those changes: git stash drop
Show what is on the stack: git stash show

Show the diff of your worktree against the index: git diff
Show the diff of the index against HEAD: git diff --cached
Show the diff of your worktree against HEAD: git diff HEAD
Show the diff of your worktree against commit
1234567890123456789012345678901234567890: git diff 123456
Show the diff between commits 123456 and 789012: git diff
123456 789012

Find the commit that introduced a bug that was not present in tag
jedit-4-3 but is present in tag jedit-4-4: git bisect jedit-4-4
jedit-4-3 (and then tell git with "git bisect bad", "git bisect good"
and "git bisect skip" about the commits it checks out or give it a
script that can identify good and bad commits automatically)


I know this was a quite long list, but there are many use-cases you can
have with version control and I guess I could make a list similar in
length for SVN if I wanted to. :-)
I made many examples to make getting the feeling easier.
Once you have the feeling, you can also easily use the git documentation
("git help git", "git help <command>", "git help tutorial") to find what
you need and which parameters to use.

And here some config options you might want to set for git:
To have colored output: color.ui=auto
Your Username used for Commits: user.name=<username>
Your E-Mail used for Commits: user.email=<email>
An alias like the examples from my other mail: alias.<alias>=<what to do>
Use jEdit as editor for commit messages and stuff: core.editor=jedit -wait
Use jEdit only sometimes as editor e. g. for "git rebase -i":
alias.j=!GIT_EDITOR='jedit -wait' git (And then use e. g. "git j
rebase -i")

Jarek Czekalski schrieb:
> After you talk up all the things, please make a short list of useful
> advantages of git over svn, to counter-weight my list of advantages of svn:
>
I made a big list already, I could make a shorter one with less details,
but that doesn't change the facts. :-)
> 1. 5-digit revision numbers are easier to use than long hashcodes from
> git
In 95% of the cases it is enough to use the first 6 characters of the
hash or so to uniquely identify a commit.
The more characters you give, the more certain you are that the correct
commit is referenced of course.
I even see an advantage here.
With the 5-digit revision numbers you easily mistype when typing it
manually and you quickly have 12354 instead of 12345.
With the hashes, you either copy them or you might also type them, but
if you swap characters, it is more likely to be obvious, if you don't
come out with a hash that is another commit and that is not too likely
to happen, the more characters you use, the more unlikely.
> and in svn it's possible to tell from a glance which of 2 revisions is newer
>
What is this needed for? I was never really interested which is the
older one.
With a distributed system it is more confusing than helping to work with
consecutive numbers, as the same number means different things in
different local repositories. The SHA1 is really identifying throughout
all the repositories.

But finding it out with a command is easy. If you want to know whether
5c674af or 717f954 is older, just do "git merge-base 5c674af 717f954"
and you get the older one as result if the commits were on the same
branch. If they were on different branches, you see the first common
ancestor as result from that command.
> 2. it is easier to use
>
That is a matter of opinion.
And for those that really think so, there is Mercurial and Bazaar as
alternative front-end for the git repository if they really want to use
something different.
> I came across several newbies sending patches in Jedit. It was their first
> contact with revision control system. For these users svn is much better.
I don't know why this should be true?
If they are newbies it doesn't really matter whether they learn SVN or
Git, they just have to learn it.
Additionally it is maybe even easier to send in a patch with Git as Git
can produce nice patch files or even patch-series, also with metadata
like Author, commit message and commit the patch applies to. Just do
"git format-patch --stdout HEAD^" to see an example.
> So it may be also better for Jedit developers trying to encourage new
> programmers
I don't really think so.
If they weren't in contact with version control before it doesn't really
matter.
If they know both already it doesn't matter.
If they know one and it is the one we use it doesn't matter.
If they know one and it is not the one we use they have to learn the
other one.
But this applies, no matter whether we stay with SVN or move to Git.

Jarek Czekalski schrieb:
> Old revision numbers after conversion.
>
> I just made a note in bug tracker: committed as r22096. Or there are
> commit log messages like: "see commit rXXXXX, reverted rYYYYY". Will it
> be possible to locate these commits after conversion to git?
>
Hm, good point.
Actually I think it was the same situation when we switched from CVS to SVN.
But I don't really remember it being a problem.
Specifically in the two use-cases you described I think it could easily
be "work-arounded".
If in the Bug Tracker you have "committed as r12345" you most likely
have in the commit message "fixes bug#54321" so you can just search for
the bug number in the commit history. This is insanely fast as you have
the whole repository locally on your box.
Currently there are about 100 commits with revision numbers in the
comments, which is 0.2% of all 40854 commits.
I think we can live with that.

Maybe in the future we should try to avoid referencing by VCS identifier
or at least add the commit message - or at least the first sentence of
it - to be safe for future VCS changes.
> Please don't get me as malicious. I just try to point out all possible
> drawbacks that come to my head, before the thing is done. You just take
> it into conisderation and may judge them as unimportant. The decision is
> yours.
>
Thanks Jarek, it is a good and valid point.
I never got you as malicious but appreciated your contributions.
I just didn't like being attacked personally or majority being ignored. :-)
But getting opinions and points noone had in mind up to then is the
cause I started this thread. :-)

Marcelo Vanzin schrieb:
> One thing that is immensely easier on Git is merging changes to
> different branches (e.g. our stable ones): I seriously never figured
> out how to do that in SVN. "git cherry-pick -x" is awesome.
>
It is. While this cherry-picking is not sooo bad in SVN. It is just "svn
merge -c 12345 <branch source>". But the "-x" of git cherry-pick can be
useful, that is right. :-)
> My only disappointment is that, with Sourceforge's Git repo, we
> wouldn't really be harvesting the whole benefit of Git; if we had it
> on Github, instead of a "patches" tracker we just need people to send
> "pull requests". People could fork their own repos in one click (thus
> making the "pull requests" much easier later on). Much more manageable
> and easier to integrate.
>
Yes and no.
With Allura, the new SF site, you get those same advantages as far as I
remember some Blog post by SF.
You can easily fork and you can do pull requests.
If we would like to use this as fast as possible we could opt-in for
early porting jEdit to the new Allura platform.
But I guess this would be another topic to discuss in a different thread.
> (I haven't checked if github has an option to clone repos not on
> Github, it might be possible.)
>
Hm, could be an option if there is a way.
If not, I could maybe set up some cronjob to automatically push the
current SF repo to GitHub nightly.

Alan Ezust schrieb:
> No objections from me.
> And if I am not mistaken, the only admin who was against it was Jarek
> who is no longer an admin.
> Vampire? Shall we choose a date, like September 1, to do the change over?
>
Would be fine for me.
Any objections from anyone?
How do we want to do it?
Do we make SVN read-only like we did with the CVS-SVN switch?
Or do we just start using the jEdit core Git repository and still allow
plugins to be developed in SVN, at least for a while?


Regards
Vampire

gitcmd.add [file] = Add files to be included in next commit

name::
* McsEngl.gitcmd.add [file] = Add files to be included in next commit@cptIt,
* McsEngl.git'add@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-add.html

_DESCRIPTION:
* In a nutshell, you run git add on a file when you want to include whatever changes you've made to it in your next commit snapshot. Anything you've changed that is not added will not be included - this means you can craft your snapshots with a bit more precision than most other SCM systems.
$ git add README hello.rb

* Git tracks content not files
Many revision control systems provide an add command that tells the system to start tracking changes to a new file. Git's add command does something simpler and more powerful: git add is used both for new and newly modified files, and in both cases it takes a snapshot of the given files and stages that content in the index, ready for inclusion in the next commit.
[http://www.kernel.org/pub/software/scm/git/docs/gittutorial.html]

$ git add somefolder

$ git add .

$ git add file1 file2 file3

$ git diff --cached
You are now ready to commit. You can see what is about to be committed using git diff with the --cached option:
$ git diff --cached
(Without --cached, git diff will show you any changes that you've made but not yet added to the index.)

gitcmd.archive = Create an archive of files from a named tree

name::
* McsEngl.gitcmd.archive = Create an archive of files from a named tree@cptIt,
* McsEngl.git'archive@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-archive.html

_DESCRIPTION:
Creates an archive of the specified format containing the tree structure for the named tree, and writes it out to the standard output. If <prefix> is specified it is prepended to the filenames in the archive.
git archive behaves differently when given a tree ID versus when given a commit ID or tag ID. In the first case the current time is used as the modification time of each file in the archive. In the latter case the commit time as recorded in the referenced commit object is used instead. Additionally the commit ID is stored in a global extended pax header if the tar format is used; it can be extracted using git get-tar-commit-id. In ZIP files it is stored as a file comment.
[http://www.kernel.org/pub/software/scm/git/docs/git-archive.html]

gitcmd.bisect = Find by binary search the change that introduced a bug

name::
* McsEngl.gitcmd.bisect = Find by binary search the change that introduced a bug@cptIt,
* McsEngl.git'bisect@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-bisect.html

gitcmd.branch [branch] = List; create; or delete branches

name::
* McsEngl.gitcmd.branch [branch] = List; create; or delete branches@cptIt,
* McsEngl.git'branch@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-branch.html

OPTIONS:
Git does allow you to use the -D option to force deletion of a branch that would create a dangling commit. However, it should be a rare situation that you want to do that. Think very carefully before using git branch -D.

$ git branch
- Listing all branches
Issue the following command to see all available branches in the current repository.

$ git branch branch_name
- Creating a branch

$ git branch -d [head]
To delete a branch, use git branch -d [head]. This simply removes the specified head from the repository’s list of heads.

$ git branch -D crazy-idea
If you develop on a branch crazy-idea, then regret it, you can always delete the branch with
$ git branch -D crazy-idea
Branches are cheap and easy, so this is a good way to try something out.

$ git branch -r
# list all remote branches
==========
bob$ git branch -r
Git also keeps a pristine copy of Alice's master branch under the name "origin/master":
bob$ git branch -r
origin/master

$ git branch stable v2.5
# start a new branch named "stable" based at v2.5

git'ex.Create-Root-Branch

name::
* McsEngl.git'ex.Create-Root-Branch@cptIt,
* McsEngl.git'Empty-Branch@cptIt,
* McsEngl.git'Root-Branch@cptIt,
* McsEngl.git'Branch.Empty@cptIt,
* McsEngl.git'Branch.Root@cptIt,

ROOT_BRANCH:
If you create a new root branch named gh-pages in your repository, any content pushed there will be published to http://bob.github.com/fancypants/.

In order to create a new root branch, first ensure that your working directory is clean by committing or stashing any changes. The following operation will lose any uncommitted changes!
$ cd /path/to/repo
$ git symbolic-ref HEAD refs/heads/gh-pages
$ rm .git/index
$ git clean -fdx
After running this you’ll have an empty working directory (don’t worry, your main repo is still on the master branch).
[http://pages.github.com/]

* Ocasionally, you may want to keep branches in your repository that do not share an ancestor with your normal code. Some examples of this might be generated documentation or something along those lines. If you want to create a new branch head that does not use your current codebase as a parent, you can create an empty branch like this:
git symbolic-ref HEAD refs/heads/newbranch
rm .git/index
git clean -fdx
<do work>
git add your files
git commit -m 'Initial commit'
[http://book.git-scm.com/5_creating_new_empty_branches.html]

gitcmd.cat-file = Provide content or type and size information for repository objects

name::
* McsEngl.gitcmd.cat-file = Provide content or type and size information for repository objects@cptIt,
* McsEngl.git'cat-file@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-cat-file.html

$ git cat-file -t 54196cc2
commit
$ git cat-file commit 54196cc2
tree 92b8b694ffb1675e5975148e1121810081dbdffe
author J. Bruce Fields <bfields@puzzle.fieldses.org> 1143414668 -0500
committer J. Bruce Fields <bfields@puzzle.fieldses.org> 1143414668 -0500

initial commit

gitcmd.checkout [branch] = Update files in working-tree to match what specified

name::
* McsEngl.gitcmd.checkout [branch] = Update files in working-tree to match what specified@cptIt,
* McsEngl.git'checkout@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-checkout.html

_DESCRIPTION:
* Updates files in the working tree to match the version in the index or the specified tree. If no paths are given, git checkout will also update HEAD to set the specified branch as the current branch.
[http://www.kernel.org/pub/software/scm/git/docs/git-checkout.html]

$ git checkout [head-name]
This command does the following:
- Points HEAD to the commit object specified by [head-name]
- Rewrites all the files in the directory to match the files stored in the new HEAD commit.
Important note: if there are any uncommitted changes when you run git checkout, Git will behave very strangely. The strangeness is predictable and sometimes useful, but it is best to avoid it. All you need to do, of course, is commit all the new changes before checking out the new head.
[http://www.eecs.harvard.edu/~cduan/technical/git/git-2.shtml]

$ git checkout branch_name
Once you have created the branch move to it by issuing the command listed below. Always Make sure you do a commit before you issue this command or else changes will move across branches. Make this a habit!
[http://blog.xkoder.com/2008/08/13/git-tutorial-starting-with-git-using-just-10-commands/]

$ git checkout master
To go back to the master branch (the main trunk) issue the following command. (Again make sure you had issued the commit command)

gitcmd.clone [url] = Copy a remote repo

name::
* McsEngl.gitcmd.clone [url] = Copy a remote repo@cptIt,
* McsEngl.git'clone@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-clone.html

_DESCRIPTION:
* If you need to collaborate with someone on a project, or if you want to get a copy of a project so you can look at or use the code, you will clone it. You simply run the git clone [url] command with the URL of the project you want to copy.

$ git clone git://github.com/schacon/simplegit.git
Initialized empty Git repository in /private/tmp/simplegit/.git/
remote: Counting objects: 100, done.
remote: Compressing objects: 100% (86/86), done.
remote: Total 100 (delta 35), reused 0 (delta 0)
Receiving objects: 100% (100/100), 9.51 KiB, done.
Resolving deltas: 100% (35/35), done.
$ cd simplegit/
$ ls
README Rakefile lib

_CODE.GIT:
//CREATES a repo in current directory.
HoKoNoUmo@CORE2DUO /c/public_html/gitTest
$ git clone git://github.com/synagonism/repoTest
Cloning into 'repoTest'...
remote: Counting objects: 13, done.
remote: Compressing objects: 100% (11/11), done.
remote: Total 13 (delta 1), reused 0 (delta 0)
Receiving objects: 100% (13/13), 9.91 KiB | 0 bytes/s, done.
Resolving deltas: 100% (1/1), done.

HoKoNoUmo@CORE2DUO /c/public_html/gitTest
$ ls
repoTest

HoKoNoUmo@CORE2DUO /c/public_html/gitTest
$ cd repoTest
===
$ git clone git://git.kernel.org/pub/scm/git/git.git
# git itself (approx. 10MB download):
===
$ git clone git://github.com/schacon/grit.git mygrit
That command does the same thing as the previous one, but the target directory is called mygrit.
===
$ git clone http://www.kernel.org/pub/scm/git/git.git
===
bob$ git clone /home/alice/project myrepo
This creates a new directory "myrepo" containing a clone of Alice's repository. The clone is on an equal footing with the original project, possessing its own copy of the original project's history.
===
> git clone https://github.com/ethcore/skeleton ethcoredapp
// clone into ethcoredapp dir

gitcmd.config = Get and set repository or global options

name::
* McsEngl.gitcmd.config = Get and set repository or global options@cptIt,
* McsEngl.git'config@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-config.html

_DESCRIPTION:
First-Time Git Setup

Now that you have Git on your system, you’ll want to do a few things to customize your Git environment. You should have to do these things only once; they’ll stick around between upgrades. You can also change them at any time by running through the commands again.

Git comes with a tool called git config that lets you get and set configuration variables that control all aspects of how Git looks and operates. These variables can be stored in three different places:

/etc/gitconfig file: Contains values for every user on the system and all their repositories. If you pass the option --system to git config, it reads and writes from this file specifically.
~/.gitconfig file: Specific to your user. You can make Git read and write to this file specifically by passing the --global option.
config file in the git directory (that is, .git/config) of whatever repository you’re currently using: Specific to that single repository. Each level overrides values in the previous level, so values in .git/config trump those in /etc/gitconfig.
On Windows systems, Git looks for the .gitconfig file in the $HOME directory (\Documents and Settings\$USER for most people). It also still looks for /etc/gitconfig, although it’s relative to the MSys root, which is wherever you decide to install Git on your Windows system when you run the installer.
[http://progit.org/book/ch1-5.html]

HoKoNoUmo@CORE2DUO /d/tableofcontents (master)
$ git config -l
core.symlinks=false
core.autocrlf=true
color.diff=auto
color.status=auto
color.branch=auto
color.interactive=true
pack.packsizelimit=2g
help.format=html
http.sslcainfo=/bin/curl-ca-bundle.crt
sendemail.smtpserver=/bin/msmtp.exe
diff.astextplain.textconv=astextplain
rebase.autosquash=true
user.name=nikkas
user.email=kaseluris.nikos@gmail.com
merge.tool=kdiff3
mergetool.kdiff3.path=c:/Program Files/KDiff3/kdiff3.exe
diff.guitool=kdiff3
difftool.kdiff3.path=c:/Program Files/KDiff3/kdiff3.exe
gui.recentrepo=C:/GitRepo/git
gui.recentrepo=D:/TableOfContents
push.default=simple
core.repositoryformatversion=0
core.filemode=false
core.bare=false
core.logallrefupdates=true
core.symlinks=false
core.ignorecase=true
core.hidedotfiles=dotGitOnly
remote.github.url=git@github.com:nikkas/TableOfContents.git
remote.github.fetch=+refs/heads/*:refs/remotes/github/*
branch.gh-pages.remote=github
branch.gh-pages.merge=refs/heads/gh-pages
gui.wmstate=normal
gui.geometry=1094x457+-20+164 251 206
branch.master.remote=github
branch.master.merge=refs/heads/master

$ git config --list
If you want to check your settings, you can use the git config --list command to list all the settings Git can find at that point:

$ git config --list
user.name=Scott Chacon
user.email=schacon@gmail.com
color.status=auto
color.branch=auto
color.interactive=auto
color.diff=auto
...
You may see keys more than once, because Git reads the same key from different files (/etc/gitconfig and ~/.gitconfig, for example). In this case, Git uses the last value for each unique key it sees.

You can also check what Git thinks a specific key’s value is by typing git config {key}:

$ git config user.name
Scott Chacon

git'config'core:
[core]
 repositoryformatversion = 0
 filemode = false
 bare = false
 logallrefupdates = true
 symlinks = false
 ignorecase = true
 hideDotFiles = dotGitOnly
[core]
 repositoryformatversion = 0
 filemode = false
 bare = false
 logallrefupdates = true
 symlinks = false
 ignorecase = true
 hideDotFiles = dotGitOnly

git'config.branch:
[branch "master"]
 remote = origin
 merge = refs/heads/master
[branch "gh-pages"]
 remote = github
 merge = refs/heads/gh-pages
[branch "master"]
 remote = github
 merge = refs/heads/master

git'config.remote:
[remote "github"]
 url = git@github.com:nikkas/TableOfContents.git
 fetch = +refs/heads/*:refs/remotes/github/*
[remote "origin"]
 url = git://github.com/synagonism/repoTest
 fetch = +refs/heads/*:refs/remotes/origin/*
===
===
git'config.url:
The exact format of your URL depends on which protocol you are using, e.g.
SSH = git@github.com:someuser/someproject.git
HTTPS = https://someuser@github.com/someuser/someproject.git
GIT = git://github.com/someuser/someproject.git
===
Change your remote's URL from SSH to HTTPS with the remote set-url command.
git remote set-url origin https://github.com/USERNAME/REPOSITORY2.git

Change your remote's URL from HTTPS to SSH with the remote set-url command.
git remote set-url origin git@github.com:USERNAME/REPOSITORY2.git
[https://help.github.com/articles/changing-a-remote-s-url]

git'config.user:
[user]
name = Your Name Comes Here
email = you@yourdomain.example.com
===
HoKoNoUmo@CORE2DUO /d/tableofcontents (master)
$ git config user.name
nikkas

HoKoNoUmo@CORE2DUO /d/tableofcontents (master)
$ git config user.name "synagonism"

HoKoNoUmo@CORE2DUO /d/tableofcontents (master)
$ git config user.name
synagonism

HoKoNoUmo@CORE2DUO /d/git/CrxToc (master)
$ git config --global user.name
nikkas

HoKoNoUmo@CORE2DUO /d/git/CrxToc (master)
$ git config --global user.name "synagonism"
===
HoKoNoUmo@CORE2DUO /d/tableofcontents (master)
$ git config user.email
kaseluris.nikos@gmail.com

HoKoNoUmo@CORE2DUO /d/tableofcontents (master)
$ git config user.email "synagonism@gmail.com"

HoKoNoUmo@CORE2DUO /d/tableofcontents (master)
$ git config user.email
synagonism@gmail.com

git'config.gui:
[gui]
 wmstate = normal
 geometry = 1094x457+-20+164 251 206

git'config.hooks:
[hooks]
mailinglist = "email1@example.com email2@example.com"
senderemail = "owner@exmaple.com"

git'ex.Set-Diff-Tool

name::
* McsEngl.git'ex.Set-Diff-Tool@cptIt,

Your Diff Tool

Another useful option you may want to configure is the default diff tool to use to resolve merge conflicts. Say you want to use vimdiff:

$ git config --global merge.tool vimdiff
Git accepts kdiff3, tkdiff, meld, xxdiff, emerge, vimdiff, gvimdiff, ecmerge, and opendiff as valid merge tools.
[http://progit.org/book/ch1-5.html]

git'ex.Set-Editor

name::
* McsEngl.git'ex.Set-Editor@cptIt,

Your Editor

Now that your identity is set up, you can configure the default text editor that will be used when Git needs you to type in a message. By default, Git uses your system’s default editor, which is generally Vi or Vim. If you want to use a different text editor, such as Emacs, you can do the following:

$ git config --global core.editor emacs
[http://progit.org/book/ch1-5.html]

git'ex.Set-Your-Name

name::
* McsEngl.git'ex.Set-Your-Name@cptIt,

It is a good idea to introduce yourself to git with your name and public email address before doing any operation. The easiest way to do so is:
$ git config --global user.name "Your Name Comes Here"
$ git config --global user.email you@yourdomain.example.com

gitcmd.commit = Record changes to the repository

name::
* McsEngl.gitcmd.commit = Record changes to the repository@cptIt,
* McsEngl.git'commit@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-commit.html

_WARNING:
Before a commit:
- run 'git status' to see your changes,
- run 'git add' to include your changes.

_DESCRIPTION:
Makes the changes final to git repository.
Open your favorite text editor and start coding. When you feel you have accomplished something or you just want to save the current state of your source code issue the git-commit command
[http://blog.xkoder.com/2008/08/13/git-tutorial-starting-with-git-using-just-10-commands/]

* Note that if you modify a file but do not add it, then Git will include the previous version (before modifications) to the commit. The modified file will remain in place.
[http://www.eecs.harvard.edu/~cduan/technical/git/git-1.shtml]

$ git commit
This will prompt you for a commit message.

$ git commit -a
- As a shortcut, git commit -a will automatically add all modified files (but not new ones).
- This will open a text editor (probably vi) where you can add some comments about this commit.
- will update the index with any files that you’ve modified or removed and create a commit, all in one step.[http://www.kernel.org/pub/software/scm/git/docs/user-manual.html#h5o-33]

$ git commit -a -m "Initial import"
- If you prefer not to use the text editor, you can specify the commit message from the command line it self

gitcmd.daemon = allow anonymous download from repository

name::
* McsEngl.gitcmd.daemon = allow anonymous download from repository@cptIt,
* McsEngl.git'daemon@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-daemon.html

DESCRIPTION
A really simple TCP git daemon that normally listens on port "DEFAULT_GIT_PORT" aka 9418. It waits for a connection asking for a service, and will serve that service if it is enabled.
It verifies that the directory has the magic file "git-daemon-export-ok", and it will refuse to export any git directory that hasn't explicitly been marked for export this way (unless the --export-all parameter is specified). If you pass some directory paths as git daemon arguments, you can further restrict the offers to a whitelist comprising of those.
By default, only upload-pack service is enabled, which serves git fetch-pack and git ls-remote clients, which are invoked from git fetch, git pull, and git clone.
This is ideally suited for read-only updates, i.e., pulling from git repositories.
An upload-archive also exists to serve git archive.
[http://www.kernel.org/pub/software/scm/git/docs/git-daemon.html]

gitcmd.diff = Find differences between commits etc

name::
* McsEngl.gitcmd.diff = Find differences between commits etc@cptIt,
* McsEngl.git'diff@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-diff.html

_DESCRIPTION:
So where git status will show you what files have changed and/or been staged since your last commit, git diff will show you what those changes actually are, line by line. It's generally a good follow-up command to git status

* If you develop on a branch crazy-idea, then regret it, you can always delete the branch with
$ git branch -D crazy-idea
Branches are cheap and easy, so this is a good way to try something out.

$ git diff
which will show you changes in the working directory that are not yet staged for the next commit.

$ git diff --cached
If you want to see what is staged for the next commit, you can run
$ git diff --cached
which will show you the difference between the index and your last commit; what you would be committing if you run "git commit" without the "-a" option.

$ git diff --name-status
This will list the files that have been modified(M), added(A) or deleted(D) with respect to the current HEAD and uncommitted changes, if any.

$ git diff HEAD
which shows changes in the working directory since your last commit; what you would be committing if you run "git commit -a".

$ git diff HEAD~1
This command will show you the diff between current HEAD and the immediate previous commit. This command is a shortcut for

$ git diff commit_hash_for_HEAD
commit_hash_just_before_HEAD

$ git diff v2.5:Makefile HEAD:Makefile.in
Finally, most commands that take filenames will optionally allow you to precede any filename by a commit, to specify a particular version of the file:
$ git diff v2.5:Makefile HEAD:Makefile.in

$ git diff test_brance
If you want to see how your current working directory differs from the state of the project in another branch, you can run something like
$ git diff test
This will show you what is different between your current working directory and the snapshot on the 'test' branch

gitcmd.fetch = Retrieves new commits from remote

name::
* McsEngl.gitcmd.fetch = Retrieves new commits from remote@cptIt,
* McsEngl.git'fetch@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-fetch.html

_DESCRIPTION:
git fetch download new branches and data from a remote repository

$ git fetch [remote-repository-reference]
The command git fetch [remote-repository-reference] retrieves the new commit objects in your friend's repository and creates and/or updates the remote heads accordingly. By default, [remote-repository-reference] is origin.

alice$ git fetch bob
- bob is a repository.

gitcmd.format-patch = Prepare patches for e-mail submission

name::
* McsEngl.gitcmd.format-patch = Prepare patches for e-mail submission@cptIt,
* McsEngl.git'format-patch@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-format-patch.html

DESCRIPTION
Prepare each commit with its patch in one file per commit, formatted to resemble UNIX mailbox format. The output of this command is convenient for e-mail submission or for use with git am.
There are two ways to specify which commits to operate on.
A single commit, <since>, specifies that the commits leading to the tip of the current branch that are not in the history that leads to the <since> to be output.
Generic <revision range> expression (see "SPECIFYING REVISIONS" section in gitrevisions(7)) means the commits in the specified range.

gitcmd.gc

name::
* McsEngl.gitcmd.gc@cptIt,
* McsEngl.git'gc@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-gc.html

Ensuring good performance
On large repositories, git depends on compression to keep the history information from taking up too much space on disk or in memory.

This compression is not performed automatically. Therefore you should occasionally run git-gc(1):
$ git gc
to recompress the archive. This can be very time-consuming, so you may prefer to run git gc when you are not doing other work.
[GitUserManual]

$ git gc
Issue the following command to make git compress your repository and clean it up.

This operation might take some time, a couple of minutes or so.

When finished, you’ll probably have more disk space

You should gc once is a while.

gc = garbage collection.

gitcmd.grep = Print lines matching a pattern

name::
* McsEngl.gitcmd.grep = Print lines matching a pattern@cptIt,
* McsEngl.git'grep@cptIt,

__ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-grep.html

_DESCRIPTION:
Look for specified patterns in the tracked files in the work tree, blobs registered in the index file, or blobs in given tree objects.
[http://www.kernel.org/pub/software/scm/git/docs/git-grep.html]

$ git grep "hello" v2.5
The git grep command can search for strings in any version of your project, so
$ git grep "hello" v2.5
searches for all occurrences of "hello" in v2.5.

$ git grep "hello"
If you leave out the commit name, git grep will search any of the files it manages in your current directory. So
$ git grep "hello"
is a quick way to search just the files that are tracked by git.

gitcmd.help [command] = Display info on commands

name::
* McsEngl.gitcmd.help [command] = Display info on commands@cptIt,
* McsEngl.git'help@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-help.html

DESCRIPTION
With no options and no COMMAND given, the synopsis of the git command and a list of the most commonly used git commands are printed on the standard output.
If the option --all or -a is given, then all available commands are printed on the standard output.
If a git command is named, a manual page for that command is brought up. The man program is used by default for this purpose, but this can be overridden by other options or configuration variables.
Note that git --help … is identical to git help … because the former is internally converted into the latter.
[http://www.kernel.org/pub/software/scm/git/docs/git-help.html]

$ git help log
- view help on "git log" command

$ man git-log
- view help on "git log" command

gitcmd.init = Create repository from existing directory of working-files

name::
* McsEngl.gitcmd.init = Create repository from existing directory of working-files@cptIt,
* McsEngl.git'init@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-add.html

_DESCRIPTION:
In a nutshell, you use git init to make an existing directory of content into a new Git repository. You can do this in any directory at any time, completely locally.

gitcmd.log = Show history of commits

name::
* McsEngl.gitcmd.log = Show history of commits@cptIt,
* McsEngl.git'log@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-log.html

_DESCRIPTION:
* Shows the commit logs.
The command takes options applicable to the git rev-list command to control what is shown and how, and options applicable to the git diff-* commands to control how the changes each commit introduces are shown.
[http://www.kernel.org/pub/software/scm/git/docs/git-log.html]

This command shows the commit history with the
1) Unique commit hash
2) Name and email of the person who performed the commit
3) Date and time of commit
4) The commit message
Of all these, the first item, the unique commit identifier, the SHA1 hash is of importance to us.

_GENERIC:
* git-info-command-group#ql:git'info_command_group#

_WEAKNESS:
The git log command has a weakness: it must present commits in a list. When the history has lines of development that diverged and then merged back together, the order in which git log presents those commits is meaningless.
Most projects with multiple contributors (such as the Linux kernel, or git itself) have frequent merges, and gitk does a better job of visualizing their history.
[http://www.kernel.org/pub/software/scm/git/docs/gittutorial.html]

$ git log

$ git log -p
If you also want to see complete diffs at each step, use

$ git log --stat --summary
Often the overview of the change is useful to get a feel of each step

$ git log v2.5.. Makefile
# commits since v2.5 which modify Makefile

$ git log stable..master
You can also give git log a "range" of commits where the first is not necessarily an ancestor of the second; for example, if the tips of the branches "stable" and "master" diverged from a common commit some time ago, then
$ git log stable..master
will list commits made in the master branch but not in the stable branch, while
$ git log master..stable
will show the list of commits made on the stable branch but not the master branch.

gitcmd.ls-tree = List the contents of a tree object

name::
* McsEngl.gitcmd.ls-tree = List the contents of a tree object@cptIt,
* McsEngl.git'ls-tree@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-ls-tree.html

$ git ls-tree 92b8b694
100644 blob 3b18e512dba79e4c8300dd08aeb37f8e728b8dad file.txt
Thus we see that this tree has one file in it.

gitcmd.merge = Join two or more development histories together

name::
* McsEngl.gitcmd.merge = Join two or more development histories together@cptIt,
* McsEngl.git'merge@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-merge.html

_DESCRIPTION:
Important note: Git can get very confused if there are uncommitted changes in the files when you ask it to perform a merge. So make sure to commit whatever changes you have made so far before you merge.

$ git merge branch_name
Move to (checkout) the branch with which you want the merge to happen and issue the following command.
This will merge the branch branch_name with the current branch.

For example if you want to merger the “experimental_feature” branch with the master branch, issue the following commands
$ git checkout master
$ git merge experimental_feature
Git will notify you with any conflicts it cannot resolve automatically (if any). You can then resolve the conflicts manually.

alice$ git merge bob/master
- After examining those changes, Alice could merge the changes into her master branch:

gitcmd.mv = Move or rename a file; a directory; or a symlink

name::
* McsEngl.gitcmd.mv = Move or rename a file; a directory; or a symlink@cptIt,
* McsEngl.git'mv@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-mv.html

gitcmd.notes [since 1.6.6]

name::
* McsEngl.gitcmd.notes [since 1.6.6]@cptIt,
* McsEngl.git'notes@cptIt,

_ADDRESS.WPG:

_DESCRIPTION:
* add data to a commit without changing it’s SHA?

$ git notes add HEAD
This will open up your editor to write your commit message.

$ git notes add -m 'I approve - Scott' master~1
That will add a note to the first parent on the last commit on the master branch. Now, how to view these notes? The easiest way is with the git log command.

gitcmd.pull = Fetch from and merge with another repository or a local branch

name::
* McsEngl.gitcmd.pull = Fetch from and merge with another repository or a local branch@cptIt,
* McsEngl.git'pull@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-pull.html

_DESCRIPTION:
* The "pull" command thus performs two operations: it fetches changes from a remote branch, then merges them into the current branch.

$ git pull . test
# equivalent to git merge test

alice$ cd /home/alice/project
alice$ git pull /home/bob/myrepo master
When he's ready, he tells Alice to pull changes from the repository at /home/bob/myrepo. She does this with:
alice$ cd /home/alice/project
alice$ git pull /home/bob/myrepo master
This merges the changes from Bob's "master" branch into Alice's current branch. If Alice has made her own changes in the meantime, then she may need to manually fix any conflicts.

bob$ git pull
Note that he doesn't need to give the path to Alice's repository; when Bob cloned Alice's repository, git stored the location of her repository in the repository configuration, and that location is used for pulls:
bob$ git config --get remote.origin.url
/home/alice/project
(The complete configuration created by git clone is visible using git config -l, and the git-config(1) man page explains the meaning of each option.)

git'pull-request-github

name::
* McsEngl.git'pull-request-github@cptIt,

* https://help.github.com/articles/using-pull-requests,

gitcmd.push = Update remote

name::
* McsEngl.gitcmd.push = Update remote@cptIt,
* McsEngl.git'push@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-push.html

$ git push [remote-alias] [local-branch]
===
$ git push origin gh-pages
===
To share the cool commits you've done with others, you need to push your changes to the remote repository. To do this, you run git push [alias] [branch] which will attempt to make your [branch] the new [branch] on the [alias] remote. Let's try it by initially pushing our 'master' branch to the new 'github' remote we created earlier.
$ git push github master
Counting objects: 25, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (25/25), done.
Writing objects: 100% (25/25), 2.43 KiB, done.
Total 25 (delta 4), reused 0 (delta 0)
To git@github.com:schacon/hw.git
* [new branch] master -> master
Pretty easy. Now if someone clones that repository they will get exactly what I have committed and all of its history.

What if I have a topic branch like the 'erlang' branch we created earlier and I just want to share that? You can just push that branch instead.
$ git push github erlang
Counting objects: 7, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (6/6), done.
Writing objects: 100% (6/6), 652 bytes, done.
Total 6 (delta 1), reused 0 (delta 0)
To git@github.com:schacon/hw.git
* [new branch] erlang -> erlang
Now when people clone or fetch from that repository, they'll get an 'erlang' branch they can look at and merge from. You can push any branch to any remote repository that you have write access to in this way. If your branch is already on the server, it will try to update it, if it is not, Git will add it.

This is what happens when you try to push a branch to a remote branch that has been updated in the meantime:
$ git push github master
To git@github.com:schacon/hw.git
! [rejected] master -> master (non-fast-forward)
error: failed to push some refs to 'git@github.com:schacon/hw.git'
To prevent you from losing history, non-fast-forward updates were rejected
Merge the remote changes before pushing again. See the 'Note about
fast-forwards' section of 'git push --help' for details.
You can fix this by running git fetch github; git merge github/master and then pushing again.
[http://gitref.org/remotes/]

$ git push [remote-repository-reference] [remote-head-name]
When this command is called, Git directs the remote repository to do the following:
- Add new commit objects sent by the pushing repository.
- Set [remote-head-name] to point to the same commit that it points to on the pushing repository.
On the sending repository, Git also updates the corresponding remote head reference.

$ git push https://github.com/synagonism/repoTest.git master
Username for 'https://github.com': synagonism
Password for 'https://synagonism@github.com':

$ git push REMOTENAME :BRANCHNAME
Deleting a remote branch or tag
This command is a bit arcane at first glance… git push REMOTENAME :BRANCHNAME. If you look at the advanced push syntax above it should make a bit more sense. You are literally telling git “push nothing into BRANCHNAME on REMOTENAME”.

gitcmd.rebase =

name::
* McsEngl.gitcmd.rebase =@cptIt,
* McsEngl.git'rebase@cptIt,

_DESCRIPTION:
One often overlooked feature of git is the git rebase command. Rebase allows you to easily change a series of commits, reordering, editing, or squashing commits together into a single commit.
It is considered bad practice to rebase commits which you have already pushed to a remote repo. Doing so may invoke the wrath of the git gods… you have been warned.
[http://help.github.com/rebase/]

gitcmd.remote = Manage set of tracked remote-repositories

name::
* McsEngl.gitcmd.remote = Manage set of tracked remote-repositories@cptIt,
* McsEngl.git'remote@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-remote.html,

remote in config#ql:git'config.remote#

$ git remote:
list your remote aliases
Without any arguments, Git will simply show you the remote repository aliases that it has stored. By default, if you cloned the project (as opposed to creating a new one locally), Git will automatically add the URL of the repository that you cloned from under the name 'origin'.
===
HoKoNoUmo@CORE2DUO /d/tableofcontents (master)
$ git remote
github

$ git remote -v:
HoKoNoUmo@CORE2DUO /d/tableofcontents (master)
$ git remote -v
github git@github.com:nikkas/TableOfContents.git (fetch)
github git@github.com:nikkas/TableOfContents.git (push)
===
HoKoNoUmo@CORE2DUO /d/git/repoTest (master)
$ git remote -v
origin git://github.com/synagonism/repoTest (fetch)
origin git://github.com/synagonism/repoTest (push)
===
If you run the command with the -v option, you can see the actual URL for each alias.
origin  git@github.com:schacon/git-reference.git (fetch)
origin  git@github.com:schacon/git-reference.git (push)

$ git remote add:
- add a new remote repository of your project
If you want to share a locally created repository, or you want to take contributions from someone elses repository - if you want to interact in any way with a new repository, it's generally easiest to add it as a remote. You do that by running git remote add [alias] [url]. That adds [url] under a local remote named [alias].

For example, if we want to share our Hello World program with the world, we can create a new repository on a server (I'll use GitHub as an example), which should give you a URL, in this case "git@github.com:schacon/hw.git". To add that to our project so we can push to it and fetch updates from it we would do this:

$ git remote
$ git remote add github git@github.com:schacon/hw.git
$ git remote -v
github  git@github.com:schacon/hw.git (fetch)
github  git@github.com:schacon/hw.git (push)

Like the branch naming, remote alias names are arbitrary - just as 'master' has no special meaning but is widely used because git init sets it up by default, 'origin' is often used as a remote name because git clone sets it up by default as the cloned-from URL. In this case I've decided to name my remote 'github', but I could have really named it just about anything.
===
alice$ git remote add bob /home/bob/myrepo
- adds a repository in the same machine.

$ git remote rename:
$ git remote rename origin github
- renamed the remote from origin to github

$ git remote rm:
$ git remote rm example
Another basic command, git remote rm example will delete the “example” remote and any remote-tracking branches we’ve fetched.

$ git remote set-url:
Change your remote's URL from HTTPS to SSH with the remote set-url command.
git remote set-url origin git@github.com:USERNAME/REPOSITORY2.git
[https://help.github.com/articles/changing-a-remote-s-url]
===
$ git remote set-url origin ssh://git@github.com/username/newRepoName.git
I faced the same problem when I renamed by repository on GitHub. I tried to push at which point I got the error
fatal: 'origin' does not appear to be a git repository
fatal: The remote end hung up unexpectedly
I had to change the URL using

gitcmd.reset = Go to previous states

name::
* McsEngl.gitcmd.reset = Go to previous states@cptIt,
* McsEngl.git'reset@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-reset.html

_DESCRIPTION:
If you make a commit and then find a mistake immediately after that, you can recover from it with git reset.

$ git reset –hard
Just use the following command to clear any changes and move back to the latest clean state, i.e. the last commit.

BE VERY CAUTIOUS while issuing this command as it is IRREVERSIBLE.

$ git reset --hard HEAD^
# reset your current branch and working directory to its state at HEAD^
Be careful with that last command: in addition to losing any changes in the working directory, it will also remove all later commits from this branch. If this branch is the only branch containing those commits, they will be lost. Also, don't use git reset on a publicly-visible branch that other developers pull from, as it will force needless merges on other developers to clean up the history. If you need to undo changes that you have pushed, use git revert instead.

gitcmd.rm = Remove files from the working tree and from the index

name::
* McsEngl.gitcmd.rm = Remove files from the working tree and from the index@cptIt,
* McsEngl.git'rm@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-rm.html

_DESCRIPTION:
In a nutshell, you run git rm to remove files from being tracked in Git. It will also remove them from your working directory.

gitcmd.send-email = Send a collection of patches as emails

name::
* McsEngl.gitcmd.send-email = Send a collection of patches as emails@cptIt,
* McsEngl.git'send-email@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-send-email.html

DESCRIPTION
Takes the patches given on the command line and emails them out. Patches can be specified as files, directories (which will send all files in the directory), or directly as a revision list. In the last case, any format accepted by git-format-patch(1) can be passed to git send-email.
The header of the email is configurable by command line options. If not specified on the command line, the user will be prompted with a ReadLine enabled interface to provide the necessary information.
There are two formats accepted for patch files:
mbox format files
This is what git-format-patch(1) generates. Most headers and MIME formatting are ignored.
The original format used by Greg Kroah-Hartman's send_lots_of_email.pl script
This format expects the first line of the file to contain the "Cc:" value and the "Subject:" of the message as the second line.
http://www.kernel.org/pub/software/scm/git/docs/git-send-email.html

gitcmd.shell = Restricted login shell for Git-only SSH access

name::
* McsEngl.gitcmd.shell = Restricted login shell for Git-only SSH access@cptIt,
* McsEngl.git'shell@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-shell.html

DESCRIPTION
A login shell for SSH accounts to provide restricted Git access. When -c is given, the program executes <command> non-interactively; <command> can be one of git receive-pack, git upload-pack, git upload-archive, cvs server, or a command in COMMAND_DIR. The shell is started in interactive mode when no arguments are given; in this case, COMMAND_DIR must exist, and any of the executables in it can be invoked.
cvs server is a special command which executes git-cvsserver.
COMMAND_DIR is the path "$HOME/git-shell-commands". The user must have read and execute permissions to the directory in order to execute the programs in it. The programs are executed with a cwd of $HOME, and <argument> is parsed as a command-line string.
[http://www.kernel.org/pub/software/scm/git/docs/git-shell.html]

gitcmd.show = Show various types of objects

name::
* McsEngl.gitcmd.show = Show various types of objects@cptIt,
* McsEngl.git'show@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-show.html

DESCRIPTION
Shows one or more objects (blobs, trees, tags and commits).
For commits it shows the log message and textual diff. It also presents the merge commit in a special format as produced by git diff-tree --cc.
For tags, it shows the tag message and the referenced objects.
For trees, it shows the names (equivalent to git ls-tree with --name-only).
For plain blobs, it shows the plain contents.
The command takes options applicable to the git diff-tree command to control how the changes the commit introduces are shown.
This manual page describes only the most frequently used options.
[http://www.kernel.org/pub/software/scm/git/docs/git-show.html]

$ git show c82a22c39c
# the first few characters of the name are usually enough

$ git show experimental
# the tip of the "experimental" branch

$ git show HEAD
# the tip of the current branch

$ git show HEAD^1
# show the first parent of HEAD (same as HEAD^)

$ git show HEAD^2
# show the second parent of HEAD

$ git show HEAD^
# to see the parent of HEAD

$ git show HEAD^^
# to see the grandparent of HEAD

$ git show HEAD~4
# to see the great-great grandparent of HEAD

gitcmd.show-branch = Show branches and their commits

name::
* McsEngl.gitcmd.show-branch = Show branches and their commits@cptIt,
* McsEngl.git'show-branch@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-show-branch.html

gitcmd.stash = Store all changes in temporary location

name::
* McsEngl.gitcmd.stash = Store all changes in temporary location@cptIt,
* McsEngl.git'stash@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-stash.html

_SENARIO:
Here is a one typical scenario
Suppose you are working on one of the feature branch and you get a mail that something is not fine with the code on your trunk, the ‘master branch‘. Now one way to to fix something on the master branch is to:

First commit changes on the ‘feature’ branch.
Next, checkout the master branch and fix what’s required.
Commit changes to master.
Checkout the ‘feature’ branch.
But, what if, you do not want to commit the changes on the ‘feature’ branch? Probably because you are halfway through something, or you want to test your code before you commit it. You you stash all changes as shown below.

$ git stash
$ git checkout master
...Fix some stuff...
$ git commit -a -m "Bug:12 fixed - thread no longer dies prematurely"
$ git checkout feature
$ git stash pop
...Continue working normally...
[http://blog.xkoder.com/2009/06/06/git-tutorial-part-ii-sharpen-you-git-fu-with-10-more-commands/]

Multiple stashes
You can stash more than one set of changes, if required, by issuing the git-stash command multiple times.

When you use the `git-stash pop` command, the latest stash comes out first, much like a stack.

$ git stash
When issued, all changes will be stashed to a temporary location and you will have a clean current HEAD. You can verify this by issuing the git-status command.

When done with your other work, you can pop back the stashed changes by issuing the following command.
$ git stash pop

$ git stash list
To view a list of stashed changes issue the following command

gitcmd.status = List files changed since last commit

name::
* McsEngl.gitcmd.status = List files changed since last commit@cptIt,
* McsEngl.git'status@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-status.html

Checking the current status.
While coding, you may want to see what all files have changed, before you do a commit to store them in the git repository. This command helps you achieve that.
$ git status
The above command will list all files that have changed since your last commit.

In a nutshell, you run git status to see if anything has been modified and/or staged since your last commit so you can decide if you want to commit a new snapshot and what will be recorded in it.

gitcmd.tag [name] [commit] = Give name to commit

name::
* McsEngl.gitcmd.tag [name] [commit] = Give name to commit@cptIt,
* McsEngl.git'tag@cptIt,

_ADDRESS.WPG:
* http://www.kernel.org/pub/software/scm/git/docs/git-tag.html

_DESCRIPTION:
* mark known point.
* Adds a tag reference in .git/refs/tags/.

Unless -f is given, the tag must not yet exist in .git/refs/tags/ directory.

If one of -a, -s, or -u <key-id> is passed, the command creates a tag object, and requires the tag message. Unless -m <msg> or -F <file> is given, an editor is started for the user to type in the tag message.

If -m <msg> or -F <file> is given and -a, -s, and -u <key-id> are absent, -a is implied.

Otherwise just the SHA1 object name of the commit object is written (i.e. a lightweight tag).

A GnuPG signed tag object will be created when -s or -u <key-id> is used. When -u <key-id> is not used, the committer identity for the current user is used to find the GnuPG key for signing.
[http://www.kernel.org/pub/software/scm/git/docs/git-tag.html]

* We have seen how one can refer to specific commits using their hash value. Using git tag <name> <commit> you can assign a tag to a commit (if you omit <commit>, the last commit is tagged):
> git tag working 3720b35
> git tag broken
This is nothing more than a label for a commit:
[http://www.ralfebert.de/blog/tools/visual_git_tutorial_1/]

$ git tag stable-1 1b2e1d63ff
We can also create a tag to refer to a particular commit; after running
$ git tag stable-1 1b2e1d63ff
You can use stable-1 to refer to the commit 1b2e1d63ff.

$ git tag v2.5 1b2e1d63ff
You can also give commits names of your own; after running
$ git tag v2.5 1b2e1d63ff
you can refer to 1b2e1d63ff by the name "v2.5". If you intend to share this name with other people (for example, to identify a release version), you should create a "tag" object, and perhaps sign it;

git'concept

name::
* McsEngl.git'concept@cptIt,

git'alternate_object_database_concept:
Via the alternates mechanism, a repository can inherit part of its object database from another object database, which is called "alternate".

git'bare_repository_concept:
A bare repository is normally an appropriately named directory with a .git suffix that does not have a locally checked-out copy of any of the files under revision control. That is, all of the git administrative and control files that would normally be present in the hidden .git sub-directory are directly present in the repository.git directory instead, and no other files are present and checked out. Usually publishers of public repositories make bare repositories available.

git'cache_concept:
Obsolete for: index.

git'chain_concept:
A list of objects, where each object in the list contains a reference to its successor (for example, the successor of a commit could be one of its parents).

git'changeset_concept:
BitKeeper/cvsps speak for "commit". Since git does not store changes, but states, it really does not make sense to use the term "changesets" with git.

git'checkout_concept:
The action of updating all or part of the working tree with a tree object or blob from the object database, and updating the index and HEAD if the whole working tree has been pointed at a new branch.

git'cherry_picking_concept:
In SCM jargon, "cherry pick" means to choose a subset of changes out of a series of changes (typically commits) and record them as a new series of changes on top of a different codebase. In GIT, this is performed by the "git cherry-pick" command to extract the change introduced by an existing commit and to record it based on the tip of the current branch as a new commit.

git'clean_concept:
A working tree is clean, if it corresponds to the revision referenced by the current head. Also see "dirty".

git'core_git_concept:
Fundamental data structures and utilities of git. Exposes only limited source code management tools.

git'DAG_concept:
Directed acyclic graph. The commit objects form a directed acyclic graph, because they have parents (directed), and the graph of commit objects is acyclic (there is no chain which begins and ends with the same object).

git'dangling_object_concept:
An unreachable object which is not reachable even from other unreachable objects; a dangling object has no references to it from any reference or object in the repository.

git'detached_HEAD_concept:
Normally the HEAD stores the name of a branch. However, git also allows you to check out an arbitrary commit that isn't necessarily the tip of any particular branch. In this case HEAD is said to be "detached".

git'dircache_concept:
You are waaaaay behind. See index.

git'directory_concept:
The list you get with "ls" :-)

git'dirty_concept:
A working tree is said to be "dirty" if it contains modifications which have not been committed to the current branch.

git'ent_concept:
Favorite synonym to "tree-ish" by some total geeks. See http://en.wikipedia.org/wiki/Ent_(Middle-earth) for an in-depth explanation. Avoid this term, not to confuse people.

git'evil_merge_concept:
An evil merge is a merge that introduces changes that do not appear in any parent.

git'fast_forward_concept:
A fast-forward is a special type of merge where you have a revision and you are "merging" another branch's changes that happen to be a descendant of what you have. In such these cases, you do not make a new merge commit but instead just update to his revision. This will happen frequently on a tracking branch of a remote repository.

git'fetch_concept:
Fetching a branch means to get the branch's head ref from a remote repository, to find out which objects are missing from the local object database, and to get them, too. See also git-fetch(1).

git'file_system_concept:
Linus Torvalds originally designed git to be a user space file system, i.e. the infrastructure to hold files and directories. That ensured the efficiency and speed of git.

git'git_archive_concept:
Synonym for repository (for arch people).

git'grafts_concept:
Grafts enables two otherwise different lines of development to be joined together by recording fake ancestry information for commits. This way you can make git pretend the set of parents a commit has is different from what was recorded when the commit was created. Configured via the .git/info/grafts file.

git'hash_concept:
In git's context, synonym to object name.

git'hook_concept:
During the normal execution of several git commands, call-outs are made to optional scripts that allow a developer to add functionality or checking. Typically, the hooks allow for a command to be pre-verified and potentially aborted, and allow for a post-notification after the operation is done. The hook scripts are found in the $GIT_DIR/hooks/ directory, and are enabled by simply removing the .sample suffix from the filename. In earlier versions of git you had to make them executable.

git'master_concept:
The default development branch. Whenever you create a git repository, a branch named "master" is created, and becomes the active branch. In most cases, this contains the local development, though that is purely by convention and is not required.

git'octopus_concept:
To merge more than two branches. Also denotes an intelligent predator.

git'origin_concept:
The default upstream repository. Most projects have at least one upstream project which they track. By default origin is used for that purpose. New upstream updates will be fetched into remote tracking branches named origin/name-of-upstream-branch, which you can see using git branch -r.

git'pack_concept:
A set of objects which have been compressed into one file (to save space or to transmit them efficiently).

git'pack_index_concept:
The list of identifiers, and other information, of the objects in a pack, to assist in efficiently accessing the contents of a pack.

git'parent_concept:
A commit object contains a (possibly empty) list of the logical predecessor(s) in the line of development, i.e. its parents.

git'pickaxe_concept:
The term pickaxe refers to an option to the diffcore routines that help select changes that add or delete a given text string. With the —pickaxe-all option, it can be used to view the full changeset that introduced or removed, say, a particular line of text. See git-diff(1).

git'plumbing_concept:
Cute name for core git.

git'porcelain_concept:
Cute name for programs and program suites depending on core git, presenting a high level access to core git. Porcelains expose more of a SCM interface than the plumbing.

git'pull_concept:
Pulling a branch means to fetch it and merge it. See also git-pull(1).

git'push_concept:
Pushing a branch means to get the branch's head ref from a remote repository, find out if it is a direct ancestor to the branch's local head ref, and in that case, putting all objects, which are reachable from the local head ref, and which are missing from the remote repository, into the remote object database, and updating the remote head ref. If the remote head is not an ancestor to the local head, the push fails.

git'reachable_concept:
All of the ancestors of a given commit are said to be "reachable" from that commit. More generally, one object is reachable from another if we can reach the one from the other by a chain that follows tags to whatever they tag, commits to their parents or trees, and trees to the trees or blobs that they contain.

git'rebase_concept:
To reapply a series of changes from a branch to a different base, and reset the head of that branch to the result.

git'ref_concept:
* tips of branches and tags (collectively known as refs)
[http://www.kernel.org/pub/software/scm/git/docs/git-pack-refs.html]

* A 40-byte hex representation of a SHA1 or a name that denotes a particular object. These may be stored in $GIT_DIR/refs/.

* All references are named with a slash-separated path name starting with "refs"; the names we’ve been using so far are actually shorthand:
- The branch "test" is short for "refs/heads/test".
- The tag "v2.6.18" is short for "refs/tags/v2.6.18".
- "origin/master" is short for "refs/remotes/origin/master".
[http://www.kernel.org/pub/software/scm/git/docs/user-manual.html#h5o-13]

git'reflog_concept:
A reflog shows the local "history" of a ref. In other words, it can tell you what the 3rd last revision in _this_ repository was, and what was the current state in _this_ repository, yesterday 9:14pm. See git-reflog(1) for details.

git'refspec_concept:
A "refspec" is used by fetch and push to describe the mapping between remote ref and local ref. They are combined with a colon in the format <src>:<dst>, preceded by an optional plus sign, +. For example: git fetch $URL refs/heads/master:refs/heads/origin means "grab the master branch head from the $URL and store it as my origin branch head". And git push $URL refs/heads/master:refs/heads/to-upstream means "publish my master branch head as to-upstream branch at $URL". See also git-push(1).

git'resolve_concept:
The action of fixing up manually what a failed automatic merge left behind.

git'revision_concept:
* Represents a version of the source code. Git identifies revisions with SHA1 ids. SHA1 ids are 160-bit long and are represented in hexadecimal. The latest version can be address via "HEAD", the version before that via "HEAD~1" and so on.
[http://www.vogella.de/articles/Git/article.html]

* A particular state of files and directories which was stored in the object database. It is referenced by a commit object.

git'rewind_concept:
To throw away part of the development, i.e. to assign the head to an earlier revision.

git'SCM_concept:
Source code management (tool).

git'SHA1_concept:
Synonym for object-name#ql:git'object_name_concept#.

git'shallow_repository_concept:
A shallow repository has an incomplete history some of whose commits have parents cauterized away (in other words, git is told to pretend that these commits do not have the parents, even though they are recorded in the commit object). This is sometimes useful when you are interested only in the recent history of a project even though the real history recorded in the upstream is much larger. A shallow repository is created by giving the —depth option to git-clone(1), and its history can be later deepened with git-fetch(1).

git'symref_concept:
Symbolic reference: instead of containing the SHA1 id itself, it is of the format ref: refs/some/thing and when referenced, it recursively dereferences to this reference. HEAD is a prime example of a symref. Symbolic references are manipulated with the git-symbolic-ref(1) command.

git'tag_concept:
A ref pointing to a tag or commit object. In contrast to a head, a tag is not changed by a commit. Tags (not tag objects) are stored in $GIT_DIR/refs/tags/. A git tag has nothing to do with a Lisp tag (which would be called an object type in git's context). A tag is most typically used to mark a particular point in the commit ancestry chain.

git'topic_branch_concept:
A regular git branch that is used by a developer to identify a conceptual line of development. Since branches are very easy and inexpensive, it is often desirable to have several small branches that each contain very well defined concepts or small incremental yet related changes.

git'tracking_branch_concept:
A regular git branch that is used to follow changes from another repository. A tracking branch should not contain direct modifications or have local commits made to it. A tracking branch can usually be identified as the right-hand-side ref in a Pull: refspec.

git'tree_concept:
Either a working tree, or a tree object together with the dependent blob and tree objects (i.e. a stored representation of a working tree).

git'tree_ish_concept:
A ref pointing to either a commit object, a tree object, or a tag object pointing to a tag or commit or tree object.

git'unmerged_index_concept:
An index which contains unmerged index entries.

git'unreachable_object_concept:
An object which is not reachable from a branch, tag, or any other reference.

git'upstream_branch_concept:
The default branch that is merged into the branch in question (or the branch in question is rebased onto). It is configured via branch.<name>.remote and branch.<name>.merge. If the upstream branch of A is origin/B sometimes we say "A is tracking origin/B".

git'Gitweb

name::
* McsEngl.git'Gitweb@cptIt,

* https://git.wiki.kernel.org/index.php/Gitweb

git'directory

name::
* McsEngl.git'directory@cptIt,

git'dir.base-dir

name::
* McsEngl.git'dir.base-dir@cptIt,
* McsEngl.git'base-folder@cptIt,

.git

name::
* McsEngl..git@cptIt,
* McsEngl.git'dir.git@cptIt,

_DESCRIPTION:
To introduce a little terminology, the .git directory is the “real” repository, and all of the files and directories that coexist with it are said to live in the working directory. An easy way to remember the distinction is that the repository contains the history of your project, while the working directory contains a snapshot of your project at a particular point in history.
[http://cworth.org/hgbook-git/tour/]
The Git index is used as a staging area between your working directory and your repository.
[http://book.git-scm.com/1_the_git_index.html]

.git/objects

name::
* McsElln..git/objects@cptIt,

a subdirectory called objects, which will contain all the objects of your project. You should never have any real reason to look at the objects directly, but you might want to know that these objects are what contains all the real data in your repository.

.git/refs

name::
* McsElln..git/refs@cptIt,

a subdirectory called refs, which contains references to objects.

In particular, the refs subdirectory will contain two other subdirectories, named heads and tags respectively. They do exactly what their names imply: they contain references to any number of different heads of development (aka branches), and to any tags that you have created to name specific versions in your repository.

git'dir.working-tree

name::
* McsEngl.git'dir.working-tree@cptIt,
* McsEngl.git'working-directory@cptIt,
* McsEngl.git'working-tree@cptIt,
* McsEngl.working-tree--of-git@cptIt, (aka working directory)

_DESCRIPTION:
The Git 'working directory' is the directory that holds the current checkout of the files you are working on. Files in this directory are often removed or replaced by Git as you switch branches - this is normal. All your history is stored in the Git Directory; the working directory is simply a temporary checkout place where you can modify the files until your next commit.
[http://book.git-scm.com/1_git_directory_and_working_directory.html]

git'doing

name::
* McsEngl.git'doing@cptIt,

git'installing

name::
* McsEngl.git'installing@cptIt,

_LINUX.UBUNTU:
On Ubuntu distribution, you may install git using the following command
$ sudo apt-get install git-core

_LINUX.FEDORA:
on Fedora distribution, you may install git using the following command
$ sudo yum install git

_WIN:
on Windows:
* http://code.google.com/p/msysgit/

git'doing.SENARIO

name::
* McsEngl.git'doing.SENARIO@cptIt,

SENARIO-CrxToc-MASTER:
* open git/bash (paraphrase on keepass/GitHub)
* cd \tableofcontents
* ls
** $ git checkout master  //displays the 'master' brance
** copy changes    //from d:/file1a/tableofcontents
- run 'git status' to see your changes,
* $ git add file-name  //for new files
* $ git rm "filename"  //for files to remove
* $ git commit#ql:git'cmd.commit# -a -m "version 2010.12.6.3" //with " for the message
* $ git tag v2010.12.6.3
* $ git push#ql:git'cmd.push# github
* logout

SENARIO-CrxToc-GH-PAGES:
* open git/bash
* cd \tableofcontents
* ls
* $ git checkout gh-pages
* ls
* make changes.
* $ git commit -a -m "git-repo versioning"
* $ git push github gh-pages
* logout

git'error

name::
* McsEngl.git'error@cptIt,

git'error.fatal.you_are_pushing_to_remote_X_which_is_not_the_upstream_of_your_current_branch_master:
$ git push https://github.com/synagonism/repoTest.git
fatal: You are pushing to remote 'https://github.com/synagonism/repoTest.git', w
hich is not the upstream of
your current branch 'master', without telling me what to push
to update which remote branch.

git'error.fatal.refs_remotes_origin_HEAD_cannot_be_resolved_to_branch:
fatal: refs/remotes/origin/HEAD cannot be resolved to branch.
Unexpected end of command stream
===
instead of
$ git push https://github.com/synagonism/repoTest.git origin master
wanted
$ git push https://github.com/synagonism/repoTest.git master

git'file

name::
* McsEngl.git'file@cptIt,
* McsEngl.git'file@cptIt,
* McsEngl.gitfil@cptIt,

gitfil.config @ .git/config

name::
* McsEngl.gitfil.config @ .git/config,

_DESCRIPTION:
Starting from 0.99.9 (actually mid 0.99.8.GIT), .git/config file is used to hold per-repository configuration options. It is a simple text file modeled after .ini format familiar to some people. Here is an example:
#
# A '#' or ';' character indicates a comment.
#

; core variables
[core]
; Don't trust file modes
filemode = false

; user identity
[user]
name = "Junio C Hamano"
email = "junkio@twinsun.com"
Various commands read from the configuration file and adjust their operation accordingly. See git-config(1) for a list.
[http://www.kernel.org/pub/software/scm/git/docs/git.html]

gitfil.description @ .git

name::
* McsEngl.gitfil.description @ .git,

repoCrxToc:
TableOfContents repository of https://chrome.google.com/extensions/detail/eeknhipceeelbgdbcmchicoaoalfdnhi.

repoTest:
Unnamed repository; edit this file 'description' to name the repository.

gitfil.gitconfig @ home-dir

name::
* McsEngl.gitfil.gitconfig @ home-dir,

Telling git your name
Before creating any commits, you should introduce yourself to git. The easiest way to do so is to make sure the following lines appear in a file named .gitconfig in your home directory:

[user]
name = Your Name Comes Here
email = you@yourdomain.example.com

[user]
 name = nikkas
 email = kaseluris.nikos@gmail.com
[merge]
 tool = kdiff3
[mergetool "kdiff3"]
 path = c:/Program Files/KDiff3/kdiff3.exe
[diff]
 guitool = kdiff3
[difftool "kdiff3"]
 path = c:/Program Files/KDiff3/kdiff3.exe
[gui]
 recentrepo = C:/GitRepo/git
 recentrepo = D:/TableOfContents
[push]
 default = simple

gitfil.gitignore .gitignore

name::
* McsEngl.gitfil.gitignore .gitignore@cptIt,

_DESCRIPTION:
Following best practices, we’ll want to keep the node_modules folder out of the git repository.
We can do that by adding a .gitignore file to our project root, with the following contents.
node_modules
[https://quickleft.com/blog/creating-and-publishing-a-node-js-module/]

gitfil.HEAD @ .git

name::
* McsEngl.gitfil.HEAD @ .git,
* McsEngl.git'HEAD-file@cptIt,

_DESCRIPTION:
The name of the current branch is stored in .git/HEAD.
==========
HEAD# pointer to your current branch
[http://book.git-scm.com/1_git_directory_and_working_directory.html]

git'HEAD_concept:
Git also provides a special name "HEAD" which always refers to the current branch.
==========
HEAD, the tip of the current branch;
==========
The current branch. In more detail: Your working tree is normally derived from the state of the tree referred to by HEAD. HEAD is a reference to one of the heads in your repository, except when using a detached HEAD, in which case it may reference an arbitrary commit.

$ cat .git/HEAD
ref: refs/heads/master

git'Gerrit

_CREATED: {2012-11-15}

name::
* McsEngl.git'Gerrit@cptIt,
* McsEngl.gerrit-program@cptIt, {2012-11-15}

_DESCRIPTION:
Gerrit is a free, web-based team software code review tool that integrates with Git version control software. It has been developed at Google by Shawn Pearce (co-author of Git, founder of JGit) for the development of the Android project. As it is web based, software developers in a team can review each other's modifications on their source code using a web browser and approve or reject those changes.
Starting from a set of patches for Rietveld, also a software review tool, it became a fork and evolved into a separate project when ACL patches wouldn't be merged into Rietveld by its author, Guido van Rossum.[1]
Originally written in Python like Rietveld, it is now written in Java (Java EE Servlet) with SQL since version 2. Gerrit uses Google Web Toolkit to generate front-end JavaScript code from Java source.[2]
[http://en.wikipedia.org/wiki/Gerrit_(software)]

_ADDRESS.WPG:
* http://www.mediawiki.org/wiki/Git/Gerrit,

git'gist

name::
* McsEngl.git'gist@cptIt,
* McsEngl.gist@cptIt,

_DESCRIPTION:
Gists are a great way to share your work. You can share single files, parts of files, or full applications. You can access gists at https://gist.github.com.

Every gist is a Git repository, which means that it can be forked, cloned, and manipulated in every way.
[https://help.github.com/articles/about-gists/]

gitgist'Creating

name::
* McsEngl.gitgist'Creating@cptIt,

_ADDRESS.WPG:
* https://help.github.com/articles/creating-gists//

gitgist'embed-in-html

name::
* McsEngl.gitgist'embed-in-html@cptIt,

<script src="https://gist.github.com/synagonism/2e9c2ecc87f4e46505e64d28659212b9.js"></script>
//inserts into the-position of script

<script
src="https://gist.github.com/claudemamo/4577639.js?file=hello_world_addr.wsdl">
</script>
[http://stackoverflow.com/a/14714460]

git'Integrity ::this.att

name::
* McsEngl.git'Integrity ::this.att@cptIt,

Git Has Integrity

Everything in Git is check-summed before it is stored and is then referred to by that checksum. This means it’s impossible to change the contents of any file or directory without Git knowing about it. This functionality is built into Git at the lowest levels and is integral to its philosophy. You can’t lose information in transit or get file corruption without Git being able to detect it.

The mechanism that Git uses for this checksumming is called a SHA-1 hash. This is a 40-character string composed of hexadecimal characters (0–9 and a–f) and calculated based on the contents of a file or directory structure in Git. A SHA-1 hash looks something like this:

24b9da6552252987aa493b52f8696cd6d3b00373
You will see these hash values all over the place in Git because it uses them so much. In fact, Git stores everything not by file name but in the Git database addressable by the hash value of its contents.
[http://progit.org/book/ch1-3.html]

git'Repository (gitrepo)

name::
* McsEngl.git'Repository (gitrepo)@cptIt,
* McsEngl.git'repo@cptIt,
* McsEngl.git'repository-concept@cptIt,
* McsEngl.git'project-concept@cptIt,
* McsEngl.git'database@cptIt,
* McsEngl.gitrepo@cptIt,
* McsEngl.repository-of-git@cptIt,

=== _NOTES: normal-use: "Suppose that Alice has started a new project with a git repository in /home/alice/project,"
[http://book.git-scm.com/3_distributed_workflows.html]

=== _NOTES: "When you do actions in Git, nearly all of them only add data to the Git database".
[http://progit.org/book/ch1@cptIt3.html]
====== lagoGreek:
* McsElln.αποθετήριο@cptIt,

_DEFINITION:
* Git-repository is a directory in a computer with some files and their history(evolution).
[hmnSngo.2010-10-30]

A directory in a computer with the source-files of a program PLUS the repository-directory ".git".

A git repository contains, among other things, the following:
- A set of commit objects.
- A set of references to commit objects, called heads.
The Git repository is stored in the same directory as the project itself, in a subdirectory called .git. Note differences from central-repository systems like CVS or Subversion:
- There is only one .git directory, in the root directory of the project.
- The repository is stored in files alongside the project. There is no central server repository.
[http://www.eecs.harvard.edu/~cduan/technical/git/git-1.shtml]

* A collection of refs together with an object database containing all objects which are reachable from the refs, possibly accompanied by meta data from one or more porcelains. A repository can share an object database with other repositories via alternates mechanism.

gitrepo'doing.CREATING

name::
* McsEngl.gitrepo'doing.CREATING@cptIt,
* McsEngl.git'ex.CREATING-REPO@cptIt,
* McsEngl.git'repo'creating@cptIt,

We can do this one of two ways
- we can clone one that already exists, or
- we can initialize one either from existing files that aren't in source control yet, or from an empty directory.
[http://book.git-scm.com/3_getting_a_git_repository.html]

Creating a new repository from scratch is very easy:
$ mkdir project
$ cd project
$ git init

If you have some initial content (say, a tarball):
$ tar xzvf project.tar.gz
$ cd project
$ git init
$ git add .# include everything below ./ in the first commit:
$ git commit

Importing a new project
Assume you have a tarball project.tar.gz with your initial work. You can place it under git revision control as follows.
$ tar xzf project.tar.gz
$ cd project
$ git init
Git will reply
Initialized empty Git repository in .git/
You've now initialized the working directory--you may notice a new directory created, named ".git".
[http://www.kernel.org/pub/software/scm/git/docs/gittutorial.html]

gitrepo'doing.DELETING

name::
* McsEngl.gitrepo'doing.DELETING@cptIt,
* McsEngl.git'repo-deleting@cptIt,
* McsEngl.gitrepo'deleting@cptIt,
* McsEngl.git'deleting.repo@cptIt,

_DESCRIPTION:
If you want to delete a Git repository, you can simply delete the folder which contains the repository.
[http://www.vogella.com/articles/Git/article.html#git]

gitrepo'doing.MAINTENANCE

name::
* McsEngl.gitrepo'doing.MAINTENANCE@cptIt,
* McsEngl.git'ex.Repository-Maintenance@cptIt,

Check for corruption:
$ git fsck

Recompress, remove unused cruft:
$ git gc

gitrepo'doing.RENAMING

name::
* McsEngl.gitrepo'doing.RENAMING@cptIt,
* McsEngl.git'repo'renaming@cptIt,

_DESCRIPTION:
If you are the only person working on the project, it's not a big problem, because you only have to do#2.

Let's say your username is someuser and your project is called someproject.

Then your project's URL will be1

git@github.com:someuser/someproject.git
If you rename your project, it will change the someproject part of the URL, e.g.

git@github.com:someuser/newprojectname.git
(see footnote if your URL does not look like this).

Your working copy of git uses this URL when you do a push or pull.

So after you rename your project, you will have to tell your working copy the new URL.

You can do that in two steps:

Firstly, cd to your local git directory, and find out what remote name(s) refer to that URL

$ git remote -v
origin git@github.com:someuser/someproject.git
Then, set the new URL

$ git remote set-url origin git@github.com:someuser/newprojectname.git
or in older versions of git, you might need

$ git remote rm origin
$ git remote add origin git@github.com:someuser/newprojectname.git
(origin is the most common remote name, but it might be called something else.)

But if there's lots of people who are working on your project, they will all need to do the above steps, and maybe you don't even know how to contact them all to tell them. That's what#1 is about.

Further reading:

github - working with remotes
Git Reference - remotes
Git Book - Distributed Workflows
Footnotes:

1 The exact format of your URL depends on which protocol you are using, e.g.

SSH = git@github.com:someuser/someproject.git
HTTPS = https://someuser@github.com/someuser/someproject.git
GIT = git://github.com/someuser/someproject.git
[http://stackoverflow.com/a/5751588]

gitrepo'STRUCTURE

name::
* McsEngl.gitrepo'STRUCTURE@cptIt,

Project
|-- .gitignore
|
|-- .git
|
+-- Folder_1
|
+-- Folder_2
| |
| \--- Folder_3
|
\-- Folder_4
|
+--- File_1
+--- File_2
+--- File_3

The Three States

Now, pay attention. This is the main thing to remember about Git if you want the rest of your learning process to go smoothly. Git has three main states that your files can reside in: committed, modified, and staged.
- Committed means that the data is safely stored in your local database.
- Modified means that you have changed the file but have not committed it to your database yet.
- Staged means that you have marked a modified file in its current version to go into your next commit snapshot.

This leads us to the three main sections of a Git project: the Git directory, the working directory, and the staging area.

Figure 1-6. Working directory, staging area, and git directory.

The Git directory is where Git stores the metadata and object database for your project. This is the most important part of Git, and it is what is copied when you clone a repository from another computer.

The working directory is a single checkout of one version of the project. These files are pulled out of the compressed database in the Git directory and placed on disk for you to use or modify.

The staging area is a simple file, generally contained in your Git directory, that stores information about what will go into your next commit. It’s sometimes referred to as the index, but it’s becoming standard to refer to it as the staging area.

The basic Git workflow goes something like this:
- You modify files in your working directory.
- You stage the files, adding snapshots of them to your staging area.
- You do a commit, which takes the files as they are in the staging area and stores that snapshot permanently to your Git directory.

If a particular version of a file is in the git directory, it’s considered committed. If it’s modified but has been added to the staging area, it is staged. And if it was changed since it was checked out but has not been staged, it is modified. In Chapter 2, you’ll learn more about these states and how you can either take advantage of them or skip the staged part entirely.
[http://progit.org/book/ch1-3.html]

gitrepo'HISTORY

name::
* McsEngl.gitrepo'HISTORY@cptIt,
* McsEngl.git'repository-directory@cptIt,
* McsEngl.git'git-dir@cptIt,

An easy way to remember the distinction is that the repository contains the history of your project, while the working directory contains a snapshot of your project at a particular point in history.
[http://cworth.org/hgbook-git/tour/]

gitrepo'WORKING-TREE

name::
* McsEngl.gitrepo'WORKING-TREE@cptIt,
* McsEngl.git'working-files@cptIt,
* McsEngl.git'working-copy-of-files@cptIt,
* McsEngl.git'checkout-of-files@cptIt,

=== _NOTES: You have a bona fide Git repository and a checkout or working copy of the files for that project.
[http://progit.org/book/ch2@cptIt2.html]

An easy way to remember the distinction is that the repository contains the history of your project, while the working directory contains a snapshot of your project at a particular point in history.
[http://cworth.org/hgbook-git/tour/]

The clone command creates a new directory named after the project ("git" or "linux-2.6" in the examples above). After you cd into this directory, you will see that it contains a copy of the project files, called the working tree, together with a special top-level directory named ".git", which contains all the information about the history of the project.

gitrepo'PROJECT

name::
* McsEngl.gitrepo'PROJECT@cptIt,
* McsEngl.git'project@cptIt,
* McsEngl.git'project-concept@cptIt,

=== _NOTES: "The project may have defined additional repositories which can also be checked out."
[https://sourceforge.net/scm/?type=git&group_id=588]

_DEFINITION:
* A set of git-repositories around the net on the same source.
[hknu_2010-10-30]

TERM-CONFUSION:
* Getting a Git Repository
You can get a Git project using two main approaches. The first takes an existing project or directory and imports it into Git. The second clones an existing Git repository from another server.
[http://progit.org/book/ch2-1.html]

gitrepo'gitignore-file

name::
* McsEngl.gitrepo'gitignore-file@cptIt,
* McsEngl.git'gitignore-file@cptIt,
* McsEngl.git'file.gitignore@cptIt,

Not all files inside your project folder are required to be tracked by git. Some example include: object files, swap files etc.

Create a file name ‘.gitignore‘ in the base folder of your git repository and put in the name of files inside ‘.gitignore‘ as explained below, to make git ignore them.

Simple wild-cards are recognized.
‘*‘ and ‘?‘ wild-cards plus regular expression’s square bracket `[ ]‘ notation is recognized.

SUBDIRECTORIES:
You can also place .gitignore files in other directories in your working tree, and they will apply to those directories and their subdirectories. The .gitignore files can be added to your repository like any other files (just run git add .gitignore and git commit, as usual), which is convenient when the exclude patterns (such as patterns matching build output files) would also make sense for other users who clone your repository.
[http://book.git-scm.com/4_ignoring_files.html]

An example .gitignore file.

# git ignore file
# comments start with hash

# ignore all object files, all
# files ending either with '.o' or '.a'
*.[oa]

# Ignore all files with
# the extension *.swp
*.swp

# Ignore a single file
/folderA/folderB/build.info

# Ignore a folder named
# temporary in the base folder.
/temporary/

# Ignore folders named _object
# anywhere inside the project.
_object/

SPECIFIC

* gitrepo.specific, git'repo.specific,

gitrepo.BARE

name::
* McsEngl.gitrepo.BARE@cptIt,
* McsEngl.git'Bare-Repository@cptIt,

_DESCRIPTION:
bare repositories are used on servers to share changes coming from different developers
[http://www.vogella.com/articles/Git/article.html#git]
===
For this, git has the notion of a "bare" repository, which is simply a repository with no working directory. Let's create a new bare repository and push some changes into it:

$ cd ..
$ mkdir hello-bare
$ cd hello-bare
$ git --bare init --shared
The --shared option sets up the necessary group file permissions so that other users in my group will be able to push into this repository as well.
[http://cworth.org/hgbook-git/tour/#h5o-35]

gitrepo.CENTRAL (upstream)

name::
* McsEngl.gitrepo.CENTRAL (upstream)@cptIt,
* McsEngl.git'Central-Repository@cptIt,
* McsEngl.git'Public-Repository@cptIt,
* McsEngl.git'Remote-Repository@cptIt,
* McsEngl.git'repo.original@cptIt,
* McsEngl.git'repo.upstream@cptIt,

_DESCRIPTION:
Unlike centralized version control systems that have a client that is very different from a server, Git repositories are all basically equal and you simply synchronize between them. This makes it easy to have more than one remote repository - you can have some that you have read-only access to and others that you can write to as well.
[http://gitref.org/remotes/]
===
Git with a Central Repository

If you understand how Git transmits information between repositories using push and pull, then setting up a central repository for a project is simple. Developers simply do their own work and push and pull to the central repository.

When creating the central repository, you can use a “bare” repository. This is a repository that has no working files, only repository information. This is useful because a central repository shouldn't have anyone editing on it; it should only receive pushes and pulls.

Setting up a Git central repository that is accessible by remote protocol is tricky. The easiest way to do it is to use an existing system such as Gitosis or GitHub.
[http://www.eecs.harvard.edu/~cduan/technical/git/git-4.shtml]

gitrepo.FORK (copy|origin)

name::
* McsEngl.gitrepo.FORK (copy|origin)@cptIt,
* McsEngl.git'fork-repo@cptIt,
* McsEngl.git'repo.origin@cptIt,

_DESCRIPTION:
ONLINE repo, COPY of an original.

gitrepo.GITHUB#ql:github'repo#

name::
* McsEngl.gitrepo.GITHUB@cptIt,

gitrepo.LOCAL

name::
* McsEngl.gitrepo.LOCAL@cptIt,
* McsEngl.git'local-repo@cptIt,

_DESCRIPTION:
NOT Online repo, COPY of an original, or fork.

gitrepo.PERSONAL

name::
* McsEngl.gitrepo.PERSONAL@cptIt,
* McsEngl.git'Personal-Repository@cptIt,
* McsEngl.git'Private-Repository@cptIt,

git'Versioning

name::
* McsEngl.git'Versioning@cptIt,
* McsEngl.git'recording-changes@cptIt,

git'CHANGING

name::
* McsEngl.git'CHANGING@cptIt,

git'STAGING

name::
* McsEngl.git'STAGING@cptIt,
* McsEngl.git'add-changes-to-index@cptIt,
* McsEngl.git'add-modified-content-to-index@cptIt,

RE-STAGING:
[after staging]
If you need to make any further adjustments, do so now, and then add any newly modified content to the index.
[http://book.git-scm.com/3_normal_workflow.html]

git'ex.Undoing-Staged-file

name::
* McsEngl.git'ex.Undoing-Staged-file@cptIt,
* McsEngl.git'Unstaging-File@cptIt,

Unstaging a Staged File

The next two sections demonstrate how to wrangle your staging area and working directory changes. The nice part is that the command you use to determine the state of those two areas also reminds you how to undo changes to them. For example, let’s say you’ve changed two files and want to commit them as two separate changes, but you accidentally type git add * and stage them both. How can you unstage one of the two? The git status command reminds you:

$ git add .
$ git status
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# modified: README.txt
# modified: benchmarks.rb
#
Right below the “Changes to be committed” text, it says use git reset HEAD <file>... to unstage. So, let’s use that advice to unstage the benchmarks.rb file:

$ git reset HEAD benchmarks.rb
benchmarks.rb: locally modified
$ git status
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# modified: README.txt
#
# Changed but not updated:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified: benchmarks.rb
#
The command is a bit strange, but it works. The benchmarks.rb file is modified but once again unstaged.
[http://progit.org/book/ch2-8.html]

git'COMMITTING

name::
* McsEngl.git'COMMITTING@cptIt,

git'commit_message:
A note on commit messages: Though not required, it's a good idea to begin the commit message with a single short (less than 50 character) line summarizing the change, followed by a blank line and then a more thorough description. Tools that turn commits into email, for example, use the first line on the Subject: line and the rest of the commit message in the body.
[http://book.git-scm.com/3_normal_workflow.html]

git'COMMITTER

name::
* McsEngl.git'COMMITTER@cptIt,

_DEFINITION:
You may be wondering what the difference is between author and committer. The author is the person who originally wrote the work, whereas the committer is the person who last applied the work. So, if you send in a patch to a project and one of the core members applies the patch, both of you get credit — you as the author and the core member as the committer.
[http://progit.org/book/ch2-5.html]

git'Snapshot

name::
* McsEngl.git'Snapshot@cptIt,
* McsEngl.git'point-in-history@cptIt,
* McsEngl.git'state-of-project@cptIt,
* McsEngl.git'project-state@cptIt,
* McsEngl.git'snapshot-of-project-files@cptIt,

git'COMMIT_CONCEPT:
Git is best thought of as a tool for storing the history of a collection of files. It stores the history as a compressed collection of interrelated snapshots of the project's contents. In git each such version is called a commit.

As a noun: A single point in the git history; the entire history of a project is represented as a set of interrelated commits. The word "commit" is often used by git in the same places other revision control systems use the words "revision" or "version". Also used as a short hand for commit object.

As a verb: The action of storing a new snapshot of the project's state in the git history, by creating a new commit representing the current state of the index and advancing HEAD to point at the new commit.

===========
Git is best thought of as a tool for storing the history of a collection of files. It does this by storing compressed snapshots of the contents of a file hierarchy, together with "commits" which show the relationships between these snapshots.

Git provides extremely flexible and fast tools for exploring the history of a project.
[http://www.kernel.org/pub/software/scm/git/docs/user-manual.html#h5o-16]

git'head_ref_concept:
A synonym for head.

Snapshots, Not Differences

The major difference between Git and any other VCS (Subversion and friends included) is the way Git thinks about its data. Conceptually, most other systems store information as a list of file-based changes. These systems (CVS, Subversion, Perforce, Bazaar, and so on) think of the information they keep as a set of files and the changes made to each file over time, as illustrated in Figure 1-4.

Figure 1-4. Other systems tend to store data as changes to a base version of each file.
Git doesn’t think of or store its data this way. Instead, Git thinks of its data more like a set of snapshots of a mini filesystem. Every time you commit, or save the state of your project in Git, it basically takes a picture of what all your files look like at that moment and stores a reference to that snapshot. To be efficient, if files have not changed, Git doesn’t store the file again—just a link to the previous identical file it has already stored. Git thinks about its data more like Figure 1-5.

Figure 1-5. Git stores data as snapshots of the project over time.
This is an important distinction between Git and nearly all other VCSs. It makes Git reconsider almost every aspect of version control that most other systems copied from the previous generation. This makes Git more like a mini filesystem with some incredibly powerful tools built on top of it, rather than simply a VCS.
[http://progit.org/book/ch1-3.html]

name:
We have already seen one means of referring to a particular commit, the 40-character hexadecimal string shown by "git log". These commit identifiers are powerful because they are permanent, unique identifiers that always identify the same commit in any copy of a repository. If two users are examining a working directory associated with the same commit identifier, then those two users have precisely the same contents in all files, and exactly the same history leading to that commit.
[http://cworth.org/hgbook-git/tour/]

git'INDEX (staging-area)

name::
* McsEngl.git'INDEX (staging-area)@cptIt,
* McsEngl.git'Staging-area@cptIt,
* McsEngl.git'index-concept@cptIt,

_DESCRIPTION:
* The staging area is a simple file, generally contained in your Git directory, that stores information about what will go into your next commit. It’s sometimes referred to as the index, but it’s becoming standard to refer to it as the staging area.
[http://progit.org/book/ch1-3.html]

* Next, tell git to take a snapshot of the contents of all files under the current directory (note the .), with git add:
$ git add .
This snapshot is now stored in a temporary staging area which git calls the "index".

* index-concept:
A collection of files with stat information, whose contents are stored as objects. The index is a stored version of your working tree. Truth be told, it can also contain a second, and even a third version of a working tree, which are used when merging.

* git'index_entry_concept:
The information regarding a particular file, stored in the index. An index entry can be unmerged, if a merge was started, but not yet finished (i.e. if the index contains multiple versions of that file).

git'ex.Fixing-Mistake-by-Rewriting-History

name::
* McsEngl.git'ex.Fixing-Mistake-by-Rewriting-History@cptIt,

Fixing a mistake by rewriting history
If the problematic commit is the most recent commit, and you have not yet made that commit public, then you may just destroy it using git reset.

Alternatively, you can edit the working directory and update the index to fix your mistake, just as if you were going to create a new commit, then run

$ git commit --amend
which will replace the old commit by a new commit incorporating your changes, giving you a chance to edit the old commit message first.

Again, you should never do this to a commit that may already have been merged into another branch; use git-revert(1) instead in that case.

It is also possible to replace commits further back in the history, but this is an advanced topic to be left for another chapter.
[GitUserManual]

git'ex.Fixing-Mistake-with-Commit

name::
* McsEngl.git'ex.Fixing-Mistake-with-Commit@cptIt,
* McsEngl.git'Changing-last-commit@cptIt,
* McsEngl.git'Undoing-commit@cptIt,

Fixing a mistake with a new commit
Creating a new commit that reverts an earlier change is very easy; just pass the git-revert(1) command a reference to the bad commit; for example, to revert the most recent commit:

$ git revert HEAD
This will create a new commit which undoes the change in HEAD. You will be given a chance to edit the commit message for the new commit.

You can also revert an earlier change, for example, the next-to-last:

$ git revert HEAD^
In this case git will attempt to undo the old change while leaving intact any changes made since then. If more recent changes overlap with the changes to be reverted, then you will be asked to fix conflicts manually, just as in the case of resolving a merge.
[GitUserManual]

CHANGING-LAST-COMMIT:
As an example, if you commit and then realize you forgot to stage the changes in a file you wanted to add to this commit, you can do something like this:
$ git commit -m 'initial commit'
$ git add forgotten_file
$ git commit --amend
All three of these commands end up with a single commit — the second commit replaces the results of the first.

git'ex.Making-Version

name::
* McsEngl.git'ex.Making-Version@cptIt,
* McsEngl.git'committing@cptIt,
* McsEngl.git'snapshotting@cptIt,
* McsEngl.git'staging@cptIt,

How to make a commit
Creating a new commit takes three steps:
1. Making some changes to the working directory using your favorite editor.
2. Telling git about your changes.
3. Creating the commit using the content you told git about in step 2.
In practice, you can interleave and repeat steps 1 and 2 as many times as you want: in order to keep track of what you want committed at step 3, git maintains a snapshot of the tree's contents in a special staging area called "the index."

At the beginning, the content of the index will be identical to that of the HEAD. The command "git diff —cached", which shows the difference between the HEAD and the index, should therefore produce no output at that point.

Creating good commit messages
Though not required, it's a good idea to begin the commit message with a single short (less than 50 character) line summarizing the change, followed by a blank line and then a more thorough description. Tools that turn commits into email, for example, use the first line on the Subject line and the rest of the commit in the body.

git'ex.Referring-to-a-Commit

name::
* McsEngl.git'ex.Referring-to-a-Commit@cptIt,

Now that you’ve created commits, how do you refer to a specific commit? Git provides many ways to do so. Here are a few:
- By its SHA1 name, which you can get from git log.
- By the first few characters of its SHA1 name.
- By a head. For example, HEAD refers to the commit object referenced by HEAD. You can also use the name, such as master.
- Relative to a commit. Putting a caret (^) after a commit name retrieves the parent of that commit. For example, HEAD^ is the parent of the current head commit.
[http://www.eecs.harvard.edu/~cduan/technical/git/git-1.shtml]

git'ex.Undoing-Changes-in-File

name::
* McsEngl.git'ex.Undoing-Changes-in-File@cptIt,

If you just want to restore just one file, say your hello.rb, use git checkout instead
$ git checkout -- hello.rb
$ git checkout HEAD hello.rb
The first command restores hello.rb to the version in the index, so that "git diff hello.rb" returns no differences. The second command will restore hello.rb to the version in the HEAD revision, so that both "git diff hello.rb" and "git diff --cached hello.rb" return no differences.
[http://book.git-scm.com/4_undoing_in_git_-_reset,_checkout_and_revert.html]

git'ex.Undoing-Changes-in-WorkingFiles

name::
* McsEngl.git'ex.Undoing-Changes-in-WorkingFiles@cptIt,

If you've messed up the working tree, but haven't yet committed your mistake, you can return the entire working tree to the last committed state with

$ git reset --hard HEAD
This will throw away any changes you may have added to the git index and as well as any outstanding changes you have in your working tree. In other words, it causes the results of "git diff" and "git diff --cached" to both be empty.
[http://book.git-scm.com/4_undoing_in_git_-_reset,_checkout_and_revert.html]

git'ex.View-History

name::
* McsEngl.git'ex.View-History@cptIt,

One of the first things we might want to do with a new, unfamiliar repository is understand its history. The “git log” command gives us a view of history.

git'Brancing

name::
* McsEngl.git'Brancing@cptIt,

git'Branch-concept

name::
* McsEngl.git'Branch-concept@cptIt,
* McsEngl.gitBranch-of-Development@cptIt,
* McsEngl.git'Line-of-Development@cptIt,

=== _NOTES: "A single git repository can maintain multiple branches of development."
[]

_DESCRIPTION:
* Branches, remote-tracking branches, and tags are all references to commits.
[http://book.git-scm.com/7_git_references.html]

* Understanding history: What is a branch?
When we need to be precise, we will use the word "branch" to mean a line of development, and "branch head" (or just "head") to mean a reference to the most recent commit on a branch. In the example above, the branch head named "A" is a pointer to one particular commit, but we refer to the line of three commits leading up to that point as all being part of "branch A".
- However, when no confusion will result, we often just use the term "branch" both for branches and for branch heads.
[http://www.kernel.org/pub/software/scm/git/docs/user-manual.html]

* - You can view branches as being diversion from the main linear commit tree.
- All branches stem out from the master branch, the name given to the main trunk.
- Every branch has it’s own commit log.
- You can have different code in same files across difference branches. (This is the main feature of branching). Actually git goes even further and allows you to have not only different content in files across branches but even different sets of files across different branches.
- At one point of time, you can be sitting only on one branch. What this means is that, the source code from the current branch will be the effective one, the one to which you would be making changes.
[http://blog.xkoder.com/2008/08/13/git-tutorial-starting-with-git-using-just-10-commands/]

* branch
A "branch" is an active line of development. The most recent commit on a branch is referred to as the tip of that branch. The tip of the branch is referenced by a branch head, which moves forward as additional development is done on the branch. A single git repository can track an arbitrary number of branches, but your working tree is associated with just one of them (the "current" or "checked out" branch), and HEAD points to that branch.
[http://www.kernel.org/pub/software/scm/git/docs/gitglossary.html]

* Git supports branching, e.g. you can have different versions of your source code, for example if you want to develop a new feature you may open a branch in your source code and make the changes in this branch without affecting the main line of your code. Git keeps track of all versions. If you have done some changes which should be keept in the version control system you mark them as relevant (staging) and then you commit these changes to git.
[http://www.vogella.de/articles/Git/article.html]

* Note: In git a branch is a very simple notion---it's simply a name that points to a particular commit, (literally nothing more than a pointer---look at the contents of .git/refs/heads/master if you're curious). The fact that a branch is so light is what makes the creation of new branches an instantaneous operation in git. Together with the ease of merging, git makes branches a joy to work with.
[http://cworth.org/hgbook-git/tour/#h5o-19]

git'head_concept:
* the name of a branch
[hknu]
==========
* A named reference to the commit at the tip of a branch. Heads are stored in $GIT_DIR/refs/heads/, except when using packed refs. (See git-pack-refs(1).)
==========
* A head is simply a reference to a commit object. Each head has a name. By default, there is a head in every repository called master. A repository can contain any number of heads. At any given time, one head is selected as the “current head.” This head is aliased to HEAD, always in capitals.

Note this difference: a “head” (lowercase) refers to any one of the named heads in the repository; “HEAD” (uppercase) refers exclusively to the currently active head. This distinction is used frequently in Git documentation. I also use the convention that names of heads, including HEAD, are set in italics.
[http://www.eecs.harvard.edu/~cduan/technical/git/git-1.shtml]

git'branch'TIP

name::
* McsEngl.git'branch'TIP@cptIt,
* McsEngl.git'Tip-of-Branch@cptIt,

_DEFINITION:
* branch
A "branch" is an active line of development. The most recent commit on a branch is referred to as the tip of that branch. The tip of the branch is referenced by a branch head, which moves forward as additional development is done on the branch. A single git repository can track an arbitrary number of branches, but your working tree is associated with just one of them (the "current" or "checked out" branch), and HEAD points to that branch.
[http://www.kernel.org/pub/software/scm/git/docs/gitglossary.html]

git'branch.Main

name::
* McsEngl.git'branch.Main@cptIt,
* McsEngl.git'Main-branch@cptIt,
* McsEngl.git'master@cptIt,
* McsEngl.git'trunk-branch@cptIt,

_DESCRIPTION:
A common way to use Git branching is to maintain one “main” or “trunk” branch and create new branches to implement new features. Often the default Git branch, master, is used as the main branch.
Ideally, in this pattern, the master branch is always in a releaseable state. Other branches will contain half-finished work, new features, and so on.
[http://www.eecs.harvard.edu/~cduan/technical/git/git-2.shtml]

git'branch.CURRENT

name::
* McsEngl.git'branch.CURRENT@cptIt,
* McsEngl.git'current-branch@cptIt,
* McsEngl.git'checked-out-branch@cptIt,

_DEFINITION:
* branch
A "branch" is an active line of development. The most recent commit on a branch is referred to as the tip of that branch. The tip of the branch is referenced by a branch head, which moves forward as additional development is done on the branch. A single git repository can track an arbitrary number of branches, but your working tree is associated with just one of them (the "current" or "checked out" branch), and HEAD points to that branch.
[http://www.kernel.org/pub/software/scm/git/docs/gitglossary.html]

git'ex.CREATING-BRANCH

name::
* McsEngl.git'ex.CREATING-BRANCH@cptIt,

git'ex.DELETING-BRANCH

name::
* McsEngl.git'ex.DELETING-BRANCH@cptIt,

git'ex.Examining-Branches-From-Cloned-From

name::
* McsEngl.git'ex.Examining-Branches-From-Cloned-From@cptIt,

Examining branches from a remote repository
The "master" branch that was created at the time you cloned is a copy of the HEAD in the repository that you cloned from. That repository may also have had other branches, though, and your local repository keeps branches which track each of those remote branches, which you can view using the "-r" option to git-branch(1):

$ git branch -r
origin/HEAD
origin/html
origin/maint
origin/man
origin/master
origin/next
origin/pu
origin/todo
You cannot check out these remote-tracking branches, but you can examine them on a branch of your own, just as you would a tag:

$ git checkout -b my-todo-copy origin/todo
Note that the name "origin" is just the name that git uses by default to refer to the repository that you cloned from.
[http://www.kernel.org/pub/software/scm/git/docs/user-manual.html]

git'Merging

name::
* McsEngl.git'Merging@cptIt,

git'merge_concept:
As a verb: To bring the contents of another branch (possibly from an external repository) into the current branch. In the case where the merged-in branch is from a different repository, this is done by first fetching the remote branch and then merging the result into the current branch. This combination of fetch and merge operations is called a pull. Merging is performed by an automatic process that identifies changes made since the branches diverged, and then applies all those changes together. In cases where changes conflict, manual intervention may be required to complete the merge.

As a noun: unless it is a fast-forward, a successful merge results in the creation of a new commit representing the result of the merge, and having as parents the tips of the merged branches. This commit is referred to as a "merge commit", or sometimes just a "merge".

git.merge.Fast-Forward

name::
* McsEngl.git.merge.Fast-Forward@cptIt,

There is one special case not mentioned above, which is treated differently. Normally, a merge results in a merge commit, with two parents, one pointing at each of the two lines of development that were merged.

However, if the current branch is a descendant of the other—so every commit present in the one is already contained in the other—then git just performs a "fast-forward"; the head of the current branch is moved forward to point at the head of the merged-in branch, without any new commits being created.
[UserManual]

git'ex.Merging-Conflict

name::
* McsEngl.git'ex.Merging-Conflict@cptIt,
* McsEngl.git'Conflict@cptIt,

If there are conflicts, markers will be left in the problematic files showing the conflict;
$ git diff
will show this.
Once you've edited the files to resolve the conflicts,
$ git commit -a
will commit the result of the merge.
==========
All you need to do is edit the files to resolve the conflicts, and then
$ git add file.txt
$ git commit
[http://book.git-scm.com/3_basic_branching_and_merging.html]

Resolving Conflicts

A conflict arises if the commit to be merged in has a change in one place, and the current commit has a change in the same place. Git has no way of telling which change should take precedence.

To resolve the commit, edit the files to fix the conflicting changes. Then run git add to add the resolved files, and run git commit to commit the repaired merge. Git remembers that you were in the middle of a merge, so it sets the parents of the commit correctly.

All you need to do is edit the files to resolve the conflicts, and then
$ git add file.txt
$ git commit
[http://www.kernel.org/pub/software/scm/git/docs/user-manual.html#how-to-merge]

git'ex.Undoing-a-Merge

name::
* McsEngl.git'ex.Undoing-a-Merge@cptIt,

If you get stuck and decide to just give up and throw the whole mess away, you can always return to the pre-merge state with

$ git reset --hard HEAD
Or, if you’ve already committed the merge that you want to throw away,

$ git reset --hard ORIG_HEAD
However, this last command can be dangerous in some cases—never throw away a commit you have already committed if that commit may itself have been merged into another branch, as doing so may confuse further merges.
[GitUserManual.html]

git'Informing

name::
* McsEngl.git'Informing@cptIt,
* McsEngl.git'@cptIt,

Commands#ql:git'com.group_informing#

git'Navigating

name::
* McsEngl.git'Navigating@cptIt,
* McsEngl.git'exploring-history-branches@cptIt,

git'ex.Counting-Number-of-Commits-on-Branch

name::
* McsEngl.git'ex.Counting-Number-of-Commits-on-Branch@cptIt,

Suppose you want to know how many commits you’ve made on "mybranch" since it diverged from "origin":

$ git log --pretty=oneline origin..mybranch | wc -l
Alternatively, you may often see this sort of thing done with the lower-level command git-rev-list(1), which just lists the SHA-1’s of all the given commits:

$ git rev-list origin..mybranch | wc -l
[http://www.kernel.org/pub/software/scm/git/docs/user-manual.html#h5o-24]

git'ex.Finding-commits-referencing-file-with-given-content

name::
* McsEngl.git'ex.Finding-commits-referencing-file-with-given-content@cptIt,

Somebody hands you a copy of a file, and asks which commits modified a file such that it contained the given content either before or after the commit. You can find out with this:

$ git log --raw --abbrev=40 --pretty=oneline |
grep -B 1 `git hash-object filename`
Figuring out why this works is left as an exercise to the (advanced) student. The git-log(1), git-diff-tree(1), and git-hash-object(1) man pages may prove helpful.
[http://www.kernel.org/pub/software/scm/git/docs/user-manual.html#h5o-29]

git'ex.List-All-heads-of-Repo

name::
* McsEngl.git'ex.List-All-heads-of-Repo@cptIt,

We can list all the heads in this repository with git-show-ref(1):

$ git show-ref --heads
bf62196b5e363d73353a9dcf094c59595f3153b7 refs/heads/core-tutorial
db768d5504c1bb46f63ee9d6e1772bd047e05bf9 refs/heads/maint
a07157ac624b2524a059a3414e99f6f44bebc1e7 refs/heads/master
24dbc180ea14dc1aebe09f14c8ecf32010690627 refs/heads/tutorial-2
1e87486ae06626c2f31eaa63d26fc0fd646c8af2 refs/heads/tutorial-fixes
[http://www.kernel.org/pub/software/scm/git/docs/user-manual.html#h5o-27]

git'ex.Viewing-Old-File-Versions

name::
* McsEngl.git'ex.Viewing-Old-File-Versions@cptIt,

Viewing old file versions
You can always view an old version of a file by just checking out the correct revision first. But sometimes it is more convenient to be able to view an old version of a single file without checking anything out; this command does that:

$ git show v2.5:fs/locks.c
Before the colon may be anything that names a commit, and after it may be any path to a file tracked by git.
[http://www.kernel.org/pub/software/scm/git/docs/user-manual.html#h5o-22]

git'Collaborating

name::
* McsEngl.git'Collaborating@cptIt,
* McsEngl.git'sharing@cptIt,

SENARIO:
Generally
- you will do a number of commits locally,
- then fetch data from the online shared repository you cloned the project from to get up to date,
- merge any new work into the stuff you did,
- then push your changes back up.
[http://gitref.org/remotes/]

rlCOMMAND#ql:git'collaborating_command#

_GitHub_Senario_ghPages:
* do work locally on gh_pages branch.
* $ git commit -a -m "google-analytics2"
* $ git push#ql:git'cmd.push# github gh-pages

git'server

name::
* McsEngl.git'server@cptIt,

Therefore, the preferred method for collaborating with someone is to set up an intermediate repository that you both have access to, and push to and pull from that. We’ll refer to this repository as a “Git server”; but you’ll notice that it generally takes a tiny amount of resources to host a Git repository, so you’ll rarely need to use an entire server for it.
...
A remote repository is generally a bare repository — a Git repository that has no working directory. Because the repository is only used as a collaboration point, there is no reason to have a snapshot checked out on disk; it’s just the Git data. In the simplest terms, a bare repository is the contents of your project’s .git directory and nothing else.
[http://progit.org/book/ch4-0.html]

git'ex.Coping-Repository

name::
* McsEngl.git'ex.Coping-Repository@cptIt,
* McsEngl.git'ex.Cloning-Repo@cptIt,

* clone-command.

git'ex.Importing-Patches-to-project

name::
* McsEngl.git'ex.Importing-Patches-to-project@cptIt,

Git also provides a tool called git-am(1) (am stands for "apply mailbox"), for importing such an emailed series of patches. Just save all of the patch-containing messages, in order, into a single mailbox file, say "patches.mbox", then run

$ git am -3 patches.mbox
Git will apply each patch in order; if any conflicts are found, it will stop, and you can fix the conflicts as described in "Resolving a merge". (The "-3" option tells git to perform a merge; if you would prefer it just to abort and leave your tree and index untouched, you may omit that option.)

Once the index is updated with the results of the conflict resolution, instead of creating a new commit, just run

$ git am --resolved
and git will create the commit for you and continue applying the remaining patches from the mailbox.

The final result will be a series of commits, one for each patch in the original mailbox, with authorship and commit log message each taken from the message containing each patch.
[GitUserManual]

git'ex.Submitting-Patches-to-Project

name::
* McsEngl.git'ex.Submitting-Patches-to-Project@cptIt,

If you just have a few changes, the simplest way to submit them may just be to send them as patches in email:

First, use git-format-patch(1); for example:

$ git format-patch origin
will produce a numbered series of files in the current directory, one for each patch in the current branch but not in origin/HEAD.

You can then import these into your mail client and send them by hand. However, if you have a lot to send at once, you may prefer to use the git-send-email(1) script to automate the process. Consult the mailing list for your project first to determine how they prefer such patches be handled.
[GitUserManula]

git'ex.UpdatingIn-From-CloneOrigin (clone <=== Origine)

name::
* McsEngl.git'ex.UpdatingIn-From-CloneOrigin (clone <=== Origine)@cptIt,

Alice=Origin, Bob=Clone.

$ git pull
Later, Bob can update his repo with Alice's latest changes using
$ git pull
Note that he doesn't need to give the path to Alice's repository; when Bob cloned Alice's repository, git stored the location of her repository in the repository configuration, and that location is used for pulls:
$ git config --get remote.origin.url
/home/alice/project
[http://book.git-scm.com/3_distributed_workflows.html]
==========
The simplest, (and quite common), scenario is that you inherently trust any changes in the original repository and you want to pull these directly into your clone. This might be the case if you are using git simply to track the progress of a project without making any changes.
In this case, the operation is as simple as just calling "git pull":
[http://cworth.org/hgbook-git/tour/#h5o-19]

Updating a repository with git fetch
Eventually the developer cloned from will do additional work in her repository, creating new commits and advancing the branches to point at the new commits.

The command "git fetch", with no arguments, will update all of the remote-tracking branches to the latest version found in her repository. It will not touch any of your own branches—not even the "master" branch that was created for you on clone.
[http://www.kernel.org/pub/software/scm/git/docs/user-manual.html#h5o-14]

If there are other repositories that you also use frequently, you can create similar configuration options to save typing; for example, after
$ git config remote.example.url git://example.com/proj.git

then the following two commands will do the same thing:
$ git fetch git://example.com/proj.git master:refs/remotes/example/master
$ git fetch example master:refs/remotes/example/master
[GitUserManual]

git'ex.UpdatingIn-from-Clone (origine <=== clone)

name::
* McsEngl.git'ex.UpdatingIn-from-Clone (origine <=== clone)@cptIt,

Bob cloned Alice "project" repo:
When he's ready, he tells Alice to pull changes from the repository at /home/bob/myrepo. She does this with:
$ cd /home/alice/project
$ git pull /home/bob/myrepo master
This merges the changes from Bob's "master" branch into Alice's current branch. If Alice has made her own changes in the meantime, then she may need to manually fix any conflicts. (Note that the "master" argument in the above command is actually unnecessary, as it is the default.)
The "pull" command thus performs two operations: it fetches changes from a remote branch, then merges them into the current branch.
[http://book.git-scm.com/3_distributed_workflows.html]

git'ex.UpdatingIn-From-Other

name::
* McsEngl.git'ex.UpdatingIn-From-Other@cptIt,
* McsEngl.git'ex.Fetching-branches-from-other-repositories@cptIt,

Fetching branches from other repositories
You can also track branches from repositories other than the one you cloned from, using git-remote(1):

$ git remote add linux-nfs git://linux-nfs.org/pub/nfs-2.6.git
$ git fetch linux-nfs
* refs/remotes/linux-nfs/master: storing branch 'master' ...
commit: bf81b46
New remote-tracking branches will be stored under the shorthand name that you gave "git remote add", in this case linux-nfs:

$ git branch -r
linux-nfs/master
origin/master
If you run "git fetch <remote>" later, the tracking branches for the named <remote> will be updated.

If you examine the file .git/config, you will see that git has added a new stanza:

$ cat .git/config
...
[remote "linux-nfs"]
url = git://linux-nfs.org/pub/nfs-2.6.git
fetch = +refs/heads/*:refs/remotes/linux-nfs/*
...
This is what causes git to track the remote’s branches; you may modify or delete these configuration options by editing .git/config with a text editor. (See the "CONFIGURATION FILE" section of git-config(1) for details.)
[http://www.kernel.org/pub/software/scm/git/docs/user-manual.html#h5o-15]

$ git pull git://example.com/project.git theirbranch
Fetch a branch in a different git repository, then merge into the current branch:

$ git pull git://example.com/project.git theirbranch:mybranch
Store the fetched branch into a local branch before merging into the current branch:

git'ex.UpdatingOut

name::
* McsEngl.git'ex.UpdatingOut@cptIt,

push-command

Shortcut version for a frequently used remote repository:
$ git remote add example ssh://example.com/project.git
$ git push example test

$ git push ssh://example.com/project.git mybranch:theirbranch
After creating commits on a local branch, update the remote branch with your commits:
==========
When remote and local branch are both named "test":
$ git push ssh://example.com/project.git test

git'Object

name::
* McsEngl.git'Object@cptIt,

git'object_concept:
The unit of storage in git. It is uniquely identified by the SHA1 of its contents. Consequently, an object can not be changed.

git'object_database_concept:
Stores a set of "objects", and an individual object is identified by its object name. The objects usually live in $GIT_DIR/objects/.

git'obj'ATTRIBUTE

name::
* McsEngl.git'obj'ATTRIBUTE@cptIt,

SPECIFIC:
Every object consists of three things - a type, a size and content.
[http://book.git-scm.com/1_the_git_object_model.html]

git'obj'NAME

name::
* McsEngl.git'obj'NAME@cptIt,

git'object_identifier_concept:
Synonym for object name.

git'object_name_concept:
The unique identifier of an object. The hash of the object's contents using the Secure Hash Algorithm 1 and usually represented by the 40 character hexadecimal encoding of the hash of the object.

git'obj'CONTENT

name::
* McsEngl.git'obj'CONTENT@cptIt,

_DESCRIPTION:
the contents depend on what type of object it is,
[http://book.git-scm.com/1_the_git_object_model.html]

git'obj'SIZE

name::
* McsEngl.git'obj'SIZE@cptIt,

_DESCRIPTION:
The size is simply the size of the contents,
[http://book.git-scm.com/1_the_git_object_model.html]

git'obj'TYPE

name::
* McsEngl.git'obj'TYPE@cptIt,

git'object_type_concept:
One of the identifiers "commit", "tree", "tag" or "blob" describing the type of an object.

SPECIFIC:
there are four different types of objects: "blob", "tree", "commit", and "tag".

A "blob" is used to store file data - it is generally a file.
A "tree" is basically like a directory - it references a bunch of other trees and/or blobs (i.e. files and sub-directories)
A "commit" points to a single tree, marking it as what the project looked like at a certain point in time. It contains meta-information about that point in time, such as a timestamp, the author of the changes since the last commit, a pointer to the previous commit(s), etc.
A "tag" is a way to mark a specific commit as special in some way. It is normally used to tag certain commits as specific releases or something along those lines.

Almost all of Git is built around manipulating this simple structure of four different object types. It is sort of its own little filesystem that sits on top of your machine's filesystem.
[http://book.git-scm.com/1_the_git_object_model.html]

git'obj.BLOB

name::
* McsEngl.git'obj.BLOB@cptIt,

git'blob_object_concept:
* Untyped object, e.g. the contents of a file.
* A "blob" is just file data,

* A "blob" object is nothing but a chunk of binary data. It doesn't refer to anything else or have attributes of any kind, not even a file name.
Since the blob is entirely defined by its data, if two files in a directory tree (or in multiple different versions of the repository) have the same contents, they will share the same blob object. The object is totally independent of its location in the directory tree, and renaming a file does not change the object that file is associated with.
[http://book.git-scm.com/1_the_git_object_model.html]

git'obj.TREE

name::
* McsEngl.git'obj.TREE@cptIt,
* McsEngl.git'tree-object-concept@cptIt,

TREE-OBJECT:
An object containing a list of file names and modes along with refs to the associated blob and/or tree objects. A tree is equivalent to a directory.

CONTENT:
Note: in the presence of submodules, trees may also have commits as entries.
[http://book.git-scm.com/1_the_git_object_model.html]

git'obj.COMMIT

name::
* McsEngl.git'obj.COMMIT@cptIt,
* McsEngl.git'commit-object-concept@cptIt,

COMMIT-OBJECT:
* An object which contains the information about a particular revision, such as parents, committer, author, date and the tree object which corresponds to the top directory of the stored revision.

* A commit object contains three things:
- A set of files, reflecting the state of a project at a given point in time.
- References to parent commit objects.
- An SHA1 name, a 40-character string that uniquely identifies the commit object. The name is composed of a hash of relevant aspects of the commit, so identical commits will always have the same name.
The parent commit objects are those commits that were edited to produce the subsequent state of the project. Generally a commit object will have one parent commit, because one generally takes a project in a given state, makes a few changes, and saves the new state of the project. The section below on merges explains how a commit object could have two or more parents.

A project always has one commit object with no parents. This is the first commit made to the project repository.

Based on the above, you can visualize a repository as a directed acyclic graph of commit objects, with pointers to parent commits always pointing backwards in time, ultimately to the first commit. Starting from any commit, you can walk along the tree by parent commits to see the history of changes that led to that commit.

The idea behind Git is that version control is all about manipulating this graph of commits. Whenever you want to perform some operation to query or manipulate the repository, you should be thinking, “how do I want to query or manipulate the graph of commits?”
[http://www.eecs.harvard.edu/~cduan/technical/git/git-1.shtml]

CONTENT:
Note that a commit does not itself contain any information about what actually changed; all changes are calculated by comparing the contents of the tree referred to by this commit with the trees associated with its parents.
[http://book.git-scm.com/1_the_git_object_model.html]

CREATION:
A commit is usually created by git commit, which creates a commit whose parent is normally the current HEAD, and whose tree is taken from the content currently stored in the index.
[http://book.git-scm.com/1_the_git_object_model.html]

git'obj.TAG

name::
* McsEngl.git'obj.TAG@cptIt,

A tag object contains an object name (called simply 'object'), object type, tag name, the name of the person ("tagger") who created the tag, and a message, which may contain a signature, as can be seen using git cat-file:

$ git cat-file tag v1.5.0
object 437b1b20df4b356c9342dac8d38849f24ef44f27
type commit
tag v1.5.0
tagger Junio C Hamano <junkio@cox.net> 1171411200 +0000

GIT 1.5.0
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)

iD8DBQBF0lGqwMbZpPMRm5oRAuRiAJ9ohBLd7s2kqjkKlq1qqC57SbnmzQCdG4ui
nLE/L9aUXdWeTFPron96DLA=
=2E+0
-----END PGP SIGNATURE-----
[http://book.git-scm.com/1_the_git_object_model.html]

git'tag_object_concept:
An object containing a ref pointing to another object, which can contain a message just like a commit object. It can also contain a (PGP) signature, in which case it is called a "signed tag object".

git'Resource

name::
* McsEngl.git'Resource@cptIt,

_ADDRESS.WPG:
* https://git-scm.com//
* web-resource,-http.git#ql::DEZIGNEPTERO.NFO:http.git#,
* http://sitaramc.github.com/gcs/index.html,
* http://www.aosabook.org/en/git.html,
===
* file:///C:/Program%20Files/Git/doc/git/html/git.html,
* https://sandofsky.com/blog/git-workflow.html,
* http://www.icir.org/robin/git-notifier//

git'book

name::
* McsEngl.git'book@cptIt,

_BOOK:
* Pro Git: http://git-scm.com/book,

git'Source-code

name::
* McsEngl.git'Source-code@cptIt,

git'COMPUTER-LANGUAGE

name::
* McsEngl.git'COMPUTER-LANGUAGE@cptIt,

Written in  C, Bourne Shell, Perl[3]
[wikipedia]

git'Operating-System

name::
* McsEngl.git'Operating-System@cptIt,

POSIX

git'Tool

name::
* McsEngl.git'Tool@cptIt,

git'git-gui

name::
* McsEngl.git'git-gui@cptIt,

For staging changes and committing you can use git gui:

git'gitk

name::
* McsEngl.git'gitk@cptIt,

_DESCRIPTION:
* git comes with the history browser gitk,
* will show a nice graphical representation of the resulting history.

$ gitk --since="2 weeks ago" drivers/
allows you to browse any commits from the last 2 weeks of commits that modified files under the "drivers" directory. (Note: you can adjust gitk's fonts by holding down the control key while pressing "-" or "+".)

git'GitHub-website

name::
* McsEngl.git'GitHub-website@cptIt,
* McsEngl.GitHub-website@cptIt,
* McsEngl.GitHub@cptIt569i,

_ADDRESS.WPG:
* https://help.github.com//

_DESCRIPTION:
At the heart of GitHub is an open source version control system (VCS) called Git*. Created by the same team that created Linux, Git is responsible for everything GitHub related that happens locally on your computer.
[https://help.github.com/articles/set-up-git]

github'account

name::
* McsEngl.github'account@cptIt,

_ADDRESS.WPG:
* https://help.github.com/articles/deleting-your-user-account,

github'authenticating

name::
* McsEngl.github'authenticating@cptIt,

_ADDRESS.WPG:
* https://help.github.com/articles/set-up-git#next-steps-authenticating-to-github-from-git,
* ssh: https://help.github.com/categories/56/articles,

github'Generating-SSH-keys (Win/msysgit)

name::
* McsEngl.github'Generating-SSH-keys (Win/msysgit)@cptIt,

_ADDRESS.WPG:
* http://help.github.com/msysgit-key-setup//

github'branch

name::
* McsEngl.github'branch@cptIt,

_ADDRESS.WPG:
* https://help.github.com/desktop/guides/contributing/creating-a-branch-for-your-work//

_DESCRIPTION:
Create a branch
When you're working on a project, you're going to have a bunch of different features or ideas in progress at any given time – some of which are ready to go, and others which are not. Branching exists to help you manage this workflow.

When you create a branch in your project, you're creating an environment where you can try out new ideas. Changes you make on a branch don't affect the master branch, so you're free to experiment and commit changes, safe in the knowledge that your branch won't be merged until it's ready to be reviewed by someone you're collaborating with.

ProTip
Branching is a core concept in Git, and the entire GitHub Flow is based upon it. There's only one rule: anything in the master branch is always deployable.

Because of this, it's extremely important that your new branch is created off of master when working on a feature or a fix. Your branch name should be descriptive (e.g., refactor-authentication, user-content-cache-key, make-retina-avatars), so that others can see what is being worked on.
[https://guides.github.com/introduction/flow/]

_Github'branching:
* CREATING:
On the upper left press the-branch-icon.
It contains the files of the master.
===
* CHANGING:
From history-view, choose a branch. Then the-repo on filemanager shows the-files of this branch.

github'Collaborative-Development-Models

name::
* McsEngl.github'Collaborative-Development-Models@cptIt,

There are two popular models of collaborative development on GitHub:

The Fork + Pull Model lets anyone fork an existing repository and push changes to their personal fork without requiring access be granted to the source repository. The changes must then be pulled into the source repository by the project maintainer. This model reduces the amount of friction for new contributors and is popular with open source projects because it allows people to work independently without upfront coordination.

The Shared Repository Model is more prevalent with small teams and organizations collaborating on private projects. Everyone is granted push access to a single shared repository and topic branches are used to isolate changes.
[http://help.github.com/pull-requests/]

github'commit

name::
* McsEngl.github'commit@cptIt,

_DESCRIPTION:
After you clone a repository, you can create and review changes to the files in your project by creating *commits*.
Similar to "saving" a file, a commit is a change to one or more files in your branch, connected with a unique ID (the "SHA" or "hash") that tracks:
- The specific changes
- When the changes were made
- Who created the changes
When you make a commit, you include a commit message that briefly describes the changes.
[https://help.github.com/desktop/guides/contributing/about-commits/]
===
Add commits
Once your branch has been created, it's time to start making changes. Whenever you add, edit, or delete a file, you're making a commit, and adding them to your branch. This process of adding commits keeps track of your progress as you work on a feature branch.

Commits also create a transparent history of your work that others can follow to understand what you've done and why. Each commit has an associated commit message, which is a description explaining why a particular change was made. Furthermore, each commit is considered a separate unit of change. This lets you roll back changes if a bug is found, or if you decide to head in a different direction.

ProTip
Commit messages are important, especially since Git tracks your changes and then displays them as commits once they're pushed to the server. By writing clear commit messages, you can make it easier for other people to follow along and provide feedback.
[https://guides.github.com/introduction/flow/]

github'commit'reverting

name::
* McsEngl.github'commit'reverting@cptIt,

_DESCRIPTION:
Reverting a commit
If you change your mind about a commit after you create it, you can revert the commit.
When you revert to a previous commit, the revert is also a commit. In addition, the original commit remains in the repository's history. You can always revert a revert if necessary, we do it all the time!

Tip: When you revert multiple commits, it's best to revert in order from newest to oldest. If you revert commits in any other order, you may see merge conflicts.
On the comparison graph, click a commit.

A commit selected on the comparison graph

In the commit history list, click the commit you'd like to review.

A commit selected in the commit history list

The Revert option above the diff viewAbove the diff view, click Revert.
[https://help.github.com/desktop/guides/contributing/reverting-a-commit/]

github'deploy

name::
* McsEngl.github'deploy@cptIt,

_DESCRIPTION:
Deploy

Once your pull request has been reviewed and the branch passes your tests, you can deploy your changes to verify them in production. If your branch causes issues, you can roll it back by deploying the existing master into production.
[https://guides.github.com/introduction/flow/]

github'github-desktop (ghd)

name::
* McsEngl.github'github-desktop (ghd)@cptIt,
* McsEngl.GitHub-Desktop-app@cptIt,
* McsEngl.github'desktop-app@cptIt,
* McsEngl.ghd@cptIt,

* McsEngl.GitHub-Desktop@cptIt,
* McsEngl.github-for-windows@cptIt,
* McsEngl.ghd@cptIt,

_ADDRESS.WPG:
* https://desktop.github.com//
* http://windows.github.com//
* https://help.github.com/categories/58/articles,

_DESCRIPTION:
GitHub Desktop is a seamless way to contribute to projects on GitHub and GitHub Enterprise.
Available for Mac and Windows
[https://desktop.github.com/]
===
Accessing the GitHub for Windows log
When reporting a bug in GitHub for Windows, it's super helpful to include GitHub for Windows's log file. There are three ways to get it:
Reproduce the bug
Quit the app
Hold the Windows key and press R
On Windows Vista or later, type %LOCALAPPDATA%\GitHub
On Windows XP, instead type %USERPROFILE%\Local Settings\Application Data\GitHub. Note that this path may be localized if you're using a non-English version of Windows.
Press Enter
Copy TheLog.txt from the window that appears
[https://help.github.com/articles/accessing-the-github-for-windows-log]

ghd'brancing#ql:_github'branching#

name::
* McsEngl.ghd'brancing@cptIt,

ghd'commiting

name::
* McsEngl.ghd'commiting@cptIt,

ghd'log-file

name::
* McsEngl.ghd'log-file@cptIt,

_Location:
\Users\synagonism\Desktop\GitHubLog.txt,

ghd'publicing

name::
* McsEngl.ghd'publicing@cptIt,

ghd'synchronizing

name::
* McsEngl.ghd'synchronizing@cptIt,

_DESCRIPTION:
Synchronize a-local-repo with a-gh-repo.
On top-right press 'Sync'.

github'folow-fried

name::
* McsEngl.github'folow-fried@cptIt,

_DESCRIPTION:
Follow A Friend

One of the great features on GitHub is the ability to see what other people are working on and who they are connecting with. When you follow someone, you'll get notifications on your dashboard about their GitHub activity.
Step 1: Pick a friend.

Why not follow one of these cool people from GitHub (including their pet tanuki!):
jlord_icon

jlord
charliesome_icon

charliesome
benbalter_icon

benbalter
tekkub_icon

tekkub
muan_icon

muan
mdo_icon

mdo
Step 2: Follow that friend (in a non-creepy way)

Once you are on one of their pages, click the "follow" button.

Follow user button

Congratulations! You are now following a friend.
[https://help.github.com/articles/be-social]

github'issues

name::
* McsEngl.github'issues@cptIt,

_DESCRIPTION:
When you are collaborating on a project with someone, you sometimes come across problems that need to be fixed. To help you keep track of these problems, each GitHub repository has a section called Issues.
[https://help.github.com/articles/be-social#issues]

github'MarkDown-file

name::
* McsEngl.github'MarkDown-file@cptIt,

_MARKDOWN:#ql:markdown@cptIt501.16#

_FORMATING_HEADING:
A First Level Header
=============== => <h1>A First Level Header</h1>

A Second Level Header
---------------------------- => <h2>A Second Level Header</h2>

### Header 3 => <h3>Header 3</h3>

_FORMATING_PARAGRAPH:
Now is the time for all good men to come to
the aid of their country. This is just a
regular paragraph.
=> <p>Now is ... paragraph.</p>

_FORMATING_LINK:
This is an [example link](http://example.com/).
=>
<p>This is an <a href="http://example.com/">example link</a>.</p>

This is an [example link](http://example.com/ "With a Title").
=>
<p>This is an <a href="http://example.com/" title="With a Title">
example link</a>.</p>

github'merge

name::
* McsEngl.github'merge@cptIt,

_DESCRIPTION:
Merge

Now that your changes have been verified in production, it is time to merge your code into the master branch.

Once merged, Pull Requests preserve a record of the historical changes to your code. Because they're searchable, they let anyone go back in time to understand why and how a decision was made.

ProTip

By incorporating certain keywords into the text of your Pull Request, you can associate issues with code. When your Pull Request is merged, the related issues are also closed. For example, entering the phrase Closes#32 would close issue number 32 in the repository.[https://guides.github.com/introduction/flow/]

github'notification

name::
* McsEngl.github'notification@cptIt,

_ADDRESS.WPG:
* https://help.github.com/categories/76/articles,

_DESCRIPTION:

github'organizations

name::
* McsEngl.github'organizations@cptIt,

_DESCRIPTION:
Have you found yourself wishing you could collaborate with multiple developers on one project? You can manage everyone with Organizations! With an organization you can establish teams with special permissions, have a public organization profile, and keep track of activity within the organization.
[https://help.github.com/articles/be-social#organizations]

github'Page-of-Project

name::
* McsEngl.github'Page-of-Project@cptIt,

_ADDRESS:
* http://synagonism.github.io/hitp/hitp.html,
* http://nikkas.github.com/TableOfContents//

BRANCH:
If you create a new root branch named gh-pages in your repository, any content pushed there will be published to http://bob.github.com/fancypants/.

In order to create a new root branch, first ensure that your working directory is clean by committing or stashing any changes. The following operation will lose any uncommitted changes!
$ cd /path/to/repo
$ git symbolic-ref HEAD refs/heads/gh-pages
$ rm .git/index
$ git clean -fdx
After running this you’ll have an empty working directory (don’t worry, your main repo is still on the master branch).
[http://pages.github.com/]

CREATING_CONTENT:
Now you can create some content in this branch and push it to GitHub. For example:
$ echo "My GitHub Page" > index.html
$ git add .
$ git commit -a -m "First pages commit"
$ git push origin gh-pages
On the first push, it can take up to ten minutes before the content is available.
[http://pages.github.com/]

CHECKING_GENERATED_PAGE:
After your page is generated, you can check out the new branch:
$ cd Repos/ampere
$ git fetch origin
remote: Counting objects: 92, done.
remote: Compressing objects: 100% (63/63), done.
remote: Total 68 (delta 41), reused 0 (delta 0)
Unpacking objects: 100% (68/68), done.
From git@github.com:tekkub/ampere
* [new branch] gh-pages -> origin/gh-pages
$ git checkout -b gh-pages origin/gh-pages
Branch gh-pages set up to track remote branch refs/remotes/origin/gh-pages.
Switched to a new branch "gh-pages"

GOOGLE_ANALYTICS.GITHUB:
Here are the instructions for implementing Google Analytics on our website.

For more information, see http://code.google.com/apis/analytics/docs/tracking/asyncTracking.html

Copy the following code, then paste it onto every page you want to track immediately before the closing </head> tag.

<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-19285371-3']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>

Thank you for your assistance!

github'pull-request

name::
* McsEngl.github'pull-request@cptIt,

_ADDRESS.WPG:
* https://help.github.com/articles/using-pull-requests,

_DESCRIPTION:
You may find yourself wanting to contribute to someone else's project, whether to add features or to fix bugs. After making changes, you can let the original author know about them by sending a pull request.
===
Open a Pull Request
Pull Requests initiate discussion about your commits. Because they're tightly integrated with the underlying Git repository, anyone can see exactly what changes would be merged if they accept your request.

You can open a Pull Request at any point during the development process: when you have little or no code but want to share some screenshots or general ideas, when you're stuck and need help or advice, or when you're ready for someone to review your work. By using GitHub's @mention system in your Pull Request message, you can ask for feedback from specific people or teams, whether they're down the hall or ten time zones away.

ProTip
Pull Requests are useful for contributing to open source projects and for managing changes to shared repositories. If you're using a Fork & Pull Model, Pull Requests provide a way to notify project maintainers about the changes you'd like them to consider. If you're using a Shared Repository Model, Pull Requests help start code review and conversation about proposed changes before they're merged into the master branch.
[https://guides.github.com/introduction/flow/]

github'discuss-and-review-your-code

name::
* McsEngl.github'discuss-and-review-your-code@cptIt,
* McsEngl.github'review-and-discuss-your-code@cptIt,

_DESCRIPTION:
Discuss and review your code

Once a Pull Request has been opened, the person or team reviewing your changes may have questions or comments. Perhaps the coding style doesn't match project guidelines, the change is missing unit tests, or maybe everything looks great and props are in order. Pull Requests are designed to encourage and capture this type of conversation.

You can also continue to push to your branch in light of discussion and feedback about your commits. If someone comments that you forgot to do something or if there is a bug in the code, you can fix it in your branch and push up the change. GitHub will show your new commits and any additional feedback you may receive in the unified Pull Request view.

ProTip

Pull Request comments are written in Markdown, so you can embed images and emoji, use pre-formatted text blocks, and other lightweight formatting.
[https://guides.github.com/introduction/flow/]

github'repo

name::
* McsEngl.github'repo@cptIt,

_GENERIC:
* git-repo#ql:git'repo#

_ADDRESS.WPG:
* https://help.github.com/articles/deleting-a-repository,
* https://help.github.com/articles/syncing-a-fork,
* colaborating: https://help.github.com/categories/63/articles,
* Configuring a remote for a fork,

github'repo'creating

name::
* McsEngl.github'repo'creating@cptIt,

_ADDRESS.WPG:
* https://help.github.com/articles/create-a-repo,

_DESCRIPTION:
* hit icon 'create a new repo' next to user-icon

name::

_DESCRIPTION:

_ACCESS:
* public
* private

github'repo'forking

name::
* McsEngl.github'repo'forking@cptIt,
* McsEngl.github'forking@cptIt,

_ADDRESS.WPG:
* https://help.github.com/articles/fork-a-repo,

_DESCRIPTION:
At some point you may find yourself wanting to contribute to someone else's project, or would like to use someone's project as the starting point for your own. This is known as "forking".
[https://help.github.com/articles/fork-a-repo]

updating your fork directly from GitHub

Here’s how to update your fork directly from GitHub (as shown in the video above):
Open your fork on GitHub.
Click on Pull Requests.
Click on New Pull Request. By default, GitHub will compare the original with your fork, and there shouldn’t be anything to compare if you didn’t make any changes.
Click on switching the base. Now GitHub will compare your fork with the original, and you should see all the latest changes.
Click on Click to create a pull request for this comparison and assign a predictable name to your pull request (e.g., Update from original).
Click on Send pull request.
Scroll down and click Merge pull request and finally Confirm merge. If your fork didn’t have any changes, you will be able to merge it automatically.
[http://www.hpique.com/2013/09/updating-a-fork-directly-from-github/]

github'security

name::
* McsEngl.github'security@cptIt,

github'2FA

name::
* McsEngl.github'2FA@cptIt,
* McsEngl.github'two-factor-authentication@cptIt,

_ADDRESS.WPG:
* https://help.github.com/articles/about-two-factor-authentication//

github'star

name::
* McsEngl.github'star@cptIt,

_DESCRIPTION:
You can then star projects that you find interesting and want to come back to later—just visit your Stars page to see all your starred projects.
[https://help.github.com/articles/be-social]

github'user

name::
* McsEngl.github'user@cptIt,

FIND USER'S EMAIL:
Although GitHub removed the private messaging feature, there's still an alternative.

GitHub host git repositories. If the user you're willing to communicate with has ever committed some code, there are good chances you may reach your goal. Indeed, within each commit is stored some information about the author of the change or the one who accepted it.

Provided you're really dying to exchange with user user_test

Display the public activity page of the user: https://github.com/user_test?tab=activity
Search for an event stating "user_test pushed to [branch] at [repository]". There are usually good chances, he may have pushed one of his own commits. Ensure this is the case by clicking on the "View comparison..." link and make sure the user is listed as one of the committers.
Clone on your local machine the repository he pushed to: git clone https://github.com/..../repository.git
Checkout the branch he pushed to: git checkout [branch]
Display the latest commits: git log -50
As a committer/author, an email should be displayed along with the commit data.

Note: Every warning related to unsolicited email should apply there. Do not spam.
[http://stackoverflow.com/a/12687679]

github'watch

name::
* McsEngl.github'watch@cptIt,

_DESCRIPTION:
Watch a project

Our friend the Octocat has a project called Hello World that we'd like to watch.

Once you are on the project page, you will notice there is a "watch" button at the top of the page. Click on it.

Watch repository button

Congratulations! You are now watching the Hello World project. If the Octocat updates it, you will see what happened in your dashboard.
[https://help.github.com/articles/be-social]

git'SourceForge

name::
* McsEngl.git'SourceForge@cptIt,

git'sf'Features

name::
* McsEngl.git'sf'Features@cptIt,

Features
SourceForge.net provides the following features in its Git offering:

All 1.6.x features of git are supported.
Developer (read/write) access is provided via ssh.
anonymous (read-only) access are provided via git's daemon protocol ("git://").
Several Git clients are supported, including:
The official git client (MS Windows, Mac OS X, Linux, BSD).
Repositories may be viewed via web browser using the GitWeb.
Existing repositories may be imported via a normal git push (since git is a distributed SCM).
Repository access may be granted or revoked from a developer using the Project Admin interface.
Repository backups and mirroring may be performed using rsync or git clone.
Service usage is not restricted by quotas.
Multiple repositories are supported.
[https://sourceforge.net/apps/trac/sourceforge/wiki/Git]

git'sf'Management

name::
* McsEngl.git'sf'Management@cptIt,

Management
Git service may be enabled for your project as follows:
- Login as a project administrator and go to the page for your project.
- From the Project Admin menu, select Feature Settings
- Select the Available Features tab
- Check the box for Git; your repository will be instantly enabled, and the heading for Git should move from the Available Features tab to the Enabled Features tab.

Once Git has been enabled, you may wish to adjust permission grants for your users, if you need to disable one or more user's ability to make changes in the git repository.

The standard way to modify the contents of your repository is using a Git client as detailed in the Git User's Manual. Refer to the Getting Started section for how to make your first commit to your new repository.

Administrators may also manually manipulate their repository via the site interactive shell service.

We strongly recommend that when modifying a repository, other committers be notified of the direct edit window and that you make your own backups prior to editing the content so you can restore it readily yourself in the case of an accident.
[https://sourceforge.net/apps/trac/sourceforge/wiki/Git]

Create-New-Local-Repository

Create an empty repository on your local machine like this:

mkdir PROJECTNAME
cd PROJECTNAME
git init

Clone-Existing-Repository

For a newer version of git (1.6.2 and later), you can simply clone your empty remote repository and get working:

git clone ssh://USERNAME@PROJECTNAME.git.sourceforge.net/gitroot/PROJECTNAME/REPONAME
cd REPONAME

Set-Git-Username

Users should commit to their project repository using their SourceForge.net username. If that is not already set globally, you can set it locally for the current Git repository like this:

git config user.name "YOUR NAME"
git config user.email "USERNAME@users.sourceforge.net"
You can now use some combination of "git add" and "git commit" commands to create one or more commits in your local repository.

Push-Local-Repository

If you did not clone one of our remote repositories (for instance, if your older git version won't let you clone an empty repository), you will have to take some manual setup steps to be able to push your content to our servers.

For any local Git repository, you can configure it to push data back to our server by doing the following from inside your Git repository (this replicates what a "git clone" from our servers sets up for you automatically):
& git remote add origin ssh://USERNAME@PROJECTNAME.git.sourceforge.net/gitroot/PROJECTNAME/REPONAME
& git config branch.master.remote origin
& git config branch.master.merge refs/heads/master

Now you're ready to push the committed files to our servers:
& git push origin master

Note: The use of "origin master" prevents Git from complaining that the remote server has no branches in common with your local repository (which is true at the start when the remote repository is completely empty), and "master" is the default branch in Git.

After the first push, you will be able to use the simpler "git push" to push the master branch to our "origin" server.

Once that is done, you will be able to browse your newly-committed content via gitweb, clone the repository via either read-only or read/write access methods, push more check-ins, etc.

Set-User-Permissions

Git permissions management
Git service is provided on an opt-in basis, and must be enabled for a project before it may be used. Once Git service has been enabled, Git permissions may be managed.

Git repositories at SourceForge.net have two types of permissions: read and write.

Read permissions
Read permissions are granted to all users (including anonymous access). In the spirit of Open Source, source code should be available to everyone, so no means is provided to remove read access from a repository.

Write permissions
Permission to write to a repository may be granted to a project developer by a project administrator.

To grant or revoke Git repository write permission on a developer:
Login as an administrator and go to the Project Summary page.
From the Admin menu pulldown, select the Members option.
Click on the name of the desired developer.
Check (for permission grant) the "Allow access to Git repository (developer access)" checkbox and click on the "Update Developer Permissions" button. Permissions will be provided to the user in about a minute.
[https://sourceforge.net/apps/trac/sourceforge/wiki/Git%20permission%20management]

git'sf'Access

name::
* McsEngl.git'sf'Access@cptIt,

To access a Git repository, configure your Git client as follows (replace PROJECTNAME with the UNIX group name of the project, and REPONAME with the name of the git repository):
git://PROJECTNAME.git.sourceforge.net/gitroot/PROJECTNAME/REPONAME (read-only)
ssh://USERNAME@PROJECTNAME.git.sourceforge.net/gitroot/PROJECTNAME/REPONAME (read/write)

The default repository name is the same as the project's UNIX group name, e.g
git://PROJECTNAME.git.sourceforge.net/gitroot/PROJECTNAME/PROJECTNAME

For those developers who have git access enabled to more than 16 projects, you may need to include your PROJECTNAME as a part of the USERNAME (appended after a comma) in order to work around a Linux permission limitation:
ssh://USERNAME,PROJECTNAME@PROJECTNAME.git.sourceforge.net/gitroot/PROJECTNAME/REPONAME (read/write)

To access the default Git repository, configure your Git client as follows:
- git://htmlmgr.git.sourceforge.net/gitroot/htmlmgr/htmlmgr (read-only)
- ssh://nikkas@htmlmgr.git.sourceforge.net/gitroot/htmlmgr/htmlmgr (read/write)

git'sf'Backup

name::
* McsEngl.git'sf'Backup@cptIt,

Backups
SourceForge.net performs routine backups for all of our servers and will restore from these backups in the event of catastrophic server failure. We encourage projects to make their own backups of Git data as that data restore can be performed by the project in the event of accidental data destruction by a member of the project team.

Backups of a Git repository may be made using rsync.

Example (replace PROJECTNAME with the UNIX group name of your project):

rsync -av PROJECTNAME.git.sourceforge.net::gitroot/PROJECTNAME/* .
Using rsync is important if repository-side configuration such as hook scripts, a 'description' file, and a non-default 'config' file are used.
[https://sourceforge.net/apps/trac/sourceforge/wiki/Git]

git'sf'GitWeb

name::
* McsEngl.git'sf'GitWeb@cptIt,

* http://htmlmgr.git.sourceforge.net/git/gitweb-index.cgi

Features
GitWeb supports common actions such as:
Reviewing recent changes in the repository.
Viewing the contents of a checked-in file (including raw or syntax-highlighted outputs).
Viewing the differences between two revisions of a file.
Easily accessing tagged versions of file content.

Configuration
Several per-repository configuration options are available to you to change the information displayed on the landing page for a git repository.

- Create a "description" file in your git repository root, with a brief, one-line description of your repository. This file is treated as plain text, any HTML will be escaped. This will appear in the top section of the gitweb repository landing page.
- Create a "cloneurl" file in your git repository root, containing one url per line. Use this to display the clone url for your repository. This will appear in the same section as the description line, one url per line.
- Create a "README.html" file in your git repository root, with arbitrary descriptive content. HTML is allowed, and will be displayed inside a div tag on the gitweb page, in a section below the one with description.
- Set the owner, by setting a gitweb.owner configuration variable in the "config" file, located in your git repository root. If the "gitweb" section does not exist, create it. The owner setting in the config should look like the sample below (you can use any arbitrary string for owner):
[gitweb]
owner = Your Name <youremail>
References: http://repo.or.cz/w/alt-git.git?a=blob_plain;f=gitweb/README

Access
To access GitWeb:

Access the Project Summary page for the desired project.
Click on the "Git Browse" link under the Code dropdown menu.
The link will be to the PROJECT's http://PROJECT.git.sourceforge.net/ page.
[https://sourceforge.net/apps/trac/sourceforge/wiki/GitWeb%20repository%20browser]

git'Other-scm

name::
* McsEngl.git'Other-scm@cptIt,

Different from SVN
It is important to note that this is very different from most SCM systems that you may be familiar with. Subversion, CVS, Perforce, Mercurial and the like all use Delta Storage systems - they store the differences between one commit and the next. Git does not do this - it stores a snapshot of what all the files in your project look like in this tree structure each time you commit. This is a very important concept to understand when using Git.
[http://book.git-scm.com/1_the_git_object_model.html]

SPECIFIC

_SPECIFIC:#ql:_GENERIC cptIt569#,
install: version 1.7.3.1-preview20101002, 2010-10-28

vcs.Subversion

name::
* McsEngl.vcs.Subversion@cptIt,
* McsEngl.conceptIt573.1,
* McsEngl.subversion@cptIt573.1,
* McsEngl.SVN@cptIt573.1,

_DESCRIPTION:
Apache Subversion (often abbreviated SVN, after the command name svn) is a software versioning and a revision control system distributed under a free license. Developers use Subversion to maintain current and historical versions of files such as source code, web pages, and documentation. Its goal is to be a mostly-compatible successor to the widely used Concurrent Versions System (CVS).

The open source community has used Subversion widely: for example in projects such as Apache Software Foundation, Free Pascal, FreeBSD, GCC, Django, Ruby, Mono, SourceForge, PHP and MediaWiki. Google Code also provides Subversion hosting for their open source projects. BountySource systems use it exclusively. CodePlex offers access to Subversion as well as to other types of clients.

The corporate world has also started to adopt Subversion. A 2007 report by Forrester Research recognized Subversion as the sole leader in the Standalone Software Configuration Management (SCM) category and as a strong performer in the Software Configuration and Change Management (SCCM) category.[1]

Subversion was created by CollabNet Inc in 2000 and is now a top-level Apache project being built and used by a global community of contributors.
[http://en.wikipedia.org/wiki/Apache_Subversion]

svn'Client

name::
* McsEngl.svn'Client@cptIt,

_SPECIFIC:
* toroiseSVN,

svn'Download-repository

name::
* McsEngl.svn'Download-repository@cptIt,

svn checkout http://svn.wikimedia.org/svnroot/mediawiki/trunk/extensions/SemanticWebBrowser/

svn'Repository

name::
* McsEngl.svn'Repository@cptIt,

The Repository
Subversion uses a central database which contains all your version-controlled files with their complete history. This database is referred to as the repository. The repository normally lives on a file server running the Subversion server program, which supplies content to Subversion clients (like TortoiseSVN) on request. If you only back up one thing, back up your repository as it is the definitive master copy of all your data.
[http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-qs-basics.html]

svn'Resource

name::
* McsEngl.svn'Resource@cptIt,

_SPECIFIC:
* http://subversion.apache.org//
* http://en.wikipedia.org/wiki/Apache_Subversion,
* http://www.mediawiki.org/wiki/Subversion,

* http://wiki.apisnetworks.com/index.php/Subversion,
* book: http://svnbook.red-bean.com/en/1.2/index.html,

svn'TortoiseSvn

name::
* McsEngl.svn'TortoiseSvn@cptIt,
* McsEngl.svnt@cptIt573i,
* McsEngl.tortoiseSVN@cptIt573i,

_GENERIC:
* svn-client#ql:svn'client#

_ADDRESS.WPG:
* http://tortoisesvn.net//

_DESCRIPTION:
TortoiseSVN is a Windows shell extension, which gives feedback on the state of versioned items by adding overlays to the icons in the Windows Explorer. Repository commands can be executed from the enhanced context menu provided by Tortoise.

SmartSVN provides a similar Explorer integration, but also can be used as a standalone SVN client for different platforms. SmartGit is similar to SmartSVN, but uses a local Git repository as a substitute for the SVN working copy, which has certain advantages such as offline commits and higher performance due to the absence of network delays[1].

DocMiner is a web clone of TortoiseSVN to explore Subversion repositories from a web browser.

Some programmers prefer to have a client integrated within their development environment. Visual feedback of the state of versioned items is provided, and repository commands are added to the menus of the development environment. Examples of this approach are Agent SVN, AnkhSVN, Unified SCC and VisualSVN for use with Microsoft Visual Studio, and Subclipse for use with Eclipse.

It is common to expose Subversion via Webdav using the Apache web server. In this case, any Webdav client can be used, but the functionality provided this way may be limited. Alternative ways to serve Subversion include uberSVN and VisualSVN Server.

Agent SVN is an implementation of the (MS-SCCI) for the Subversion version control. The plug-in allows files to be added, removed, checked out, checked in and reverted without leaving the IDE. File differences, status and history can also be viewed from within the IDE.

blsvn is a small wrapper for the Windows command-line Subversion client. It allows the definition of abbreviations for repository directories frequently used.

KDESVN It supports annotated code view, showing who changed each line of code. The client also offers a 3D graphical view of a source code tree. It is written in C++ and uses KDE libraries.

RabbitVCS A graphical front-end for version control systems available on Linux, adding Subversion functionality into the file managers Nautilus and Thunar and provides plugin for Gedit editor, based around the feature set of TortoiseSVN on Windows. RabbitVCS also supports the Git and plans to give support for other version control systems like Bazaar and CVS.

SVNCOM Not actually a client itself, but an API built over SVN’s native C API. It uses COM objects that make it easier to develop Windows based applications or scripts which use SVN. One COM object represents an SVN Client, the other represents an SVN Administrator. The COM objects allow to automate tasks in the Windows Scripting Environment or .NET

DocMiner for Subversion DocMiner is a full web client with an awesome GUI and advances features comparable to desktop tools like TortoiseSVN, including revision graphs, for example. It also resolves some historical problems like dealing with non text format documents like MS Office, PDF, and many others and the lack of advanced integrations with trackers tools like Atalassian JIRA or TeamForge.

WebSVN Offering an online view of a repository, history, and commit comments, as well as opening code in a syntax colored view. The code view is not editable, at least in the demo. Also allows you to view the difference between versions of a file or directory. Written in PHP and opens in a browser.

iF.SVNAdmin Web-based front end GUI to manage user and group permissions on the different repositories. It works completely on the SVNAuthFile and comes with an integration module for LDAP authentication (Synchronizes an LDAP structure with the SVNAuthFile). It also makes it possible to define project managers for different repositories and sub-paths of repositories.
[http://en.wikipedia.org/wiki/Comparison_of_Subversion_clients]

svnt'Repository

name::
* McsEngl.svnt'Repository@cptIt,

svnt'repository'creating

name::
* McsEngl.svnt'repository'creating@cptIt,

First create a new empty directory on your PC. It can go anywhere, but in this tutorial we are going to call it \svn_repos. Now right click on the new folder and from the context menu choose TortoiseSVN > Create Repository here.... The repository is then created inside the folder, ready for you to use. We will also create the default internal folder structure by clicking the Create folder structure button.
[http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-qs-guide.html#tsvn-qs-repo]

svnt'repository'removing

name::
* McsEngl.svnt'repository'removing@cptIt,

... completely remove a repository from my computer?
Aehemm: select the folder and hit 'delete' (the key on your keyboard may be labelled only 'del').

Seriously, there are no hidden files or settings. The repository is completely contained in one folder tree.

The same applies to working copies. If you send a working copy to the recycle bin it can seriously slow down future deletes because of the large number of small files. You may want to empty the recycle bin soon after.
[http://tortoisesvn.net/faq.html]

svn'Working-copy

name::
* McsEngl.svn'Working-copy@cptIt,

Working Copy
This is where you do the real work. Every developer has his own working copy, sometimes known as a sandbox, on his local PC. You can pull down the latest version from the repository, work on it locally without affecting anyone else, then when you are happy with the changes you made commit them back to the repository.
A Subversion working copy does not contain the history of the project, but it does keep a copy of the files as they exist in the repository before you started making changes. This means that it is easy to check exactly what changes you have made.
[http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-qs-basics.html]

FvMcs.view.BOOTSTRAPPING

_CREATED: {2008-01-05}

name::
* McsEngl.conceptIt574,
* McsEngl.view.BOOTSTRAPPING@cptIt,
* McsEngl.FvMcs.view.BOOTSTRAPPING@cptIt,
* McsEngl.bootstrapping@cptIt574,

DEFINITION

About
As the leading resource for open source software development and distribution, SourceForge is dedicated to making open source projects successful and thrives on community collaboration. Using the tools provided on this platform, 2.7 million developers create powerful software in over 260,000 projects. Our popular directory connects more than 46 million consumers with these open source projects and serves more than 2,000,000 downloads a day. SourceForge is where open source happens.

SourceForge.net is owned and operated by Geeknet, Inc., a publicly traded US-based company.
[https://sourceforge.net/about]

sf'Git-Repository#ql:git'sourceforge#

name::
* McsEngl.sf'Git-Repository@cptIt,

sf'Project

name::
* McsEngl.sf'Project@cptIt,

sf'Register-Project

name::
* McsEngl.sf'Register-Project@cptIt,

If you have not already registered your project on SourceForge.net:
- Register a user account.
- Determine which Open Source license you will use for your project. The GNU GPL, GNU LGPL, and BSD licenses are very popular.
- Determine what your project is going to write for software -- you will need to supply a description of your project during the registration process.
- Register your project.

Steps to create a new project
1) Once logged-in to SourceForge.net, you can start the process of registering a project.
- https://sourceforge.net/register//
2) Enter a name by which your project will be recognized publicly in the Project Name field
3) Select a UNIX name for your project in the URL field
The name must be all lowercase
The name may not contain digits or international characters
4) Provide a public description (this can be changed at any time) that is less than 255 characters.
5) Click the checkbox indicating you have read the Terms of Use to acknowledge.
6) Click the Complete Registration button.
All project registrations are activated in only a few minutes time. Projects will be reviewed by SourceForge.net staff members on a regular basis. Projects found to not be in compliance with our policies will be removed.
[https://sourceforge.net/apps/trac/sourceforge/wiki/Register%20a%20project%20for%20hosting]

sf'SERVICE

name::
* McsEngl.sf'SERVICE@cptIt,

What features will SourceForge.net provide my project?
SourceForge.net offers a number of features to site users and even more for project teams. Of note for projects and developers associated to projects are the Hosted Apps, our download service, as well as Source Code Management (SCM) services (CVS, Subversion).

Supported Applications
We've selected the following applications for inclusion as Hosted Apps. All of these applications are available for immediate use by projects and project developers on an opt-in basis.

Application  Function  Useful links
AN Guestbook  Guestbook  Feature List, Demo
Codestriker  Web-based Code review  Screenshots, Documentation
dotProject  Project management  Documentation, Demo
Gallery  Image gallery  Feature List, Documentation
IdeaTorrent  Idea brainstorming  Demo
Laconica  Microblogging  Feature List, Documentation
LimeSurvey  Surveys  Feature List, Documentation, Demo
MantisBT  Bug tracking  Feature List, Documentation, Demo
MediaWiki  Wiki  Documentation, Reference Manual, Data import
phpBB  Forum  Documentation
phpWebSite  CMS  Feature List, Documentation
Piwik  Web analytics  Documentation
sfurl  URL shortening  
TaskFreak!  Task management  Documentation, Demo
Trac  Bug tracking and Wiki  Documentation
WordPress  Blog  Documentation, Demo

sf'Resource

name::
* McsEngl.sf'Resource@cptIt,

* INTERNET#ql::DEZIGNEPTERO.NFO:http.sourceforge#:

sf'User

name::
* McsEngl.sf'User@cptIt,

sf'nikkas

name::
* McsEngl.sf'nikkas@cptIt,

_ADDRESS.WPG:
* https://sourceforge.net/users/nikkas,

sf'Upload-file

name::
* McsEngl.sf'Upload-file@cptIt,

Note:
* Allowed characters for files and directories are: -_ +.,=#~@!()[]a-zA-Z0-9 (including " " - space).
* Disallowed characters are: &:%?/*$
* Filenames may not start with a space or dot ("."), and may not end with a space (" ").
[https://sourceforge.net/apps/trac/sourceforge/wiki/Release%20files%20for%20download]

File Manager (UI)

Files for user downloading:
1) Select File Manager from the Project Admin menu
2) Click on the Gear icon next to the “/” (root) folder or any other folder and select the New Folder menu item.
3) Enter name of the folder to be created
4) Click the Gear icon next to the folder where uploaded file will reside and select "Upload here"
5) Navigate to file to be uploaded and click Open

The file is uploaded.

sf'FTP

name::
* McsEngl.sf'FTP@cptIt,

Host:
* web.sourceforge.net

UserName:
* nikkas,htmlmgr

ConnectionType:
* SSH/SFTP

ProjectWebPage_Dir:
* /home/groups/h/ht/htmlmgr/htdocs/

HtmlMgr'ftp:
* host: web.sourceforge.net
* Username: nikkas,htmlmgr
* dirLocal: \File1a\HtmlMgr\doc

synagonism_mw'ftp:
* host: web.sourceforge.net
* Username: nikkas,synagonism-mw
* dirLocal: \File1a\synagonism-mw\site
* dirServer: /home/project-web/synagonism-mw/htdocs/

sf.SPECIFIC

name::
* McsEngl.sf.SPECIFIC@cptIt,

_SPECIFIC:#ql:_GENERIC cptIt582#

FvMcs.device.UPS

name::
* McsEngl.conceptIt586,
* McsEngl.device.UPS@cptIt,
* McsEngl.FvMcs.device.UPS@cptIt,
* McsEngl.UPS@cptIt2014,
* McsEngl.Uniterruptible-Power-Sypply@cptIt,

SPECIFIC

_SPECIFIC:#ql:_GENERIC cptIt586#

SPECIFIC

ups.STANDBY

name::
* McsEngl.ups.STANDBY@cptIt,

Δεν επεμβαίνει στο ηλεκτρικό ρεύμα που διέρχεται. Αν διακοπεί τότε επεμβαίνουν σε 1 μέχρι 5 χιλ. του δευτ. Εχουν μικρό μέγεθος και είναι φτηνά.
[ΚΟΜΠΙΟΥΤΕΡ ΓΟ, ΝΟΕ. 1996, 207]

ups.LINE-INTERACTIVE

name::
* McsEngl.ups.LINE-INTERACTIVE@cptIt,

Προσφέρουν επιπλέον προστασία από αυξομειώσεις τάσης χωρίς τη χρησιμοποίηση των συσσωρευτών τους. Εχουν μεγάλου μεγέθους μετασχηματιστή και είναι ακριβότερα από τα standby.
[ΚΟΜΠΙΟΥΤΕΡ ΓΟ, ΝΟΕ. 1996, 207]

ups.ONLINE

name::
* McsEngl.ups.ONLINE@cptIt,

Παρέχουν την καλύτερη προστασία. Μετατρεπουν το εναλασσόμενο σε συνεχόμενο και ξανά σε εναλασόμενο 'καθαρό'. Παρουσιάζουν αυξημένη κατανάλωση ρεύματος, έχουν ογκώδες μέγεθος και είναι ακριβά.
[ΚΟΜΠΙΟΥΤΕΡ ΓΟ, ΝΟΕ. 1996, 207]

FvMcs.collectionData-Database

name::
* McsEngl.conceptIt851,
* McsEngl.collectionData-Database@cptIt,
* McsEngl.FvMcs.collectionData-Database@cptIt,
* McsEngl.application.database@cptIt851,
* McsEngl.database@cptIt,
* McsEngl.database'application@cptIt851,
* McsElln.ΒΑΣΗ-ΔΕΔΟΜΕΝΩΝ@cptIt,
* McsElln.ΒΑΣΗ'ΔΕΔΟΜΕΝΩΝ@cptIt851,

DEFINITION

Database Application is an Application#cptIt97.1# written by a DATABASE-PROGRAM#cptIt8#.
[nikos]

GENERIC

_GENERIC:
*
(InfoTech) APPLICATION#cptIt97#

DOMAIN

SPECIFIC

Specific_concepts (level 3) =


ADDRESS BANK#cptItsoft485#
EuroMap#cptItsoft609#
Internet-Database#cptIt392: attSpe#
The American Business Phone Book#cptItsoft832#
ΟΤΕ ΣΥΝΔΡΟΜΗΤΕΣ#cptItsoft538#
ΤΑΧΥΔΡΟΜΙΚΟΙ ΚΩΔΙΚΕΣ#cptItsoft769#

FvMcs.sysSoftware.EDUCATION

name::
* McsEngl.conceptIt861,
* McsEngl.sysSoftware.EDUCATION@cptIt,
* McsEngl.FvMcs.sysSoftware.EDUCATION@cptIt,
* McsEngl.application.education@cptIt861,
* McsEngl.education-application@cptIt,
* McsEngl.education'application@cptIt861,

GENERIC

_GENERIC:
* software-application#cptItsoft490#

SPECIFIC

Specific_concepts (level 3) =

QUERY#ql:[Level CONCEPT:rl3 cptItsoft861]##itsoft.nfo#

ALPHABETICALLY


3DGRAPH#cptItsoft1066: attSpe#
ALGEBRA (ZD3\APPLICATION, DOS very simple, bad)
GREAT-WONDERS-OF-THE-WORLD#cptItsoft540: attSpe#
HARDWAREBOOK (ZD3\APPLICATION)
LEARN TO SPEAK ENGLISH#cptItsoft1013: attSpe#
MATHBOOK (ZD3\APPLICATION\MATHBOOK advanced)
Mayo clinic family health book#cptItsoft689: attSpe#
MS ART GALLERY#cptItsoft695: attSpe#
NATIONAL GEOGRAPHIC MAMMALS#cptItsoft934: attSpe#
PEDIATRIC DATABASE (ZD3\APPLICATION)
PERIODIC-TABLE#cptItsoft761: attSpe#
SKYGLOBE#cptItsoft805: attSpe#
THE GUIDED TOUR OF MULTIMEDIA#cptItsoft834: attSpe#
WINAUTO (ZD3\APPLICATION)

ΑΠΟ ΤΟ ΜΟΡΙΟ ΣΤΟ ΚΥΤΤΑΡΟ#cptItsoft895: attSpe#
ΛΟΓΟΜΑΘΕΙΑ#cptItsoft911: attSpe#
ΠΕΔΙΟ-ΓΡΑΦΙΚΑ#cptItsoft916: attSpe#
ΣΥΝΘΕΣΕΙΣ - ΟΡΓΑΝΙΚΕΣ ΕΝΩΣΕΙΣ#cptItsoft918: attSpe#
ΦΥΣΙΚΗ Β Γ ΓΥΜΝ, Α ΛΥΚ#cptItsoft924: attSpe#
ΦΥΣΙΚΗ ΓΥΜΝΑΣΙΟΥ ΤΜΗΜΑ ΙΙ#cptItsoft928: attSpe#
ΧΗΜΕΙΑ Β Γ ΓΥΜΝ Α ΛΥΚ#cptItsoft925: attSpe#
ΩΡΙΩΝ#cptItsoft926: attSpe#

FvMcs.overhead projector

name::
* McsEngl.conceptIt961,
* McsEngl.overhead projector@cptIt,
* McsEngl.FvMcs.overhead projector@cptIt,
* McsEngl.overhead-projector@cptIt,
* McsEngl.projector'overhead@cptIt961,
* McsElln.ΠΡΟΒΟΛΕΑΣ-ΔΙΑΦΑΝΕΙΩΝ@cptIt,

SPECIFIC

_SPECIFIC#ql:_GENERIC cptIt961#

FvMcs.lcd projection panel

name::
* McsEngl.conceptIt962,
* McsEngl.lcd projection panel@cptIt,
* McsEngl.FvMcs.lcd projection panel@cptIt,
* McsEngl.lcd-projection-panel@cptIt,
* McsEngl.projector'lcdPanel@cptIt962,

SPECIFIC

_SPECIFIC#ql:_GENERIC cptIt962#

FvMcs.magnetic storage

name::
* McsEngl.conceptIt963,
* McsEngl.magnetic storage@cptIt,
* McsEngl.FvMcs.magnetic storage@cptIt,
* McsEngl.magnetic-storage@cptIt,
* McsEngl.storage.magnetic@cptIt963,

SPECIFIC

_SPECIFIC#ql:_GENERIC cptIt963#

FvMcs.cd-recorder

name::
* McsEngl.conceptIt965,
* McsEngl.cd-recorder@cptIt,
* McsEngl.FvMcs.cd-recorder@cptIt,
* McsEngl.cd-recorder@cptIt,
* McsEngl.cd-r@cptIt,
* McsEngl.cdRecorder@cptIt965,

SPECIFIC

_SPECIFIC#ql:_GENERIC cptIt965#

CDROM'CREATION SYSTEMS

name::
* McsEngl.CDROM'CREATION SYSTEMS@cptIt,

PHILIPS:
CDROM: CDD521 ΕΠΙΤΡΑΠΕΖΙΕΣ ΕΚΔΟΣΕΙΣ CDROM, $8000 [RAM, FEB 1993] 1,500,000 ΜΑΙΟΣ. Philips, Dataware.

SONY:
CD-ROM MASTERING SYSTEM, ΠΑΡΑΓΩΓΗ ΣΕ ΜΗ ΒΙΟΜΗΧΑΝΙΚΗ ΚΛΙΜΑΚΑ, 15 ΕΚ ΔΡΧ ΜΑΖΙ ΜΕ WORKSTATION [COMPUTER GO, DEC 1992]. ΚΩΣΤΑΣ, ΤΕΧΝΟΛΟΓΙΚΗ ΣΥΣΤΗΜΑΤΩΝ ΕΠΕ.

PINNACLE MICRO:
RCD-202 $4200(NOV 1993/BYTE 343)

FvMcs.Graphics Chip

name::
* McsEngl.conceptIt967,
* McsEngl.Graphics Chip@cptIt,
* McsEngl.FvMcs.Graphics Chip@cptIt,
* McsEngl.graphics-accelerator-chip@cptIt,
* McsEngl.graphics-engine@cptIt,
* McsEngl.graphics-chip@cptIt,
* McsEngl.graphics'chip@cptIt967,

DEFINITION

Είναι το τσιπ πάνω στην κάρτα γραφικών.
[ΝΙΚΟΣ, 1997ιαν]

ΕΠΙΤΑΧΥΝΤΕΣ:
Είναι ειδικά τσιπ που επιταχύνουν τη σχεδίαση γραφικών και ονομάζονται επεξεργαστές ή επιταχυντές γραφικών. Παραδείγματα είναι τα:
Vision 964 and 864 της S3
MGA της Power Graphics
[ΚΟΜΠΙΟΥΤΕΡ ΓΟ, ΔΕΚ. 1995, ΕΝΘΕΤΟ 31]

WHOLE

_WHOLE:
graphics card#cptIt992#

SPECIFIC

_SPECIFIC#ql:_GENERIC cptIt967#

POWER GRAPHICS:
* MGA

S3:
* ViRGE το μπέστ σέλερ. [ΡΑΜ, ΟΚΤ. 1996, 42]
* ViRGE 3-D graphics chip set. This chip is on AST mmx computer 1997jan.

STB Velocity 3D graphics engine,
* on gateway computer mmx.

3D CHIPS

A 3-D graphics accelerator card spins its magic by producing and manipulating 3-D pixels-also called texels, for the 3-D element of texture that's added to the basic picture elements. While 2-D pixels are tiny points of light based on mathematical representations of a shape's height and width, 3-D pixels add depth to the equation. And that depth is what allows texture to be defined-from the wood-grain pattern on a racing car's dashboard to the subtle gradations of gray that make up roadside shadows.

ATI 3D Xpression
Diamond Edge 3D 2200XL
Diamond Stealth 3D 2000XL
Number Nine9FX Reality 332
Orchid Fahrenheit Video 3D
Terminator 3D
[http://www.techweb.com/tools/3dcards/3dcards2.html, 1997jan12]

FvMcs.Infotech-Organization

name::
* McsEngl.conceptIt968,
* McsEngl.Infotech-Organization@cptIt,
* McsEngl.FvMcs.Infotech-Organization@cptIt,
* McsEngl.infotech-organization@cptIt,
* McsEngl.organization.infotech@cptIt968,

GENERIC

_GENERIC:
* entity.whole.system.humans.organization.society'spart#cptEconomy540#

SPECIFIC

_SPECIFIC#ql:_GENERIC cptIt968#

FvMcs.Infotech-Association

name::
* McsEngl.conceptIt969,
* McsEngl.Infotech-Association@cptIt,
* McsEngl.FvMcs.Infotech-Association@cptIt,
* McsEngl.association.infotech@cptIt,
* McsEngl.infotech-association@cptIt,

ADDRESS#cptCore925.15#

resourceInfHmn#cptResource843#

SPECIFIC

_SPECIFIC#ql:_GENERIC cptIt969#

_SPECIFIC:
* ASP#cptIt416#

FvMcs.Transport-Protocol

name::
* McsEngl.conceptIt976,
* McsEngl.Transport-Protocol@cptIt,
* McsEngl.FvMcs.Transport-Protocol@cptIt,
* McsEngl.transport-protocol@cptIt,
* McsElln.ΠΡΩΤΟΚΟΛΛΟ-ΜΕΤΑΦΟΡΑΣ@cptIt,

SPECIFIC

_SPECIFIC#ql:_GENERIC cptIt976#

FvMcs.Videoconferencing

name::
* McsEngl.conceptIt982,
* McsEngl.Videoconferencing@cptIt,
* McsEngl.FvMcs.Videoconferencing@cptIt,
* McsEngl.videoconferencing@cptIt982,
* McsElln.ΒΙΝΤΕΟΣΥΝΔΙΑΣΚΕΨΗ@cptIt,
* McsElln.ΒΙΝΤΕΟΤΗΛΕΦΩΝΙΑ@cptIt,
* McsElln.ΤΗΛΕΣΥΝΔΙΑΣΚΕΨΗ@cptIt,

SPECIFIC

_SPECIFIC#ql:_GENERIC cptIt982#

FvMcs.AUDIO-DATA (addt)

name::
* McsEngl.conceptIt986,
* McsEngl.AUDIO-DATA (addt)@cptIt,
* McsEngl.FvMcs.AUDIO-DATA (addt)@cptIt,
* McsEngl.audio-data@cptIt,
* McsEngl.audio'data@cptIt986,
* McsEngl.audio-information@cptIt,
* McsEngl.audio-electrical-signal@cptIt,

DEFINITION

AUDIO-DATA is a DIRECT representation (mapping) of SOUND#cptCore11.1# with electricity (analog or digital).
[nikkas 2002-03-24]

ΤΟ ΜΙΚΡΟΦΩΝΟ "ΜΕΤΑΤΡΕΠΕΙ" ΤΙΣ ΔΙΑΚΥΜΑΝΣΕΙΣ ΑΥΤΕΣ ΣΕ ΑΝΤΙΣΤΟΙΧΕΣ ΣΥΝΕΧΕΙΣ ΔΙΑΚΥΜΑΝΣΕΙΣ ΗΛΕΚΤΡΙΚΗΣ ΤΑΣΗΣ.

addt'GENERIC

_GENERIC:
* data#cptItsoft242#
* AUDIO_SOFTWARE#cptIt467#
* data#cptCore181.62#

addt'WHOLE

_WHOLE:
sound#cptCore11#

addt'CHANNEL

name::
* McsEngl.addt'CHANNEL@cptIt,
* McsEngl.addt'mode@cptIt,
* McsEngl.addt'ΚΑΝΑΛΙ@cptIt,

_DEFINITION:
Mono waveforms support one channel of audio information. Stereo files take twice the space because there are two channels of information represented, a left and a right channel.

μονοφωνική, στερεοφωνικη.

addt'FREQUENCY

name::
* McsEngl.addt'FREQUENCY@cptIt,

Συχνότητα του αναλογικού σήματος είναι ο ΑΡΙΘΜΟΣ των διακυμάνσεων στο δευτερόλεπτο.

addt'QUALITY

name::
* McsEngl.addt'QUALITY@cptIt,

Q: Tell me more about sound quality. How do you assess that?
A: Today, there is no alternative to expensive listening tests.
During the ISO-MPEG process, a number of international listening tests have been performed, with a lot of trained listeners. All these tests used the "triple stimulus, hidden reference" method and the "CCIR impairment scale" to assess the sound quality. The listening sequence is "ABC", with A = original, BC = pair of original / coded signal with random sequence, and the listener has to evaluate both B and C with a number between 1.0 and 5.0. The meaning of these values is: 5.0 = transparent (this should be the original signal) 4.0 = perceptible, but not annoying (first differences noticable) 3.0 = slightly annoying 2.0 = annoying 1.0 = very annoying

Q: Is there really no alternative to listening tests?
A: No, there is not.With perceptual codecs, all traditional "quality" parameters (like SNR, THD+N, bandwidth) are rather useless, as any codec may introduce noise and distortions as long as it does not affect the perceived sound quality. So, listening tests are necessary, and, if carefully prepared and performed, lead to rather reliable results.
Nevertheless, Fraunhofer-IIS works on objective sound quality assessment tools, too. There is already a first product available, the NMR meter, a real-time DSP-based measurement tool that nicely supports the analysis of perceptual audio codecs. If you need more informations about the Noise-to- Mask-Ratio (NMR) technology, feel free to contact nmr@iis.fhg.de. [Fraunhofer Institut fur integrierte Schaltungen last update 5. September 1995 ]

SPECIFIC

_SPECIFIC#ql:_GENERIC cptIt986#

MIDI'DATA#cptIt551: attSpe#

Hi-Fi audio:
high fidelity audio

ANALOG-SOUND

name::
* McsEngl.analog'signal@cptIt986i,
* McsEngl.analog'sound@cptIt986i,

_DEFINITION:
Ο ΗΧΟΣ ΕΙΝΑΙ "ΔΙΑΚΥΜΑΝΣΕΙΣ ΤΟΥ ΜΕΣΟΥ" ΜΕΣΑ ΣΤΟ ΟΠΟΙΟ ΜΕΤΑΔΙΔΕΤΑΙ, ΣΥΝΗΘΩΣ ΑΕΡΑΣ.
ΤΟ ΜΙΚΡΟΦΩΝΟ "ΜΕΤΑΤΡΕΠΕΙ" ΤΙΣ ΔΙΑΚΥΜΑΝΣΕΙΣ ΑΥΤΕΣ ΣΕ ΑΝΤΙΣΤΟΙΧΕΣ ΣΥΝΕΧΕΙΣ ΔΙΑΚΥΜΑΝΣΕΙΣ ΗΛΕΚΤΡΙΚΗΣ ΤΑΣΗΣ (voltage).

ΑΝΑΛΟΓΙΚΟ ΣΗΜΑ: Εχει τιμές για κάθε χρονική στιγμή, συνεχόμενο μέγεθος.

DIGITAL-SOUND#cptIt550#

FvMcs.data.VIDEO

name::
* McsEngl.conceptIt987,
* McsEngl.data.video@cptIt987,
* McsEngl.video-data@cptIt987,
* McsEngl.video-signal@cptIt,
* McsEngl.signal.video@cptIt987,
* McsEngl.video@cptIt987,
* McsEngl.dataVid@cptIt,
* McsEngl.datVid@cptIt,
* McsElln.ΒΙΝΤΕΟ-ΣΗΜΑ@cptIt,

datVid'GENERIC

_GENERIC:
* data#cptItsoft242#
* data#cptCore181.62#

datVid'codec

name::
* McsEngl.datVid'codec@cptIt,

_DESCRIPTION:
Most of the video you'll come across is compressed, meaning its been altered to take up less space on your computer. For example, a regular Blu-Ray disc usually takes up around 30 or 50GB of space—which is a lot for a normal person to download or store on their hard drive. So, we usually compress movies to make them more manageable, usually with some loss in video quality.

A codec compresses and decompresses data. It interprets the video file and determines how to play it on your screen. Your computer comes with many codecs pre-installed, though you can install codec packs for wider support, or a program like VLC or PotPlayer which have lots of codec support built-in (which we prefer).

Some examples of codecs include:
FFmpeg (which includes formats like MPEG-2, the format in which DVDs are stored, and MPEG-4, the format Apple uses for movies in the iTunes store)
DivX, which works with a certain type of MPEG-4 file, and was often used to rip DVDs in the pre-HD era
XviD, an open source version of DivX, popular among movie pirates
x264, which compresses H.264 videos (Also known as MPEG-4 AVC), and is very popular for high definition videos
There are a lot of different codecs out there, and it can get really confusing with all the different versions of MPEG standards. These days, you really only need to concern yourself with a few—which we'll talk about in a moment.
[http://lifehacker.com/5893250/whats-the-difference-between-all-these-video-formats-and-which-one-should-i-use]

datVid'container

name::
* McsEngl.datVid'container@cptIt,

_DESCRIPTION:
A container is, essentially, a bundle of files. Usually a container consists of a video codec and an audio codec, though it can also contain things like subtitles. Containers allow you to choose one codec for your video and one for your audio, which is nice—that way, you can choose to use the high-quality DTS audio, or compress your audio to something like MP3 for even more space savings. It just gives you a bit more control over how you record your videos or rip your movies. Popular containers include:
AVI
Matroska (which uses the extension MKV)
MP4 (which has been popularized by Apple in the iTunes Store—note that this can also come with the M4V extension, but the container is the exact same)
MOV (which was created by Apple)
The main difference between different containers is not only the codecs they support but what other features they support—like subtitles or chapters. These days, MKV is an extremely popular container, mainly because it supports nearly any video codec under the sun, as well as a ton of extra features (plus it's open source).
[http://lifehacker.com/5893250/whats-the-difference-between-all-these-video-formats-and-which-one-should-i-use]

datVid'format/ΦΟΡΜΑ/ΠΡΟΤΥΠΟ

name::
* McsEngl.datVid'format/ΦΟΡΜΑ/ΠΡΟΤΥΠΟ@cptIt,

ΟΡΓΑΝΙΣΜΟΙ:
* MPEG: Moving Picture Experts Group
* ITU-VCEG: International Telecommunication Union - Video Coding Experts Group.

AVI, MPEG-1, QT, H.261, H.263

MPEG#cptIt159# (mpeg.videoformat)#cptIt159: attPar#

Η προδιαγραφή MPEG καθορίζει μια ολόκληρη οικογένεια φορμά βέντεο, με ευρέως χρησιμοποιούμενα τα
** MPEG-1 (Internet, VCD, etc)
** MPEG-2 (DVD, SVCD, ψηφιακή δορυφορική τηλεόραση κα)
** MPEG-3 (Internet, παρουσιάσεις πολυμέσων κλπ).
Με πολύ περιορισμένες έως ανύπαρκτες δυνατότητες ΕΠΕΞΕΡΓΑΣΙΑΣ, τα βίντεο αυτά αποτελούν το ιδανικό φορμά ΑΠΟΘΗΚΕΥΣΗΣ του τελικού προϊόντος.
[ram 163]

MPEG4 PART 2:
* CODEC: XviD, DivX.

MPEG4 PART 10:
* VIDEO: H.264 (ITU), AVC (MPEG)
* CODEC: NERO DIGITAL ιδιόκτητος, x264 ελεύθερος,

MPEG4 PART 3:
* SOUND: AAC for use in AVC.
* Χρησιμοποιήθηκε από την Apple στα iPod.

DVD:
To bitrate είναι μεταβλητό και φτάνει έως 9800kbit/sec σε ανάλυση 704χ576 ή 720χ576 ή 352χ288 για PAL ή
704χ480 ή 720χ480 ή 352χ240 για NTSC. Ο ήχος μπορεί να είναι PCM, MPEG-1, MPEG-2, AC3, DTS, στερεοφωνικός ή πολυκάναλος σε bitrate έως 384kbit/sec.

VCD (VideoCD):
στην έκδοση 2.0 που προσφέρει ποιότητα εφάμιλλη με αυτή του VHS, η εικόνα και ο ήχος είναι συμπιεσμένα κατά MPEG-1. Το απαιτούμενο bitrate για βίντεο είναι 1.150kbit/sec με ανάλυση 352χ288 για το σύστημα PAL και 352χ240 για το NTSC και ο ήχος είναι 224kbit/sec.

STREAMING/ΣΥΝΕΧΟΥΣ-ΡΟΗΣ

Εδώ η συμπίεση είναι τεράστια, η ποιότητα μέτρια έως κακή, αλλά αποτελούν μια πρώτης τάξης δυνατότητα μεταφοράς μέσω ιντερνέτ βέντεο μεγάλης διάρκειας. Τα πιο γνωστά φορμά ιντερνετικού βίντεο συνεχούς ροής είναι
- RealMedia
- Windows Media.
[RAM 163]

datVid'doing.MiniDV-To-DVD

name::
* McsEngl.datVid'doing.MiniDV-To-DVD@cptIt,

1) Σύλληψη Βίντεο:
* Μεταφορά από Κάμερα στο Κομπιούτερ.
* Pinnacle Studio 9

2) Επεξεργασία:
* Σκηνές, Τίτλους, εφέ μετάβασης, κόψιμο-ράψιμο.
* Pinnacle Studio 9

3) Εξαγωγή σε mpeg2:
* όλα τα κομμάτια σε ένα αρχείο mpeg2.
* rate 8000, rate audio 384, Draft mode (για γρηγοράδα).
* Pinnacle Studio 9

3β) ΜΕ ΥΠΟΤΙΤΛΟΥΣ:
1) εξαγωγή σε AVI:
2) Dv sub maker:
 a) get dv time/date
 b) make sub titles (1st open subtitles format in (c:data\programs-ni\video\dvsubmaker)
3) Subtitle Workshop:
 open sub file,
 delete empties
 save as dvd workshop
4) save as mpeg2.

4) DVD authoring:
* Δημιουργία μενού και κεφαλαίων.
* Ulead WorkShop 2.
- add video files
- add chapters at times you know from dv file.
- add subtitles (set greek font and backround 60)
- create menu (set a picture, set links, set colors for links)
- burn (disk or harddisk (on same directory does not work)

datVid'resourceInfHmn#cptResource843#

name::
* McsEngl.datVid'resourceInfHmn@cptIt,

_ADDRESS.WPG:
* http://www.videomaker.com/article/c10/15362-video-formats-explained,
* http://www.wimp.com/
* bisycle: http://www.youtube.com/embed/AbF6ZZqVMyk?feature=player_detailpage

SPECIFIC

name::
* McsEngl.dataVid.specific@cptIt,
* McsEngl.video.specific@cptIt,

_SPECIFIC#ql:_GENERIC cptIt987#:
* DIGITAL VIDEO
* ANALOG VIDEO

datVid.ANIMAL

name::
* McsEngl.datVid.ANIMAL@cptIt,

_SPECIFIC:
* monky shooting: http://www.youtube.com/watch?v=GhxqIITtTtU,

datVid.DIGITAL

name::
* McsEngl.datVid.DIGITAL@cptIt,

datVid.EDUCATION

name::
* McsEngl.datVid.EDUCATION@cptIt,

_SPECIFIC:
* art cource: http://vimeo.com/73284385,

datVid.FUNNY

name::
* McsEngl.datVid.FUNNY@cptIt,

_ADDRESS.WPG:
* Baby Talk, Bla Bla Bla!!!! https://www.youtube.com/watch?v=sDocL7AfIRo,
* twin talking, https://www.youtube.com/watch?v=_JmA2ClUvUY,

datVid.GOVERNMENT

name::
* McsEngl.datVid.GOVERNMENT@cptIt,

_SPECIFIC:
* petrodolar: http://www.videoman.gr/49065,

datVid.JOB

name::
* McsEngl.datVid.JOB@cptIt,

_SPECIFIC:
* i found a job: http://vimeo.com/66407779#

FvMcs.rscInfHmn.CDROM-DISK

name::
* McsEngl.conceptIt993,
* McsEngl.rscInfHmn.CDROM-DISK@cptIt,
* McsEngl.FvMcs.rscInfHmn.CDROM-DISK@cptIt,
* McsEngl.cdrom-disk@cptIt993,

GENERIC

_GENERIC:
* resource.information.human#cptResource843#

WHOLE

_WHOLE:
* stmIt.computer.machine#cptItsoft227#

SPECIFIC

_SPECIFIC#ql:_GENERIC cptIt993#

FvMcs.rscInfHmn.FLOPPY-DISK

name::
* McsEngl.conceptIt994,
* McsEngl.rscInfHmn.FLOPPY-DISK@cptIt,
* McsEngl.FvMcs.rscInfHmn.FLOPPY-DISK@cptIt,
* McsEngl.diskette@cptIt,
* McsEngl.floppy-disk@cptIt,
* McsEngl.floppy'disk@cptIt994,
* McsElln.ΔΙΣΚΕΤΑ@cptIt,

GENERIC

_GENERIC:
* resource.information.human#cptResource843#

SPECIFIC

_SPECIFIC#ql:_GENERIC cptIt994#

FvMcs.rscInfHmn.AUDIOTAPE

name::
* McsEngl.conceptIt995,
* McsEngl.rscInfHmn.AUDIOTAPE@cptIt,
* McsEngl.FvMcs.rscInfHmn.AUDIOTAPE@cptIt,
* McsEngl.audiotape@cptIt995,
* McsEngl.tape@cptIt995,
* McsElln.ΚΑΣΕΤΑ-ΜΑΓΝΗΤΟΦΩΝΟΥ@cptIt,

GENERIC

_GENERIC:
* resource.information.human#cptResource843#

SPECIFIC

_SPECIFIC#ql:_GENERIC cptIt995#

FvMcs.rscInfHmn.VIDEOTAPE

name::
* McsEngl.conceptIt996,
* McsEngl.rscInfHmn.VIDEOTAPE@cptIt,
* McsEngl.FvMcs.rscInfHmn.VIDEOTAPE@cptIt,
* McsEngl.videotape@cptIt996,
* McsElln.ΒΙΝΤΕΟΚΑΣΕΤΑ@cptIt,
* McsElln.ΚΑΣΕΤΑ-ΒΙΝΤΕΟ@cptIt,

GENERIC

_GENERIC:
* resource.information.human#cptResource843#

meta-info

page-wholepath: https://synagonism.net / dirFolioViews / FvMcsIt / FvMcsIt5