diff options
author | Benjamin Paassen <bpaassen@techfak.uni-bielefeld.de> | 2015-03-01 20:47:25 +0100 |
---|---|---|
committer | Benjamin Paassen <bpaassen@techfak.uni-bielefeld.de> | 2015-03-01 20:47:25 +0100 |
commit | a7019614896fdd3e29b9a28f6a8cfd2c1b365983 (patch) | |
tree | 8a9f102649e88ebf24de0a07cf5f348804a6212d /data/ontology/meta.osxml | |
parent | 0d4ce5c555a1ba3a87cb9a1e350854eda7a243e1 (diff) |
Renamed domain to ontology.
Diffstat (limited to 'data/ontology/meta.osxml')
-rw-r--r-- | data/ontology/meta.osxml | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/data/ontology/meta.osxml b/data/ontology/meta.osxml new file mode 100644 index 0000000..6b25305 --- /dev/null +++ b/data/ontology/meta.osxml @@ -0,0 +1,50 @@ +<?xml version="1.0"?> +<ontology name="meta"> + + <import rel="typesystem" src="affiliation"/> + <import rel="typesystem" src="email"/> + <import rel="typesystem" src="version"/> + <import rel="ontology" src="book"/> + <import rel="ontology" src="headings"/> + + <struct name="meta" cardinality="{1}" transparent="true"> + <field> + <childRef ref="authors"/> + <childRef ref="version"/> + </field> + <parentRef ref="book"> + <field name="meta" isSubtree="true" optional="true"/> + </parentRef> + <parentRef ref="chapter"> + <field name="meta" isSubtree="true" optional="true"/> + </parentRef> + <!-- One could also include "article" and other things here --> + </struct> + + <struct name="person"> + <primitive isSubtree="true" name="firstName" type="string"/> + <primitive isSubtree="true" name="secondNames" type="string[]" optional="true"/> + <primitive isSubtree="true" name="lastName" type="string"/> + <primitive isSubtree="true" name="email" type="email" optional="true"/> + <primitive isSubtree="true" name="affiliation" type="affiliation" optional="true"/> + </struct> + + <!-- wrapper author tag to allow specifying no authors whatsoever. But if + an author is specified it has to be at least one primary author. --> + <struct name="authors" transparent="true" cardinality="{0-1}"> + <field> + <childRef ref="author"/> + </field> + </struct> + + <!-- no explicit cardinality, because we might have multiple authors --> + <struct name="author" isa="person"/> + + <!-- but we need at least one primary author --> + <struct name="primaryAuthor" cardinality="{>0}" isa="author"/> + + <!-- version intermediate struct --> + <struct name="version" cardinality="{0-1}"> + <primitive type="version"/> + </struct> +</ontology> |