Hello everyone,
the development for XMP could be much easier if we had XMP definition in XMP
For example one could create GUI for XMP editing even without reading XMP ducumentation.
All we need is to parse XMP tree and translate metadata to appropriate programming language.
Moreover such authomated processing would minimize bugs in programms.
My english is not the best, but I hope everybody understand my idea.
For example definition of arrays could look like:
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Description rdf:about=""
xmlns:xmpDef="http://ns.adobe.com/xmpDef/1.0/">
<xmpDef:Array>
<rdf:Bag>
<rdf:li>Bag</rdf:li>
<rdf:li>Seq</rdf:li>
<rdf:li>Alt</rdf:li>
</rdf:Bag>
</xmpDef:Array>
</rdf:Description>
</rdf:RDF>
Related subject: PDF/A extension schema is essentially an XMP schema
definition language written in XMP!
http://www.pdfa.org/publication/technical-note-tn-009-xmp-extension-sc hemas-in-pdfa-1/
It is a publicly available specification as well.
Screen shot was not posted. Here is a portion of the XMP packet
generated.
<rdf:Description rdf:about=""
xmlns:pdfaExtension="http://www.aiim.org/pdfa/ns/
extension/"
xmlns:pdfaSchema="http://www.aiim.org/pdfa/ns/schema#"
xmlns:pdfaProperty="http://www.aiim.org/pdfa/ns/property#">
<pdfaExtension:schemas>
<rdf:Bag>
<rdf:li rdf:parseType="Resource">
<pdfaSchema:prefix>dc</pdfaSchema:prefix>
<pdfaSchema:namespaceURI>http://purl.org/dc/elements/1.1/
</pdfaSchema:namespaceURI>
<pdfaSchema:schema>Dublin Core Schema</
pdfaSchema:schema>
<pdfaSchema:property>
<rdf:Seq>
<rdf:li rdf:parseType="Resource">
<pdfaProperty:name>contributor</
pdfaProperty:name>
<pdfaProperty:category>external</
pdfaProperty:category>
<pdfaProperty:description>Contributors to
the resource (other than the authors).</pdfaProperty:description>
<pdfaProperty:valueType>bag ProperName</
pdfaProperty:valueType>
</rdf:li>
<rdf:li rdf:parseType="Resource">
<pdfaProperty:name>coverage</
pdfaProperty:name>
<pdfaProperty:category>external</
pdfaProperty:category>
<pdfaProperty:description>The extent or
scope of the resource.</pdfaProperty:description>
<pdfaProperty:valueType>Text</
pdfaProperty:valueType>
</rdf:li>
<rdf:li rdf:parseType="Resource">
<pdfaProperty:name>creator</
pdfaProperty:name>
<pdfaProperty:category>external</
pdfaProperty:category>
<pdfaProperty:description>The authors of
the resource (listed in order of precedence, if significant).</
pdfaProperty:description>
<pdfaProperty:valueType>seq ProperName</
pdfaProperty:valueType>
</rdf:li>
<rdf:li rdf:parseType="Resource">
<pdfaProperty:name>date</pdfaProperty:name>
<pdfaProperty:category>external</
pdfaProperty:category>
<pdfaProperty:description>Date(s) that
something interesting happened to the resource.</
pdfaProperty:description>
<pdfaProperty:valueType>seq Date</
pdfaProperty:valueType>
</rdf:li>
<rdf:li rdf:parseType="Resource">
<pdfaProperty:name>description</
pdfaProperty:name>
<pdfaProperty:category>external</
pdfaProperty:category>
<pdfaProperty:description>A textual
description of the content of the resource. Multiple values may be
present for different languages.</pdfaProperty:description>
<pdfaProperty:valueType>Lang Alt</
pdfaProperty:valueType>
</rdf:li>
<rdf:li rdf:parseType="Resource">
<pdfaProperty:name>format</
pdfaProperty:name>
<pdfaProperty:category>internal</
pdfaProperty:category>
<pdfaProperty:description>The file format
used when saving the resource. Tools and applications should set this
property to the save format of the data. It may include appropriate
qualifiers. </pdfaProperty:description>
<pdfaProperty:valueType>MIMEType</
pdfaProperty:valueType>
</rdf:li>
<rdf:li rdf:parseType="Resource">
<pdfaProperty:name>identifier</
pdfaProperty:name>
<pdfaProperty:category>external</
pdfaProperty:category>
<pdfaProperty:description>Unique
identifier of the resource.</pdfaProperty:description>
<pdfaProperty:valueType>Text</
pdfaProperty:valueType>
</rdf:li>
<rdf:li rdf:parseType="Resource">
<pdfaProperty:name>language</
pdfaProperty:name>
<pdfaProperty:category>internal</
pdfaProperty:category>
<pdfaProperty:description>An unordered
array specifying the languages used in the resource.</
pdfaProperty:description>
<pdfaProperty:valueType>bag Locale</
pdfaProperty:valueType>
</rdf:li>
<rdf:li rdf:parseType="Resource">
<pdfaProperty:name>publisher</
pdfaProperty:name>
<pdfaProperty:category>external</
pdfaProperty:category>
<pdfaProperty:description>Publisher(s).</
pdfaProperty:description>
<pdfaProperty:valueType>bag ProperName</
pdfaProperty:valueType>
</rdf:li>
<rdf:li rdf:parseType="Resource">
<pdfaProperty:name>relation</
pdfaProperty:name>
<pdfaProperty:category>external</
pdfaProperty:category>
<pdfaProperty:description>Relationships to
other documents.</pdfaProperty:description>
<pdfaProperty:valueType>bag Text</
pdfaProperty:valueType>
</rdf:li>
<rdf:li rdf:parseType="Resource">
<pdfaProperty:name>rights</
pdfaProperty:name>
<pdfaProperty:category>external</
pdfaProperty:category>
<pdfaProperty:description>Informal rights
statement, selected by language.</pdfaProperty:description>
<pdfaProperty:valueType>Lang Alt</
pdfaProperty:valueType>
</rdf:li>
<rdf:li rdf:parseType="Resource">
<pdfaProperty:name>source</
pdfaProperty:name>
<pdfaProperty:category>external</
pdfaProperty:category>
<pdfaProperty:description>Unique
identifier of the work from which this resource was derived.</
pdfaProperty:description>
<pdfaProperty:valueType>Text</
pdfaProperty:valueType>
</rdf:li>
<rdf:li rdf:parseType="Resource">
<pdfaProperty:name>subject</
pdfaProperty:name>
<pdfaProperty:category>external</
pdfaProperty:category>
<pdfaProperty:description>An unordered
array of descriptive phrases or keywords that specify the topic of the
content of the resource.</pdfaProperty:description>
<pdfaProperty:valueType>bag Text</
pdfaProperty:valueType>
</rdf:li>
<rdf:li rdf:parseType="Resource">
<pdfaProperty:name>title</pdfaProperty:name>
<pdfaProperty:category>external</
pdfaProperty:category>
<pdfaProperty:description>The title of the
document, or the name given to the resource. Typically, it will be a
name by which the resource is formally known.</pdfaProperty:description>
<pdfaProperty:valueType>Lang Alt</
pdfaProperty:valueType>
</rdf:li>
<rdf:li rdf:parseType="Resource">
<pdfaProperty:name>type</pdfaProperty:name>
<pdfaProperty:category>external</
pdfaProperty:category>
<pdfaProperty:description>A document type;
for example, novel, poem, or working paper.</pdfaProperty:description>
<pdfaProperty:valueType>bag Text</
pdfaProperty:valueType>
</rdf:li>
</rdf:Seq>
</pdfaSchema:property>
</rdf:li>
</rdf:Bag>
</pdfaExtension:schemas>
</rdf:Description
North America
Europe, Middle East and Africa
Asia Pacific