The idea of using patterns to produce reusable and high-quality assets is not new in the literature. Software engineers, architects (as Alexander who first introduced this term) and designers very often use – or rather reuse – patterns to handle problems which recur over and over. Patterns have also been studied to modularize and customize web ontologies (http://ontologydesignpatterns.org). They guarantee the flexibility and maintainability of concepts and solutions in several heterogeneous scenarios. We've been investigating patterns for XML documents for some time. The overall goal of this research is to understand how the structure of digital documents can be segmented into atomic components, that can be manipulated independently and re-flowed in different contexts. Instead of defining a large number of complex and diversified structures, we have identified a small number of structures/patterns that are sufficient to express what most users need. Our idea is that a low number of patterns are enough to capture the most relevant document structures.
The Pattern Ontology Describing documents by means of their structural components
An ontology defining formally patterns for segmenting a document into atomic components, in order to be manipulated independently and re-flowed in different contexts.
pattern ontology
A structured element contains another generic element.
contains
A structured element contains another generic element as part of its header.
contains as header
An element that is contained by another structured element.
is contained by
An element is contained by another structured element as part of its header.
is contained by as header
A hierarchical-based entity contains al least two entities having different names.
can contain heteronymous elements
A hierarchical-based entity contains al least two entities that share the same name.
can contain homonymous elements
The name of a particular element.
has name