Content Models of Deliberation RuleML 1.02

From RuleML Wiki
Jump to: navigation, search
Quick links:

RuleML Families : Specification of RuleML 1.02

Prerequisites: None, Level: Semi-formal

Deliberation RuleML : Specification of Deliberation RuleML

Prerequisites: None, Level: Semi-formal

Primer : Tutorial on RuleML

Prerequisites: None, Level: Informative

Relax NG Schemas : Machine-readable grammar in the Relax NG language

Prerequisites: Relax NG, Level: Formal

MYNG : Modular sYNtax confiGurator, a GUI for customizing Relax NG schemas

Prerequisites: None, Level: Formal

XSD Schemas : Machine-readable schemas in XSD

Prerequisites: XSD, Level: Formal

Normalizer : Stylesheet for transforming into the normal-form serialization

Prerequisites: XSLT, Level: Formal

Compactifier : Stylesheet for transforming into the compact serialization

Prerequisites: XSLT, Level: Formal

Upgrader : Stylesheets for transforming from earlier versions into Version 1.02

Prerequisites: XSLT, Level: Formal

Examples : Illustrative Instances of the Version 1.02 Language

Prerequisites: Primer, Level: Informative

Glossary : Definitions of Elements and Attributes

Prerequisites: Primer, Level: Semi-formal

Content Models : Simplified XML Element and Attribute Definitions

Prerequisites: Primer, Level: Semi-formal

Schema Docs : Diagrammatic Presentation of Content Models

Prerequisites: Primer, Level: Semi-formal

Implementations : Implemented RuleML tools

Prerequisites: None, Level: Informative

This version: deliberation.ruleml.org/content_models/1.02

Latest version: deliberation.ruleml.org/content_models

Version history:
Date Version
2005-03-01 -

Version 0.88 PDF

2005-06-08 -

Version 0.89 PDF

2006-05-17 -

Version 0.9 PDF

2006-09-13 -

Version 0.91 PDF

2012-04-03 -

Version 1.0 PDF

2012-04-03 -

Version 1.0 Wiki

2014-07-25 -

Version 1.01 Wiki

2014-07-25 -

Version 1.01 Schemadoc

2014-07-25 -

Version 1.01 RNC

2015-xx-yy -

Version 1.02 Wiki dev

2015-xx-yy -

Version 1.02 Schemadoc dev

2015-xx-yy -

Version 1.02 RNC dev


According to the XML specification[1], a content model is a "simple grammar governing the allowed types of the child elements and the order in which they are allowed to appear". XML content models may be specified in a number of schema languages, including DTD, XSD, and Relax NG.

1 Simplified Relax NG

Content models in the Relax NG compact syntax are relatively readable, and the Relax NG syntax is highly expressive.

See the directory listing at http://deliberation.ruleml.org/1.02/simplified .

These informative simplified monolithic compact Relax NG grammars are auto-generated from the normative modular Relax NG schemas by the language-preserving Bash script http://deliberation.ruleml.org/1.02/bash/batch_rnc2simp.sh , which calls

  • Jing to simplify the normative modular Relax NG schemas, producing the result as in the XML-based syntax of Relax NG, and
  • Trang to convert back to the compact RNC syntax.

The content models thus produced are (feature) complete for the normalized, compact, and relaxed serializations, except for explicit datatyping (due to a bug in Jing).

2 HTML Schemadocs for XSDs

See the directory listing at http://deliberation.ruleml.org/1.02/doc .

The capabilities of oXygenXML are exploited to produce diagrammatic representations of the content models. The Bash script http://deliberation.ruleml.org/1.02/bash/build_xsd2doc.sh generates the Schemadocs from several of the auto-generated XSD schemas (http://deliberation.ruleml.org/1.02/xsd). The normalized serialization is documented, for brevity. A selection of anchor languages is made available, ranging from the supremum language nafhologeq to the minimal datalogplus. The naffologeq language, which was the supremum language of previous versions from 0.91 to 1.01, is also available for comparison purposes. Additionally, an intermediate language, disdatalogplus_mid demonstrates how MYNG may be used to define precisely a customized language including (only) selected features.
  1. XML Specification (Element Content): https://www.w3.org/TR/xml/#sec-element-content