blob: bbc0213fa25edcbeac9bf3cb8133fbc6082964a7 [file] [log] [blame]
# =============================================================
# HEADER
# =============================================================
# MODULE: DITA Metadata
# VERSION: 1.1
# DATE: June 2006
#
# =============================================================
# =============================================================
# PUBLIC DOCUMENT TYPE DEFINITION
# TYPICAL INVOCATION
#
# Refer to this file by the following public identifier or an
# appropriate system identifier
# PUBLIC "-//OASIS//ENTITIES DITA Metadata//EN"
# Delivered as file "metaDecl.mod"
# =============================================================
# SYSTEM: Darwin Information Typing Architecture (DITA)
#
# PURPOSE: Declaring the elements and specialization
# attributes for the DITA XML Metadata
#
# ORIGINAL CREATION DATE:
# March 2001
#
# (C) Copyright OASIS Open 2005, 2006.
# (C) Copyright IBM Corporation 2001, 2004.
# All Rights Reserved.
#
# UPDATES:
# 2005.11.15 RDA: Corrected the "Delivered as" system ID
# 2006.06.06 RDA: Move indexterm into commonElements
# 2006.06.07 RDA: Make universal attributes universal
# (DITA 1.1 proposal #12)
# =============================================================
# =============================================================
# ELEMENT NAME ENTITIES
# =============================================================
namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0"
date-format = string
# =============================================================
# ELEMENT DECLARATIONS
# =============================================================
# LONG NAME: Author
author.element = element author { author.attlist, words.cnt* }
author.attlist &=
univ-atts,
attribute href { text }?,
attribute keyref { text }?,
attribute type { "creator" | "contributor" }?
# LONG NAME: Source
source.element = element source { source.attlist, words.cnt* }
source.attlist &=
univ-atts,
attribute href { text }?,
attribute keyref { text }?
# LONG NAME: Publisher
publisher.element = element publisher { publisher.attlist, words.cnt* }
publisher.attlist &=
attribute href { text }?,
attribute keyref { text }?,
univ-atts
# LONG NAME: Copyright
copyright.element =
element copyright { copyright.attlist, copyryear+, copyrholder }
copyright.attlist &=
univ-atts,
attribute type { "primary" | "secondary" }?
# LONG NAME: Copyright Year
copyryear.element = element copyryear { copyryear.attlist, empty }
copyryear.attlist &=
attribute year { date-format },
univ-atts
# LONG NAME: Copyright Holder
copyrholder.element =
element copyrholder { copyrholder.attlist, words.cnt* }
copyrholder.attlist &= univ-atts
# LONG NAME: Critical Dates
critdates.element =
element critdates { critdates.attlist, created, revised* }
critdates.attlist &= univ-atts
# LONG NAME: Created Date
created.element = element created { created.attlist, empty }
created.attlist &=
univ-atts,
attribute date { date-format },
attribute golive { date-format }?,
attribute expiry { date-format }?
# LONG NAME: Revised Date
revised.element = element revised { revised.attlist, empty }
revised.attlist &=
attribute modified { date-format },
attribute golive { date-format }?,
attribute expiry { date-format }?,
univ-atts
# LONG NAME: Permissions
permissions.element = element permissions { permissions.attlist, empty }
permissions.attlist &=
univ-atts,
attribute view { "internal" | "classified" | "all" | "entitled" }
# LONG NAME: Category
category.element = element category { category.attlist, words.cnt* }
category.attlist &= univ-atts
# LONG NAME: Audience
audience.element = element audience { audience.attlist, empty }
audience.attlist &=
attribute type {
"user"
| "purchaser"
| "administrator"
| "programmer"
| "executive"
| "services"
| "other"
}?,
attribute othertype { text }?,
attribute job {
"installing"
| "customizing"
| "administering"
| "programming"
| "using"
| "maintaining"
| "troubleshooting"
| "evaluating"
| "planning"
| "migrating"
| "other"
}?,
attribute otherjob { text }?,
attribute experiencelevel { "novice" | "general" | "expert" }?,
attribute name { xsd:NMTOKEN }?,
univ-atts
# LONG NAME: Keywords
keywords.element =
element keywords { keywords.attlist, (indexterm | keyword)* }
keywords.attlist &= univ-atts
# LONG NAME: Product Information
prodinfo.element =
element prodinfo {
prodinfo.attlist,
prodname,
vrmlist,
(brand | series | platform | prognum | featnum | component)*
}
prodinfo.attlist &= univ-atts
# LONG NAME: Product Name
prodname.element = element prodname { prodname.attlist, words.cnt* }
prodname.attlist &= univ-atts
# LONG NAME: Version Release and Modification
# List
vrmlist.element = element vrmlist { vrmlist.attlist, vrm+ }
vrmlist.attlist &= univ-atts
# LONG NAME: Version Release and Modification
vrm.element = element vrm { vrm.attlist, empty }
vrm.attlist &=
univ-atts,
attribute version { text },
attribute release { text }?,
attribute modification { text }?
# LONG NAME: Brand
brand.element = element brand { brand.attlist, words.cnt* }
brand.attlist &= univ-atts
# LONG NAME: Series
series.element = element series { series.attlist, words.cnt* }
series.attlist &= univ-atts
# LONG NAME: Platform
platform.element = element platform { platform.attlist, words.cnt* }
platform.attlist &= univ-atts
# LONG NAME: Program Number
prognum.element = element prognum { prognum.attlist, words.cnt* }
prognum.attlist &= univ-atts
# LONG NAME: Feature Number
featnum.element = element featnum { featnum.attlist, words.cnt* }
featnum.attlist &= univ-atts
# LONG NAME: Component
component.element = element component { component.attlist, words.cnt* }
component.attlist &= univ-atts
# LONG NAME: Other Metadata
# NOTE: needs to be HTML-equiv, at least
othermeta.element = element othermeta { othermeta.attlist, empty }
othermeta.attlist &=
attribute name { text },
attribute content { text },
attribute translate-content { "yes" | "no" }?,
univ-atts
# LONG NAME: Resource Identifier
resourceid.element = element resourceid { resourceid.attlist, empty }
resourceid.attlist &=
select-atts,
localization-atts,
attribute id { text },
attribute conref { text }?,
attribute appname { text }?
# =============================================================
# SPECIALIZATION ATTRIBUTE DECLARATIONS
# =============================================================
author.attlist &=
global-atts,
[ a:defaultValue = "- topic/author " ] attribute class { text }?
source.attlist &=
global-atts,
[ a:defaultValue = "- topic/source " ] attribute class { text }?
publisher.attlist &=
global-atts,
[ a:defaultValue = "- topic/publisher " ] attribute class { text }?
copyright.attlist &=
global-atts,
[ a:defaultValue = "- topic/copyright " ] attribute class { text }?
copyryear.attlist &=
global-atts,
[ a:defaultValue = "- topic/copyryear " ] attribute class { text }?
copyrholder.attlist &=
global-atts,
[ a:defaultValue = "- topic/copyrholder " ] attribute class { text }?
critdates.attlist &=
global-atts,
[ a:defaultValue = "- topic/critdates " ] attribute class { text }?
created.attlist &=
global-atts,
[ a:defaultValue = "- topic/created " ] attribute class { text }?
revised.attlist &=
global-atts,
[ a:defaultValue = "- topic/revised " ] attribute class { text }?
permissions.attlist &=
global-atts,
[ a:defaultValue = "- topic/permissions " ] attribute class { text }?
category.attlist &=
global-atts,
[ a:defaultValue = "- topic/category " ] attribute class { text }?
audience.attlist &=
global-atts,
[ a:defaultValue = "- topic/audience " ] attribute class { text }?
keywords.attlist &=
global-atts,
[ a:defaultValue = "- topic/keywords " ] attribute class { text }?
prodinfo.attlist &=
global-atts,
[ a:defaultValue = "- topic/prodinfo " ] attribute class { text }?
prodname.attlist &=
global-atts,
[ a:defaultValue = "- topic/prodname " ] attribute class { text }?
vrmlist.attlist &=
global-atts,
[ a:defaultValue = "- topic/vrmlist " ] attribute class { text }?
vrm.attlist &=
global-atts,
[ a:defaultValue = "- topic/vrm " ] attribute class { text }?
brand.attlist &=
global-atts,
[ a:defaultValue = "- topic/brand " ] attribute class { text }?
series.attlist &=
global-atts,
[ a:defaultValue = "- topic/series " ] attribute class { text }?
platform.attlist &=
global-atts,
[ a:defaultValue = "- topic/platform " ] attribute class { text }?
prognum.attlist &=
global-atts,
[ a:defaultValue = "- topic/prognum " ] attribute class { text }?
featnum.attlist &=
global-atts,
[ a:defaultValue = "- topic/featnum " ] attribute class { text }?
component.attlist &=
global-atts,
[ a:defaultValue = "- topic/component " ] attribute class { text }?
othermeta.attlist &=
global-atts,
[ a:defaultValue = "- topic/othermeta " ] attribute class { text }?
resourceid.attlist &=
global-atts,
[ a:defaultValue = "- topic/resourceid " ] attribute class { text }?
# ================== End Metadata ================================