| <!-- DTD for CSS Meta Model Profile --> |
| <!-- |
| /******************************************************************************* |
| * Copyright (c) 2004, 2006 IBM Corporation and others. |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License v1.0 |
| * which accompanies this distribution, and is available at |
| * http://www.eclipse.org/legal/epl-v10.html |
| * |
| * Contributors: |
| * IBM Corporation - initial API and implementation |
| *******************************************************************************/ |
| --> |
| <!-- Entities --> |
| |
| <!-- name-definition : In defining meta model object, object name --> |
| <!-- is given by using this attribute. --> |
| |
| <!ENTITY % name-definition 'name CDATA #REQUIRED' > |
| |
| <!-- name-reference : used to refer meta model object that defined --> |
| <!-- by name-definition --> |
| |
| <!ENTITY % name-reference 'name CDATA #REQUIRED' > |
| |
| <!-- availability : CSS Meta Model Profile permit importing --> |
| <!-- other profile and describe difference for it. --> |
| |
| <!ENTITY % availability 'enabled (true | false) "true"' > |
| <!ENTITY % overwrite 'overwrite (true | false) "false"' > |
| |
| <!-- ******************** --> |
| <!-- elments/attributes --> |
| <!-- ******************** --> |
| |
| <!ELEMENT css-profile (profile-import? , (stylesheet-def | charset-rule-def | import-rule-def | page-rule-def | media-rule-def | fontface-rule-def | style-rule-def | property-def | descriptor-def | container-def | function-def | number-def | unit-def | keyword-def | category-def | pseudo-element-def | pseudo-class-def)*) > |
| |
| <!-- a profile can include other profile --> |
| |
| <!ELEMENT profile-import EMPTY > |
| <!ATTLIST profile-import name CDATA #REQUIRED > |
| |
| <!-- which type of rule can be used? --> |
| |
| <!ELEMENT stylesheet-def (description? , (charset-rule | import-rule | page-rule | media-rule | fontface-rule | style-rule)*) > |
| <!ATTLIST stylesheet-def %overwrite; > |
| |
| <!ELEMENT charset-rule EMPTY > |
| <!ATTLIST charset-rule %availability; > |
| <!ELEMENT import-rule EMPTY > |
| <!ATTLIST import-rule %availability; > |
| <!ELEMENT page-rule EMPTY > |
| <!ATTLIST page-rule %availability; > |
| <!ELEMENT media-rule EMPTY > |
| <!ATTLIST media-rule %availability; > |
| <!ELEMENT fontface-rule EMPTY > |
| <!ATTLIST fontface-rule %availability; > |
| <!ELEMENT style-rule EMPTY > |
| <!ATTLIST style-rule %availability; > |
| |
| <!ELEMENT charset-rule-def (description?) > |
| <!ATTLIST charset-rule-def %overwrite; > |
| |
| <!ELEMENT import-rule-def (description?) > |
| <!ATTLIST import-rule-def %overwrite; > |
| |
| <!ELEMENT page-rule-def (description? , (property | pseudo-class)*) > |
| <!ATTLIST page-rule-def %overwrite; > |
| |
| <!ELEMENT media-rule-def (description?) > |
| <!ATTLIST media-rule-def %overwrite; > |
| |
| <!ELEMENT fontface-rule-def (description? , descriptor*) > |
| <!ATTLIST fontface-rule-def %overwrite; > |
| |
| <!ELEMENT style-rule-def (description? , (property | selector-expression | pseudo-class | pseudo-element)*) > |
| <!ATTLIST style-rule-def %overwrite; > |
| |
| <!ELEMENT selector-expression EMPTY > |
| <!ATTLIST selector-expression name (descendant | child | adjacent | universal | attribute) #REQUIRED %availability; > |
| |
| <!ELEMENT pseudo-class EMPTY > |
| <!ATTLIST pseudo-class %name-reference; %availability; > |
| |
| <!ELEMENT pseudo-element EMPTY > |
| <!ATTLIST pseudo-element %name-reference; %availability; > |
| |
| <!ELEMENT pseudo-class-def (description?, selector-value) > |
| <!ATTLIST pseudo-class-def %name-definition; %overwrite; > |
| <!ELEMENT selector-value (#PCDATA) > |
| |
| <!ELEMENT pseudo-element-def (description?, selector-value) > |
| <!ATTLIST pseudo-element-def %name-definition; %overwrite; > |
| |
| <!ELEMENT keyword-def (description? , keyword-value) > |
| <!ATTLIST keyword-def %name-definition; %overwrite; > |
| <!ELEMENT keyword-value (#PCDATA) > |
| <!ELEMENT description (#PCDATA) > |
| |
| <!ELEMENT function-def (description? , function-value) > |
| <!ATTLIST function-def %name-definition; %overwrite; > |
| <!ELEMENT function-value (#PCDATA) > |
| |
| <!ELEMENT number-def (description? , unit*) > |
| <!ATTLIST number-def %name-definition; %overwrite; > |
| <!ELEMENT unit EMPTY > |
| <!ATTLIST unit %name-reference; %availability; > |
| |
| <!ELEMENT unit-def (description? , unit-value) > |
| <!ATTLIST unit-def %name-definition; %overwrite; > |
| <!ELEMENT unit-value (#PCDATA) > |
| |
| <!ELEMENT container-def (description? , (number | keyword | function | container)*) > |
| <!ATTLIST container-def %name-definition; %overwrite; > |
| |
| <!ELEMENT category-def (description?, caption) > |
| <!ATTLIST category-def %name-definition; %overwrite; > |
| <!ELEMENT caption (#PCDATA) > |
| |
| <!ELEMENT property-def (description? , (number | keyword | function | container | string | separator | property)*) > |
| <!ATTLIST property-def %name-definition; %overwrite; |
| inherited (yes | no | na) "na" |
| mediagroup CDATA #IMPLIED |
| category CDATA #IMPLIED > |
| <!ELEMENT descriptor-def (description?, (number | keyword | function | container | string | separator | property)*) > |
| <!ATTLIST descriptor-def %name-definition; %overwrite; > |
| |
| <!ELEMENT number EMPTY > |
| <!ATTLIST number %name-reference; %availability; > |
| <!ELEMENT keyword EMPTY > |
| <!ATTLIST keyword %name-reference; %availability; > |
| <!ELEMENT function EMPTY > |
| <!ATTLIST function %name-reference; %availability; > |
| <!ELEMENT container EMPTY > |
| <!ATTLIST container %name-reference; %availability; > |
| <!ELEMENT string EMPTY > |
| <!ATTLIST string %name-reference; %availability; > |
| <!ELEMENT separator EMPTY > |
| <!ATTLIST separator name (comma | slash) #REQUIRED %availability; > |
| <!ELEMENT property EMPTY > |
| <!ATTLIST property %name-reference; %availability; > |
| <!ELEMENT descriptor EMPTY > |
| <!ATTLIST descriptor %name-reference; %availability; > |