General language features

All SILCN documents are well-formed XML documents conforming to W3C XML. All SILCN elements specified here are in the XML Namespace http://silcn.org/200309, in conformance to W3C XML-Names.

SILCN has a grammar defined with a so-called 'open schema', meaning the content models for some SILCN elements allow 'points of opportunity' for the insertion of well-balanced application-specific XML content. Any XML elements in such content must not be within the SILCN Namespace.

Structures common to both Parts of the SILCN language

Some structures are common to both the parts of the SILCN language specification:

  • the top-level silcn element;

  • the version element;

  • the expression-language-declaration element;

  • the namespace-declaration element;

  • the id element;

  • the expression element.

Root element: silcn

All SILCN documents must have this root element.

SILCN version: version

The content of the version element identifies the version of SILCN that applies to any SILCN document. For SILCN 1.0 this element's content must be the literal string 1.0.

Expressions language specification: expression-language-declaration element

SILCN does not specify that any particular expression language be used for expressing either selection criteria, or location information, for nodes in an XML document. The expression language to use is given indirectly using the expression-language-declaration element. Its content specifies an expression language that the content of any expression elements will conform to.

The expression-language-declaration element contains an initial name element, which names the expression language, followed by any well-balanced content.

Namespace prefix binding: namespace-declaration element

In SILCN documents an XML Namespace URI may be bound to a Namespace prefix for use in embedded XML processing languages.

To do this the namespace-declaration element is used: its two child elements (prefix and uri) are used to make the binding.

Identifiers: id element

The id element is used within SILCN documents to model identifier values. In any SILCN document, no two id elements may have the same content.

Expressions: expression element

The expression element is used within SILCN documents to model expressions used for specifying either selection criteria (Part 1) or reporting locations (Part 2) of nodes.