--- messaging/manakai/lib/Message/Markup/Atom.dis 2006/05/20 10:13:02 1.6 +++ messaging/manakai/lib/Message/Markup/Atom.dis 2006/08/17 12:12:02 1.10 @@ -43,7 +43,7 @@ @DISCore:author: DISCore|Wakaba @License: license|Perl+MPL @Date: - $Date: 2006/05/20 10:13:02 $ + $Date: 2006/08/17 12:12:02 $ @Require: @@Module: @@ -76,6 +76,8 @@ http://suika.fam.cx/~wakaba/archive/2004/dom/main# @dx: http://suika.fam.cx/~wakaba/archive/2005/manakai/Util/Error/DOMException# + @dxm: + http://suika.fam.cx/~wakaba/archive/2004/dis/XML# @ecore: http://suika.fam.cx/~wakaba/archive/2005/manakai/Util/Error/Core/ @f: @@ -86,6 +88,8 @@ http://www.w3.org/1999/xhtml @idl: http://suika.fam.cx/~wakaba/archive/2004/dis/IDL# + @infoset: + http://www.w3.org/2001/04/infoset# @kwd: http://suika.fam.cx/~wakaba/archive/2005/rfc2119/ @lang: @@ -175,7 +179,7 @@ @@@@: DISLang|Attribute @@@ForCheck: ManakaiDOM|ForClass @@DISCore:resourceType: - @@@@: mv|Attribute + @@@@: mv|AttributeType @@@ForCheck: s|ForML @@ForCheck: !=ManakaiDOM|ManakaiDOM @@ -308,7 +312,8 @@ @ShadowContent: @@DISCore:resourceType: @@@@: dis|MultipleResource - @@@ForCheck: !ManakaiDOM|ForIF !ManakaiDOM|ForClass !s|ForML + @@@ForCheck: + !ManakaiDOM|ForIF !ManakaiDOM|ForClass !s|ForML !mv|ForCM !mv|ForAG @@resourceFor: ManakaiDOM|ForIF @@resourceFor: ManakaiDOM|ForClass @@resourceFor: mv|ForCM @@ -574,21 +579,28 @@ @mv:vid: 10 @enLN: Atom @mv:version: 1.0 - @mv:contains: AtomFeed - @mv:contains: AtomEntry - @mv:contains: AtomProperties @mv:contains: AtomDatatypes + @mv:contains: AtomProperties + @mv:contains: AtomEntry + @mv:contains: AtomFeed + @mv:contains: AtomQName + + @infoset:namespaceName: + http://www.w3.org/2005/Atom + @infoset:prefix: atom ModuleDef: @QName: AtomFeed @mv:id: feed @enLN: Feed + @mv:contains: feed-prop @mv:contains: atom|feed ModuleDef: @QName: AtomEntry @mv:id: entry @enLN: Entry + @mv:contains: entry-prop @mv:contains: atom|entry ModuleDef: @@ -596,28 +608,65 @@ @mv:id: props @enLN: Properties @mv:contains: atom|content + @mv:contains: atom|contributor @mv:contains: atom|category @mv:contains: atom|generator - @mv:contains: atom|source @mv:contains: atom|link @mv:contains: atom|author @mv:contains: atom|published @mv:contains: atom|updated + @mv:contains: atom|icon @mv:contains: atom|id + @mv:contains: atom|logo + @mv:contains: atom|rights + @mv:contains: atom|subtitle + @mv:contains: atom|summary @mv:contains: atom|title - @mv:contains: atom|email - @mv:contains: atom|uri + @mv:contains: source-prop + @mv:contains: atom|source ModuleDef: @QName: AtomDatatypes @mv:id: datatypes @enLN: Datatypes + + @mv:contains: atomNCName + @mv:contains: atomMediaType + @mv:contains: atomLanguageTag + @mv:contains: atomUri + @mv:contains: atomUriCM + @mv:contains: atomEmailAddress + @mv:contains: atomEmailAddressCM + + @mv:contains: undefinedAttributes + @mv:contains: undefinedContent + @mv:contains: atomCommonAttributes + + @mv:contains: simpleExtensionElements + @mv:contains: structuredExtensionElements + @mv:contains: extensionElements + @mv:contains: TextAG @mv:contains: TextCM + + @mv:contains: atom|name + @mv:contains: atom|email + @mv:contains: atom|uri @mv:contains: PersonAG + @mv:contains: person-prop @mv:contains: PersonCM + @mv:contains: DateAG @mv:contains: DateCM + +ResourceDef: + @QName: AtomQName + @enLN: Qualified Names + @mv:id: qname + @For: =ManakaiDOM|ManakaiDOMLatest + @DISCore:resourceType: mv|XMLDTDQNameModule + + @mv:contains: Atom ElementTypeBinding: @Name: ModuleSetDef @@ -1561,6 +1610,107 @@ $test->assert_isa ($doc, ); ##AtomEntryDocument +AGDef: + @QName: atomCommonAttributes + @enFN: common attributes + @mv:attributeTypeGroupName: common + + @ATDef: + @@mv:attributeTypeName: xml|base + @@mv:attributeValueType: atomUri + + @ATDef: + @@mv:attributeTypeName: xml|lang + @@mv:attributeValueType: atomLanguageTag + + @mv:refers: undefinedAttributes +##atomCommonAttributes + +STDef: + @QName: atomNCName + @mv:datatypeEntityName: NCName + #subsetOf: xsd|string + #minLength, pattern + +STDef: + @QName: atomMediaType + @mv:datatypeEntityName: MediaType + #subsetOf xsd|string + # pattern + +STDef: + @QName: atomLanguageTag + @mv:datatypeEntityName: LangaugeTag + #subsetOf: xsd|string + #pattern + +STDef: + @QName: atomUri + @mv:datatypeEntityName: URI + #aliasfor text +STCDef: + @QName: atomUriCM + @mv:elementContentModelName: URI + @cm: (dxm|PCDATA||ManakaiDOM|all)* + +STDef: + @QName: atomEmailAddress + @mv:datatypeEntityName: EmailAddress + #subsetOf xsd|string + #pattern +STCDef: + @QName: atomEmailAddressCM + @mv:elementContentModelName: EmailAddress + @cm: (dxm|PCDATA||ManakaiDOM|all)* + +ElementTypeBinding: + @Name: AGDef + @ElementType: + dis:ResourceDef + @ShadowContent: + @@DISCore:resourceType: mv|AttributeTypeGroup + @@For: =ManakaiDOM|ManakaiDOMLatest + +ElementTypeBinding: + @Name: ATDef + @ElementType: + dis:ResourceDef + @ShadowContent: + @@DISCore:resourceType: mv|AttributeType + @@For: =ManakaiDOM|ManakaiDOMLatest + +ElementTypeBinding: + @Name: ECDef + @ElementType: + dis:ResourceDef + @ShadowContent: + @@DISCore:resourceType: mv|ElementTypeClass + @@For: =ManakaiDOM|ManakaiDOMLatest + +ElementTypeBinding: + @Name: EMDef + @ElementType: + dis:ResourceDef + @ShadowContent: + @@DISCore:resourceType: mv|ElementTypeClassMix + @@For: =ManakaiDOM|ManakaiDOMLatest + +ElementTypeBinding: + @Name: STDef + @ElementType: + dis:ResourceDef + @ShadowContent: + @@DISCore:resourceType: mv|XMLDTDDatatypeEntity + @@For: =ManakaiDOM|ManakaiDOMLatest + +ElementTypeBinding: + @Name: STCDef + @ElementType: + dis:ResourceDef + @ShadowContent: + @@DISCore:resourceType: mv|ElementContentModel + @@For: =ManakaiDOM|ManakaiDOMLatest + IFClsDef: @IFQName: AtomElement @ClsQName: ManakaiAtomElement @@ -1619,6 +1769,13 @@ @@ContentType: DISCore|QName @ForCheck: =ManakaiDOM|all +ElementTypeBinding: + @Name: cm + @ElementType: + mv:elementContentModel + @ShadowContent: + @@ContentType: lang|dcmodel + IFClsConstructDef: @IFQName: AtomTextConstruct @ClsQName: ManakaiAtomTextConstruct @@ -1630,6 +1787,17 @@ @IFISA: AtomElement @ClsISA: ManakaiAtomElement + @mv:refers: atomCommonAttributes + + @cm: + dxm|ANY||ManakaiDOM|all + @enImplNote: + @@ddid:cm + @@@: + {TODO:: + (dxm|PCDATA||ManakaiDOM|all | html|div)* + } + @enDesc: The interface provides convenience methods and attributes for nodes @@ -1638,7 +1806,7 @@ interface. A Text construct contains human-readable text, usually in - small quantities. The content of Text constructs is + small quantities. The content of a Text construct is Language-Sensitive. @ATTR: @@ -1760,6 +1928,11 @@ @IFISA: AtomElement @ClsISA: ManakaiAtomElement + @mv:refers: atomCommonAttributes + + @cm: + (person-prop+) + @enDesc: The interface provides convenience methods and attributes for nodes @@ -1807,7 +1980,7 @@ @@Name: nameElement @@enDesc: The child element of the node. - @@Type: AtomElement + @@Type: AtomNameElement @@Get: @@@enDesc: It child element> @@ -1892,6 +2065,14 @@ }__; ##AtomPersonConstruct +ECDef: + @QName: person-prop + @mv:elementTypeClassName: person-prop + @mv:refers: atom|name + @mv:refers: atom|uri + @mv:refers: atom|email + @mv:refers: extensionElements + IFClsConstructDef: @IFQName: AtomDateConstruct @ClsQName: ManakaiAtomDateConstruct @@ -1903,6 +2084,17 @@ @IFISA: AtomElement @ClsISA: ManakaiAtomElement + @mv:refers: atomCommonAttributes + + @cm: + (dxm|PCDATA||ManakaiDOM|all)* + @enImplNote: + @@ddid: cm + @@@: + {TODO:: + xsd|dateTime + } + @enDesc: The interface provides convenience methods and attributes for nodes @@ -1973,6 +2165,23 @@ } ##AtomDateConstruct +ECDef: + @QName: feed-prop + @mv:elementTypeClassName: feed-prop + @mv:refers: atom|author + @mv:refers: atom|category + @mv:refers: atom|contributor + @mv:refers: atom|generator + @mv:refers: atom|icon + @mv:refers: atom|id + @mv:refers: atom|link + @mv:refers: atom|logo + @mv:refers: atom|rights + @mv:refers: atom|subtitle + @mv:refers: atom|title + @mv:refers: atom|updated + @mv:refers: extensionElements + IFClsETDef: @IFQName: AtomFeedElement @ETQName: atom|feed @@ -1982,6 +2191,11 @@ @IFISA: AtomElement @ClsISA: ManakaiAtomElement + @mv:refers: atomCommonAttributes + + @cm: + (feed-prop+, atom|entry*) + @enDesc: The element is the document element of an Atom Feed Document. @@ -2669,6 +2883,23 @@ (, 'lang')); ##AtomFeedElement +ECDef: + @QName: entry-prop + @mv:elementTypeClassName: entry-prop + @mv:refers: atom|author + @mv:refers: atom|category + @mv:refers: atom|content + @mv:refers: atom|contributor + @mv:refers: atom|id + @mv:refers: atom|link + @mv:refers: atom|published + @mv:refers: atom|rights + @mv:refers: atom|source + @mv:refers: atom|summary + @mv:refers: atom|title + @mv:refers: atom|updated + @mv:refers: extensionElements + IFClsETDef: @IFQName: AtomEntryElement @ETQName: atom|entry @@ -2678,6 +2909,11 @@ @IFISA: AtomElement @ClsISA: ManakaiAtomElement + @mv:refers: atomCommonAttributes + + @cm: + (entry-prop+) + @enDesc: The element represents an individual entry, acting as a container for metadata and data @@ -3198,6 +3434,87 @@ ##AtomEntryElement IFClsETDef: + @IFQName: AtomIdElement + @ETQName: atom|id + @ETRQName: atom|id + @ClsQName: ManakaiAtomIdElement + + @IFISA: AtomElement + @ClsISA: ManakaiAtomElement + + @mv:refers: atomCommonAttributes + + @cm: atomUriCM +##AtomIdElement + +IFClsETDef: + @IFQName: AtomIconElement + @ETQName: atom|icon + @ETRQName: atom|icon + @ClsQName: ManakaiAtomIconElement + + @IFISA: AtomElement + @ClsISA: ManakaiAtomElement + + @mv:refers: atomCommonAttributes + + @cm: atomUriCM +##AtomIconElement + +IFClsETDef: + @IFQName: AtomNameElement + @ETQName: atom|name + @ETRQName: atom|name + @ClsQName: ManakaiAtomNameElement + + @IFISA: AtomElement + @ClsISA: ManakaiAtomElement + + # no common attribs + @cm: TextCM +##AtomNameElement + +IFClsETDef: + @IFQName: AtomUriElement + @ETQName: atom|uri + @ETRQName: atom|uri + @ClsQName: ManakaiAtomUriElement + + @IFISA: AtomElement + @ClsISA: ManakaiAtomElement + + # no common attribs + @cm: atomUriCM +##AtomUriElement + +IFClsETDef: + @IFQName: AtomEmailElement + @ETQName: atom|email + @ETRQName: atom|email + @ClsQName: ManakaiAtomEmailElement + + @IFISA: AtomElement + @ClsISA: ManakaiAtomElement + + # no common attribs + @cm: atomEmailAddressCM +##AtomEmailElement + +IFClsETDef: + @IFQName: AtomLogoElement + @ETQName: atom|logo + @ETRQName: atom|logo + @ClsQName: ManakaiAtomLogoElement + + @IFISA: AtomElement + @ClsISA: ManakaiAtomElement + + @mv:refers: atomCommonAttributes + + @cm: atomUriCM +##AtomLogoElement + +IFClsETDef: @IFQName: AtomContentElement @ETQName: atom|content @ETRQName: atom|content @@ -3206,6 +3523,11 @@ @IFISA: AtomElement @ClsISA: ManakaiAtomElement + @mv:refers: atomCommonAttributes + + @cm: + dxm|ANY||ManakaiDOM|all + @enDesc: The element either contains or links to the content of the entry. @@ -3454,6 +3776,8 @@ @IFISA: AtomPersonConstruct @ClsISA: ManakaiAtomPersonConstruct + @mv:refers: PersonAG + @mv:elementContentModel: PersonCM @enDesc: The element is a Person construct that @@ -3469,6 +3793,10 @@ @IFISA: AtomElement @ClsISA: ManakaiAtomElement + @mv:refers: atomCommonAttributes + + @cm: undefinedContent + @enDesc: The element conveys information abut a category associated with an entry or feed. @@ -3582,6 +3910,8 @@ @IFISA: AtomPersonConstruct @ClsISA: ManakaiAtomPersonConstruct + @mv:refers: PersonAG + @mv:elementContentModel: PersonCM @enDesc: The element is a Person construct that @@ -3598,6 +3928,11 @@ @IFISA: AtomElement @ClsISA: ManakaiAtomElement + @mv:refers: atomCommonAttributes + + @cm: + (dxm|PCDATA||ManakaiDOM|all)* + @enDesc: The element identifies the agent used to generate a feed. @@ -3679,6 +4014,10 @@ @IFISA: AtomElement @ClsISA: ManakaiAtomElement + @mv:refers: atomCommonAttributes + + @cm: undefinedContent + @enDesc: The element defines a reference from an entry or feed to a Web resource. @@ -3942,6 +4281,8 @@ @IFISA: AtomDateConstruct @ClsISA: ManakaiAtomDateConstruct + @mv:refers: DateAG + @mv:elementContentModel: DateCM @enDesc: The element is a Date construct @@ -3960,6 +4301,8 @@ @IFISA: AtomTextConstruct @ClsISA: ManakaiAtomTextConstruct + @mv:refers: TextAG + @mv:elementContentModel: TextCM @enDesc: The element is a Text construct @@ -3967,6 +4310,23 @@ over an entry or feed. ##AtomRightsElement +ECDef: + @QName: source-prop + @mv:elementTypeClassName: source-prop + @mv:refers: atom|author + @mv:refers: atom|category + @mv:refers: atom|contributor + @mv:refers: atom|generator + @mv:refers: atom|icon + @mv:refers: atom|id + @mv:refers: atom|link + @mv:refers: atom|logo + @mv:refers: atom|rights + @mv:refers: atom|subtitle + @mv:refers: atom|title + @mv:refers: atom|updated + @mv:refers: extensionElements + IFClsETDef: @IFQName: AtomSourceElement @ETQName: atom|source @@ -3976,6 +4336,11 @@ @IFISA: AtomElement @ClsISA: ManakaiAtomElement + @mv:refers: atomCommonAttributes + + @cm: + (source-prop*) + @Attr: @@Name: authorElements @@enDesc: @@ -4185,6 +4550,8 @@ @IFISA: AtomTextConstruct @ClsISA: ManakaiAtomTextConstruct + @mv:refers: TextAG + @mv:elementContentModel: TextCM @enDesc: The element is a Text construct @@ -4199,6 +4566,8 @@ @IFISA: AtomTextConstruct @ClsISA: ManakaiAtomTextConstruct + @mv:refers: TextAG + @mv:elementContentModel: TextCM @enDesc: The element is a Text construct @@ -4213,6 +4582,8 @@ @IFISA: AtomTextConstruct @ClsISA: ManakaiAtomTextConstruct + @mv:refers: TextAG + @mv:elementContentModel: TextCM @enDesc: The element is a Text construct @@ -4227,6 +4598,8 @@ @IFISA: AtomDateConstruct @ClsISA: ManakaiAtomDateConstruct + @mv:refers: DateAG + @mv:elementContentModel: DateCM @enDesc: The element is a Date construct @@ -4317,3 +4690,33 @@ @@For: ManakaiDOM|DOM3 @@For: =ManakaiDOM|all @@Type: idl|boolean||ManakaiDOM|all + +ECDef: + @QName: simpleExtensionElements + @mv:elementTypeClassName: simple.extra + @DISCore:resourceType: mv|ElementTypeAdditionalClass + +ECDef: + @QName: structuredExtensionElements + @mv:elementTypeClassName: structured.extra + @DISCore:resourceType: mv|ElementTypeAdditionalClass + +EMDef: + @QName: extensionElements + @mv:elementTypeClassName: extra + @mv:refers: simpleExtensionElements + @mv:refers: structuredExtensionElements + @DISCore:resourceType: mv|ElementTypeAdditionalClass + +AGDef: + @QName: undefinedAttributes + @mv:attributeTypeGroupName: common.extra + +ResourceDef: + @QName: undefinedContent + @mv:elementContentModelName: undefined + @For: =ManakaiDOM|ManakaiDOMLatest + @DISCore:resourceType: mv|ElementContentModel + @cm: dxm|ANY||ManakaiDOM|all + @enImplNote: + (text | anyForeignElement)*