Talk:Web template system/Archive 1
From Wikipedia, the free encyclopedia
Relationships and dependencies with another articles
Web template system is not a isolated article, it is very correlated and "depends on" another articles:
- Template system article is a "hub article" for many kinds of template systems.
- Web template system article is a "umbrella article" (and related as "Web specialized template system").
- Web template is a important complementar article (part of the system).
- Template engine is a important complementar article (part of the system).
- Web template hook styles is a supplement (separeted for avoid pollution and to fix on more specialized public), it is a commom supplement for all Template systems.
- Web template system (formalism) is a supplement (separeted for avoid pollution and show technicall details).
- Web template system article is a "umbrella article" (and related as "Web specialized template system").
- Other very correlated articles: preprocessor (referential to not-web template engines), XSLT (main article about XML specific templates), Template (word processing) and Style sheet as referential to template original concepts (from Desktop publishing).
To Do List
Review tables on out-side server systems
Template systems. like on Dreamweaver, must be alanysed first.
Add itens on Server-side systems table
Add other web template systems (described on wikipedia). Candidates to web template systems:
Candidate | Is/Not | status | Conclusions and notes |
---|---|---|---|
CakePHP | ? | need to check | |
Catalyst | ? | need to check | |
Fusebox | ? | need to check | |
JavaServer Faces | NOT | reviewed | Apache Struts and Webwork2 are currently the most popular web oriented MVC implementations. |
Mach-II | ? | need to check | |
Maypole | ? | need to check | |
Model-Glue | ? | need to check | for ColdFusion Link |
OpenXava | NOT | reviewed | have integration of reports made with JasperReports (that use Jakarta Velocity and VTL - Velocity Template Language) |
Radicore | ? | need to check | For either PHP 4 or 5 |
Ruby on Rails | ? | need to check | Is a "general template language" like PHP? |
Symfony | ? | need to check | |
Tapestry | ? | need to check | |
TurboGears | ? | need to check | for python, with AJAX. |
XML Sapiens | ? | need to check |
Expand stubs
- Changed massive to 'mass-production', if that causes problems I can change it back, but may be more clear with latter usage. dr.ef.tymac 03:39, 27 November 2006 (UTC)
Take care with title names in use
Other articles link to these section titles:
- Web template system#Separation of concerns
- Web template system#Formal characterization
- Web template system#Outside server systems
- Web template system#Server-side systems
- Web template system#Distributed systems
Disputes and/or Consensus
Terminology
- The term "system" on "web template system" was used as set of related (but able to independent) parts... and to designate a "Whole bigger than the sum of the parts"... Without a template language, we cannot use a template engine, without standards, the user community cannot use the language. -- User:Krauss 23 Nov 2006.
- "Design principles" (section name) is about "design pattern principles", that is a "Reference model"... (we may be change the sec. name to Reference model) The section may be merged with Web_template_system#Separation_of_concerns sec. -- User:Krauss 23 Nov 2006.
without standards, the user community cannot use the language.
-
- Please provide a cite or I will continue to presume that is totally incorrect. (Any language can be used, and misused in a manner inconsistent with MVC. MVC is a form of Best practice, and anyone with web development experience knows that best practices are not always followed. This is one of the many apparent errors in the article that seem to have been overlooked for quite some time.) dr.ef.tymac 16:45, 23 November 2006 (UTC)
- Yes, you, as programmer, using only now "any language", is correct about "use any language"... but ALL stable languages (for programmers and disgners communities) are from (private or not) standards — Microsoft, W3C, Macromedia, My firm, Your firm, all may be "standard organism", to maintaining the template language specifications... the scale (of time and volume of potential users) of stability is proportional to the "standard agency/community". -- Krauss 18:00, 23 November 2006 (UTC)
- Please see e.g., http://wardley.org/computers/web/mvc.html
- Please provide a cite or I will continue to presume that is totally incorrect. (Any language can be used, and misused in a manner inconsistent with MVC. MVC is a form of Best practice, and anyone with web development experience knows that best practices are not always followed. This is one of the many apparent errors in the article that seem to have been overlooked for quite some time.) dr.ef.tymac 16:45, 23 November 2006 (UTC)
-
- DONE: merge design pattern with reference model. dr.ef.tymac 17:15, 23 November 2006 (UTC)
- Changing the title name, using your "principles" sugestion.
- DONE: merge design pattern with reference model. dr.ef.tymac 17:15, 23 November 2006 (UTC)
Terms with optional ortography
- "Templating system" or "template system". By tradition of use, option is "template system".
- Parametrized or Parameterized? for "Parametr. reference" and "Parametr. declaration". Used "parametErized" like on Parameterized macro.
Jargon options (synonymous and similar concepts)
Used "controled" terms:
- Content and Content resource (see URI for resource)
NOT used terms:
- Not use the term data model to substitute the terms Content and Content resource:
- It is Web, and W3C and others prefer to use the term Content, about "content on documents" (not "data on documents"... it is Content-centric).
- A data model need Structure. Integrity, Manipulation, Querying... is more simple say that a set of variables are Content than Data model.
- This article was here since October 2005 with the term Content: it is stable and many other linkted articles use the term.
- Is better say "input data" (for process) than say "input model" (it is like to say "input model information")... Example: a "vCard DTD" have the data model information, a "vCard data" have the specific vCard information.
-
- Agree on use of "content", however prohibiting use of "data model" is a problem because the "M" in MVC stands for "Model". We need to work together to determine a way to allow mutual use of these terms, they are both fundamental. dr.ef.tymac 16:49, 27 November 2006 (UTC)
Basic structure and concepts
We must take care with changes on:
- basic concepts: it unstabilize the "conceptual structure" of the article.
- basic terminology: it was stable, links and terminological consistence depends on it.
- figures: that is used to represent basic concepts!
-- Krauss 23 November 2006
- Agreed, I identified some elements of the stable terminology that had some minor mistakes, overlap of pre-existing material, or potential confusion, asked Krauss basic questions and he provided enough detail for me to fix a lot of that up. I updated some figures for apperance, and enhancement of didactic content. Krauss and Dreftymac will continue to work on these to improve consistency as well. We have worked together on some elements of the new figure style. Additional standardizations and refinements for these are expected in the immediate future. (see e.g., User_talk:Dreftymac/WebTemplateDiscussion#Images)dr.ef.tymac 16:43, 27 November 2006 (UTC)
Big Review/Revert/Adapt = please comment
- Remove, on Intro, "A web template system is a specific kind of template processor ...". If the template system IS a template processor, we NOT NEED THIS ARTICLE. See Talk about use of the SYSTEM term. -- Krauss 24 November 2006
- Remove, on Overview, "One or more web templates on input". The formal definition is about 1 template... if we need more, we process more... 1 per web document (URL). -- Krauss 24 November 2006
- Reverted picture: the new was only a copy (spam?) from Template processor, not adapted to: 1) The basic concepts fixed here; 2) Another illustrations (see architectures), they are compatible. 3) The picture have 2 outputs to show what it does, for didactic -- Krauss 24 November 2006
- Review concepts on introduction/overview: I think now is better (merged with another edits) and clean -- Krauss 24 November 2006
- AwardingEmeraldsToward: Updated picture, for 1) and 3) above (very good ideas); 2) still left but IMHO doesn't harm article quality.dr.ef.tymac 19:37, 24 November 2006 (UTC)
Another big review coming up
Here are some points before the next "big review." I am preparing to make some more additions and re-structure, so here are some discussion points first. I do not want to get too bogged down in discussion, so that it evaporates editing time, so you can just focus on the basic questions below.
Clarify specification of "hook" terminology
Rationale: I have not found any references that use the term "hook" in the same sense, but there do seem to be other (potentially confusing) different uses of the term:
- a way to interface with version control ;; http://svn.haxx.se/users/archive-2005-03/0956.shtml
- a way to specify namespaces ;; http://api.drupal.org/api/HEAD/group/hooks
- a method of using CSS class names to organize content ;; http://meta.wikimedia.org/wiki/Layout_architecture_of_MediaWiki_pages
-- ?
- The term "hook" is about the red marks on Web_template#Hook_compatibility_strategies illustration... if it is not the "correct term", we need change ONLY if somebody show another "authoritative" term. I think (and generically refer) as "notation"... a specific syntax or notation for "to separate languages" (template language and output language). Sorry I don't remember WHERE I see the use of the term, but I see because changed from "separation mark". -- Krauss 27 November
- The parr article you cite identifies this as "lexical delimiters" (see sec. 5 paragraph 8). Unless you disagree with this, I will make the appropriate changes to the terminology so it is more consistent with the article. dr.ef.tymac 05:18, 27 November 2006 (UTC)
- Stabilized terminology on "hook" with link references to (synonym) terminology, 'hook' provides enough uniqueness for this article, and links provide authoritative consistency with parr article and other WP links. dr.ef.tymac 19:39, 27 November 2006 (UTC)
- The parr article you cite identifies this as "lexical delimiters" (see sec. 5 paragraph 8). Unless you disagree with this, I will make the appropriate changes to the terminology so it is more consistent with the article. dr.ef.tymac 05:18, 27 November 2006 (UTC)
Language hierarchy and template language treatment
I have concerns about application of the Chomsky hierarchy whether it is entirely correct. I have no plans to change the 'formalism' page, but you apply the hierarchy all throughout the article and in places where it simply does not seem to fit. I address this in the "basic questions". -- ??
- Please, take a overview on the unique and fundamental citation: Parr article (see "Template Definition" section). -- Krauss 27 November 2006
-
- I read the parr article quite a while ago and reviewed it recently. If you can address the basic questions (at least ignore the one on the Chomsky hierarchy and address your definition of what "is" and "is not" template, which does not seem to be in the article) this will help me to focus on which content needs to go where when i make additions. Thanks! dr.ef.tymac 05:22, 27 November 2006 (UTC)
Basic questions
Here are some basic questions:
- Web_template_system#Formal characterization how was this definition derived, where does it come from?
- Web_template_system#Formal characterization says print() is not a "hook" so perl script is not a template, are you saying that scripts with instructions in them are never templates?
- In the same section you say that "source code" is not a template, and that "the process can not be arbritrary" are you saying here that "source code and programming language scripts can never be considered a 'template'"
- In the same section you define "what is a web template?" and yet none of the elements of the definition talk about the web. Does this mean that an XSLT script used to generate non-web output (like a desktop address book or 'TODO list' for example) is still a 'web template'?
- where does your definition for "hook" come from?
- In Programming language, you said "It is a usual approach to embed a programming language into the non-computational (host) language, to express templates for the host language" does this mean that (for example) perl embedded in HTML meets your definition of "template"?
- In applying the Chomsky hierarchy you say "Template languages can be grouped in a hierarchy" do you have an example of each specific language (by name) that fits in each specific level of the hierarchy?
- How do you draw the distinction for "embedding"? In other words, what is the formal difference between Perl code "embedded" in HTML, and HTML "embedded" in Perl? Is there a definition that can be neutrally applied? or is it a matter of "guessing"?
I have definitions for these terms that may or may not match yours. Thats why I ask these basic questions. Hopefully you can clarify so I can move forward without any "big surprises" ... if not, we may have to figure out how to structure the article so that the alternate viewpoints all get appropriate treatment. Thanks! dr.ef.tymac 22:12, 26 November 2006 (UTC)
- I think the text on Web template system (formalism) was for avoid this kind of questions... but you are the first, and the article may need "good english improves"... SUGESTION:
- Please, take a overview on the unique and fundamental citation: Parr article (see "Template Definition" section).
- Transfer (cut/paste) this discussion to there for improve the formalism article.
- -- Krauss 27 November 2006
- Yes, I already read the article you cited, and I asked questions for you that are not answered in the article. How do you draw the distinction for "embedding"? For example, what is the difference between Perl code "embedded" in HTML, and HTML "embedded" in Perl? Since you define template *outside* the formalism article, I think that needs refinement to know whether the content meets the definition for "web template" "template" and "not a template". Otherwise, I can just put alternate (authoritative) definitions in the main article and add cites if you do not want to answer. Thanks! dr.ef.tymac 05:10, 27 November 2006 (UTC)
- There are many questions to organize, need time... you put the relevant ones, let begin with them,
- Question: What the difference between the templates T1=
print "<html>Hello $x</html>";
and T2=<html>Hello $x</html>
? Answer: is not exactly the syntax, the use of a command likeprint
, but the behavior on the dataflow model with the whole scripts. IF the content C is empty ($x="";
),R1=Pperl(T1,Ø)
andR2=Pphp(T2,Ø)
, THENR2=T2
butR1≠T1
! (the rule is to "ignore hooks" and$x
can be removed from both templates) the Perl script can not used as a document, only the PHP script, and, with Ø it satisfy the property #2. - Question: Where the "Web" on the web template forma characterization? Answer: I changed the text to use it also with "template system" (not web). One relevant difference is pointed on the new text, when define "Process output"... say "On web template systems, R is a web document. On (generic) template systems, R is any kind of document.". The other relevant difference (I think) not there, is methodological: on Web applications we enforce the use of the Separation Principles, mainlly web design from logic, or, better (see "The Cocoon Pyramid Model of Contracts") programmer's from web designer's concern areas.
- Question: "Do you have an example of each specific language (by name) that fits in each specific level of the hierarchy?" Answer: Yes and perhaps... the focus (now showed on text) is the language features, for them the answer is YES (and examples are there). In principle if a language have minimal features from one group, it is that type (or superior), and it is ease for very simple and/or Turing complete languages... But not all the languages will fit exactly a group, the language features will be disperse over groups... I think the relevant is first is to group/organize/sistematize ALL features, then, on second (future) moment, analyse if it is good ideia use only these groups or create other labels about other usual groups of features.
- ... yes, perhaps will need a FAQ on the article's Talk
- Question: What the difference between the templates T1=
- -- Krauss 27 November 2006
- Ok, I see where one area of potential confusion is. Just to clarify, is there in your view, any difference between the terms "template language" and "template programming language"? dr.ef.tymac 06:21, 27 November 2006 (UTC)
Fixed bug on this discussion page
NOTE: One of the topic headers was specified as "level one", which meant all new discussions started with the "alt plus" sequence were being included as children of that node (even if that was not the intent of the editor). Fixed it by changing it to "level two" dr.ef.tymac 22:32, 26 November 2006 (UTC)
2006-11-27 ;; Points of consensus, agreement, stability
These seem to be agreed by all contributing to these articles:
- the parr citation is an authoritative ref and good support for article content;
- Ok -- krauss 28 November 2006
- the terminology and formal treatment sections are still big TODO;
- Yes, let organize CENTRALIZE Talk about this, see Talk:Web template system (terminology). -- krauss 28 November 2006
- Dreftymac created break-out page on terminology;
- Consider that moving "basic concepts" from here to a very "peripheral position" is like to DELETE then. -- krauss 28 November 2006
- This may be one interpretation, but assuming good faith, I think it is a good compromise as long as all the re-positioned content is easy to find and appropriately linked. I'm sure it wasn't your intent to "delete" content when you created peripheral pages for earlier content that was contributed to these articles, hopefully that won't ever be the intent. Please see "Working, Planning and Participation" ideas below. dr.ef.tymac 16:21, 28 November 2006 (UTC)
- Ok. I only was thinking about logic of move: if content was good, a "compressed version" stay there, else all will moved to hidden or "under construction" article... Think we need check if have consensus about "without compressed version"... or, by other hand, one or more topics receiving a new section. On Web_template: the article lost important concept-definition with the delete of "Good separation principles" and "Presentation"... it introduce and show for reader a referential position about it.. we can add a sub-section about it? --Krauss
- This may be one interpretation, but assuming good faith, I think it is a good compromise as long as all the re-positioned content is easy to find and appropriately linked. I'm sure it wasn't your intent to "delete" content when you created peripheral pages for earlier content that was contributed to these articles, hopefully that won't ever be the intent. Please see "Working, Planning and Participation" ideas below. dr.ef.tymac 16:21, 28 November 2006 (UTC)
- Consider that moving "basic concepts" from here to a very "peripheral position" is like to DELETE then. -- krauss 28 November 2006
-
-
-
- Yes the important concept definitions need to go back in, I left a comment in the wikicode and also mentioned this on the terminology talk page. It is just a matter of choosing for the "compressed version" as you stated. Pls see goals of this article discussion. dr.ef.tymac 20:31, 28 November 2006 (UTC)
-
-
- stable convention for 'sample template' is the "hello $x" example;
- proposed: stabilize on $x values of (world, earth, ... ,aries, virgo) [or something else?] to an enumerated list of 99 items for the 'content resource';
- proposed: use the hello $x example for cross-language comparisons and basic definitions, other examples (where applicable);
- Ok... think not understand objective (to correct actual text? build new article for compare examples?) -- krauss 28 November 2006
-
- Well one objective is simply consistency. It seems like a good basic convention, and if multiple people are contributing to the article, it is something everyone can easily understand and follow. It's also good because its accessible to a general audience. I'm not saying *all* examples *must* follow the convention, im just saying it seems like a good didactic approach. -- dr.ef.tymac 16:29, 28 November 2006 (UTC)
- Very ok. -- Krauss
- Well one objective is simply consistency. It seems like a good basic convention, and if multiple people are contributing to the article, it is something everyone can easily understand and follow. It's also good because its accessible to a general audience. I'm not saying *all* examples *must* follow the convention, im just saying it seems like a good didactic approach. -- dr.ef.tymac 16:29, 28 November 2006 (UTC)
- proposed: supplementary and partially "original" research should be kept in supplemental pages (seems like an excellent way to allow material develop, without potentially confusing/misleading people who are not familiar with the formalism).
- Ok, but many, like Web template system (formalism), ned a compressed text (section about) to subsidize basic concepts and "knowledge organization decisions". Others, need to fix planing and objectives, see example on terminology Talk, Goals of this article?. -- krauss 28 November 2006
other agreed upon elements? anyone object to these? -- dr.ef.tymac 19:46, 27 November 2006 (UTC)
You now changing things very fast... this speed not good for me. For walk with your changes we need PLANING and a little methodology. SUGESTION:
- review objectives of the articles, where it is necessary. Example: I started Talk:Web template system and Talk:Web template with "Relationships and dependencies with another articles", we can add "general/consensual objectives" of the article.
- Fix a good, CENTRAL, "road map" To Do List.
- Walk (with many changes) ONLY with the "road map"
- Use the talk page to fix consensus about the "ON WORKING ITEM", one to one... I can not check all watchlist.
- Work a lot ... 2007 continuing. PS: please see talk Question 1 for starting consensus about "formal definition"... I think if we have consensus there, can be start a "road map" for formalization also.
-- Krauss 28 November 2006
-
- These seem like noteworthy suggestions, with a few qualifications (see also, working and planning below):
- If "objectives" and "dependencies" are placed on the talk page of an article (as opposed to inside the article itself, or on someone's user pages) then this means the talk "threading" system does not work in the manner of "talk in nested thread, archive page when it gets too big, each node in a single thread signed by original author" ...
- If a "road map" is constructed, and new editors come to the article who are 1)unfamiliar with the roadmap; or 2)opposed to one or more elements of the roadmap; or 3)capable of understanding and meaningfully contributing to the article, but not capable of understanding or contributing to the roadmap, what about them?
- What are the implications of creating a "road map" as far as creating the perception that someone "owns" the article? Could this discourage participation from potentially qualified and expert people who mistakenly believe the article is 'off limits' to them because they didn't have a 'vote' in creating the roadmap?
- Similar issues with using talk pages to fix consensus and using it as a "TODO" or checklist; this seems like a very tricky issue. How have other editors on WP handled these issues. Anyone?
dr.ef.tymac 17:14, 28 November 2006 (UTC)
Working, Planning and Participation
Things that I appreciate about this article series:
- The contributing editors have lots of content and enthusiasm about the topic;
- There is coverage and discussion of even advanced material, and the material is taken seriously;
- It's all done in an "open" context just like the rest of WP;
- The participants have displayed a high degree of professionalism, even though this is a volunteer project;
Things that present some difficulty:
- The talk pages seem to take on a unique structure, making it difficult to predict how the pages will behave from a "functionality standpoint" ... this can happen when header levels are changed;
- The content on talk pages sometimes gets reorganized, paraphrased, and moved around, thus causing problems from a "continuity standpoint" (new participants to the discussion may find it difficult or impossible to follow what was going on previously);
- The content on talk pages sometimes gets "signed" irregularly, or using different methods (i.e., other than "four tilde" dr.ef.tymac 17:00, 28 November 2006 (UTC)) causing problems from an "attribution standpoint" (hard to know who said what, and hard to know if it is a 'paraphrase' of what someone else said, or a direct statement) [Note: please never "sign" another username to content]
The "functionality" issue is a significant challenge, because it is somewhat like using a tool like phpBB or Usenet, and suddenly discovering that a discussion thread no longer exists, or has been re-arranged, or the method for posting new messages no longer works, or works unexpectedly.
To enhance planning and mutual participation by multiple editors, is there some mechanism within Wikipedia (or related) such as a formal "bulletin board" software, so that "content" can be kept seprate from "functionality" and message threads can maintain a consistency and continuity that does not change as "openly and flexibly" as article content itself? Email seems like one good mechanism, however it is restricted to those in the loop, and is not discoverable to those new to the scene.
These are just some issues related to planning and discussion. They are pretty fundamental as it is one of the factors that has made participation and communication very challenging. Any thoughts, comments, ideas? dr.ef.tymac 17:00, 28 November 2006 (UTC)